diff --git a/plugin/ticket/lang/spanish.php b/plugin/ticket/lang/spanish.php index 009847d0d2..c352caeda2 100755 --- a/plugin/ticket/lang/spanish.php +++ b/plugin/ticket/lang/spanish.php @@ -65,7 +65,5 @@ $strings['SrcPhone'] = "Telefono"; $strings['SrcPresential'] = "Presencial"; // - -$strings['TckAssignedMsg'] = "

Estimado(a):

? ?

-

Se le ha sido asignado el ticket ? Ticket

-

Mensaje enviado desde el sistema de ticket.

"; \ No newline at end of file +$strings['TicketAssignedMsg'] = "

Estimado(a) %s

Se le ha sido asignado el ticket %s

Mensaje enviado desde el sistema de ticket.

"; +$strings['TicketAssignX'] = "[TICKETS] Asignacion de Ticket #%s "; diff --git a/plugin/ticket/src/course_user_list.php b/plugin/ticket/src/course_user_list.php index b99bcf5bce..8dc6877729 100644 --- a/plugin/ticket/src/course_user_list.php +++ b/plugin/ticket/src/course_user_list.php @@ -16,20 +16,20 @@ $user_info = api_get_user_info($user_id); $courses_list = CourseManager::get_courses_list_by_user_id($user_id, false, true); ?>
-
:
-
+
:
+
-
:
-
- -
+
:
+
+ +
\ No newline at end of file diff --git a/plugin/ticket/src/myticket.php b/plugin/ticket/src/myticket.php index 5fa4aa3452..cacad7478a 100644 --- a/plugin/ticket/src/myticket.php +++ b/plugin/ticket/src/myticket.php @@ -190,7 +190,12 @@ if ($isAdmin) { $renderer->setElementTemplate('{element} '); $form->addElement('text', 'keyword', get_lang('keyword'), 'size="25"'); $form->addElement('style_submit_button', 'submit_simple', get_lang('Search'), 'class="search"'); - $form->addElement('static', 'search_advanced_link', null, ' ' . Display::return_icon('div_show.gif', get_lang('Show'), array('style' => 'vertical-align:middle')) . ' ' . get_lang('AdvancedSearch') . ''); + $form->addElement('static', 'search_advanced_link', null, + '' + . ' ' + . Display::return_icon('div_show.gif', get_lang('Show'), + array('style' => 'vertical-align:middle')) . ' ' + . get_lang('AdvancedSearch') . ''); echo '
'; if (api_is_platform_admin()) { diff --git a/plugin/ticket/src/new_ticket.php b/plugin/ticket/src/new_ticket.php index 247c658aff..70ed3515e3 100644 --- a/plugin/ticket/src/new_ticket.php +++ b/plugin/ticket/src/new_ticket.php @@ -108,7 +108,6 @@ function add_image_form() { id_elem1 = "filepath_"+counter_image; id_elem1 = "\'"+id_elem1+"\'"; document.getElementById("filepath_"+counter_image).innerHTML = " "; - //document.getElementById("filepath_"+counter_image).innerHTML = " "; if (filepaths.childNodes.length == 6) { var link_attach = document.getElementById("link-more-attach"); if (link_attach) { @@ -329,8 +328,9 @@ function save_ticket() global $plugin; $category_id = $_POST['category_id']; $content = $_POST['content']; - if ($_POST['phone'] != "") + if ($_POST['phone'] != "") { $content.= '

 ' . get_lang('Phone') . ': ' . $_POST['phone'] . '

'; + } $course_id = $_POST['course_id']; $project_id = $_POST['project_id']; $subject = $_POST['subject']; @@ -342,8 +342,13 @@ function save_ticket() $priority = $_POST['priority_id']; $status = $_POST['status_id']; $file_attachments = $_FILES; - if (TicketManager::insert_new_ticket($category_id, $course_id, $project_id, $other_area, $email, $subject, $content, $personal_email, $file_attachments, $source, $priority, $status, $user_id, api_get_user_id())) { - header('location:' . api_get_path(WEB_PLUGIN_PATH) . PLUGIN_NAME . '/s/myticket.php?message=success'); + if (TicketManager::insert_new_ticket( + $category_id, $course_id, $project_id, + $other_area, $email, $subject, $content, + $personal_email, $file_attachments, + $source, $priority, $status, $user_id, + api_get_user_id())) { + header('location:' . api_get_path(WEB_PLUGIN_PATH) . PLUGIN_NAME . '/src/myticket.php?message=success'); } else { Display::display_header(get_lang('ComposeMessage')); Display::display_error_message($plugin->get_lang('ErrorRegisterMessage')); @@ -364,7 +369,13 @@ function get_number_of_users() } if (isset($_GET['keyword'])) { $keyword = Database::escape_string(trim($_GET['keyword'])); - $sql .= " WHERE (u.firstname LIKE '%" . $keyword . "%' OR u.lastname LIKE '%" . $keyword . "%' OR concat(u.firstname,' ',u.lastname) LIKE '%" . $keyword . "%' OR concat(u.lastname,' ',u.firstname) LIKE '%" . $keyword . "%' OR u.username LIKE '%" . $keyword . "%' OR u.email LIKE '%" . $keyword . "%' OR u.official_code LIKE '%" . $keyword . "%') "; + $sql .= " WHERE (u.firstname LIKE '%$keyword%' OR + u.lastname LIKE '%$keyword%' OR + concat(u.firstname,' ',u.lastname) LIKE '%$keyword%' OR + concat(u.lastname,' ',u.firstname) LIKE '%$keyword%' OR + u.username LIKE '%$keyword%' OR + u.email LIKE '%$keyword%' OR + u.official_code LIKE '%$keyword%') "; } $res = Database::query($sql); $obj = Database::fetch_object($res); @@ -383,23 +394,36 @@ function get_user_data($from, $number_of_items, $column, $direction) { $user_table = Database :: get_main_table(TABLE_MAIN_USER); $admin_table = Database :: get_main_table(TABLE_MAIN_ADMIN); + + if (api_is_western_name_order()) { + $col34 = "u.firstname AS col3, + u.lastname AS col4,"; + } else { + $col34 = "u.lastname AS col3, + u.firstname AS col4,"; + } + $sql = "SELECT - u.user_id AS col0, - u.official_code AS col2, - " . (api_is_western_name_order() ? "u.firstname AS col3, - u.lastname AS col4," : "u.lastname AS col3, - u.firstname AS col4,") . " - u.username AS col5, - u.email AS col6, - u.status AS col7, - u.active AS col8, - u.user_id AS col9 " . - ", u.expiration_date AS exp " . - " FROM $user_table u "; + u.user_id AS col0, + u.official_code AS col2, + $col34 + u.username AS col5, + u.email AS col6, + u.status AS col7, + u.active AS col8, + u.user_id AS col9 , + u.expiration_date AS exp + FROM $user_table u "; if (isset($_GET['keyword'])) { $keyword = Database::escape_string(trim($_GET['keyword'])); - $sql .= " WHERE (u.firstname LIKE '%" . $keyword . "%' OR u.lastname LIKE '%" . $keyword . "%' OR concat(u.firstname,' ',u.lastname) LIKE '%" . $keyword . "%' OR concat(u.lastname,' ',u.firstname) LIKE '%" . $keyword . "%' OR u.username LIKE '%" . $keyword . "%' OR u.official_code LIKE '%" . $keyword . "%' OR u.email LIKE '%" . $keyword . "%' )"; + $sql .= " WHERE (u.firstname LIKE '%$keyword%' OR + u.lastname LIKE '%$keyword%' OR + concat(u.firstname,' ',u.lastname) LIKE '%$keyword%' OR + concat(u.lastname,' ',u.firstname) LIKE '%$keyword%' OR + u.username LIKE '%$keyword%' OR + u.official_code LIKE '%$keyword%' OR + u.email LIKE '%$keyword%' )"; } if (!in_array($direction, array('ASC', 'DESC'))) { $direction = 'ASC'; @@ -426,8 +450,8 @@ function get_user_data($from, $number_of_items, $column, $direction) $user_id = $user[0]; $button = '' . Display::return_icon('view_more_stats.gif', get_lang('Info')) . ''; $button = ' - ' . get_lang('Courses') . ' -   '; + ' . get_lang('Courses') . ' +   '; $users[] = array($photo, $user[1], $user[2], $user[3], $user[4], $user[5], $button); } return $users; diff --git a/plugin/ticket/src/report.php b/plugin/ticket/src/report.php index ccf931f5c1..26c056fef1 100644 --- a/plugin/ticket/src/report.php +++ b/plugin/ticket/src/report.php @@ -26,19 +26,19 @@ unset($_SESSION['this_section']); $htmlHeadXtra[] = ' '; $htmlHeadXtra[] = ''; +/** + * @todo Delete this function, it already exists in report.php + * @param string $s + * @return string + */ + function js_str($s) { return '"' . addcslashes($s, "\0..\37\"\\") . '"'; } +/** + * This is a javascript helper to generate and array + * @param array $array + * @param string $name + * @param integer $key + * @return string + */ function js_array($array, $name, $key) { - $temp = array(); $return = "new Array(); "; foreach ($array as $value) { $return .= $name . "['" . $value['category_id'] . "'] ='" . $value[$key] . "'; "; @@ -153,6 +164,11 @@ function js_array($array, $name, $key) return $return; } +/** + * + * @global array $types + * @global object $plugin + */ function show_form_send_ticket() { global $types, $plugin; @@ -227,9 +243,12 @@ function show_form_send_ticket()
'; echo ''; } - +/** + * Save ticke function + */ function save_ticket() { + global $plugin; $category_id = $_POST['category_id']; $content = $_POST['content']; if ($_POST['phone'] != "") @@ -242,7 +261,7 @@ function save_ticket() $personal_email = $_POST['personal_email']; $file_attachments = $_FILES; if (TicketManager::insert_new_ticket($category_id, $course_id, $project_id, $other_area, $email, $subject, $content, $personal_email, $file_attachments)) { - header('location:' . api_get_path(WEB_PLUGIN_PATH) . PLUGIN_NAME . '/s/myticket.php?message=success'); + header('location:' . api_get_path(WEB_PLUGIN_PATH) . PLUGIN_NAME . '/src/myticket.php?message=success'); } else { Display::display_header(get_lang('ComposeMessage')); Display::display_error_message($plugin->get_lang('ErrorRegisterMessage')); diff --git a/plugin/ticket/src/ticket.class.php b/plugin/ticket/src/ticket.class.php index 0033610996..48b25bca3d 100644 --- a/plugin/ticket/src/ticket.class.php +++ b/plugin/ticket/src/ticket.class.php @@ -80,7 +80,10 @@ class TicketManager * @return bool */ public static function insert_new_ticket( - $category_id, $course_id, $project_id, $other_area, $email, $subject, $content, $personalEmail = "", $file_attachments, $source = 'VRT', $priority = 'NRM', $status = '', $request_user = '', $assigned_user = 0 + $category_id, $course_id, $project_id, $other_area, $email, + $subject, $content, $personalEmail = "", $file_attachments, + $source = 'VRT', $priority = 'NRM', $status = '', + $request_user = '', $assigned_user = 0 ) { $table_support_tickets = Database::get_main_table(TABLE_TICKET_TICKET); @@ -130,14 +133,14 @@ class TicketManager '$request_user', '$personalEmail', '$status', - '" . $now . "', + '$now', $user_id, - '" . $now . "', + '$now', '$user_id', - '" . $now . "', + '$now', '$source' )"; - $result = Database::query($sql_insert_ticket); + Database::query($sql_insert_ticket); $ticket_id = Database::insert_id(); if ($assigned_user != 0) { self::assign_ticket_user($ticket_id, $assigned_user); @@ -147,11 +150,13 @@ class TicketManager (int) $ticket_id, 11, "0", STR_PAD_LEFT ); $sql_update_code = "UPDATE $table_support_tickets - SET ticket_code = '$ticket_code' WHERE ticket_id = '$ticket_id'"; + SET ticket_code = '$ticket_code' + WHERE ticket_id = '$ticket_id'"; Database::query($sql_update_code); $data_files = array(); $sql_update_total = "UPDATE $table_support_category - SET total_tickets = total_tickets +1 WHERE category_id = '$category_id';"; + SET total_tickets = total_tickets +1 + WHERE category_id = '$category_id';"; Database::query($sql_update_total); if (self::insert_message($ticket_id, $subject, $content, $file_attachments, $request_user)) { global $data_files; @@ -160,8 +165,7 @@ class TicketManager $helpDeskMessage = ' - + @@ -207,6 +211,7 @@ class TicketManager */ public static function assign_ticket_user($ticket_id, $user_id) { + global $plugin; $ticket_id = intval($ticket_id); $user_id = intval($user_id); $table_support_tickets = Database::get_main_table(TABLE_TICKET_TICKET); @@ -214,8 +219,8 @@ class TicketManager $now = api_get_utc_datetime(); $sql_update = "UPDATE $table_support_tickets - SET assigned_last_user = '$user_id' - WHERE ticket_id = '$ticket_id'"; + SET assigned_last_user = '$user_id' + WHERE ticket_id = '$ticket_id'"; Database::query($sql_update); if (Database::affected_rows() > 0) { $insert_id = api_get_user_id(); @@ -235,12 +240,11 @@ class TicketManager if ($insert_id != $user_id) { $info = api_get_user_info($user_id); $sender = api_get_user_info($insert_id); - $message = '

Estimado(a):

' . $info['firstname'] . " " . $info['lastname'] . "

-

Te asignaron el ticket $ticket_id " . 'Ticket

'; + $href = api_get_path(WEB_PLUGIN_PATH) . PLUGIN_NAME . '/src/ticket_details.php?ticket_id=' . $ticket_id; + $message = sprintf($plugin->get_lang('TicketAssignedMsg'), $info['complete_name'], $href, $ticket_id); + $mailTitle = sprintf($plugin->get_lang('TicketAssignX'), $ticket_id); api_mail_html( - $info['firstname'] . " " . $info['lastname'], $info['mail'], "[TICKETS] Asignacion de Ticket #$ticket_id ", $message, null, // sender name + $info['complete_name'], $info['mail'], $mailTitle, $message, null, // sender name null, // sender e-mail array('cc' => $sender['email']) // should be support e-mail (platform admin) here ); @@ -276,18 +280,18 @@ class TicketManager $table_support_message_attachments = Database::get_main_table(TABLE_TICKET_MESSAGE_ATTACHMENTS); if ($sendConfirmation) { $form = ' -

' . get_lang('TicketWasThisAnswerSatisfying') . '

- - - '; +

' . get_lang('TicketWasThisAnswerSatisfying') . '

+ + + '; $content .= $form; Database::query( "UPDATE $table_support_tickets SET status_id='XCF' WHERE ticket_id = '$ticket_id'" ); } $sql_message_id = "SELECT COUNT(*) as total_messages - FROM $table_support_messages - WHERE ticket_id ='$ticket_id'"; + FROM $table_support_messages + WHERE ticket_id ='$ticket_id'"; $result = Database::query($sql_message_id); $obj = Database::fetch_object($result); $message_id = $obj->total_messages + 1; @@ -318,18 +322,18 @@ class TicketManager )"; Database::query($sql_insert_message); $sql_update_total_message = "UPDATE $table_support_tickets - SET sys_lastedit_user_id ='$user_id', - sys_lastedit_datetime ='$now', - total_messages = ( - SELECT COUNT(*) as total_messages - FROM $table_support_messages - WHERE ticket_id ='$ticket_id' - ) WHERE ticket_id ='$ticket_id' "; + SET sys_lastedit_user_id ='$user_id', + sys_lastedit_datetime ='$now', + total_messages = ( + SELECT COUNT(*) as total_messages + FROM $table_support_messages + WHERE ticket_id ='$ticket_id' + ) WHERE ticket_id ='$ticket_id' "; Database::query($sql_update_total_message); $sql_message_att_id = "SELECT COUNT(*) as total_attach - FROM $table_support_message_attachments - WHERE ticket_id ='$ticket_id' AND message_id = '$message_id'"; + FROM $table_support_message_attachments + WHERE ticket_id ='$ticket_id' AND message_id = '$message_id'"; $result = Database::query($sql_message_att_id); $obj = Database::fetch_object($result); @@ -473,8 +477,8 @@ class TicketManager $table_support_category cat, $table_support_priority priority, $table_support_status status, - " . Database::get_main_table(TABLE_MAIN_USER) . " user, - tck_message msg + $table_main_user user, + $table_support_messages msg WHERE cat.category_id = ticket.category_id AND ticket.priority_id = priority.priority_id AND ticket.status_id = status.status_id @@ -536,7 +540,13 @@ class TicketManager $sql .= " AND ticket.category_id = '$keyword_category' "; } if ($keyword_request_user != '') { - $sql .= " AND (ticket.request_user = '$keyword_request_user' OR user.firstname LIKE '%" . $keyword_request_user . "%' OR user.official_code LIKE '%" . $keyword_request_user . "%' OR user.lastname LIKE '%" . $keyword_request_user . "%' OR concat(user.firstname,' ',user.lastname) LIKE '%" . $keyword_request_user . "%' OR concat(user.lastname,' ',user.firstname) LIKE '%" . $keyword_request_user . "%' OR user.username LIKE '%" . $keyword_request_user . "%') "; + $sql .= " AND (ticket.request_user = '$keyword_request_user' + OR user.firstname LIKE '%$keyword_request_user%' + OR user.official_code LIKE '%$keyword_request_user%' + OR user.lastname LIKE '%$keyword_request_user%' + OR concat(user.firstname,' ',user.lastname) LIKE '%$keyword_request_user%' + OR concat(user.lastname,' ',user.firstname) LIKE '%$keyword_request_user%' + OR user.username LIKE '%$keyword_request_user%') "; } if ($keyword_admin != '') { $sql .= " AND ticket.assigned_last_user = '$keyword_admin' "; @@ -549,7 +559,7 @@ class TicketManager } if ($keyword_range == '1' && $keyword_start_date_start != '' && $keyword_start_date_end != '') { $sql .= " AND DATE_FORMAT( ticket.start_date,'%d/%m/%Y') >= '$keyword_start_date_start' - AND DATE_FORMAT( ticket.start_date,'%d/%m/%Y') <= '$keyword_start_date_end'"; + AND DATE_FORMAT( ticket.start_date,'%d/%m/%Y') <= '$keyword_start_date_end'"; } if ($keyword_priority != '') { $sql .= " AND ticket.priority_id = '$keyword_priority' "; @@ -564,7 +574,7 @@ class TicketManager $course_table = Database :: get_main_table(TABLE_MAIN_COURSE); $sql .= " AND ticket.course_id IN ( "; $sql .= "SELECT id FROM $course_table - WHERE (title LIKE '%$keyword_course%' + WHERE (title LIKE '%$keyword_course%' OR code LIKE '%$keyword_course%' OR visual_code LIKE '%$keyword_course%' ) @@ -604,34 +614,35 @@ class TicketManager $tickets = array(); while ($row = Database::fetch_assoc($result)) { - $sql_unread = "SELECT COUNT(DISTINCT message.message_id) AS unread FROM " . $table_support_tickets . " ticket, " . $table_support_messages . " message, " . $table_main_user . " user - WHERE ticket.ticket_id = message.ticket_id AND ticket.ticket_id= '" . $row['col0'] . "' AND message.status='NOL' AND message.sys_insert_user_id = user.user_id "; + $sql_unread = "SELECT + COUNT(DISTINCT message.message_id) AS unread + FROM $table_support_tickets ticket, + $table_support_messages message, + $table_main_user user + WHERE ticket.ticket_id = message.ticket_id + AND ticket.ticket_id = '{$row['col0']}' + AND message.status = 'NOL' + AND message.sys_insert_user_id = user.user_id "; if ($isAdmin) { - $sql_unread .= " AND user.user_id NOT IN (SELECT user_id FROM $table_main_admin) AND ticket.status_id != 'REE' "; + $sql_unread .= " AND user.user_id + NOT IN (SELECT user_id FROM $table_main_admin) + AND ticket.status_id != 'REE' "; } else { - $sql_unread .= " AND user.user_id IN (SELECT user_id FROM $table_main_admin) "; + $sql_unread .= " AND user.user_id + IN (SELECT user_id FROM $table_main_admin) "; } $result_unread = Database::query($sql_unread); $unread = Database::fetch_object($result_unread)->unread; $userInfo = UserManager::get_user_info_by_id($row['user_id']); - $name = '' . api_get_person_name( - $userInfo['firstname'], $userInfo['lastname'] - ) . ''; + $hrefUser = api_get_path(WEB_PATH) . 'main/admin/user_information.php?user_id=' . $row['user_id']; + $name = " {$userInfo['complete_name']} "; $actions = ""; - /* if($row['status_id']!='CLS' && $row['status_id']!='REE'){ - if( $row['responsable'] != 0 && $row['responsable'] == $user_id ){ - $actions = ''; - }else{ - $actions = ''; - } - } */ + if ($row['responsable'] != 0) { + $hrefResp = api_get_path(WEB_PATH) . 'main/admin/user_information.php?user_id=' . $row['responsable']['user_id']; + $completRespName = api_get_person_name($row['responsable']['firstname'], $row['responsable']['lastname']); $row['responsable'] = api_get_user_info($row['responsable']); - $row['responsable'] = '' . $row['responsable']['firstname'] . ' ' . $row['responsable']['lastname'] . ''; + $row['responsable'] = " {$completRespName} "; } else { if ($row['status_id'] != 'REE') { $row['responsable'] = '' . get_lang('ToBeAssigned') . ''; @@ -711,8 +722,7 @@ class TicketManager ); } if ($unread > 0) { - - $ticket['0'] = $ticket['0'] . '  (' . $unread . ')'; + $ticket['0'] = $ticket['0'] . '  (' . $unread . ')'; } if ($isAdmin) { $ticket['0'] .= '   @@ -751,10 +761,16 @@ class TicketManager if (is_null($user_id) || $user_id == 0) { $user_id = api_get_user_id(); } - $sql = "SELECT COUNT(ticket.ticket_id) AS total FROM " . $table_support_tickets . " ticket ," . $table_support_category . " cat , " . $table_support_priority . " priority, " . $table_support_status . " status , " . Database::get_main_table( - TABLE_MAIN_USER - ) . " user - WHERE cat.category_id = ticket.category_id AND ticket.priority_id = priority.priority_id AND ticket.status_id = status.status_id AND user.user_id = ticket.request_user "; + $sql = "SELECT COUNT(ticket.ticket_id) AS total + FROM $table_support_tickets ticket , + $table_support_category cat , + $table_support_priority priority, + $table_support_status status , + $table_main_user user + WHERE cat.category_id = ticket.category_id + AND ticket.priority_id = priority.priority_id + AND ticket.status_id = status.status_id + AND user.user_id = ticket.request_user "; if (!api_is_platform_admin()) { $sql .= " AND request_user = '$user_id' "; } @@ -763,7 +779,12 @@ class TicketManager if (isset($_GET['submit_simple'])) { if ($_GET['keyword'] != '') { $keyword = Database::escape_string(trim($_GET['keyword'])); - $sql .= " AND (ticket.ticket_code = '" . $keyword . "' OR user.firstname LIKE '%" . $keyword . "%' OR user.lastname LIKE '%" . $keyword . "%' OR concat(user.firstname,' ',user.lastname) LIKE '%" . $keyword . "%' OR concat(user.lastname,' ',user.firstname) LIKE '%" . $keyword . "%' OR user.username LIKE '%" . $keyword . "%') "; + $sql .= " AND (ticket.ticket_code = '$keyword' + OR user.firstname LIKE '%$keyword%' + OR user.lastname LIKE '%$keyword%' + OR concat(user.firstname,' ',user.lastname) LIKE '%$keyword%' + OR concat(user.lastname,' ',user.firstname) LIKE '%$keyword%' + OR user.username LIKE '%$keyword%') "; } } $keyword_unread = Database::escape_string( @@ -806,7 +827,13 @@ class TicketManager $sql .= " AND ticket.category_id = '$keyword_category' "; } if ($keyword_request_user != '') { - $sql .= " AND (ticket.request_user = '$keyword_request_user' OR user.firstname LIKE '%" . $keyword_request_user . "%' OR user.official_code LIKE '%" . $keyword_request_user . "%' OR user.lastname LIKE '%" . $keyword_request_user . "%' OR concat(user.firstname,' ',user.lastname) LIKE '%" . $keyword_request_user . "%' OR concat(user.lastname,' ',user.firstname) LIKE '%" . $keyword_request_user . "%' OR user.username LIKE '%" . $keyword_request_user . "%') "; + $sql .= " AND (ticket.request_user = '$keyword_request_user' + OR user.firstname LIKE '%$keyword_request_user%' + OR user.official_code LIKE '%$keyword_request_user%' + OR user.lastname LIKE '%$keyword_request_user%' + OR concat(user.firstname,' ',user.lastname) LIKE '%$keyword_request_user%' + OR concat(user.lastname,' ',user.firstname) LIKE '%$keyword_request_user%' + OR user.username LIKE '%$keyword_request_user%') "; } if ($keyword_admin != '') { $sql .= " AND ticket.assigned_last_user = '$keyword_admin' "; @@ -818,7 +845,8 @@ class TicketManager $sql .= " AND DATE_FORMAT( ticket.start_date,'%d/%m/%Y') = '$keyword_start_date_start' "; } if ($keyword_range == '1' && $keyword_start_date_start != '' && $keyword_start_date_end != '') { - $sql .= " AND DATE_FORMAT( ticket.start_date,'%d/%m/%Y') >= '$keyword_start_date_start' AND DATE_FORMAT( ticket.start_date,'%d/%m/%Y') <= '$keyword_start_date_end'"; + $sql .= " AND DATE_FORMAT( ticket.start_date,'%d/%m/%Y') >= '$keyword_start_date_start' + AND DATE_FORMAT( ticket.start_date,'%d/%m/%Y') <= '$keyword_start_date_end'"; } if ($keyword_priority != '') { $sql .= " AND ticket.priority_id = '$keyword_priority' "; @@ -832,14 +860,39 @@ class TicketManager if ($keyword_course != '') { $course_table = Database :: get_main_table(TABLE_MAIN_COURSE); $sql .= " AND ticket.course_id IN ( "; - $sql .= "SELECT id FROM $course_table WHERE (title LIKE '%" . $keyword_course . "%' OR code LIKE '%" . $keyword_course . "%' OR visual_code LIKE '%" . $keyword_course . "%' )) "; + $sql .= "SELECT id + FROM $course_table + WHERE (title LIKE '%$keyword_course%' + OR code LIKE '%$keyword_course%' + OR visual_code LIKE '%$keyword_course%' )) "; } } if ($keyword_unread == 'yes') { - $sql .= " AND ticket.ticket_id IN (SELECT ticket.ticket_id FROM $table_support_tickets ticket, $table_support_messages message, $table_main_user user WHERE ticket.ticket_id = message.ticket_id AND message.status = 'NOL' AND message.sys_insert_user_id = user.user_id AND user.user_id NOT IN (SELECT user_id FROM $table_main_admin) AND ticket.status_id != 'REE' GROUP BY ticket.ticket_id)"; + $sql .= " AND ticket.ticket_id IN ( "; + $sql .= "SELECT ticket.ticket_id + FROM $table_support_tickets ticket, + $table_support_messages message, + $table_main_user user + WHERE ticket.ticket_id = message.ticket_id + AND message.status = 'NOL' + AND message.sys_insert_user_id = user.user_id + AND user.user_id NOT IN ( + SELECT user_id FROM $table_main_admin + ) AND ticket.status_id != 'REE' + GROUP BY ticket.ticket_id)"; } else { if ($keyword_unread == 'no') { - $sql .= " AND ticket.ticket_id NOT IN (SELECT ticket.ticket_id FROM $table_support_tickets ticket, $table_support_messages message, $table_main_user user WHERE ticket.ticket_id = message.ticket_id AND message.status = 'NOL' AND message.sys_insert_user_id = user.user_id AND user.user_id NOT IN (SELECT user_id FROM $table_main_admin) AND ticket.status_id != 'REE' GROUP BY ticket.ticket_id)"; + $sql .= " AND ticket.ticket_id NOT IN ( "; + $sql .= " SELECT ticket.ticket_id + FROM $table_support_tickets ticket, + $table_support_messages message, + $table_main_user user + WHERE ticket.ticket_id = message.ticket_id + AND message.status = 'NOL' + AND message.sys_insert_user_id = user.user_id + AND user.user_id NOT IN (SELECT user_id FROM $table_main_admin) + AND ticket.status_id != 'REE' + GROUP BY ticket.ticket_id)"; } } $res = Database::query($sql); @@ -869,9 +922,19 @@ class TicketManager $table_support_message_attachments = Database::get_main_table( TABLE_TICKET_MESSAGE_ATTACHMENTS ); + $table_main_user = Database::get_main_table(TABLE_MAIN_USER); - $sql = "SELECT ticket.* ,cat.name , status.name as status, priority.priority FROM " . $table_support_tickets . " ticket, " . $table_support_category . " cat ," . $table_support_priority . " priority , " . $table_support_status . " status - WHERE ticket.ticket_id = '$ticket_id' AND cat.category_id = ticket.category_id AND priority.priority_id = ticket.priority_id AND status.status_id = ticket.status_id "; + $sql = "SELECT + ticket.* ,cat.name , + status.name as status, priority.priority + FROM $table_support_tickets ticket, + $table_support_category cat , + $table_support_priority priority , + $table_support_status status + WHERE ticket.ticket_id = '$ticket_id' + AND cat.category_id = ticket.category_id + AND priority.priority_id = ticket.priority_id + AND status.status_id = ticket.status_id "; if (!UserManager::is_admin($user_id)) { $sql .= "AND ticket.request_user = '$user_id'"; } @@ -905,32 +968,37 @@ class TicketManager $ticket['usuario'] = $userInfo; $ticket['ticket'] = $row; } - $sql = "SELECT * FROM " . $table_support_messages . " message, " . Database::get_main_table( - TABLE_MAIN_USER - ) . " user WHERE message.ticket_id = '$ticket_id' AND message.sys_insert_user_id = user.user_id "; + $sql = "SELECT * FROM $table_support_messages message, + $table_main_user user + WHERE message.ticket_id = '$ticket_id' + AND message.sys_insert_user_id = user.user_id "; $result = Database::query($sql); $ticket['messages'] = array(); $attach_icon = Display::return_icon('attachment.gif', ''); $admin_table = Database::get_main_table(TABLE_MAIN_ADMIN); while ($row = Database::fetch_assoc($result)) { $message = $row; + $completeName = api_get_person_name($row['firstname'], $row['lastname']); + $href = api_get_path(WEB_PATH) . 'main/admin/user_information.php?user_id=' . $row['user_id']; //Check if user is an admin $sql_admin = "SELECT user_id FROM $admin_table - WHERE user_id = '" . intval($message['user_id']) . "' LIMIT 1"; + WHERE user_id = '" . intval($message['user_id']) . "' + LIMIT 1"; $result_admin = Database::query($sql_admin); $message['admin'] = false; if (Database::num_rows($result_admin) > 0) { $message['admin'] = true; } - $message['user_created'] = '' . $row['firstname'] . ' ' . $row['lastname'] . ''; - $sql_atachment = "SELECT * FROM " . TABLE_TICKET_MESSAGE_ATTACHMENTS . " WHERE message_id = " . $row['message_id'] . " AND ticket_id= '$ticket_id' "; + + $message['user_created'] = " $completeName "; + $sql_atachment = "SELECT * FROM $table_support_message_attachments + WHERE message_id = " . $row['message_id'] . " + AND ticket_id= '$ticket_id' "; $result_attach = Database::query($sql_atachment); while ($row2 = Database::fetch_assoc($result_attach)) { $archiveURL = $archiveURL = api_get_path( WEB_PLUGIN_PATH - ) . PLUGIN_NAME . '/s/download.php?ticket_id=' . $ticket_id . '&file='; + ) . PLUGIN_NAME . '/src/download.php?ticket_id=' . $ticket_id . '&file='; $row2['attachment_link'] = $attach_icon . ' ' . $row2['filename'] . ' (' . $row2['size'] . ')'; $message['atachments'][] = $row2; } @@ -951,9 +1019,12 @@ class TicketManager $table_support_messages = Database::get_main_table( TABLE_TICKET_MESSAGE ); + $table_support_tickets = Database::get_main_table(TABLE_TICKET_TICKET); $now = api_get_utc_datetime(); - $sql = "UPDATE " . $table_support_messages . " SET status = 'LEI' , sys_lastedit_user_id ='" . api_get_user_id( - ) . "' ,sys_lastedit_datetime ='" . $now . "' WHERE ticket_id ='$ticket_id' "; + $sql = "UPDATE " . $table_support_messages . " + SET status = 'LEI', sys_lastedit_user_id ='" . api_get_user_id() . "', + sys_lastedit_datetime ='" . $now . "' + WHERE ticket_id ='$ticket_id' "; if (api_is_platform_admin()) { $sql .= " AND sys_insert_user_id = '$user_id'"; @@ -964,7 +1035,8 @@ class TicketManager Database::query($sql); if (Database::affected_rows() > 0) { Database::query( - "UPDATE " . Database::get_main_table(TABLE_TICKET_TICKET) . " SET status_id = 'PND' WHERE ticket_id ='$ticket_id' AND status_id = 'NAT'" + "UPDATE $table_support_tickets SET status_id = 'PND' + WHERE ticket_id ='$ticket_id' AND status_id = 'NAT'" ); return true; } else { @@ -987,7 +1059,10 @@ class TicketManager TABLE_TICKET_MESSAGE ); $now = api_get_utc_datetime(); - $sql = "UPDATE " . $table_support_tickets . " SET status_id = '$status_id' , sys_lastedit_user_id ='$user_id' ,sys_lastedit_datetime ='" . $now . "' WHERE ticket_id ='$ticket_id'"; + $sql = "UPDATE " . $table_support_tickets . " + SET status_id = '$status_id', sys_lastedit_user_id ='$user_id', + sys_lastedit_datetime ='" . $now . "' + WHERE ticket_id ='$ticket_id'"; Database::query($sql); if (Database::affected_rows() > 0) { return true; @@ -1009,11 +1084,19 @@ class TicketManager $table_main_admin = Database::get_main_table(TABLE_MAIN_ADMIN); $user_info = api_get_user_info(); $user_id = $user_info['user_id']; - $sql = "SELECT COUNT( DISTINCT ticket.ticket_id) AS unread FROM " . $table_support_tickets . " ticket, " . $table_support_messages . " message , " . $table_main_user . " user WHERE ticket.ticket_id = message.ticket_id AND message.status = 'NOL' AND user.user_id = message.sys_insert_user_id "; + $sql = "SELECT COUNT( DISTINCT ticket.ticket_id) AS unread + FROM $table_support_tickets ticket, + $table_support_messages message , + $table_main_user user + WHERE ticket.ticket_id = message.ticket_id + AND message.status = 'NOL' + AND user.user_id = message.sys_insert_user_id "; if (!api_is_platform_admin()) { - $sql .= " AND ticket.request_user = '$user_id' AND user_id IN (SELECT user_id FROM $table_main_admin) "; + $sql .= " AND ticket.request_user = '$user_id' + AND user_id IN (SELECT user_id FROM $table_main_admin) "; } else { - $sql .= " AND user_id NOT IN (SELECT user_id FROM $table_main_admin) AND ticket.status_id != 'REE'"; + $sql .= " AND user_id NOT IN (SELECT user_id FROM $table_main_admin) + AND ticket.status_id != 'REE'"; } $sql .= " AND ticket.project_id != '' "; $res = Database::query($sql); @@ -1029,7 +1112,10 @@ class TicketManager { $table_support_tickets = Database::get_main_table(TABLE_TICKET_TICKET); $now = api_get_utc_datetime(); - $sql = "UPDATE " . $table_support_tickets . " SET priority_id = 'ALT', sys_lastedit_user_id ='$user_id' ,sys_lastedit_datetime ='" . $now . "' WHERE ticket_id = '$ticket_id'"; + $sql = "UPDATE $table_support_tickets + SET priority_id = 'ALT', sys_lastedit_user_id ='$user_id', + sys_lastedit_datetime ='$now' + WHERE ticket_id = '$ticket_id'"; Database::query($sql); } @@ -1041,7 +1127,10 @@ class TicketManager { $table_support_tickets = Database::get_main_table(TABLE_TICKET_TICKET); $now = api_get_utc_datetime(); - $sql = "UPDATE " . $table_support_tickets . " SET status_id = 'CLS' , sys_lastedit_user_id ='$user_id' ,sys_lastedit_datetime ='" . $now . "' ,end_date ='" . $now . "' WHERE ticket_id ='$ticket_id'"; + $sql = "UPDATE $table_support_tickets + SET status_id = 'CLS', sys_lastedit_user_id ='$user_id', + sys_lastedit_datetime ='" . $now . "', end_date ='$now' + WHERE ticket_id ='$ticket_id'"; Database::query($sql); }
' . get_lang('User') . '' . $user['firstname'] - . ' ' . $user['lastname'] . '' . $user['firstname']. ' ' . $user['lastname'] . '
' . get_lang('Username') . '