request([ 'SELECT' => [ 'glpi_tickets.*', 'glpi_plugin_soc_case_tickets.id AS link_id' ], 'FROM' => 'glpi_plugin_soc_case_tickets', 'LEFT JOIN' => [ 'glpi_tickets' => [ 'FKEY' => [ 'glpi_plugin_soc_case_tickets' => 'tickets_id', 'glpi_tickets' => 'id' ] ] ], 'WHERE' => [ 'glpi_plugin_soc_case_tickets.plugin_soc_cases_id' => $cases_id ], 'ORDER' => [ 'glpi_tickets.date_creation DESC' ] ]); return $iterator; } /** * Get cases for a ticket * * @param integer $tickets_id * @return DBmysqlIterator */ static function getCasesForTicket($tickets_id) { global $DB; $iterator = $DB->request([ 'SELECT' => [ 'glpi_plugin_soc_cases.*', 'glpi_plugin_soc_case_tickets.id AS link_id' ], 'FROM' => 'glpi_plugin_soc_case_tickets', 'LEFT JOIN' => [ 'glpi_plugin_soc_cases' => [ 'FKEY' => [ 'glpi_plugin_soc_case_tickets' => 'plugin_soc_cases_id', 'glpi_plugin_soc_cases' => 'id' ] ] ], 'WHERE' => [ 'glpi_plugin_soc_case_tickets.tickets_id' => $tickets_id ], 'ORDER' => [ 'glpi_plugin_soc_cases.date_creation DESC' ] ]); return $iterator; } /** * Show cases for a ticket * * @param Ticket $ticket * @return void */ function showForTicket(Ticket $ticket) { global $DB; $ticket_id = $ticket->getID(); if (!$ticket->can($ticket_id, READ)) { return false; } $cases = self::getCasesForTicket($ticket_id); $nb = count($cases); echo "
" . __('Name') . " | "; $header .= "" . __('Status') . " | "; $header .= "" . __('Severity', 'soc') . " | "; $header .= "" . __('Creation date') . " | "; $header .= "
---|---|---|---|
".$data['name']." | "; echo "".$case->getStatusOptions()[$data['status']]." | "; echo "".$case->getSeverityOptions()[$data['severity']]." | "; echo "".Html::convDateTime($data['date_creation'])." | "; echo "
".__('No SOC case associated with this ticket', 'soc')."
"; } // If user has rights to create cases if (Session::haveRight('plugin_soc_case', CREATE)) { echo "