Reduce duplication in Notification::getMailSubject()

This commit is contained in:
Colin Williams
2015-01-31 15:07:07 +00:00
parent db338a33cf
commit ce13fced30

View File

@@ -118,6 +118,18 @@ class Notification extends Base
} }
} }
/**
* Get the mail subject for a given label
*
* @access private
* @param string $label Label
* @param array $data Template data
*/
private function getStandardMailSubject($label, array $data)
{
return e('[%s][%s] %s (#%d)', $data['task']['project_name'], $label, $data['task']['title'], $data['task']['id']);
}
/** /**
* Get the mail subject for a given template name * Get the mail subject for a given template name
* *
@@ -129,40 +141,40 @@ class Notification extends Base
{ {
switch ($template) { switch ($template) {
case 'file_creation': case 'file_creation':
$subject = e('[%s][New attachment] %s (#%d)', $data['task']['project_name'], $data['task']['title'], $data['task']['id']); $subject = $this->getStandardMailSubject('New attachment', $data);
break; break;
case 'comment_creation': case 'comment_creation':
$subject = e('[%s][New comment] %s (#%d)', $data['task']['project_name'], $data['task']['title'], $data['task']['id']); $subject = $this->getStandardMailSubject('New comment', $data);
break; break;
case 'comment_update': case 'comment_update':
$subject = e('[%s][Comment updated] %s (#%d)', $data['task']['project_name'], $data['task']['title'], $data['task']['id']); $subject = $this->getStandardMailSubject('Comment updated', $data);
break; break;
case 'subtask_creation': case 'subtask_creation':
$subject = e('[%s][New subtask] %s (#%d)', $data['task']['project_name'], $data['task']['title'], $data['task']['id']); $subject = $this->getStandardMailSubject('New subtask', $data);
break; break;
case 'subtask_update': case 'subtask_update':
$subject = e('[%s][Subtask updated] %s (#%d)', $data['task']['project_name'], $data['task']['title'], $data['task']['id']); $subject = $this->getStandardMailSubject('Subtask updated', $data);
break; break;
case 'task_creation': case 'task_creation':
$subject = e('[%s][New task] %s (#%d)', $data['task']['project_name'], $data['task']['title'], $data['task']['id']); $subject = $this->getStandardMailSubject('New task', $data);
break; break;
case 'task_update': case 'task_update':
$subject = e('[%s][Task updated] %s (#%d)', $data['task']['project_name'], $data['task']['title'], $data['task']['id']); $subject = $this->getStandardMailSubject('Task updated', $data);
break; break;
case 'task_close': case 'task_close':
$subject = e('[%s][Task closed] %s (#%d)', $data['task']['project_name'], $data['task']['title'], $data['task']['id']); $subject = $this->getStandardMailSubject('Task closed', $data);
break; break;
case 'task_open': case 'task_open':
$subject = e('[%s][Task opened] %s (#%d)', $data['task']['project_name'], $data['task']['title'], $data['task']['id']); $subject = $this->getStandardMailSubject('Task opened', $data);
break; break;
case 'task_move_column': case 'task_move_column':
$subject = e('[%s][Column Change] %s (#%d)', $data['task']['project_name'], $data['task']['title'], $data['task']['id']); $subject = $this->getStandardMailSubject('Column Change', $data);
break; break;
case 'task_move_position': case 'task_move_position':
$subject = e('[%s][Position Change] %s (#%d)', $data['task']['project_name'], $data['task']['title'], $data['task']['id']); $subject = $this->getStandardMailSubject('Position Change', $data);
break; break;
case 'task_assignee_change': case 'task_assignee_change':
$subject = e('[%s][Assignee Change] %s (#%d)', $data['task']['project_name'], $data['task']['title'], $data['task']['id']); $subject = $this->getStandardMailSubject('Assignee Change', $data);
break; break;
case 'task_due': case 'task_due':
$subject = e('[%s][Due tasks]', $data['project']); $subject = e('[%s][Due tasks]', $data['project']);