auth->check_module_permissions('client');
//* This function is not available in demo mode
if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
$app->uses('tpl');
$app->tpl->newTemplate('form.tpl.htm');
$app->tpl->setInclude('content_tpl', 'templates/client_message.htm');
//* load language file
$lng_file = 'lib/lang/'.$_SESSION['s']['language'].'_client_message.lng';
include($lng_file);
$app->tpl->setVar($wb);
$msg = '';
$error = '';
//* Save data
if(isset($_POST) && count($_POST) > 1) {
//* Check values
if(!preg_match("/^\w+[\w\.\-\+]*\w{0,}@\w+[\w.-]*\w+\.[a-zA-Z0-9\-]{2,30}$/i", $_POST['sender'])) $error .= $wb['sender_invalid_error'].'
';
if(empty($_POST['subject'])) $error .= $wb['subject_invalid_error'].'
';
if(empty($_POST['message'])) $error .= $wb['message_invalid_error'].'
';
//* Send message
if($error == '') {
//* Select all clients and resellers
if($_SESSION["s"]["user"]["typ"] == 'admin'){
$sql = "SELECT * FROM client WHERE email != ''";
} else {
$client_id = intval($_SESSION['s']['user']['client_id']);
if($client_id == 0) die('Invalid Client ID.');
$sql = "SELECT * FROM client WHERE email != '' AND parent_client_id = '$client_id'";
}
//* Get clients
$clients = $app->db->queryAllRecords($sql);
if(is_array($clients)) {
$msg = $wb['email_sent_to_txt'].' ';
foreach($clients as $client) {
//* Parse cleint details into message
$message = $_POST['message'];
foreach($client as $key => $val) {
$message = str_replace('{'.$key.'}', $val, $message);
}
//* Send the email
$app->functions->mail($client['email'], $_POST['subject'], $message, $_POST['sender']);
$msg .= $client['email'].', ';
}
$msg = substr($msg,0,-2);
}
} else {
$app->tpl->setVar('sender',$_POST['sender']);
$app->tpl->setVar('subject',$_POST['subject']);
$app->tpl->setVar('message',$_POST['message']);
}
}
if($_SESSION["s"]["user"]["typ"] == 'admin'){
$app->tpl->setVar('form_legend_txt',$wb['form_legend_admin_txt']);
} else {
$app->tpl->setVar('form_legend_txt',$wb['form_legend_client_txt']);
}
$app->tpl->setVar('okmsg',$msg);
$app->tpl->setVar('error',$error);
$app->tpl_defaults();
$app->tpl->pparse();
?>