Skip to content
Snippets Groups Projects
Commit 70ddd0f2 authored by Peter Rotich's avatar Peter Rotich
Browse files

Make variable %{recipient} a complex variable of type person.

parent 340fb4e6
Branches
Tags
No related merge requests found
...@@ -785,13 +785,17 @@ Class ThreadEntry { ...@@ -785,13 +785,17 @@ Class ThreadEntry {
} }
$vars['body'] = Format::sanitize($vars['body']); $vars['body'] = Format::sanitize($vars['body']);
$poster = $vars['poster'];
if ($poster && is_object($poster))
$poster = $poster->getName();
$sql=' INSERT INTO '.TICKET_THREAD_TABLE.' SET created=NOW() ' $sql=' INSERT INTO '.TICKET_THREAD_TABLE.' SET created=NOW() '
.' ,thread_type='.db_input($vars['type']) .' ,thread_type='.db_input($vars['type'])
.' ,ticket_id='.db_input($vars['ticketId']) .' ,ticket_id='.db_input($vars['ticketId'])
.' ,title='.db_input(Format::sanitize($vars['title'], true)) .' ,title='.db_input(Format::sanitize($vars['title'], true))
.' ,body='.db_input($vars['body']) .' ,body='.db_input($vars['body'])
.' ,staff_id='.db_input($vars['staffId']) .' ,staff_id='.db_input($vars['staffId'])
.' ,poster='.db_input($vars['poster']) .' ,poster='.db_input($poster)
.' ,source='.db_input($vars['source']); .' ,source='.db_input($vars['source']);
if(isset($vars['pid'])) if(isset($vars['pid']))
......
...@@ -874,9 +874,8 @@ class Ticket { ...@@ -874,9 +874,8 @@ class Ticket {
$recipients=$sentlist=array(); $recipients=$sentlist=array();
//Alert admin?? //Alert admin??
if($cfg->alertAdminONNewTicket()) { if($cfg->alertAdminONNewTicket()) {
$alert = str_replace('%{recipient}', 'Admin', $msg['body']); $alert = $this->replaceVars($msg, array('recipient' => 'Admin'));
$email->sendAlert($cfg->getAdminEmail(), $msg['subj'], $email->sendAlert($cfg->getAdminEmail(), $alert['subj'], $alert['body'], null, $options);
$alert, null, $options);
$sentlist[]=$cfg->getAdminEmail(); $sentlist[]=$cfg->getAdminEmail();
} }
...@@ -891,13 +890,10 @@ class Ticket { ...@@ -891,13 +890,10 @@ class Ticket {
foreach( $recipients as $k=>$staff) { foreach( $recipients as $k=>$staff) {
if(!is_object($staff) || !$staff->isAvailable() || in_array($staff->getEmail(), $sentlist)) continue; if(!is_object($staff) || !$staff->isAvailable() || in_array($staff->getEmail(), $sentlist)) continue;
$alert = str_replace('%{recipient}', $staff->getFirstName(), $msg['body']); $alert = $this->replaceVars($msg, array('recipient' => $staff));
$email->sendAlert($staff->getEmail(), $msg['subj'], $alert, $email->sendAlert($staff->getEmail(), $alert['subj'], $alert['body'], null, $options);
null, $options);
$sentlist[] = $staff->getEmail(); $sentlist[] = $staff->getEmail();
} }
} }
return true; return true;
...@@ -1045,9 +1041,8 @@ class Ticket { ...@@ -1045,9 +1041,8 @@ class Ticket {
'references'=>$note->getEmailReferences()); 'references'=>$note->getEmailReferences());
foreach( $recipients as $k=>$staff) { foreach( $recipients as $k=>$staff) {
if(!is_object($staff) || !$staff->isAvailable() || in_array($staff->getEmail(), $sentlist)) continue; if(!is_object($staff) || !$staff->isAvailable() || in_array($staff->getEmail(), $sentlist)) continue;
$alert = str_replace('%{recipient}', $staff->getFirstName(), $msg['body']); $alert = $this->replaceVars($msg, array('recipient' => $staff));
$email->sendAlert($staff->getEmail(), $msg['subj'], $alert, $email->sendAlert($staff->getEmail(), $alert['subj'], $alert['body'], null, $options);
null, $options);
$sentlist[] = $staff->getEmail(); $sentlist[] = $staff->getEmail();
} }
} }
...@@ -1095,9 +1090,8 @@ class Ticket { ...@@ -1095,9 +1090,8 @@ class Ticket {
$sentlist=array(); $sentlist=array();
foreach( $recipients as $k=>$staff) { foreach( $recipients as $k=>$staff) {
if(!is_object($staff) || !$staff->isAvailable() || in_array($staff->getEmail(), $sentlist)) continue; if(!is_object($staff) || !$staff->isAvailable() || in_array($staff->getEmail(), $sentlist)) continue;
$alert = str_replace("%{recipient}", $staff->getFirstName(), $msg['body']); $alert = $this->replaceVars($msg, array('recipient' => $staff));
$email->sendAlert($staff->getEmail(), $msg['subj'], $alert, $email->sendAlert($staff->getEmail(), $alert['subj'], $alert['body'], null);
null);
$sentlist[] = $staff->getEmail(); $sentlist[] = $staff->getEmail();
} }
...@@ -1296,9 +1290,8 @@ class Ticket { ...@@ -1296,9 +1290,8 @@ class Ticket {
'references'=>$note->getEmailReferences()); 'references'=>$note->getEmailReferences());
foreach( $recipients as $k=>$staff) { foreach( $recipients as $k=>$staff) {
if(!is_object($staff) || !$staff->isAvailable() || in_array($staff->getEmail(), $sentlist)) continue; if(!is_object($staff) || !$staff->isAvailable() || in_array($staff->getEmail(), $sentlist)) continue;
$alert = str_replace('%{recipient}', $staff->getFirstName(), $msg['body']); $alert = $this->replaceVars($msg, array('recipient' => $staff));
$email->sendAlert($staff->getEmail(), $msg['subj'], $alert, $email->sendAlert($staff->getEmail(), $alert['subj'], $alert['body'], null, $options);
null, $options);
$sentlist[] = $staff->getEmail(); $sentlist[] = $staff->getEmail();
} }
} }
...@@ -1451,9 +1444,8 @@ class Ticket { ...@@ -1451,9 +1444,8 @@ class Ticket {
$sentlist=array(); //I know it sucks...but..it works. $sentlist=array(); //I know it sucks...but..it works.
foreach( $recipients as $k=>$staff) { foreach( $recipients as $k=>$staff) {
if(!$staff || !$staff->getEmail() || !$staff->isAvailable() || in_array($staff->getEmail(), $sentlist)) continue; if(!$staff || !$staff->getEmail() || !$staff->isAvailable() || in_array($staff->getEmail(), $sentlist)) continue;
$alert = str_replace('%{recipient}', $staff->getFirstName(), $msg['body']); $alert = $this->replaceVars($msg, array('recipient' => $staff));
$email->sendAlert($staff->getEmail(), $msg['subj'], $alert, $email->sendAlert($staff->getEmail(), $alert['subj'], $alert['body'], $attachments, $options);
$attachments, $options);
$sentlist[] = $staff->getEmail(); $sentlist[] = $staff->getEmail();
} }
} }
...@@ -1520,7 +1512,7 @@ class Ticket { ...@@ -1520,7 +1512,7 @@ class Ticket {
if(!$vars['poster'] && $thisstaff) if(!$vars['poster'] && $thisstaff)
$vars['poster'] = $thisstaff->getName(); $vars['poster'] = $thisstaff;
if(!$vars['staffId'] && $thisstaff) if(!$vars['staffId'] && $thisstaff)
$vars['staffId'] = $thisstaff->getId(); $vars['staffId'] = $thisstaff->getId();
...@@ -1676,9 +1668,8 @@ class Ticket { ...@@ -1676,9 +1668,8 @@ class Ticket {
|| in_array($staff->getEmail(), $sentlist) //No duplicates. || in_array($staff->getEmail(), $sentlist) //No duplicates.
|| $note->getStaffId() == $staff->getId()) //No need to alert the poster! || $note->getStaffId() == $staff->getId()) //No need to alert the poster!
continue; continue;
$alert = str_replace('%{recipient}', $staff->getFirstName(), $msg['body']); $alert = $this->replaceVars($msg, array('recipient' => $staff));
$email->sendAlert($staff->getEmail(), $msg['subj'], $alert, $attachments, $email->sendAlert($staff->getEmail(), $alert['subj'], $alert['body'], $attachments, $options);
$options);
$sentlist[] = $staff->getEmail(); $sentlist[] = $staff->getEmail();
} }
} }
......
...@@ -329,6 +329,10 @@ class PersonsName { ...@@ -329,6 +329,10 @@ class PersonsName {
return $this->name; return $this->name;
} }
function getName() {
return $this;
}
function asVar() { function asVar() {
return $this->__toString(); return $this->__toString();
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment