Example #1
0
    require_once BACKEND . 'ipdiscover/ipdiscover.php';
    $tab_options['CACHE'] = 'RESET';
}
if (isset($_SESSION['OCS']["ipdiscover"])) {
    $dpt = array_keys($_SESSION['OCS']["ipdiscover"]);
    array_unshift($dpt, "");
    foreach ($dpt as $key => $value) {
        $list_index[$key] = $value;
    }
    asort($list_index);
    echo $l->g(562) . " " . show_modif($list_index, 'DPT_CHOISE', 2, $form_name, array('DEFAULT' => "NO"));
} else {
    msg_info(mb_strtoupper($l->g(1134)));
}
if (isset($protectedPost['DPT_CHOISE']) and $protectedPost['DPT_CHOISE'] != '0') {
    $array_rsx = find_all_subnet($dpt[$protectedPost['DPT_CHOISE']]);
    $tab_options['VALUE']['LBL_RSX'] = $_SESSION['OCS']["ipdiscover"][$dpt[$protectedPost['DPT_CHOISE']]];
    $arg_sql = array();
    $sql = " select * from (select inv.RSX as ID,\n\t\t\t\t\t  inv.c as 'INVENTORIE',\n\t\t\t\t\t  non_ident.c as 'NON_INVENTORIE',\n\t\t\t\t\t  ipdiscover.c as 'IPDISCOVER',\n\t\t\t\t\t  ident.c as 'IDENTIFIE',\n\t\t\t\t\t  CASE WHEN ident.c IS NULL and ipdiscover.c IS NULL THEN 100 WHEN ident.c IS NULL THEN 0 ELSE round(100-(non_ident.c*100/(ident.c+non_ident.c)),1) END as 'pourcentage'\n\t\t\t  from (SELECT COUNT(DISTINCT hardware_id) as c,'IPDISCOVER' as TYPE,tvalue as RSX\n\t\t\t\t\tFROM devices \n\t\t\t\t\tWHERE name='IPDISCOVER' and tvalue in  ";
    $arg = mysql2_prepare($sql, $arg_sql, $array_rsx);
    $arg['SQL'] .= " GROUP BY tvalue) \n\t\t\t\tipdiscover right join\n\t\t\t\t   (SELECT count(distinct(hardware_id)) as c,'INVENTORIE' as TYPE,ipsubnet as RSX\n\t\t\t\t\tFROM networks left join subnet on networks.ipsubnet=subnet.netid\n\t\t\t\t\tWHERE ipsubnet in  ";
    $arg = mysql2_prepare($arg['SQL'], $arg['ARG'], $array_rsx);
    $arg['SQL'] .= " and status='Up' GROUP BY ipsubnet) \n\t\t\t\tinv on ipdiscover.RSX=inv.RSX left join\n\t\t\t\t\t(SELECT COUNT(DISTINCT mac) as c,'IDENTIFIE' as TYPE,netid as RSX\n\t\t\t\t\tFROM netmap \n\t\t\t\t\tWHERE mac IN (SELECT DISTINCT(macaddr) FROM network_devices) \n\t\t\t\t\t\tand netid in  ";
    $arg = mysql2_prepare($arg['SQL'], $arg['ARG'], $array_rsx);
    $arg['SQL'] .= " GROUP BY netid) \n\t\t\t\tident on ipdiscover.RSX=ident.RSX left join\n\t\t\t\t\t(SELECT COUNT(DISTINCT mac) as c,'NON IDENTIFIE' as TYPE,netid as RSX\n\t\t\t\t\tFROM netmap n\n\t\t\t\t\tLEFT JOIN networks ns ON ns.macaddr=n.mac\n\t\t\t\t\tWHERE n.mac NOT IN (SELECT DISTINCT(macaddr) FROM network_devices) \n\t\t\t\t\t\tand (ns.macaddr IS NULL OR ns.IPSUBNET <> n.netid) \n\t \t\t\t\t\tand ns.HARDWARE_ID IS NULL\n\t\t\t\t\t\tand n.netid in  ";
    $arg = mysql2_prepare($arg['SQL'], $arg['ARG'], $array_rsx);
    $arg['SQL'] .= " GROUP BY netid) \n\t\t\t\tnon_ident on non_ident.RSX=inv.RSX \n\t\t\t\t) toto";
    $tab_options['ARG_SQL'] = $arg['ARG'];
    $list_fields = array('LBL_RSX' => 'LBL_RSX', 'RSX' => 'ID', 'INVENTORIE' => 'INVENTORIE', 'NON_INVENTORIE' => 'NON_INVENTORIE', 'IPDISCOVER' => 'IPDISCOVER', 'IDENTIFIE' => 'IDENTIFIE');
    if ($_SESSION['OCS']['CONFIGURATION']['IPDISCOVER'] == "YES") {
        $list_fields['SUP'] = 'ID';
function count_noinv_network_devices($dpt_choise = '')
{
    $array_sub = find_all_subnet($dpt_choise);
    $arg_count = array();
    $sql_count = "SELECT COUNT(DISTINCT mac) as c\n\t\t\t\t\tFROM netmap n \n\t\t\t\t\tLEFT OUTER JOIN networks ns ON ns.macaddr = mac \n\t\t\t\t\tWHERE mac NOT IN (SELECT DISTINCT(macaddr) FROM network_devices) \n\t\t\t\t\t\tand ( ns.macaddr IS NULL OR ns.IPSUBNET <> n.netid)\n\t\t\t\t\t\tand netid in ";
    $detail_query = mysql2_prepare($sql_count, $arg_count, $array_sub);
    if (!isset($_SESSION['OCS']['COUNT_CONSOLE']['OCS_REPORT_NB_IPDISCOVER']) and $dpt_choise == '') {
        $res_count = mysql2_query_secure($detail_query['SQL'], $_SESSION['OCS']["readServer"], $detail_query['ARG']);
        $val_count = mysqli_fetch_array($res_count);
        return $val_count['c'];
    } else {
        return $_SESSION['OCS']['COUNT_CONSOLE']['OCS_REPORT_NB_IPDISCOVER'];
    }
}