Пример #1
0
/**
 * Print a table with statistics of a list of inventories.
 *
 * @param array List of inventories to get stats.
 * @param bool Whether to return an output string or echo now (optional, echo by default).
 *
 * @return Inventories stats if return parameter is true. Nothing otherwise
 */
function print_inventory_stats($inventories, $return = false)
{
    $output = '';
    $total = sizeof($inventories);
    $inventory_incidents = 0;
    $inventory_opened = 0;
    foreach ($inventories as $inventory) {
        $incidents = get_incidents_on_inventory($inventory['id'], false);
        if (sizeof($incidents) == 0) {
            continue;
        }
        $inventory_incidents++;
        foreach ($incidents as $incident) {
            if ($incident['estado'] != 7 && $incident['estado'] != 6) {
                $inventory_opened++;
                break;
            }
        }
    }
    $incidents_pct = 0;
    if ($total != 0) {
        $incidents_pct = format_numeric($inventory_incidents / $total * 100);
        $incidents_opened_pct = format_numeric($inventory_opened / $total * 100);
    }
    $table->width = '50%';
    $table->class = 'float_left blank';
    $table->style = array();
    $table->style[1] = 'vertical-align: top';
    $table->rowspan = array();
    $table->rowspan[0][1] = 3;
    $table->data = array();
    $table->data[0][0] = print_label(__('Total objects'), '', '', true, $total);
    $data = array(__('With tickets') => $inventory_incidents, __('Without tickets') => $total - $inventory_incidents);
    $table->data[0][1] = pie3d_chart($config['flash_charts'], $data, 200, 150);
    $table->data[1][0] = print_label(__('Total objects with tickets'), '', '', true, $inventory_incidents . ' (' . $incidents_pct . '%)');
    $table->data[2][0] = print_label(__('Total objects with opened tickets'), '', '', true, $inventory_opened . ' (' . $incidents_opened_pct . '%)');
    $output .= print_table($table, true);
    if ($return) {
        return $output;
    }
    echo $output;
}
Пример #2
0
}
//**********************************************************************
// Tabs
//**********************************************************************
print_inventory_tabs('incidents', $id, $inventory_name);
$table->width = '99%';
$table->class = 'listing';
$table->data = array();
$table->head = array();
$table->head[0] = __('Title');
$table->head[1] = __('Date');
$table->head[2] = __('Priority');
$table->head[3] = __('Status');
$table->head[4] = __('Assigned user');
$table->head[5] = __('View');
$incidents = get_incidents_on_inventory($id, false);
foreach ($incidents as $incident) {
    $data = array();
    if (!give_acl($config['id_user'], $incident['id_grupo'], 'IR')) {
        continue;
    }
    $data[0] = $incident['titulo'];
    $data[1] = $incident['inicio'];
    $data[2] = print_priority_flag_image($incident['prioridad'], true);
    $data[3] = get_db_value('name', 'tincident_status', 'id', $incident['estado']);
    $user_avatar = get_db_value('avatar', 'tusuario', 'id_usuario', $incident['id_usuario']);
    $data[4] = print_user_avatar($incident['id_usuario'], true, true);
    $data[4] .= " " . $incident['id_usuario'];
    $data[5] = '<a href="index.php?sec=incidents&sec2=operation/incidents/incident_dashboard_detail&id=' . $incident['id_incidencia'] . '"><img src="images/zoom.png" /></a>';
    array_push($table->data, $data);
}