} if (isset($data['solved']) && is_array($data['solved'])) { foreach ($data['solved'] as $key => $val) { $newkey = html_clean($key); $cleandata[$newkey] = $val; } Stat::showGraph(array($LANG['stats'][11] => $cleandata), array('title' => $LANG['stats'][11], 'showtotal' => 1, 'unit' => $LANG['stats'][35], 'type' => 'pie')); } if (isset($data['late']) && is_array($data['late'])) { foreach ($data['late'] as $key => $val) { $newkey = html_clean($key); $cleandata[$newkey] = $val; } Stat::showGraph(array($LANG['stats'][19] => $cleandata), array('title' => $LANG['stats'][19], 'showtotal' => 1, 'unit' => $LANG['stats'][35], 'type' => 'pie')); } if (isset($data['closed']) && is_array($data['closed'])) { foreach ($data['closed'] as $key => $val) { $newkey = html_clean($key); $cleandata[$newkey] = $val; } Stat::showGraph(array($LANG['stats'][11] => $cleandata), array('title' => $LANG['stats'][17], 'showtotal' => 1, 'unit' => $LANG['stats'][35], 'type' => 'pie')); } if (isset($data['opensatisfaction']) && is_array($data['opensatisfaction'])) { foreach ($data['opensatisfaction'] as $key => $val) { $newkey = html_clean($key); $cleandata[$newkey] = $val; } Stat::showGraph(array($LANG['stats'][11] => $cleandata), array('title' => $LANG['satisfaction'][3], 'showtotal' => 1, 'unit' => $LANG['stats'][35], 'type' => 'pie')); } } commonFooter();
} Stat::showGraph(array(__('Number opened') => $cleandata), array('title' => __('Number opened'), 'showtotal' => 1, 'unit' => __('Tickets'), 'type' => 'pie')); } if (isset($data['solved']) && is_array($data['solved'])) { foreach ($data['solved'] as $key => $val) { $cleandata[Html::clean($key)] = $val; } Stat::showGraph(array(__('Number solved') => $cleandata), array('title' => __('Number solved'), 'showtotal' => 1, 'unit' => __('Tickets'), 'type' => 'pie')); } if (isset($data['late']) && is_array($data['late'])) { foreach ($data['late'] as $key => $val) { $cleandata[Html::clean($key)] = $val; } Stat::showGraph(array(__('Number solved late') => $cleandata), array('title' => __('Number solved late'), 'showtotal' => 1, 'unit' => __('Tickets'), 'type' => 'pie')); } if (isset($data['closed']) && is_array($data['closed'])) { foreach ($data['closed'] as $key => $val) { $newkey = Toolbox::unclean_cross_side_scripting_deep(Html::clean($key)); $cleandata[$newkey] = $val; } Stat::showGraph(array(__('Number closed') => $cleandata), array('title' => __('Number closed'), 'showtotal' => 1, 'unit' => __('Tickets'), 'type' => 'pie')); } if (isset($data['opensatisfaction']) && is_array($data['opensatisfaction'])) { foreach ($data['opensatisfaction'] as $key => $val) { $newkey = Toolbox::unclean_cross_side_scripting_deep(Html::clean($key)); $cleandata[$newkey] = $val; } Stat::showGraph(array(__('Satisfaction survey') => $cleandata), array('title' => __('Satisfaction survey'), 'showtotal' => 1, 'unit' => __('Tickets'), 'type' => 'pie')); } } Html::footer();
/** Display an infocom report for items like consumables * * @param $itemtype item type * @param $begin begin date * @param $end end date **/ function display_infocoms_report($itemtype, $begin, $end) { global $DB, $valeurtot, $valeurnettetot, $valeurnettegraphtot, $valeurgraphtot, $CFG_GLPI; $itemtable = getTableForItemType($itemtype); $query = "SELECT `glpi_infocoms`.*\n FROM `glpi_infocoms`\n INNER JOIN `{$itemtable}`\n ON (`{$itemtable}`.`id` = `glpi_infocoms`.`items_id`\n AND `glpi_infocoms`.`itemtype`='{$itemtype}') "; switch ($itemtype) { case 'Consumable': $query .= " INNER JOIN `glpi_consumableitems`\n ON (`glpi_consumables`.`consumableitems_id` = `glpi_consumableitems`.`id`) " . getEntitiesRestrictRequest("WHERE", "glpi_consumableitems"); break; case 'Cartridge': $query .= " INNER JOIN `glpi_cartridgeitems`\n ON (`glpi_cartridges`.`cartridgeitems_id` = `glpi_cartridgeitems`.`id`) " . getEntitiesRestrictRequest("WHERE", "glpi_cartridgeitems"); break; case 'SoftwareLicense': $query .= " INNER JOIN `glpi_softwares`\n ON (`glpi_softwarelicenses`.`softwares_id` = `glpi_softwares`.`id`) " . getEntitiesRestrictRequest("WHERE", "glpi_softwarelicenses"); break; } if (!empty($begin)) { $query .= " AND (`glpi_infocoms`.`buy_date` >= '{$begin}'\n OR `glpi_infocoms`.`use_date` >= '{$begin}')"; } if (!empty($end)) { $query .= " AND (`glpi_infocoms`.`buy_date` <= '{$end}'\n OR `glpi_infocoms`.`use_date` <= '{$end}')"; } if ($result = $DB->query($query)) { if ($DB->numrows($result) > 0 && ($item = getItemForItemtype($itemtype))) { echo "<h2>" . $item->getTypeName(1) . "</h2>"; echo "<table class='tab_cadre'>"; $valeursoustot = 0; $valeurnettesoustot = 0; $valeurnettegraph = array(); $valeurgraph = array(); while ($line = $DB->fetch_assoc($result)) { if ($itemtype == 'SoftwareLicense') { $item->getFromDB($line["items_id"]); if ($item->fields["serial"] == "global") { if ($item->fields["number"] > 0) { $line["value"] *= $item->fields["number"]; } } } if ($line["value"] > 0) { $valeursoustot += $line["value"]; } $valeurnette = Infocom::Amort($line["sink_type"], $line["value"], $line["sink_time"], $line["sink_coeff"], $line["buy_date"], $line["use_date"], $CFG_GLPI["date_tax"], "n"); $tmp = Infocom::Amort($line["sink_type"], $line["value"], $line["sink_time"], $line["sink_coeff"], $line["buy_date"], $line["use_date"], $CFG_GLPI["date_tax"], "all"); if (is_array($tmp) && count($tmp) > 0) { foreach ($tmp["annee"] as $key => $val) { if ($tmp["vcnetfin"][$key] > 0) { if (!isset($valeurnettegraph[$val])) { $valeurnettegraph[$val] = 0; } $valeurnettegraph[$val] += $tmp["vcnetdeb"][$key]; } } } if (!empty($line["buy_date"])) { $year = substr($line["buy_date"], 0, 4); if ($line["value"] > 0) { if (!isset($valeurgraph[$year])) { $valeurgraph[$year] = 0; } $valeurgraph[$year] += $line["value"]; } } $valeurnettesoustot += str_replace(" ", "", $valeurnette); } $valeurtot += $valeursoustot; $valeurnettetot += $valeurnettesoustot; if (count($valeurnettegraph) > 0) { echo "<tr><td colspan='5' class='center'>"; ksort($valeurnettegraph); $valeurnettegraphdisplay = array_map('round', $valeurnettegraph); foreach ($valeurnettegraph as $key => $val) { if (!isset($valeurnettegraphtot[$key])) { $valeurnettegraphtot[$key] = 0; } $valeurnettegraphtot[$key] += $valeurnettegraph[$key]; } Stat::showGraph(array(__('Account net value') => $valeurnettegraphdisplay), array('title' => __('Account net value'), 'width' => 400)); echo "</td></tr>\n"; } if (count($valeurgraph) > 0) { echo "<tr><td colspan='5' class='center'>"; ksort($valeurgraph); $valeurgraphdisplay = array_map('round', $valeurgraph); foreach ($valeurgraph as $key => $val) { if (!isset($valeurgraphtot[$key])) { $valeurgraphtot[$key] = 0; } $valeurgraphtot[$key] += $valeurgraph[$key]; } Stat::showGraph(array(_x('price', 'Value') => $valeurgraphdisplay), array('title' => _x('price', 'Value'), 'width' => 400)); echo "</td></tr>"; } echo "</table>\n"; return true; } } return false; }
$available = array('opensatisfaction' => _nx('survey', 'Opened', 'Opened', 2), 'answersatisfaction' => _nx('survey', 'Answered', 'Answered', 2)); echo "<div class='center'>"; foreach ($available as $key => $name) { echo "<input type='checkbox' onchange='submit()' name='graph[{$key}]' " . ($show_all || isset($_GET['graph'][$key]) ? "checked" : "") . "> " . $name . " "; } echo "</div>"; $toprint = array(); foreach ($available as $key => $name) { if ($show_all || isset($_GET['graph'][$key])) { $toprint[$name] = $values[$key]; } } Stat::showGraph($toprint, array('title' => __('Satisfaction survey'), 'showtotal' => 1, 'unit' => __('Tickets'))); $values['avgsatisfaction'] = Stat::constructEntryValues($_GET['itemtype'], "inter_avgsatisfaction", $_GET["date1"], $_GET["date2"]); $available = array('avgsatisfaction' => __('Satisfaction')); echo "<div class='center'>"; foreach ($available as $key => $name) { echo "<input type='checkbox' onchange='submit()' name='graph[{$key}]' " . ($show_all || isset($_GET['graph'][$key]) ? "checked" : "") . "> " . $name . " "; } echo "</div>"; $toprint = array(); foreach ($available as $key => $name) { if ($show_all || isset($_GET['graph'][$key])) { $toprint[$name] = $values[$key]; } } Stat::showGraph($toprint, array('title' => __('Satisfaction'))); } // form using GET method : CRSF not needed echo "</form>"; Html::footer();
foreach ($data['solved'] as $key => $val) { $newkey = Toolbox::unclean_cross_side_scripting_deep(Html::clean($key)); $cleandata[$newkey] = $val; } Stat::showGraph(array(__('Number solved') => $cleandata), array('title' => __('Number solved'), 'showtotal' => 1, 'unit' => $item->getTypeName(Session::getPluralNumber()), 'type' => 'pie')); } if (isset($data['late']) && is_array($data['late'])) { foreach ($data['late'] as $key => $val) { $newkey = Toolbox::unclean_cross_side_scripting_deep(Html::clean($key)); $cleandata[$newkey] = $val; } Stat::showGraph(array(__('Number solved late') => $cleandata), array('title' => __('Number solved late'), 'showtotal' => 1, 'unit' => $item->getTypeName(Session::getPluralNumber()), 'type' => 'pie')); } if (isset($data['closed']) && is_array($data['closed'])) { foreach ($data['closed'] as $key => $val) { $newkey = Toolbox::unclean_cross_side_scripting_deep(Html::clean($key)); $cleandata[$newkey] = $val; } Stat::showGraph(array(__('Number closed') => $cleandata), array('title' => __('Number closed'), 'showtotal' => 1, 'unit' => $item->getTypeName(Session::getPluralNumber()), 'type' => 'pie')); } if ($_GET['itemtype'] == 'Ticket') { if (isset($data['opensatisfaction']) && is_array($data['opensatisfaction'])) { foreach ($data['opensatisfaction'] as $key => $val) { $newkey = Toolbox::unclean_cross_side_scripting_deep(Html::clean($key)); $cleandata[$newkey] = $val; } Stat::showGraph(array(__('Satisfaction survey') => $cleandata), array('title' => __('Satisfaction survey'), 'showtotal' => 1, 'unit' => $item->getTypeName(Session::getPluralNumber()), 'type' => 'pie')); } } } Html::footer();
/** Display an infocom report * * @param $itemtype item type * @param $begin begin date * @param $end end date **/ function display_infocoms_report($itemtype, $begin, $end) { global $DB, $valeurtot, $valeurnettetot, $valeurnettegraphtot, $valeurgraphtot, $LANG, $CFG_GLPI; $itemtable = getTableForItemType($itemtype); $query = "SELECT `glpi_infocoms`.*,\n `{$itemtable}`.`name` AS name,\n `{$itemtable}`.`ticket_tco`,\n `glpi_entities`.`completename` AS entname,\n `glpi_entities`.`id` AS entID\n FROM `glpi_infocoms`\n INNER JOIN `{$itemtable}` ON (`{$itemtable}`.`id` = `glpi_infocoms`.`items_id`\n AND `glpi_infocoms`.`itemtype` = '{$itemtype}')\n LEFT JOIN `glpi_entities` ON (`{$itemtable}`.`entities_id` = `glpi_entities`.`id`)\n WHERE `{$itemtable}`.`is_template` = '0' " . getEntitiesRestrictRequest("AND", $itemtable); if (!empty($begin)) { $query .= " AND (`glpi_infocoms`.`buy_date` >= '{$begin}'\n OR `glpi_infocoms`.`use_date` >= '{$begin}') "; } if (!empty($end)) { $query .= " AND (`glpi_infocoms`.`buy_date` <= '{$end}'\n OR `glpi_infocoms`.`use_date` <= '{$end}') "; } $query .= " ORDER BY entname ASC, `buy_date`, `use_date`"; $display_entity = isMultiEntitiesMode(); $result = $DB->query($query); if ($DB->numrows($result) > 0) { $item = new $itemtype(); echo "<h2>" . $item->getTypeName() . "</h2>"; echo "<table class='tab_cadre'><tr><th>" . $LANG['common'][16] . "</th>"; if ($display_entity) { echo "<th>" . $LANG['entity'][0] . "</th>"; } echo "<th>" . $LANG['financial'][21] . "</th><th>" . $LANG['financial'][92] . "</th>"; echo "<th>" . $LANG['financial'][91] . "</th><th>" . $LANG['financial'][14] . "</th>"; echo "<th>" . $LANG['financial'][76] . "</th><th>" . $LANG['financial'][80] . "</th></tr>"; $valeursoustot = 0; $valeurnettesoustot = 0; $valeurnettegraph = array(); $valeurgraph = array(); while ($line = $DB->fetch_array($result)) { if (isset($line["is_global"]) && $line["is_global"]) { $line["value"] *= Computer_Item::countForItem($itemtype, $line["items_id"]); } if ($line["value"] > 0) { $valeursoustot += $line["value"]; } $valeurnette = Infocom::Amort($line["sink_type"], $line["value"], $line["sink_time"], $line["sink_coeff"], $line["buy_date"], $line["use_date"], $CFG_GLPI["date_tax"], "n"); $tmp = Infocom::Amort($line["sink_type"], $line["value"], $line["sink_time"], $line["sink_coeff"], $line["buy_date"], $line["use_date"], $CFG_GLPI["date_tax"], "all"); if (is_array($tmp) && count($tmp) > 0) { foreach ($tmp["annee"] as $key => $val) { if ($tmp["vcnetfin"][$key] > 0) { if (!isset($valeurnettegraph[$val])) { $valeurnettegraph[$val] = 0; } $valeurnettegraph[$val] += $tmp["vcnetdeb"][$key]; } } } if (!empty($line["buy_date"])) { $year = substr($line["buy_date"], 0, 4); if ($line["value"] > 0) { if (!isset($valeurgraph[$year])) { $valeurgraph[$year] = 0; } $valeurgraph[$year] += $line["value"]; } } $valeurnettesoustot += str_replace(" ", "", $valeurnette); echo "<tr class='tab_bg_1'><td>" . $line["name"] . "</td>"; if ($display_entity) { if ($line['entID'] == 0) { echo "<td>" . $LANG['entity'][2] . "</td>"; } else { echo "<td>" . $line['entname'] . "</td>"; } } echo "<td class='right'>" . formatNumber($line["value"]) . "</td><td class='right'>" . formatNumber($valeurnette) . "</td><td class='right'>" . Infocom::showTco($line["ticket_tco"], $line["value"]) . "</td><td>" . convDate($line["buy_date"]) . "</td><td>" . convDate($line["use_date"]) . "</td><td>" . getWarrantyExpir($line["buy_date"], $line["warranty_duration"]) . "</td></tr>"; } $valeurtot += $valeursoustot; $valeurnettetot += $valeurnettesoustot; echo "<tr><td colspan='6' class='center'><h3>" . $LANG['common'][33] . " : " . $LANG['financial'][21] . "=" . formatNumber($valeursoustot) . " - " . $LANG['financial'][81] . "=" . formatNumber($valeurnettesoustot) . "</h3></td></tr>"; if (count($valeurnettegraph) > 0) { echo "<tr><td colspan='5' class='center'>"; ksort($valeurnettegraph); $valeurnettegraphdisplay = array_map('round', $valeurnettegraph); foreach ($valeurnettegraph as $key => $val) { if (!isset($valeurnettegraphtot[$key])) { $valeurnettegraphtot[$key] = 0; } $valeurnettegraphtot[$key] += $valeurnettegraph[$key]; } Stat::showGraph(array($LANG['financial'][81] => $valeurnettegraphdisplay), array('title' => $LANG['financial'][81], 'width' => 400)); echo "</td></tr>"; } if (count($valeurgraph) > 0) { echo "<tr><td colspan='5' class='center'>"; ksort($valeurgraph); $valeurgraphdisplay = array_map('round', $valeurgraph); foreach ($valeurgraph as $key => $val) { if (!isset($valeurgraphtot[$key])) { $valeurgraphtot[$key] = 0; } $valeurgraphtot[$key] += $valeurgraph[$key]; } Stat::showGraph(array($LANG['financial'][21] => $valeurgraphdisplay), array('title' => $LANG['financial'][21], 'width' => 400)); echo "</td></tr>"; } echo "</table>"; return true; } return false; }
/** Display an infocom report * * @param $itemtype item type * @param $begin begin date * @param $end end date **/ function display_infocoms_report($itemtype, $begin, $end) { global $DB, $valeurtot, $valeurnettetot, $valeurnettegraphtot, $valeurgraphtot, $CFG_GLPI; $itemtable = getTableForItemType($itemtype); $query = "SELECT `glpi_infocoms`.*,\n `{$itemtable}`.`name` AS name,\n `{$itemtable}`.`ticket_tco`,\n `glpi_entities`.`completename` AS entname,\n `glpi_entities`.`id` AS entID\n FROM `glpi_infocoms`\n INNER JOIN `{$itemtable}` ON (`{$itemtable}`.`id` = `glpi_infocoms`.`items_id`\n AND `glpi_infocoms`.`itemtype` = '{$itemtype}')\n LEFT JOIN `glpi_entities` ON (`{$itemtable}`.`entities_id` = `glpi_entities`.`id`)\n WHERE `{$itemtable}`.`is_template` = '0' " . getEntitiesRestrictRequest("AND", $itemtable); if (!empty($begin)) { $query .= " AND (`glpi_infocoms`.`buy_date` >= '{$begin}'\n OR `glpi_infocoms`.`use_date` >= '{$begin}') "; } if (!empty($end)) { $query .= " AND (`glpi_infocoms`.`buy_date` <= '{$end}'\n OR `glpi_infocoms`.`use_date` <= '{$end}') "; } $query .= " ORDER BY entname ASC, `buy_date`, `use_date`"; $display_entity = Session::isMultiEntitiesMode(); $result = $DB->query($query); if ($DB->numrows($result) > 0 && ($item = getItemForItemtype($itemtype))) { echo "<h2>" . $item->getTypeName(1) . "</h2>"; echo "<table class='tab_cadre'><tr><th>" . __('Name') . "</th>"; if ($display_entity) { echo "<th>" . __('Entity') . "</th>"; } echo "<th>" . _x('price', 'Value') . "</th><th>" . __('ANV') . "</th>"; echo "<th>" . __('TCO') . "</th><th>" . __('Date of purchase') . "</th>"; echo "<th>" . __('Startup date') . "</th><th>" . __('Warranty expiration date') . "</th></tr>"; $valeursoustot = 0; $valeurnettesoustot = 0; $valeurnettegraph = array(); $valeurgraph = array(); while ($line = $DB->fetch_assoc($result)) { if (isset($line["is_global"]) && $line["is_global"] && $item->getFromDB($line["items_id"])) { $line["value"] *= Computer_Item::countForItem($item); } if ($line["value"] > 0) { $valeursoustot += $line["value"]; } $valeurnette = Infocom::Amort($line["sink_type"], $line["value"], $line["sink_time"], $line["sink_coeff"], $line["buy_date"], $line["use_date"], $CFG_GLPI["date_tax"], "n"); $tmp = Infocom::Amort($line["sink_type"], $line["value"], $line["sink_time"], $line["sink_coeff"], $line["buy_date"], $line["use_date"], $CFG_GLPI["date_tax"], "all"); if (is_array($tmp) && count($tmp) > 0) { foreach ($tmp["annee"] as $key => $val) { if ($tmp["vcnetfin"][$key] > 0) { if (!isset($valeurnettegraph[$val])) { $valeurnettegraph[$val] = 0; } $valeurnettegraph[$val] += $tmp["vcnetdeb"][$key]; } } } if (!empty($line["buy_date"])) { $year = substr($line["buy_date"], 0, 4); if ($line["value"] > 0) { if (!isset($valeurgraph[$year])) { $valeurgraph[$year] = 0; } $valeurgraph[$year] += $line["value"]; } } $valeurnettesoustot += str_replace(" ", "", $valeurnette); echo "<tr class='tab_bg_1'><td>" . $line["name"] . "</td>"; if ($display_entity) { echo "<td>" . $line['entname'] . "</td>"; } echo "<td class='right'>" . Html::formatNumber($line["value"]) . "</td>" . "<td class='right'>" . Html::formatNumber($valeurnette) . "</td>" . "<td class='right'>" . Infocom::showTco($line["ticket_tco"], $line["value"]) . "</td>" . "<td>" . Html::convDate($line["buy_date"]) . "</td>" . "<td>" . Html::convDate($line["use_date"]) . "</td>" . "<td>" . Infocom::getWarrantyExpir($line["buy_date"], $line["warranty_duration"]) . "</td></tr>"; } $valeurtot += $valeursoustot; $valeurnettetot += $valeurnettesoustot; $tmpmsg = sprintf(__('Total: Value=%1$s - Account net value=%2$s'), Html::formatNumber($valeursoustot), Html::formatNumber($valeurnettesoustot)); echo "<tr><td colspan='6' class='center'><h3>{$tmpmsg}</h3></td></tr>"; if (count($valeurnettegraph) > 0) { echo "<tr><td colspan='5' class='center'>"; ksort($valeurnettegraph); $valeurnettegraphdisplay = array_map('round', $valeurnettegraph); foreach ($valeurnettegraph as $key => $val) { if (!isset($valeurnettegraphtot[$key])) { $valeurnettegraphtot[$key] = 0; } $valeurnettegraphtot[$key] += $valeurnettegraph[$key]; } Stat::showGraph(array(__('Account net value') => $valeurnettegraphdisplay), array('title' => __('Account net value'), 'width' => 400)); echo "</td></tr>"; } if (count($valeurgraph) > 0) { echo "<tr><td colspan='5' class='center'>"; ksort($valeurgraph); $valeurgraphdisplay = array_map('round', $valeurgraph); foreach ($valeurgraph as $key => $val) { if (!isset($valeurgraphtot[$key])) { $valeurgraphtot[$key] = 0; } $valeurgraphtot[$key] += $valeurgraph[$key]; } Stat::showGraph(array(_x('price', 'Value') => $valeurgraphdisplay), array('title' => _x('price', 'Value'), 'width' => 400)); echo "</td></tr>"; } echo "</table>"; return true; } return false; }
/** * Display the graph of finished tasks * * @param $taskjobs_id integer id of the taskjob * * @return nothing * **/ function graphFinish($taskjobs_id) { global $DB; $finishState = array(); $finishState[2] = 0; $finishState[3] = 0; $finishState[4] = 0; $finishState[5] = 0; $query = "SELECT `glpi_plugin_fusioninventory_taskjoblogs`.`state`\n FROM glpi_plugin_fusioninventory_taskjobstates\n LEFT JOIN `glpi_plugin_fusioninventory_taskjoblogs`\n ON plugin_fusioninventory_taskjobstates_id=" . "`glpi_plugin_fusioninventory_taskjobstates`.`id`\n WHERE `plugin_fusioninventory_taskjobs_id`='" . $taskjobs_id . "'\n AND (`glpi_plugin_fusioninventory_taskjoblogs`.`state` = '2'\n OR `glpi_plugin_fusioninventory_taskjoblogs`.`state` = '3'\n OR `glpi_plugin_fusioninventory_taskjoblogs`.`state` = '4'\n OR `glpi_plugin_fusioninventory_taskjoblogs`.`state` = '5')\n GROUP BY glpi_plugin_fusioninventory_taskjobstates.uniqid, " . "plugin_fusioninventory_agents_id"; $result = $DB->query($query); if ($result) { while ($datajob = $DB->fetch_array($result)) { $finishState[$datajob['state']]++; } } $input = array(); $input[__('Started', 'fusioninventory')] = $finishState[2]; $input[__('Ok', 'fusioninventory')] = $finishState[3]; $input[__('Error / rescheduled', 'fusioninventory')] = $finishState[4]; $input[__('Error')] = $finishState[5]; Stat::showGraph(array('status' => $input), array('title' => '', 'unit' => '', 'type' => 'pie', 'height' => 150, 'showtotal' => FALSE)); }
$values['opensatisfaction'] = Stat::constructEntryValues("inter_opensatisfaction", $_REQUEST["date1"], $_REQUEST["date2"]); $values['answersatisfaction'] = Stat::constructEntryValues("inter_answersatisfaction", $_REQUEST["date1"], $_REQUEST["date2"]); $available = array('opensatisfaction' => $LANG['satisfaction'][13], 'answersatisfaction' => $LANG['satisfaction'][14]); echo "<div class='center'>"; foreach ($available as $key => $name) { echo "<input type='checkbox' onchange='submit()' name='graph[{$key}]' " . ($show_all || isset($_REQUEST['graph'][$key]) ? "checked" : "") . "> " . $name . " "; } echo "</div>"; $toprint = array(); foreach ($available as $key => $name) { if ($show_all || isset($_REQUEST['graph'][$key])) { $toprint[$name] = $values[$key]; } } Stat::showGraph($toprint, array('title' => $LANG['satisfaction'][3], 'showtotal' => 1, 'unit' => $LANG['stats'][35])); $values['avgsatisfaction'] = Stat::constructEntryValues("inter_avgsatisfaction", $_REQUEST["date1"], $_REQUEST["date2"]); $available = array('avgsatisfaction' => $LANG['satisfaction'][7]); echo "<div class='center'>"; foreach ($available as $key => $name) { echo "<input type='checkbox' onchange='submit()' name='graph[{$key}]' " . ($show_all || isset($_REQUEST['graph'][$key]) ? "checked" : "") . "> " . $name . " "; } echo "</div>"; $toprint = array(); foreach ($available as $key => $name) { if ($show_all || isset($_REQUEST['graph'][$key])) { $toprint[$name] = $values[$key]; } } Stat::showGraph($toprint, array('title' => $LANG['satisfaction'][7])); echo "</form>"; commonFooter();
$buy = $result[$itemtype]['buy']; if ($ref == 'buy' || $buy == 0 || $val == 0) { $tmp = ''; } else { $tmp = round($val * 100 / $buy, 0) . "%"; } echo Search::showItem($display_type, $tmp, $numcol, $row_num, "class='right'"); } echo Search::showEndLine($display_type); $row_num++; } if ($display_type == Search::HTML_OUTPUT) { $row = array_pop($result); // Last line : total or single type unset($row['buy']); Stat::showGraph(array($title => $row), array('type' => 'pie')); } } else { $nbrows = 1; $nbcols = 1; echo Search::showHeader($display_type, $nbrows, $nbcols, true); echo Search::showNewLine($display_type); $num = 1; echo Search::showHeaderItem($display_type, __('No item found'), $num); echo Search::showEndLine($display_type); } echo Search::showFooter($display_type, $title); } if ($display_type == Search::HTML_OUTPUT) { Html::footer(); }