Contract::showCentral PHP Method

showCentral() static public method

Show central contract resume HTML array
static public showCentral ( ) : Nothing
return Nothing (display)
    static function showCentral()
    {
        global $DB, $CFG_GLPI;
        if (!Contract::canView()) {
            return false;
        }
        // No recursive contract, not in local management
        // contrats echus depuis moins de 30j
        $query = "SELECT COUNT(*)\n                FROM `glpi_contracts`\n                WHERE `glpi_contracts`.`is_deleted`='0' " . getEntitiesRestrictRequest("AND", "glpi_contracts") . "\n                      AND DATEDIFF(ADDDATE(`glpi_contracts`.`begin_date`, INTERVAL\n                                           `glpi_contracts`.`duration` MONTH),CURDATE() )>-30\n                      AND DATEDIFF(ADDDATE(`glpi_contracts`.`begin_date`, INTERVAL\n                                           `glpi_contracts`.`duration` MONTH),CURDATE() )<'0'";
        $result = $DB->query($query);
        $contract0 = $DB->result($result, 0, 0);
        // contrats  echeance j-7
        $query = "SELECT COUNT(*)\n                FROM `glpi_contracts`\n                WHERE `glpi_contracts`.`is_deleted`='0' " . getEntitiesRestrictRequest("AND", "glpi_contracts") . "\n                      AND DATEDIFF(ADDDATE(`glpi_contracts`.`begin_date`, INTERVAL\n                                           `glpi_contracts`.`duration` MONTH),CURDATE() )>'0'\n                      AND DATEDIFF(ADDDATE(`glpi_contracts`.`begin_date`, INTERVAL\n                                           `glpi_contracts`.`duration` MONTH),CURDATE() )<='7'";
        $result = $DB->query($query);
        $contract7 = $DB->result($result, 0, 0);
        // contrats echeance j -30
        $query = "SELECT COUNT(*)\n                FROM `glpi_contracts`\n                WHERE `glpi_contracts`.`is_deleted`='0' " . getEntitiesRestrictRequest("AND", "glpi_contracts") . "\n                      AND DATEDIFF(ADDDATE(`glpi_contracts`.`begin_date`, INTERVAL\n                                           `glpi_contracts`.`duration` MONTH),CURDATE() )>'7'\n                      AND DATEDIFF(ADDDATE(`glpi_contracts`.`begin_date`, INTERVAL\n                                           `glpi_contracts`.`duration` MONTH),CURDATE() )<'30'";
        $result = $DB->query($query);
        $contract30 = $DB->result($result, 0, 0);
        // contrats avec préavis echeance j-7
        $query = "SELECT COUNT(*)\n                FROM `glpi_contracts`\n                WHERE `glpi_contracts`.`is_deleted`='0' " . getEntitiesRestrictRequest("AND", "glpi_contracts") . "\n                      AND `glpi_contracts`.`notice`<>'0'\n                      AND DATEDIFF(ADDDATE(`glpi_contracts`.`begin_date`, INTERVAL\n                                           (`glpi_contracts`.`duration`-`glpi_contracts`.`notice`)\n                                           MONTH),CURDATE() )>'0'\n                      AND DATEDIFF(ADDDATE(`glpi_contracts`.`begin_date`, INTERVAL\n                                           (`glpi_contracts`.`duration`-`glpi_contracts`.`notice`)\n                                           MONTH),CURDATE() )<='7'";
        $result = $DB->query($query);
        $contractpre7 = $DB->result($result, 0, 0);
        // contrats avec préavis echeance j -30
        $query = "SELECT COUNT(*)\n                FROM `glpi_contracts`\n                WHERE `glpi_contracts`.`is_deleted`='0'" . getEntitiesRestrictRequest("AND", "glpi_contracts") . "\n                      AND `glpi_contracts`.`notice`<>'0'\n                      AND DATEDIFF(ADDDATE(`glpi_contracts`.`begin_date`, INTERVAL\n                                           (`glpi_contracts`.`duration`-`glpi_contracts`.`notice`)\n                                           MONTH),CURDATE() )>'7'\n                      AND DATEDIFF(ADDDATE(`glpi_contracts`.`begin_date`, INTERVAL\n                                           (`glpi_contracts`.`duration`-`glpi_contracts`.`notice`)\n                                           MONTH),CURDATE() )<'30'";
        $result = $DB->query($query);
        $contractpre30 = $DB->result($result, 0, 0);
        echo "<table class='tab_cadrehov'>";
        echo "<tr class='noHover'><th colspan='2'>";
        echo "<a href=\"" . $CFG_GLPI["root_doc"] . "/front/contract.php?reset=reset\">" . self::getTypeName(1) . "</a></th></tr>";
        echo "<tr class='tab_bg_2'>";
        $options['reset'] = 'reset';
        $options['sort'] = 12;
        $options['order'] = 'DESC';
        $options['start'] = 0;
        $options['criteria'][0] = array('field' => 12, 'value' => '<0', 'searchtype' => 'contains');
        $options['criteria'][1] = array('field' => 12, 'link' => 'AND', 'value' => '>-30', 'searchtype' => 'contains');
        echo "<td><a href=\"" . $CFG_GLPI["root_doc"] . "/front/contract.php?" . Toolbox::append_params($options, '&amp;') . "\">" . __('Contracts expired in the last 30 days') . "</a> </td>";
        echo "<td class='numeric'>" . $contract0 . "</td></tr>";
        echo "<tr class='tab_bg_2'>";
        $options['criteria'][0]['value'] = 0;
        $options['criteria'][1]['value'] = '<7';
        echo "<td><a href=\"" . $CFG_GLPI["root_doc"] . "/front/contract.php?" . Toolbox::append_params($options, '&amp;') . "\">" . __('Contracts expiring in less than 7 days') . "</a></td>";
        echo "<td class='numeric'>" . $contract7 . "</td></tr>";
        echo "<tr class='tab_bg_2'>";
        $options['criteria'][0]['value'] = '>6';
        $options['criteria'][1]['value'] = '<30';
        echo "<td><a href=\"" . $CFG_GLPI["root_doc"] . "/front/contract.php?" . Toolbox::append_params($options, '&amp;') . "\">" . __('Contracts expiring in less than 30 days') . "</a></td>";
        echo "<td class='numeric'>" . $contract30 . "</td></tr>";
        echo "<tr class='tab_bg_2'>";
        $options['criteria'][0]['field'] = 13;
        $options['criteria'][0]['value'] = '>0';
        $options['criteria'][1]['field'] = 13;
        $options['criteria'][1]['value'] = '<7';
        echo "<td><a href=\"" . $CFG_GLPI["root_doc"] . "/front/contract.php?" . Toolbox::append_params($options, '&amp;') . "\">" . __('Contracts where notice begins in less than 7 days') . "</a></td>";
        echo "<td class='numeric'>" . $contractpre7 . "</td></tr>";
        echo "<tr class='tab_bg_2'>";
        $options['criteria'][0]['value'] = '>6';
        $options['criteria'][1]['value'] = '<30';
        echo "<td><a href=\"" . $CFG_GLPI["root_doc"] . "/front/contract.php?" . Toolbox::append_params($options, '&amp;') . "\">" . __('Contracts where notice begins in less than 30 days') . "</a></td>";
        echo "<td class='numeric'>" . $contractpre30 . "</td></tr>";
        echo "</table>";
    }

Usage Example

 /**
  * Show the central global view
  **/
 static function showGlobalView()
 {
     $showticket = haveRight("show_all_ticket", "1");
     echo "<table class='tab_cadre_central'><tr>";
     echo "<td class='top'><br>";
     echo "<table >";
     if ($showticket) {
         echo "<tr><td class='top' width='450px'>";
         Ticket::showCentralCount();
         echo "</td></tr>";
     }
     if (haveRight("contract", "r")) {
         echo "<tr><td class='top' width='450px'>";
         Contract::showCentral();
         echo "</td></tr>";
     }
     echo "</table></td>";
     if (haveRight("logs", "r")) {
         echo "<td class='top' width='450px'>";
         //Show last add events
         Event::showForUser($_SESSION["glpiname"]);
         echo "</td>";
     }
     echo "</tr></table>";
     if ($_SESSION["glpishow_jobs_at_login"] && $showticket) {
         echo "<br>";
         Ticket::showCentralNewList();
     }
 }
All Usage Examples Of Contract::showCentral