grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026. -------------------------------------------------------------------------- */ /** @file * @brief */ include ('../inc/includes.php'); Html::header(__('Statistics'), $_SERVER['PHP_SELF'], "helpdesk", "stat"); Session::checkRight("statistic", READ); if (!$item = getItemForItemtype($_GET['itemtype'])) { exit; } if (empty($_POST["date1"]) && empty($_POST["date2"])) { if (isset($_GET["date1"])) { $_POST["date1"] = $_GET["date1"]; } if (isset($_GET["date2"])) { $_POST["date2"] = $_GET["date2"]; } } if (!empty($_POST["date1"]) && !empty($_POST["date2"]) && (strcmp($_POST["date2"],$_POST["date1"]) < 0)) { $tmp = $_POST["date1"]; $_POST["date1"] = $_POST["date2"]; $_POST["date2"] = $tmp; } $cleantarget = preg_replace("/[&]date[12]=[0-9-]*/","",$_SERVER['QUERY_STRING']); $cleantarget = preg_replace("/[&]*id=([0-9]+[&]{0,1})/","",$cleantarget); $cleantarget = preg_replace("/&/","&",$cleantarget); $next = 0; $prev = 0; $title = ""; $cond = ''; $parent = 0; $showuserlink = 0; if (Session::haveRight('user', READ)) { $showuserlink = 1; } switch($_GET["type"]) { case "technicien" : $val1 = $_GET["id"]; $val2 = ""; $values = Stat::getItems($_GET["itemtype"], $_GET["date1"], $_GET["date2"], $_GET["type"]); $title = sprintf(__('%1$s: %2$s'), __('Technician'), $item->getAssignName($_GET["id"], 'User', $showuserlink)); break; case "technicien_followup" : $val1 = $_GET["id"]; $val2 = ""; $values = Stat::getItems($_GET["itemtype"], $_GET["date1"], $_GET["date2"], $_GET["type"]); $title = sprintf(__('%1$s: %2$s'), __('Technician'), $item->getAssignName($_GET["id"], 'User', $showuserlink)); break; case "suppliers_id_assign" : $val1 = $_GET["id"]; $val2 = ""; $values = Stat::getItems($_GET["itemtype"], $_GET["date1"], $_GET["date2"], $_GET["type"]); $title = sprintf(__('%1$s: %2$s'), __('Supplier'), $item->getAssignName($_GET["id"], 'Supplier', $showuserlink)); break; case "user" : $val1 = $_GET["id"]; $val2 = ""; $values = Stat::getItems($_GET["itemtype"], $_GET["date1"], $_GET["date2"], $_GET["type"]); $title = sprintf(__('%1$s: %2$s'), __('User'), getUserName($_GET["id"], $showuserlink)); break; case "users_id_recipient" : $val1 = $_GET["id"]; $val2 = ""; $values = Stat::getItems($_GET["itemtype"], $_GET["date1"], $_GET["date2"], $_GET["type"]); $title = sprintf(__('%1$s: %2$s'), __('User'), getUserName($_GET["id"], $showuserlink)); break; case "itilcategories_tree" : $parent = (isset($_GET['champ']) ? $_GET['champ'] : 0); $cond = "(`id` = '$parent' OR `itilcategories_id` = '$parent')"; // nobreak; case "itilcategories_id" : $val1 = $_GET["id"]; $val2 = ""; $values = Stat::getItems($_GET["itemtype"], $_GET["date1"], $_GET["date2"], $_GET["type"], $parent); $title = sprintf(__('%1$s: %2$s'), __('Category'), Dropdown::getDropdownName("glpi_itilcategories", $_GET["id"])); break; case 'locations_tree' : $parent = (isset($_GET['champ']) ? $_GET['champ'] : 0); $cond = "(`id` = '$parent' OR `locations_id` = '$parent')"; // nobreak; case 'locations_id' : $val1 = $_GET['id']; $val2 = ''; $values = Stat::getItems($_GET['itemtype'], $_GET['date1'], $_GET['date2'], $_GET['type'], $parent); $title = sprintf(__('%1$s: %2$s'), __('Location'), Dropdown::getDropdownName('glpi_locations', $_GET['id'])); break; case "type" : $val1 = $_GET["id"]; $val2 = ""; $values = Stat::getItems($_GET["itemtype"], $_GET["date1"], $_GET["date2"], $_GET["type"]); $title = sprintf(__('%1$s: %2$s'), __('Type'), Ticket::getTicketTypeName($_GET["id"])); break; case 'group_tree' : case 'groups_tree_assign' : $parent = (isset($_GET['champ']) ? $_GET['champ'] : 0); $cond = " (`id` = '$parent' OR `groups_id` = '$parent') AND ".(($_GET["type"] == 'group_tree') ? '`is_requester`' : '`is_assign`'); // nobreak; case "group" : $val1 = $_GET["id"]; $val2 = ""; $values = Stat::getItems($_GET["itemtype"], $_GET["date1"], $_GET["date2"], $_GET["type"], $parent); $title = sprintf(__('%1$s: %2$s'), __('Group'), Dropdown::getDropdownName("glpi_groups", $_GET["id"])); break; case "groups_id_assign" : $val1 = $_GET["id"]; $val2 = ""; $values = Stat::getItems($_GET["itemtype"], $_GET["date1"], $_GET["date2"], $_GET["type"]); $title = sprintf(__('%1$s: %2$s'), __('Group'), Dropdown::getDropdownName("glpi_groups", $_GET["id"])); break; case "priority" : $val1 = $_GET["id"]; $val2 = ""; $values = Stat::getItems($_GET["itemtype"], $_GET["date1"], $_GET["date2"], $_GET["type"]); $title = sprintf(__('%1$s: %2$s'), __('Priority'), $item->getPriorityName($_GET["id"])); break; case "urgency" : $val1 = $_GET["id"]; $val2 = ""; $values = Stat::getItems($_GET["itemtype"], $_GET["date1"], $_GET["date2"], $_GET["type"]); $title = sprintf(__('%1$s: %2$s'), __('Urgency'), $item->getUrgencyName($_GET["id"])); break; case "impact" : $val1 = $_GET["id"]; $val2 = ""; $values = Stat::getItems($_GET["itemtype"], $_GET["date1"], $_GET["date2"], $_GET["type"]); $title = sprintf(__('%1$s: %2$s'), __('Impact'), $item->getImpactName($_GET["id"])); break; case "usertitles_id" : $val1 = $_GET["id"]; $val2 = ""; $values = Stat::getItems($_GET["itemtype"], $_GET["date1"], $_GET["date2"], $_GET["type"]); $title = sprintf(__('%1$s: %2$s'), _x('person','Title'), Dropdown::getDropdownName("glpi_usertitles", $_GET["id"])); break; case "solutiontypes_id" : $val1 = $_GET["id"]; $val2 = ""; $values = Stat::getItems($_GET["itemtype"], $_GET["date1"], $_GET["date2"], $_GET["type"]); $title = sprintf(__('%1$s: %2$s'), __('Solution type'), Dropdown::getDropdownName("glpi_solutiontypes", $_GET["id"])); break; case "usercategories_id" : $val1 = $_GET["id"]; $val2 = ""; $values = Stat::getItems($_GET["itemtype"], $_GET["date1"], $_GET["date2"], $_GET["type"]); $title = sprintf(__('%1$s: %2$s'), __('Category'), Dropdown::getDropdownName("glpi_usercategories", $_GET["id"])); break; case "requesttypes_id" : $val1 = $_GET["id"]; $val2 = ""; $values = Stat::getItems($_GET["itemtype"], $_GET["date1"], $_GET["date2"], $_GET["type"]); $title = sprintf(__('%1$s: %2$s'), __('Request source'), Dropdown::getDropdownName("glpi_requesttypes", $_GET["id"])); break; case "device" : $val1 = $_GET["id"]; $val2 = $_GET["champ"]; if ($item = getItemForItemtype($_GET["champ"])) { $device_table = $item->getTable(); $values = Stat::getItems($_GET["itemtype"], $_GET["date1"], $_GET["date2"], $_GET["champ"]); $query = "SELECT `designation` FROM `".$device_table."` WHERE `id` = '".$_GET['id']."'"; $result = $DB->query($query); $title = sprintf(__('%1$s: %2$s'), $item->getTypeName(), $DB->result($result, 0, "designation")); } break; case "comp_champ" : $val1 = $_GET["id"]; $val2 = $_GET["champ"]; if ($item = getItemForItemtype($_GET["champ"])) { $table = $item->getTable(); $values = Stat::getItems($_GET["itemtype"], $_GET["date1"], $_GET["date2"], $_GET["champ"]); $title = sprintf(__('%1$s: %2$s'), $item->getTypeName(), Dropdown::getDropdownName($table, $_GET["id"])); } break; } // Found next and prev items $foundkey = -1; foreach ($values as $key => $val) { if ($val['id'] == $_GET["id"]) { $foundkey = $key; } } if ($foundkey >= 0) { if (isset($values[$foundkey+1])) { $next = $values[$foundkey+1]['id']; } if (isset($values[$foundkey-1])) { $prev = $values[$foundkey-1]['id']; } } echo "
";
if ($prev > 0) {
echo "
";
}
echo " | ";
echo "$title | "; echo "";
if ($next > 0) {
echo "
";
}
echo " | ";
echo "