Skip to content
Snippets Groups Projects
Commit d9beb14e authored by JediKev's avatar JediKev
Browse files

department: Error Feedback

This addresses an issue where osTicket did not ensure associated items exist
before saving to the database. This also addresses an issue where the Parent
Topic error was not displayed on page.
parent a3d896c8
No related branches found
No related tags found
No related merge requests found
...@@ -620,6 +620,21 @@ implements TemplateVariable { ...@@ -620,6 +620,21 @@ implements TemplateVariable {
if ($vars['pid'] && !($p = static::lookup($vars['pid']))) if ($vars['pid'] && !($p = static::lookup($vars['pid'])))
$errors['pid'] = __('Department selection is required'); $errors['pid'] = __('Department selection is required');
if ($vars['sla_id'] && !SLA::lookup($vars['sla_id']))
$errors['sla_id'] = __('Invalid SLA');
if ($vars['manager_id'] && !Staff::lookup($vars['manager_id']))
$errors['manager_id'] = __('Unknown Staff');
if ($vars['email_id'] && !Email::lookup($vars['email_id']))
$errors['email_id'] = __('Unknown System Email');
if ($vars['tpl_id'] && !EmailTemplateGroup::lookup($vars['tpl_id']))
$errors['tpl_id'] = __('Unknown Template Set');
if ($vars['autoresp_email_id'] && !Email::lookup($vars['autoresp_email_id']))
$errors['autoresp_email_id'] = __('Unkown System Email');
// Format access update as [array(dept_id, role_id, alerts?)] // Format access update as [array(dept_id, role_id, alerts?)]
$access = array(); $access = array();
if (isset($vars['members'])) { if (isset($vars['members'])) {
...@@ -634,17 +649,17 @@ implements TemplateVariable { ...@@ -634,17 +649,17 @@ implements TemplateVariable {
return false; return false;
$this->pid = $vars['pid'] ?: null; $this->pid = $vars['pid'] ?: null;
$this->ispublic = isset($vars['ispublic'])?$vars['ispublic']:0; $this->ispublic = isset($vars['ispublic']) ? (int) $vars['ispublic'] : 0;
$this->email_id = isset($vars['email_id'])?$vars['email_id']:0; $this->email_id = isset($vars['email_id']) ? (int) $vars['email_id'] : 0;
$this->tpl_id = isset($vars['tpl_id'])?$vars['tpl_id']:0; $this->tpl_id = isset($vars['tpl_id']) ? (int) $vars['tpl_id'] : 0;
$this->sla_id = isset($vars['sla_id'])?$vars['sla_id']:0; $this->sla_id = isset($vars['sla_id']) ? (int) $vars['sla_id'] : 0;
$this->autoresp_email_id = isset($vars['autoresp_email_id'])?$vars['autoresp_email_id']:0; $this->autoresp_email_id = isset($vars['autoresp_email_id']) ? (int) $vars['autoresp_email_id'] : 0;
$this->manager_id = $vars['manager_id'] ?: 0; $this->manager_id = $vars['manager_id'] ?: 0;
$this->name = Format::striptags($vars['name']); $this->name = Format::striptags($vars['name']);
$this->signature = Format::sanitize($vars['signature']); $this->signature = Format::sanitize($vars['signature']);
$this->group_membership = $vars['group_membership']; $this->group_membership = $vars['group_membership'];
$this->ticket_auto_response = isset($vars['ticket_auto_response'])?$vars['ticket_auto_response']:1; $this->ticket_auto_response = isset($vars['ticket_auto_response']) ? (int) $vars['ticket_auto_response'] : 1;
$this->message_auto_response = isset($vars['message_auto_response'])?$vars['message_auto_response']:1; $this->message_auto_response = isset($vars['message_auto_response']) ? (int) $vars['message_auto_response'] : 1;
$this->flags = 0; $this->flags = 0;
$this->setFlag(self::FLAG_ASSIGN_MEMBERS_ONLY, isset($vars['assign_members_only'])); $this->setFlag(self::FLAG_ASSIGN_MEMBERS_ONLY, isset($vars['assign_members_only']));
$this->setFlag(self::FLAG_DISABLE_AUTO_CLAIM, isset($vars['disable_auto_claim'])); $this->setFlag(self::FLAG_DISABLE_AUTO_CLAIM, isset($vars['disable_auto_claim']));
......
...@@ -67,6 +67,7 @@ $info = Format::htmlchars(($errors && $_POST) ? $_POST : $info); ...@@ -67,6 +67,7 @@ $info = Format::htmlchars(($errors && $_POST) ? $_POST : $info);
?>><?php echo $name; ?></option> ?>><?php echo $name; ?></option>
<?php } ?> <?php } ?>
</select> </select>
&nbsp;<span class="error"><?php echo $errors['pid']; ?></span>
</td> </td>
</tr> </tr>
<tr> <tr>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment