| | |
| | | $tform_def_file = 'form/support_message.tform.php'; |
| | | |
| | | //* include the basic application and configuration files |
| | | require_once('../../lib/config.inc.php'); |
| | | require_once('../../lib/app.inc.php'); |
| | | require_once '../../lib/config.inc.php'; |
| | | require_once '../../lib/app.inc.php'; |
| | | |
| | | //* Check permissions for module |
| | | $app->auth->check_module_permissions('help'); |
| | |
| | | |
| | | //* Custom onSubmit Event handler |
| | | function onSubmit() |
| | | { |
| | | { |
| | | global $app, $conf; |
| | | |
| | | |
| | | //* If the current user is not the admin user |
| | | if($_SESSION['s']['user']['typ'] != 'admin') { |
| | | //* Set the admin as recipient |
| | | $this->dataRecord['recipient_id'] = 1; |
| | | } |
| | | |
| | | |
| | | //* Set the sender_id field to the ID of the current user |
| | | $this->dataRecord['sender_id'] = $_SESSION['s']['user']['userid']; |
| | | |
| | | |
| | | //* Get recipient email address |
| | | if($this->dataRecord['recipient_id'] > 1){ |
| | | $sql = "SELECT client.email FROM sys_user, client WHERE sys_user.userid = ".$this->dataRecord['recipient_id']." AND sys_user.client_id = client.client_id"; |
| | |
| | | $system_config_mail_settings = $app->getconf->get_global_config('mail'); |
| | | $recipient_email = $system_config_mail_settings['admin_mail']; |
| | | } |
| | | |
| | | |
| | | //* Get sender email address |
| | | if($this->dataRecord['sender_id'] > 1){ |
| | | $sql = "SELECT client.email FROM sys_user, client WHERE sys_user.userid = ".$this->dataRecord['sender_id']." AND sys_user.client_id = client.client_id"; |
| | |
| | | $system_config_mail_settings = $app->getconf->get_global_config('mail'); |
| | | $sender_email = $system_config_mail_settings['admin_mail']; |
| | | } |
| | | |
| | | |
| | | $email_regex = '/^(\w+[\w\.\-\+]*\w{0,}@\w+[\w.-]*\.[a-z\-]{2,10}){0,1}$/i'; |
| | | if(preg_match($email_regex, $sender_email, $match) && preg_match($email_regex, $recipient_email, $match)){ |
| | | $subject = $app->tform->lng('support_request_subject_txt').': '.$this->dataRecord['subject']; |
| | |
| | | $message .= "\n\n".$app->tform->lng('message_txt').": \"".$this->dataRecord['message']."\""; |
| | | $message .= "\n\nISPConfig: ".($_SERVER['HTTPS'] == 'on' ? 'https://' : 'http://').$_SERVER['HTTP_HOST']; |
| | | $app->functions->mail($recipient_email, $subject, $message, $sender_email); |
| | | |
| | | |
| | | //* Send confirmation email to sender |
| | | if($this->dataRecord['sender_id'] == 1){ |
| | | $confirmation_message = $app->tform->lng('answer_to_support_request_sent_txt'); |
| | |
| | | } else { |
| | | $app->tform->errorMessage .= $app->tform->lng("recipient_or_sender_email_address_not_valid_txt")."<br />"; |
| | | } |
| | | |
| | | |
| | | //* call the onSubmit function of the parent class |
| | | parent::onSubmit(); |
| | | } |
| | | |
| | | |
| | | //* Custom onShow Event handler |
| | | function onShow() |
| | | { |
| | | function onShow() |
| | | { |
| | | global $app, $conf; |
| | | |
| | | //* We do not want that messages get edited, so we switch to a |
| | | //* We do not want that messages get edited, so we switch to a |
| | | //* read only template if a existing message is loaded |
| | | if($this->id > 0) { |
| | | $app->tform->formDef['tabs']['message']['template'] = 'templates/support_message_view.htm'; |
| | | $record = $app->db->queryOneRecord("SELECT * FROM support_message WHERE support_message_id = ".$this->id); |
| | | if ($record['tstamp'] > 0) { |
| | | // is value int? |
| | | if (preg_match("/^[0-9]+[\.]?[0-9]*$/", $record['tstamp'], $p)) { |
| | | $record['tstamp'] = date($app->lng('conf_format_datetime'), $record['tstamp']); |
| | | } else { |
| | | $record['tstamp'] = date($app->lng('conf_format_datetime'), strtotime($record['tstamp'])); |
| | | } |
| | | } |
| | | // is value int? |
| | | if (preg_match("/^[0-9]+[\.]?[0-9]*$/", $record['tstamp'], $p)) { |
| | | $record['tstamp'] = date($app->lng('conf_format_datetime'), $record['tstamp']); |
| | | } else { |
| | | $record['tstamp'] = date($app->lng('conf_format_datetime'), strtotime($record['tstamp'])); |
| | | } |
| | | } |
| | | $app->tpl->setVar("date", $record['tstamp']); |
| | | //die(print_r($this->dataRecord)); |
| | | } |
| | | |
| | | |
| | | //* call the onShow function of the parent class |
| | | parent::onShow(); |
| | | } |
| | | |
| | | function onAfterInsert() |
| | | { |
| | | |
| | | function onAfterInsert() |
| | | { |
| | | global $app, $conf; |
| | | |
| | | |
| | | if($_SESSION['s']['user']['typ'] == 'admin') { |
| | | $app->db->query("UPDATE support_message SET sys_userid = ".$this->dataRecord['recipient_id']." WHERE support_message_id = ".$this->id); |
| | | } |
| | | |
| | | |
| | | } |
| | | |
| | | |
| | | } |
| | | |
| | | //* Create the new page object |
| | |
| | | //* Start the page rendering and action handling |
| | | $page->onLoad(); |
| | | |
| | | ?> |
| | | ?> |