Esempio n. 1
0
     if (!$thisstaff->canBanEmails()) {
         $errors['err'] = __('Permission Denied. You are not allowed to ban emails');
     } elseif (BanList::includes($ticket->getEmail())) {
         $errors['err'] = __('Email already in banlist');
     } elseif (Banlist::add($ticket->getEmail(), $thisstaff->getName())) {
         $msg = sprintf(__('Email %s added to banlist'), $ticket->getEmail());
     } else {
         $errors['err'] = __('Unable to add the email to banlist');
     }
     break;
 case 'unbanemail':
     if (!$thisstaff->canBanEmails()) {
         $errors['err'] = __('Permission Denied. You are not allowed to remove emails from banlist.');
     } elseif (Banlist::remove($ticket->getEmail())) {
         $msg = __('Email removed from banlist');
     } elseif (!BanList::includes($ticket->getEmail())) {
         $warn = __('Email is not in the banlist');
     } else {
         $errors['err'] = __('Unable to remove the email from banlist. Try again.');
     }
     break;
 case 'changeuser':
     if (!$thisstaff->canEditTickets()) {
         $errors['err'] = __('Permission Denied. You are not allowed to edit tickets');
     } elseif (!$_POST['user_id'] || !($user = User::lookup($_POST['user_id']))) {
         $errors['err'] = __('Unknown user selected');
     } elseif ($ticket->changeOwner($user)) {
         $msg = sprintf(__('Ticket ownership changed to %s'), Format::htmlchars($user->getName()));
     } else {
         $errors['err'] = __('Unable to change ticket ownership. Try again');
     }
//Useful warnings and errors the user might want to know!
if ($ticket->isClosed() && !$ticket->isReopenable()) {
    $warn = sprintf(__('Current ticket status (%s) does not allow the end user to reply.'), $ticket->getStatus());
} elseif ($ticket->isAssigned() && ($staff && $staff->getId() != $thisstaff->getId() || $team && !$team->hasMember($thisstaff))) {
    $warn .= sprintf('&nbsp;&nbsp;<span class="Icon assignedTicket">%s</span>', sprintf(__('Ticket is assigned to %s'), implode('/', $ticket->getAssignees())));
}
if (!$errors['err']) {
    if ($lock && $lock->getStaffId() != $thisstaff->getId()) {
        $errors['err'] = sprintf(__('This ticket is currently locked by %s'), $lock->getStaffName());
    } elseif ($emailBanned = TicketFilter::isBanned($ticket->getEmail())) {
        $errors['err'] = __('Email is in banlist! Must be removed before any reply/response');
    }
    // elseif (!Validator::is_valid_email($ticket->getEmail()))
    //     $errors['err'] = __('EndUser email address is not valid! Consider updating it before responding');
}
$unbannable = $emailBanned ? BanList::includes($ticket->getEmail()) : false;
if ($ticket->isOverdue()) {
    $warn .= '&nbsp;&nbsp;<span class="Icon overdueTicket">' . __('Marked overdue!') . '</span>';
}
?>
<table width="940" cellpadding="2" cellspacing="0" border="0">
    <tr>
        <td width="20%" class="has_bottom_border">
             <h2><a href="tickets.php?id=<?php 
echo $ticket->getId();
?>
"
             title="<?php 
echo __('Reload');
?>
"><i class="icon-refresh"></i>
Esempio n. 3
0
         $errors['err'] = $errors['val'] = 'Valid email address required';
     } elseif (!$errors) {
         $vars = array('w' => 'email', 'h' => 'equal', 'v' => trim($_POST['val']), 'filter_id' => $filter->getId(), 'isactive' => $_POST['isactive'], 'notes' => $_POST['notes']);
         if ($rule->update($vars, $errors)) {
             $msg = 'Email updated successfully';
         } elseif (!$errors['err']) {
             $errors['err'] = 'Error updating ban rule. Try again!';
         }
     }
     break;
 case 'add':
     if (!$filter) {
         $errors['err'] = 'Unknown or invalid ban list';
     } elseif (!$_POST['val'] || !Validator::is_email($_POST['val'])) {
         $errors['err'] = $errors['val'] = 'Valid email address required';
     } elseif (BanList::includes(trim($_POST['val']))) {
         $errors['err'] = $errors['val'] = 'Email already in the ban list';
     } elseif ($filter->addRule('email', 'equal', trim($_POST['val']), array('isactive' => $_POST['isactive'], 'notes' => $_POST['notes']))) {
         $msg = 'Email address added to ban list successfully';
         $_REQUEST['a'] = null;
         //Add filter rule here.
     } elseif (!$errors['err']) {
         $errors['err'] = 'Error creating ban rule. Try again!';
     }
     break;
 case 'mass_process':
     if (!$_POST['ids'] || !is_array($_POST['ids']) || !count($_POST['ids'])) {
         $errors['err'] = 'You must select at least one email to process.';
     } else {
         $count = count($_POST['ids']);
         switch (strtolower($_POST['a'])) {