$c = getTicket($ticket_id); $c["action"] = "user_add_comment"; $c["changer"] = getFullname($users, $admin_id); $performers = explode(",", $c["performers"]); foreach ($performers as $performer) { $mailto[$performer] = $users[$performer]["email"]; } $c['comment'] = $text; $user_email_body = $twig->render("helpdesk/user_email.twig", $c); email($mailto, "Заявка #{$ticket_id}. \"" . $c["title"] . "\": новый комментарий", $user_email_body); } break; case "rateTicket": $ticket = check_string($_REQUEST['ticket'], 'digits'); $rating = check_string($_REQUEST['rating'], 'digits'); $result = rateTicket($admin_login["uid"], $ticket, $rating); break; case "changeTicketStatus": $ticket = check_string($_REQUEST['ticket'], 'digits'); $status = check_string($_REQUEST['status'], 'digits'); $result = changeTicketStatus($admin_login["uid"], $ticket, $status); break; case 'reloadComments': require_once "../vendor/autoload.php"; Twig_Autoloader::register(); $loader = new Twig_Loader_Filesystem("../templates/helpdesk"); $twig = new Twig_Environment($loader, array("cache" => "")); $c['users'] = getUsers(); $c['uid'] = $admin_id; $ticket_id = check_string($_REQUEST['ticket_id'], 'digits'); $hide_autocomments = check_string($_REQUEST['hide_autocomments'], 'text');
if ($c['ob'] == "") { $c['ob'] = $default_order; $c['od'] = false; } $c['row_count'] = getListRowCount($c['filter'], 'filter'); $c['pages'] = ceil($c['row_count'] / $c['r']); $c['tickets'] = getTicketList($c['filter'], $c['ob'], $c['od'], $c['page'], $c['r'], 'filter'); if ($c['ob'] == $default_order) { $c['ob'] = ''; } } elseif (isset($_REQUEST['ticket'])) { $section = 'ticket_view'; $id = checkRequest('ticket'); $rating = checkRequest('r'); if ($rating > 0) { $message = rateTicket($uid, $id, $rating); $c['msg_type'] = $message['success'] ? 'success' : 'error'; $c['msg'] = $message['msg']; } $c['ticket'] = getTicket($id); $c['pagename'] = '#' . $c['ticket']['id'] . '. ' . $c['ticket']['title'] . ' :: Задачник'; $c['ticket']['performers'] = explode(',', $c['ticket']['performers']); } elseif (isset($_REQUEST['save'])) { $title = checkRequest('title'); $description = checkRequest('description'); if (isset($uid) and isset($title) and isset($description)) { $description .= "\n\n-----\nКомпьютер:\t{$c['usercomp']}\nОС:\t\t\t{$c['useros']}\nБраузер:\t{$_SERVER['HTTP_USER_AGENT']}"; $query_add = $db->query("INSERT INTO helpdesk ( `created`, `creator`, `title`, `description` )\r\n VALUES ( NOW(), '{$uid}', '{$title}', '{$description}')"); $id = $db->insert_id(); $change_status_query = "INSERT INTO helpdesk_history (`changed`,`changer`,`ticket`,`status`)\r\n VALUES (NOW(), '{$uid}', '{$id}', '1')"; $db->query($change_status_query);