Logo Search packages:      
Sourcecode: ocsinventory-server version File versions  Download package

multicritere.php

<?php 
//====================================================================================
// OCS INVENTORY REPORTS
// Copyleft Pierre LEMMET 2005
// Web: http://ocsinventory.sourceforge.net
//
// This code is open source and may be copied and modified as long as the source
// code is always made freely available.
// Please refer to the General Public Licence http://www.gnu.org/ or Licence.txt
//====================================================================================
//Modified on $Date: 2008-02-27 12:34:12 $$Author: hunal $($Revision: 1.17 $)

require_once('require/function_server.php');

//cas of add new server's diff
if (isset($_POST['action_server']) and $_POST['action_server'] != '0')
{

      $i=1;
      foreach ($_POST as $key=>$value){
            if (substr($key, 0, 9) == "checkmass"){
                  $mach[$i]=$value;
                  $i++;
            }
      }
      if ($mach == "")
      {
            $sql="select h.id ".$_SESSION['groupReq'];
            $res = mysql_query( $sql, $_SESSION["readServer"]);
            while( $valallid = mysql_fetch_array( $res ) ){
                  $mach[$i] = $valallid['id'];
                  $i++;
            }

      }
      if ($_POST['name_server_new'] != "")
      $name=$_POST['name_server_new'];
      elseif ($_POST['name_server_add'] != "")
      $name=$_POST['name_server_add'];
      elseif ($_POST['name_server_replace'] != "")
      $name=$_POST['name_server_replace'];
      $msg=admin_serveur($_POST['action_server'],$name,$_POST['descr_server'],$mach) ;
      echo "<script>alert('".$msg."');</script>";
}

      if( isset( $_GET["nme"] ) && isset( $_GET["stat"] ) ) {
            $_POST["act_0"] = "on";
            $_POST["chm_0"] = "tele";
            $_POST["lbl_0"] = $l->g(512);
            $_POST["ega_0"] = "ayant";
            $_POST["val_0"] = urldecode( $_GET["nme"] );
            $_POST["val2_0"] = urldecode( $_GET["stat"] );
            $_POST["sub"] = $l->g(30);
            $_POST["max"] = 1;
            if( $_POST["val2_0"] == $l->g(482) ) {
                  $_POST["val2_0"] = "stats";
            }
            $_SESSION["OPT"][] = $l->g(512);
      }

      if($_POST["sub"]==$l->g(30)) {
            unset($_SESSION["selectSofts"]);
            unset($_SESSION["selectRegistry"]);
            unset($_SESSION["storedRequest"], $_SESSION["c"],$_SESSION["reqs"],$_SESSION["softs"]);
      }

      printEnTete($l->g(9));
      $req = NULL;

      if( !isset($_SESSION["optCol"]) ) {
            $reqCol = "SHOW COLUMNS FROM accountinfo";
            $resCol = mysql_query($reqCol, $_SESSION["readServer"]) or die(mysql_error($_SESSION["readServer"]));
            while($colname=mysql_fetch_array($resCol)) {
                  if( strcasecmp($colname["Field"], TAG_NAME) != 0 )
                        $_SESSION["optCol"][] = $colname["Field"] ;
            }
      }

      require("req.class.php");
      $indLigne=0;
      $softPresent = false;
      $cuPresent = -1;
      $leSelect = array_merge( array("h.id"=>"h.id", "deviceid"=>"deviceid"), $_SESSION["currentFieldList"] );

      if( is_array($_SESSION["selectSofts"]) && $_POST["sub"]!=$l->g(30))
            $leSelect = array_merge( $leSelect, $_SESSION["selectSofts"] );

      if( is_array($_SESSION["selectRegistry"]) )
            $leSelect = array_merge( $leSelect, $_SESSION["selectRegistry"] );

      $selFinal ="";

      if($_POST["reset"]==$l->g(41))
      {
            unset($_SESSION["OPT"]);
            unset($_SESSION["reqs"]);
            unset($_SESSION["softs"]);
      }
      else if($_POST["selOpt"])
      {
            $_POST["selOpt"] = urldecode( $_POST["selOpt"] );
            if( $_POST["selOpt"]==$l->g(20) ||  ((! is_array($_SESSION["OPT"]))  ||   ( !in_array($_POST["selOpt"],$_SESSION["OPT"])))) {
                  $_SESSION["OPT"][]=stripslashes($_POST["selOpt"]);
            }
      }
      else if($_POST["sub"]==$l->g(30))
      {
            /* Creates a description of the generated query in $_SESSION["queryDescription"]
            $totSofts = 0;
            $totRegs = 0;

            $logName = "";
            $firstLog = true;
            for($cpLog=0;$cpLog<$_POST["max"];$cpLog++)     {
                  if( $_POST["val_".$cpLog] != "" && $_POST["act_".$cpLog] == "on" ) {                      
                        if( ! $firstLog )
                              $logName .= " &\n";
                        $logName .= addslashes( $_POST["chm_".$cpLog]." ".$_POST["ega_".$cpLog]." ".$_POST["val_".$cpLog] );
                        if( $_POST["ega_".$cpLog] == $l->g(203) )
                              $logName .= $l->g(582).$_POST["val2_".$cpLog];

                        $firstLog = false;
                  }
            }
            $_SESSION["queryDescription"] = $logName ;
            */
            $i=0; $nb=0; 
            $laRequete="";                      

            for($i=0;$i<$_POST["max"];$i++)     {

                  if( urldecode($_POST["lbl_".$i]) == $l->g(20))
                        $_SESSION["softs"][] = array( $_POST["act_".$i], urldecode($_POST["chm_".$i]), $_POST["ega_".$i],
                        strtr($_POST["val_".$i],"\"","'"), strtr($_POST["val2_".$i],"\"","'"), $_POST["valreg_".$i] );

                  $_SESSION["reqs"][ urldecode($_POST["lbl_".$i]) ] = array( $_POST["act_".$i], urldecode($_POST["chm_".$i]), $_POST["ega_".$i],
                  strtr($_POST["val_".$i],"\"","'"), strtr($_POST["val2_".$i],"\"","'"), $_POST["valreg_".$i] );

                  if(!isset($_POST["act_".$i]))
                        continue;
                  $nb++;                  
            }

            $from = " hardware h LEFT JOIN accountinfo a ON a.hardware_id=h.id LEFT JOIN bios b ON b.hardware_id=h.id,";
            //$laRequete.=" FROM hardware h,accountinfo a, bios b, ";

            $softTable = false ;
            $logIndex = 1;
            $fromPrelim  ="";
            for($i=0;$i<$_POST["max"];$i++)
            {

                  if(!isset($_POST["act_".$i]))
                  continue;

                  //jokers
                  if( $_POST["ega_".$i] != $l->g(410) )
                        $_POST["val_".$i] = strtr($_POST["val_".$i], "?*", "_%");

                  if( isFieldDate($_POST["chm_".$i]) ) {
                        $_POST["val_".$i] = dateToMysql($_POST["val_".$i]);
                  }

                  if( ($_POST["chm_".$i]=="name") && ($_POST["ega_".$i]==$l->g(129) || $_POST["ega_".$i]==$l->g(410))) {
                        $leSelect["s".$logIndex.".name"] = $l->g(20)." $logIndex";
                        $_SESSION["selectSofts"]["s".$logIndex.".name"] = $l->g(20)." $logIndex";
                  }

                  if( ($_POST["chm_".$i]=="regval" || $_POST["chm_".$i]=="regname")&&
                        ($_POST["ega_".$i]==$l->g(129) || $_POST["ega_".$i]==$l->g(410))) {
                        $leSelect["r.regvalue"] = $_POST["val_".$i];
                        $from = substr ( $from, 0 , strlen( $from)-1 );
                        $from .= " LEFT JOIN registry r ON r.hardware_id=h.id AND r.name='".$_POST["val_".$i]."',";
                        $_SESSION["selectRegistry"]["r.regvalue"] = $_POST["val_".$i];
                  }

                  $regRes = null;
                  if( ($_POST["ega_".$i]==$l->g(129)||$_POST["ega_".$i]==$l->g(410)) && $_POST["chm_".$i]=="name" ) {
                        //$fromPrelim.=" softwares s".$logIndex.",";
                        $from .= " softwares s".$logIndex.",";
                        $logIndex++;
                  }

                  if( ($_POST["chm_".$i]=="smonitor" || $_POST["chm_".$i]=="fmonitor" || $_POST["chm_".$i]=="lmonitor") && ! $monitorTable ) {
                        $fromPrelim.=" monitors m,";
                        $monitorTable = true;
                  }

                  if($_POST["chm_".$i]=="free") {
                        $fromPrelim.=" drives dr,";
                  }

                  if(($_POST["chm_".$i]=="ipmask"||$_POST["chm_".$i]=="ipgateway"||$_POST["chm_".$i]=="ipaddr"||$_POST["chm_".$i]=="ipsubnet"||$_POST["chm_".$i]=="macaddr") && !$netTable) {
                        $fromPrelim.=" networks n,";
                        $netTable=true;
                  }
            }

            if($fromPrelim[strlen($fromPrelim)-1]==",")
                  $fromPrelim[strlen($fromPrelim)-1]=" ";
            if($from[strlen($from)-1]==",")
                  $from[strlen($from)-1]=" ";
            $groupReqBegin = "FROM ".$from;
            if( $fromPrelim != "" )
                  $groupReqBegin .= ",".$fromPrelim;

            $groupReqBegin .= " WHERE ";
            for($i=0;$i<$_POST["max"];$i++)
            {                       
                  if(!isset($_POST["act_".$i]))
                        continue;
                                                
                  if( $_POST["act_".$i]="checked" && $_POST["chm_".$i] == "ipdisc" ) {
                                          
                        if( ! empty($laRequete) ) $laRequete .= " AND ";
                        if( ! empty($groupReq) ) $groupReq .= " AND ";

                        $laRequete.= " h.id ";
                        $groupReq.= " h.id ";
                        switch( $_POST["val_".$i] ) {
                              case "elu":
                                    $groupReq.= "IN (SELECT hardware_id FROM devices WHERE ivalue=1 AND name='IPDISCOVER') "; 
                                    $laRequete.= "IN "; 
                                    $reqIdIpd = "SELECT DISTINCT hardware_id FROM devices WHERE ivalue=1 AND name='IPDISCOVER'"; 
                              break;
                              case "for":
                                    $groupReq.= "IN (SELECT hardware_id FROM devices WHERE ivalue=2 AND name='IPDISCOVER') "; 
                                    $laRequete.= "IN "; 
                                    $reqIdIpd = "SELECT DISTINCT hardware_id FROM devices WHERE ivalue=2 AND name='IPDISCOVER'"; 
                              break;
                              case "nelu":
                                    $groupReq.= "NOT IN (SELECT hardware_id FROM devices WHERE ivalue=1 AND name='IPDISCOVER') "; 
                                    $laRequete.= "NOT IN "; 
                                    $reqIdIpd = "SELECT DISTINCT hardware_id FROM devices WHERE ivalue=1 AND name='IPDISCOVER'"; 
                              break;
                              case "eli":
                                    $groupReq.= "NOT IN (SELECT hardware_id FROM devices WHERE ivalue=0 AND name='IPDISCOVER') ";
                                    $laRequete.= "NOT IN "; 
                                    $reqIdIpd = "SELECT DISTINCT hardware_id FROM devices WHERE ivalue=0 AND name='IPDISCOVER'";
                              break;
                              case "neli":
                                    $groupReq.= "IN (SELECT hardware_id FROM devices WHERE ivalue=0 AND name='IPDISCOVER') ";
                                    $laRequete.= "IN "; 
                                    $reqIdIpd = "SELECT DISTINCT hardware_id FROM devices WHERE ivalue=0 AND name='IPDISCOVER'";
                              break;
                        }
                        $laRequete .= "('".getGluedIds($reqIdIpd)."')";
                        continue;
                  }
                  
                  if( $_POST["act_".$i]="checked" && $_POST["chm_".$i] == "freq" ) {
                                          
                        if( ! empty($laRequete) ) $laRequete .= " AND ";
                        if( ! empty($groupReq) ) $groupReq .= " AND ";

                        $laRequete.= " h.id ";
                        $groupReq .= " h.id ";
                        switch( $_POST["val_".$i] ) {
                              case "std":
                                    $groupReq.= "NOT IN (SELECT hardware_id FROM devices WHERE name='FREQUENCY') "; 
                                    $laRequete.= "NOT IN ";
                                    $reqIdFre = " (SELECT DISTINCT hardware_id FROM devices WHERE name='FREQUENCY') "; 
                              break;
                              case "always":
                                    $groupReq.= "IN (SELECT hardware_id FROM devices WHERE name='FREQUENCY' AND ivalue=0) "; 
                                    $laRequete.= "IN ";
                                    $reqIdFre = "  (SELECT DISTINCT hardware_id FROM devices WHERE name='FREQUENCY' AND ivalue=0) "; 
                              break;
                              case "never":
                                    $groupReq.= "IN (SELECT hardware_id FROM devices WHERE name='FREQUENCY' AND ivalue=-1) "; 
                                    $laRequete.= "IN ";
                                    $reqIdFre = "  (SELECT DISTINCT hardware_id FROM devices WHERE name='FREQUENCY' AND ivalue=-1) "; 
                              break;
                              case "custom":
                                    $groupReq.= "IN (SELECT hardware_id FROM devices WHERE name='FREQUENCY' AND ivalue>0)  ";
                                    $laRequete.= "IN ";
                                    $reqIdFre = "  (SELECT DISTINCT hardware_id FROM devices WHERE name='FREQUENCY' AND ivalue>0)  ";
                              break;                              
                        }
                        $laRequete .= "('".getGluedIds($reqIdFre)."')";
                        continue;
                  }
                  
                  if( $_POST["act_".$i]="checked" && $_POST["chm_".$i] == "tele" ) {
                                          
                        if( ! empty($laRequete) ) $laRequete .= " AND ";
                        if( ! empty($groupReq) ) $groupReq .= " AND ";                          
                        $laRequete.= " h.id ";
                        $groupReq .= " h.id ";
                        
                        if( $_POST["ega_".$i] == "ayant" ) {
                              $laRequete.= " IN ";
                              $groupReq .= " IN ";
                        }
                        else if( $_POST["ega_".$i] == "nayant" ) {
                              $laRequete.= " NOT IN ";
                              $groupReq .= " NOT IN ";
                        }
                        $reqIdDownload = "";
                        switch( $_POST["val2_".$i] ) {
                              case "suc":
                                    $groupReq.= "(SELECT d.hardware_id FROM devices d, download_available a, download_enable e
                                     WHERE d.name='DOWNLOAD' AND a.name='".$_POST["val_".$i].
                                     "' AND d.tvalue like 'SUCCESS%' AND e.fileid=a.fileid AND e.id=d.ivalue UNION 
                                   SELECT dh.hardware_id FROM download_history dh, download_available da WHERE dh.pkg_id=da.fileid AND da.name='".$_POST["val_".$i].
                                     "')"; 
                                    $reqIdDownload = "SELECT DISTINCT d.hardware_id FROM devices d, download_available a, download_enable e
                                     WHERE d.name='DOWNLOAD' AND a.name='".$_POST["val_".$i].
                                     "' AND d.tvalue like 'SUCCESS%' AND e.fileid=a.fileid AND e.id=d.ivalue UNION 
                                   SELECT dh.hardware_id FROM download_history dh, download_available da WHERE dh.pkg_id=da.fileid AND da.name='".$_POST["val_".$i].
                                     "'"; 
                              break;
                              case "nsuc":
                                    $groupReq.= "(SELECT d.hardware_id FROM devices d, download_available a, download_enable e
                                     WHERE d.name='DOWNLOAD' AND a.name='".$_POST["val_".$i].
                                     "' AND (d.tvalue not like 'SUCCESS%' OR d.tvalue IS NULL) AND e.fileid=a.fileid AND e.id=d.ivalue) "; 
                                    $reqIdDownload = "SELECT DISTINCT d.hardware_id FROM devices d, download_available a, download_enable e
                                     WHERE d.name='DOWNLOAD' AND a.name='".$_POST["val_".$i].
                                     "' AND (d.tvalue not like 'SUCCESS%' OR d.tvalue IS NULL) AND e.fileid=a.fileid AND e.id=d.ivalue"; 
                              break;
                              case "ind":
                                    $groupReq.= "(SELECT d.hardware_id FROM devices d, download_available a, download_enable e
                                     WHERE d.name='DOWNLOAD' AND a.name='".$_POST["val_".$i].
                                     "' AND e.fileid=a.fileid AND e.id=d.ivalue UNION SELECT dh.hardware_id FROM download_history dh, download_available da WHERE dh.pkg_id=da.fileid AND da.name='".$_POST["val_".$i].
                                     "')";
                                    $reqIdDownload = "SELECT DISTINCT d.hardware_id FROM devices d, download_available a, download_enable e
                                     WHERE d.name='DOWNLOAD' AND a.name='".$_POST["val_".$i].
                                     "' AND e.fileid=a.fileid AND e.id=d.ivalue UNION SELECT dh.hardware_id FROM download_history dh, download_available da WHERE dh.pkg_id=da.fileid AND da.name='".$_POST["val_".$i].
                                     "'";
                              break;
                              case "stats":
                                    $groupReq.= "(SELECT d.hardware_id FROM devices d, download_available a, download_enable e
                                     WHERE d.name='DOWNLOAD' AND a.name='".$_POST["val_".$i].
                                     "' AND e.fileid=a.fileid AND e.id=d.ivalue AND d.tvalue IS NULL ) ";  
                              
                                    $reqIdDownload = "SELECT DISTINCT d.hardware_id FROM devices d, download_available a, download_enable e
                                     WHERE d.name='DOWNLOAD' AND a.name='".$_POST["val_".$i].
                                     "' AND e.fileid=a.fileid AND e.id=d.ivalue AND d.tvalue IS NULL";  
                              break;
                              default: //standard case
                                    $groupReq.= "(SELECT d.hardware_id FROM devices d, download_available a, download_enable e
                                     WHERE d.name='DOWNLOAD' AND a.name='".$_POST["val_".$i].
                                     "' AND d.tvalue='".$_POST["val2_".$i]."' AND e.fileid=a.fileid AND e.id=d.ivalue) ";  
                                    $reqIdDownload = "SELECT DISTINCT d.hardware_id FROM devices d, download_available a, download_enable e
                                     WHERE d.name='DOWNLOAD' AND a.name='".$_POST["val_".$i].
                                     "' AND d.tvalue='".$_POST["val2_".$i]."' AND e.fileid=a.fileid AND e.id=d.ivalue";  
                              break;                                                      
                        }
                        $laRequete .= "('".getGluedIds($reqIdDownload)."')";                    
                        continue;
                  }
                  
                  if( $_POST["act_".$i]="checked" && ! (  ($cuPresent != -1 ) && $_POST["chm_".$i] == "cu") )
                  {                       
                        // cas particulier avec LOGICIEL
                        if( ($_POST["chm_".$i] == "name" ) ) {
                              if( $_POST["ega_".$i] == $l->g(129)||$_POST["ega_".$i]==$l->g(410) )
                                    $softsEg[] = Array( $_POST["val_".$i], urldecode($_POST["lbl_".$i]), $_POST["ega_".$i] );
                              else
                                    $softsDi[] = Array( $_POST["val_".$i], urldecode($_POST["lbl_".$i]), "" );
                              continue ;
                        }
                        
                        // cas particulier avec registry DIFFERENT DE
                        if( $_POST["chm_".$i] == "regname" && $_POST["ega_".$i] == $l->g(130) ) {
                              $regDiff=Array($_POST["val_".$i],$_POST["valreg_".$i]);
                              continue ;
                        }
                        
                        $forceEgal=false;
                                                                        
                        if($_POST["chm_".$i]=="regname") {
                              if( ! empty($laRequete) ) $laRequete .= " AND ";
                              if( ! empty($groupReq) ) $groupReq .= " AND ";  
                              $laRequete.= "r.hardware_id=h.id ";
                              $groupReq .= "r.hardware_id=h.id ";
                        }
                        $tblIneq = "h";   
                        $reqCondition = "";                       
                        switch($_POST["chm_".$i])
                        {
                              case "ssn": $reqCondition.="b.ssn";break;
                              case "bmanufacturer": $reqCondition.="b.bmanufacturer";break;
                              case "bversion": $reqCondition.="b.bversion";break;
                              case "smanufacturer": $reqCondition.="b.smanufacturer";break;
                              case "smodel": $reqCondition.="b.smodel";break;
                              case "ipmask": $reqCondition.="n.hardware_id=h.id AND n.ipmask";break;
                              case "ipgateway": $reqCondition.="n.hardware_id=h.id AND n.ipgateway";break;
                              case "free": $reqCondition.="dr.hardware_id=h.id AND dr.free";$tblIneq="dr";break;
                              case "ipsubnet": $reqCondition.="n.hardware_id=h.id AND n.ipsubnet";break;
                              case "regname": 
                                          if( $_POST["valreg_".$i] != $l->g(265) ) {
                                                if( $_POST["ega_".$i] != $l->g(410) )
                                                      $_POST["valreg_".$i] = strtr($_POST["valreg_".$i], "?*", "_%");
                                                
                                                if( $_SESSION["usecache"] == true && $_POST["ega_".$i] == $l->g(129) ) {
                                                      $glued = getCache( "registry", "regvalue", $_POST["valreg_".$i], $totRegs );
                                                      $reqCondition.="r.regvalue IN('".$glued."') AND ";
                                                }
                                                else {
                                                      $comp = $_POST["ega_".$i] == $l->g(129) ? " like '%" : " = '";                                           
                                                      $compFin = $_POST["ega_".$i] == $l->g(129) ? "%' " : "' ";
                                                      $reqCondition.="r.regvalue$comp".$_POST["valreg_".$i]."{$compFin}AND ";
                                                }
                                          }
                                          $reqCondition.="r.name";
                                          $forceEgal=true;
                                          break;                              
                              
                              case "name":                                          
                                          $reqCondition.="s.hardware_id=h.id AND s.name";
                                          $softPresent = true;
                                          if( $_POST["ega_".$i] == $l->g(129)||$_POST["ega_".$i]==$l->g(410) )
                                                $unSoftnEgal = true ;
                                          break;                  
                                          
                              case "ORDEROWNER": $reqCondition.="a.orderowner";break;
                              case "ORDERID": $reqCondition.="a.orderid";break;
                              case "PRODUCTID": $reqCondition.="a.productid";break;
                              case "BILLDATE": $reqCondition.="a.billnbr";break;
                              case "cu": $reqCondition.="a.".TAG_NAME;break;
                              case "processors": $reqCondition.="h.processors";break;
                              case "memory": $reqCondition.="h.memory";break;
                              case "osname": $reqCondition.="h.osname";$forceEgal=false;break;
                              case "oscomments": $reqCondition.="h.oscomments";$forceEgal=false;break;
                              case "userid": $reqCondition.="h.userid";break;
                              case "ipaddr": $reqCondition.="n.hardware_id=h.id AND n.ipaddress";break;
                              case "macaddr": $reqCondition.="n.hardware_id=h.id AND n.macaddr";break;
                              case "useragent": $reqCondition.="h.useragent";$forceEgal=true;break;
                              case "workgroup": $reqCondition.="h.workgroup";$forceEgal=true;break;
                              case "userdomain": $reqCondition.="h.userdomain";$forceEgal=true;break;
                              case "hname": $reqCondition.="h.name";break;
                              case "description": $reqCondition.="h.description";break;
                              case "lastdate": $reqCondition.="h.lastdate";break;
                              case "smonitor": $reqCondition.="m.hardware_id=h.id AND m.serial";break;
                              case "fmonitor": $reqCondition.="m.hardware_id=h.id AND m.manufacturer";break;
                              case "lmonitor": $reqCondition.="m.hardware_id=h.id AND m.caption";break;
                              case "sversion": $reqCondition.="s1.hardware_id=h.id AND s1.version";break;
                              default: $reqCondition.="a.".$_POST["chm_".$i]; break;
                        }
                        
                        if( $_POST["val_".$i] == "" ) {
                                    switch($_POST["ega_".$i]) {
                                          case $l->g(410):  
                                          case $l->g(129): $reqCondition.=" IS NULL "; break;                                 
                                          case $l->g(130):                          
                                          case $l->g(346):
                                          case $l->g(201): 
                                          case $l->g(347):
                                          case $l->g(202): 
                                          case $l->g(203): 
                                          default: $reqCondition .=" IS NOT NULL "; break;            
                                    }
                        }
                        else {
                              if( ! $forceEgal ) {
                                    switch($_POST["ega_".$i]) {
                                          case $l->g(410): $reqCondition.=" = ";$forceEgal=true; break;     
                                          case $l->g(129): $reqCondition.=" LIKE ";$forceLike=true; break;                                
                                          case $l->g(130): $reqCondition.=" NOT LIKE ";$forceLike=true; break;                            
                                          case $l->g(346):
                                          case $l->g(201): $reqCondition.="<"; $forceEgal=true; break;
                                          case $l->g(347):
                                          case $l->g(202): $reqCondition.=">"; $forceEgal=true; break;
                                          case $l->g(203): $reqCondition.="<'".$_POST["val2_".$i]."' AND $tblIneq.".$_POST["chm_".$i].">"; $forceEgal=true; break;
                                          //case $l->g(204): $reqCondition.=">'".$_POST["val2_".$i]."' OR h.".$_POST["chm_".$i]."<";break;
                                          default: $reqCondition.=" LIKE "; $forceLike=true;break;
                                    }
                              }
                              else {
                                    switch($_POST["ega_".$i]) {
                                          case $l->g(410):  
                                          case $l->g(129): $reqCondition.=" = ";break;                                  
                                          case $l->g(130):                          
                                          case $l->g(346):
                                          case $l->g(201): 
                                          case $l->g(347):
                                          case $l->g(202): 
                                          case $l->g(203): 
                                          default: $reqCondition.=" <> ";break;           
                                    }
                              }
                              
                              if( $forceEgal || !$forceLike )
                                    $reqCondition.="'".$_POST["val_".$i]."'"; 
                              else
                                    $reqCondition.="'%".$_POST["val_".$i]."%'";                             
                        }

                        if( ! empty($laRequete) ) $laRequete .= " AND ";
                        if( ! empty($groupReq) ) $groupReq .= " AND ";  
                        $laRequete .= $reqCondition;
                        $groupReq .= $reqCondition;
                  }                 
            }
            
            if( $nb > 0 ) {         
                  $laRequeteF=$laRequete;                   
                  $logIndexEg = 1;
      
                  for($ii=0;$ii<sizeof($softsEg);$ii++) {               
                        $selFinal .= " AND ";
                        if( ! empty($laRequeteF) ) $laRequeteF .= " AND ";
                        if( ! empty($groupReq) )   $groupReq   .= " AND ";    
                        
                        $comp = $softsEg[$ii][2] == $l->g(129) ? " like '%" : " = '";
                        $compFin = $softsEg[$ii][2] == $l->g(129) ? "%' " : "' ";
                        $groupReq .= " s$logIndexEg.hardware_id=h.id AND s$logIndexEg.name$comp".$softsEg[$ii][0]."$compFin";
                        // If cache is used AND 'like' search is used
                        if( $_SESSION["usecache"] == true && $softsEg[$ii][2]==$l->g(129) ) {         
                              $gluedSofts = getCache( "softwares", "name", $softsEg[$ii][0], $totSofts );
                              if ($gluedSofts != ''){
                              $laRequeteF .= " s$logIndexEg.hardware_id=h.id AND s$logIndexEg.name IN('$gluedSofts')";
                              $selFinal   .= " s$logIndexEg.hardware_id=h.id AND s$logIndexEg.name IN('$gluedSofts')";
                              }
                              else{
                              $laRequeteF .= " s$logIndexEg.hardware_id=h.id AND s$logIndexEg.name IN('SOFT NOT EXIST')";
                              $selFinal   .= " s$logIndexEg.hardware_id=h.id AND s$logIndexEg.name IN('SOFT NOT EXIST')";
                              }
                        }
                        else {
                              $laRequeteF .= " s$logIndexEg.hardware_id=h.id AND s$logIndexEg.name$comp".$softsEg[$ii][0]."$compFin";
                              $selFinal   .= " s$logIndexEg.hardware_id=h.id AND s$logIndexEg.name$comp".$softsEg[$ii][0]."$compFin";
                        }
                        $logIndexEg++;
                  }
                  
                  if( $_SESSION["usecache"] == true ) {
                                          
                        for($ii=0;$ii<sizeof($softsDi);$ii++) {
                              $gluedSofts = "";
                              $softsDi[$ii][0] = strtr($softsDi[$ii][0], "?*", "_%");
                              $gluedSofts = getCache( "softwares", "name", $softsDi[$ii][0], $totSofts );
                              
                              if( $gluedSofts != "" ) {
                                    $reqSid = "SELECT DISTINCT hardware_id FROM softwares WHERE name IN('$gluedSofts')";
                                    $resSid = mysql_query( $reqSid, $_SESSION["readServer"] );
                                    while( $valSid = mysql_fetch_array($resSid) ) {
                                          $idNotIn[] = $valSid["hardware_id"];
                                    }
                              }                             
                        }                       
                  }
                  else {                        
                        for($ii=0;$ii<sizeof($softsDi);$ii++) {
                              if( ! empty($laRequeteF) ) $laRequeteF .= " AND ";                                  
                              $laRequeteF .= " h.id NOT IN(SELECT DISTINCT(ss.hardware_id) FROM softwares ss WHERE ss.name like '%".$softsDi[$ii][0]."%')";
                        }
                  }
                  
                  for($ii=0;$ii<sizeof($softsDi);$ii++) {
                        if( ! empty($groupReq) ) $groupReq .=" AND";
                        $groupReq .= " h.id NOT IN(SELECT DISTINCT(ss.hardware_id) FROM softwares ss WHERE ss.name like '%".$softsDi[$ii][0]."%')";
                  }

                  if( $_SESSION["usecache"] == true ) {
                        if(sizeof($regDiff)>=1) {                       
                              $regDiff[1] = strtr($regDiff[1], "?*", "_%");
                              $gluedRegs = getCache( "registry", "regvalue", $regDiff[1], $totRegs );
                              $reqSid = "SELECT DISTINCT hardware_id FROM registry WHERE name='".$regDiff[0]."' AND regvalue IN('".$gluedRegs."')";
                              $resSid = mysql_query( $reqSid, $_SESSION["readServer"] );
                              while( $valSid = mysql_fetch_array($resSid) ) {
                                    $idNotIn[] = $valSid["hardware_id"];
                              }                             
                        }
                  }
                  else {
                        if(sizeof($regDiff)>=1) {
                              $valRegR = "AND rr.regvalue = '".$regDiff[1]."'";
                              if( ! empty($laRequeteF) ) $laRequeteF .= " AND";
                              $laRequeteF .= " h.id NOT IN(SELECT DISTINCT(rr.hardware_id) FROM registry rr WHERE rr.name = '".$regDiff[0]."' $valRegR)";
                        }
                  }
                  
                  if(sizeof($regDiff)>=1) {
                        $valRegR = " AND rr.regvalue like '%".$regDiff[1]."%'";
                        if(  ! empty($groupReq) ) $groupReq .= " AND";
                        $groupReq .= " h.id NOT IN(SELECT DISTINCT(rr.hardware_id) FROM registry rr WHERE rr.name = '".$regDiff[0]."' $valRegR)";
                  }
                  //modif apportées pour résoudre bug des recherches qui renvoient toutes les machines
                  if( ! empty($laRequeteF))
                  $and=" AND ";

                  if( (! empty($laRequeteF) || ! empty($reqSid)) && ! empty($mesMachines) ) {
                        $laRequeteF .= $and.$mesMachines;
                  }
                  //fin des modifs
                  if( sizeof( $idNotIn ) > 0 ) {
                        if(  ! empty($laRequeteF) ) $laRequeteF .=" AND";
                        $idNotIn = @array_unique( $idNotIn );
                        $gluedId = @implode( "','", $idNotIn );
                        $laRequeteF .= " h.id NOT IN('".$gluedId."')";
                  }
                                    
                  if( ! empty($laRequeteF) ) $laRequeteF .= " AND ";
                  $laRequeteF .= " deviceid<>'_SYSTEMGROUP_' AND deviceid <> '_DOWNLOADGROUP_' ";

                  if( ! empty($groupReq) ) $groupReq .= " AND ";
                  $groupReq .= " deviceid<>'_SYSTEMGROUP_' AND deviceid <> '_DOWNLOADGROUP_' ";

                  $group =  " h.id";
                  $lbl="Recherche multicritères";
                  $lblChmp[0]=NULL;
                  $selectPrelim = array("h.id"=>"h.id");
                  $linkId = "h.id";
                  $whereId = "h.id";
                  $countId = "h.id";
                  $_SESSION["groupReq"] = $groupReqBegin." " .$groupReq;
                  $req=new Req($lbl,$whereId,$linkId,$laRequeteF,$leSelect,$selectPrelim,$from,$fromPrelim,$group,"h.lastdate DESC",$countId,null,true,null,null,null,null,$selFinal);
            }           
      }
      else if($_GET["redo"] || $_GET["c"] || $_GET["av"] || $_GET["page"] || isset($_GET["pcparpage"]) || isset($_GET["newcol"])  )
      {
            $lblChmp[0]=NULL;                   
            $req=new Req($_SESSION["storedRequest"]->label,$_SESSION["storedRequest"]->whereId,$_SESSION["storedRequest"]->linkId,$_SESSION["storedRequest"]->where,$leSelect,$_SESSION["storedRequest"]->selectPrelim,
            $_SESSION["storedRequest"]->from,$_SESSION["storedRequest"]->fromPrelim,$_SESSION["storedRequest"]->group,$_SESSION["storedRequest"]->order,$_SESSION["storedRequest"]->countId,null,true,null,null,null,null,$_SESSION["storedRequest"]->selFinal); // Instanciation du nouvel objet de type "Req"         
            //echo $requeteCount[0];
      }
      
      if($_SESSION["debug"]) 
            echo "<br><font color='brown'><b>".$groupReqBegin." " .$groupReq."</b></font><br><br>";
      
      if( $totSofts > MAX_CACHED_SOFTS || $totRegs > MAX_CACHED_REGISTRY )
            echo "<br><center><font color='red'><b>Trop de résultats. Merci d'être plus spécifique.</b></font></center>";
      else if( $req != NULL ) {
            ShowResults($req,true,false,false,true,false,false,false,true,true);
      }
?>
<br>
<table border=0 width=80% align=center><tr align=right><td width=50%>
<form name='optionss' action='index.php?multi=1' method='post'><b><?php echo $l->g(31);?>:&nbsp;&nbsp;&nbsp;</b> 
<select name=selOpt OnChange="optionss.submit();"><?php 

$optArray = array($l->g(34), $l->g(33), $l->g(557), $l->g(20), $l->g(26), $l->g(35),
$l->g(36), $l->g(207), $l->g(25), $l->g(24), $l->g(377), $l->g(65), $l->g(284), $l->g(64), $l->g(554), 
TAG_LBL, $l->g(357), $l->g(46),$l->g(257),$l->g(331),$l->g(209),$l->g(53),$l->g(45), $l->g(312), $l->g(286), $l->g(429), $l->g(512),$l->g(95),$l->g(555),$l->g(556));

//If software is selected, then software version is available
if(is_array($_SESSION["OPT"]) && in_array($l->g(20),$_SESSION["OPT"]))
      $optArray = array_merge( $optArray , array($l->g(19)) );

$optArray  = array_merge( $optArray, $_SESSION["optCol"]);
sort($optArray);
$countHl++;
echo "<option".($countHl%2==1?" class='hi'":"").">".$l->g(32)."</option>"; $countHl++;

foreach( $optArray as $val) {
      if( (!is_array($_SESSION["OPT"]) || !in_array($val,$_SESSION["OPT"])) && $val!="DEVICEID"&& $val!="HARDWARE_ID" || $val==$l->g(20)) {
            $countHl++;
            echo "<option".($countHl%2==1?" class='hi'":"").">$val</option>";
      }
}

?>
</select>
</form></td><td align=left>
<form method=post name=res action=index.php?multi=1><input taborder=2 type=submit name=reset value=<?php echo $l->g(41);?>></form></td>
</td></tr></table>

<?php 
$softVersion = false;
if( @in_array($l->g(19),$_SESSION["OPT"]))
      $softVersion = true;

if($_SESSION["OPT"]!=0)
{     
      echo "<form name=machine action=index.php?multi=1 method=post><table border=1 class= 'Fenetre' WIDTH = '75%' ALIGN = 'Center' CELLPADDING='5'>";
      
      $ligne[] = array( $l->g(34),"ipaddr","hardware","",2,5,"",false,true);
      $ligne[] = array( $l->g(33),"workgroup","hardware","SELECT DISTINCT workgroup FROM hardware",1,1,"",false,true);
      $ligne[] = array( $l->g(557),"userdomain","hardware","SELECT DISTINCT userdomain FROM hardware",1,1,"",false,true);
      
      foreach( $_SESSION["OPT"] as $op )
            if( $op == $l->g(20) ) {
                  $ligne[] = array( $l->g(20),"name","softwares","",2,7,"",false,true,!$softVersion);
                  if( $softVersion )
                        break;
            }
      $ligne[] = array( $l->g(19),"sversion","softwares","",2,1,"",false,true);
      $ligne[] = array( $l->g(26),"memory","hardware","",2,3,"MO",false,false);
      $ligne[] = array( $l->g(35),"hname","hardware","",2,1,"",false,true);
      $ligne[] = array( $l->g(53),"description","hardware","",2,1,"",false,true);
      $ligne[] = array( $l->g(46),"lastdate","hardware","",2,2,"",true);
      $ligne[] = array( $l->g(357),"useragent","hardware","SELECT DISTINCT useragent FROM hardware",1,1,"",false,false);
      $ligne[] = array( $l->g(36),"ssn","bios","",2,1,"",false,true);   
      $ligne[] = array( $l->g(64),"smanufacturer","bios","",2,1,"",false,true);
      $ligne[] = array( $l->g(65),"smodel","bios","",2,1,"",false,true);
      $ligne[] = array( $l->g(284),"bmanufacturer","bios","",2,1,"",false,true);
      $ligne[] = array( $l->g(207),"ipgateway","networks","",2,5,"",false,true);
      $ligne[] = array( $l->g(331),"ipsubnet","networks","",2,5,"",false,true);
      $ligne[] = array( $l->g(95),"macaddr","networks","",2,5,"",false,true);
      $ligne[] = array( $l->g(25),"osname","hardware","SELECT DISTINCT osname FROM ".($_SESSION["usecache"] == true?"hardware_osname_cache":"hardware"),1,1,"",false,false);
      $ligne[] = array( $l->g(286),"oscomments","hardware","SELECT DISTINCT oscomments FROM hardware",2,1,"",false,true);
      $ligne[] = array( $l->g(24),"userid","hardware","",2,1,"",false,true);
      $ligne[] = array( $l->g(377),"processors","hardware","",2,3,"MHZ",false,false);
      $ligne[] = array( $l->g(45),"free","drives","",2,3,"MB",false,false);
      $ligne[] = array( $l->g(257),"regname","hardware","SELECT DISTINCT name FROM ".($_SESSION["usecache"] == true?"registry_name_cache":"registry"),1,6,"",false,true);
      $ligne[] = array( $l->g(554),"smonitor","hardware","",2,1,"",false,true);
      $ligne[] = array( $l->g(555),"fmonitor","hardware","",2,1,"",false,true);
      $ligne[] = array( $l->g(556),"lmonitor","hardware","",2,1,"",false,true);
      $ligne[] = array( $l->g(209),"bversion","bios","",2,1,"",false,true);
      $ligne[] = array( TAG_LBL,"cu","accountinfo","",2,1);

      //HARDCODED OPTIONS
      $ligne[] = array( $l->g(312), "ipdisc");
      $ligne[] = array( $l->g(429), "freq" );
      $ligne[] = array( $l->g(512), "tele" );
      
      foreach($_SESSION["optCol"] AS $col) {
            if($col!="DEVICEID"&&$col!="TAG"&&$col!="HARDWARE_ID") {
                  $isDate = isFieldDate($col);
                  $ligne[]  =  array( $col,$col,"hardware","accountinfo",2,$isDate ? 2 : 1,"",$isDate,true);
            }
      }
      
      foreach( $ligne as $laLigne) {
            $colATrier[] = $laLigne[0];
      }
      $indLigneSoft = 0;
      sort($colATrier);
      foreach($colATrier as $nomLigne) {
            foreach($ligne as $laLigne) {
                  if($laLigne[0] == $nomLigne) {
                        afficheLigne($laLigne);
                        break;
                  }
            }
      }     
      
      $color=$indLigne%2==0?"#F2F2F2":"#FFFFFF";
      echo "<tr bgcolor='$color'><td colspan='3' align='right'><input type='hidden' name='max' value='$indLigne'>";
      
      if($_SESSION["OPT"]!=0)
      {
            echo "<input type=submit taborder=1 name=sub value=".$l->g(30).">";
      }     
      echo "</td></tr></table></form>";
      if($_SESSION["OPT"]!=0)
      {
            echo "<center><i>".$l->g(358)."</i></font></center><br>";
      }     
}

function afficheLigne($ligne)
{     
      global $indLigne,$indLigneSoft,$l,$_POST; 

      $label = $ligne[0];
      $champ = $ligne[1];
      $table = $ligne[2];
      $laRequete = $ligne[3];
      $combo = isset($ligne[4]) ? $ligne[4] : 1 ;
      $type = isset($ligne[5]) ? $ligne[5] : 1 ;
      $leg = isset($ligne[6]) ? $ligne[6] : "" ;
      $isDate = isset($ligne[7]) ? $ligne[7] : false ;
      $allowExact = isset($ligne[8]) ? $ligne[8] : true ;
      $canDisable = isset($ligne[9]) ? $ligne[9] : true ;

      if(is_array($_SESSION["OPT"])) {
            if(!in_array($label,$_SESSION["OPT"]))
                  return;
      }
      else
            return;
      
      $color=$indLigne%2==0?"#F2F2F2":"#FFFFFF";
      $suff="_".$indLigne;
      
      if( $type == 7) {// un soft
            echo"<tr bgcolor=$color><td>";
            if( ! $canDisable )
                  echo "<input type='hidden' name='act$suff' id='act$suff' value='on'>";
            echo "<input type=checkbox ".($canDisable?"":"disabled checked")." id='act$suff' name='act$suff'".($_SESSION["softs"][$indLigneSoft][0]=="on"||$_POST["selOpt"]==$label?" checked":"").">&nbsp;".$l->g(205)."</input>
                  <input type=hidden name='chm$suff' value=$champ>
                  <input type=hidden name='lbl$suff' value='".urlencode($label)."'>
            </td><td>$label</td><td>";
            echo "<select OnClick='act$suff.checked=true' name='ega$suff'>";        
            echo "<option".($_SESSION["softs"][$indLigneSoft][2]==$l->g(129)?" selected":"").">".$l->g(129)."</option>";
            if( $allowExact ) echo "<option".(($_SESSION["softs"][$indLigneSoft][2]==$l->g(410) or !isset($_SESSION["softs"][$indLigneSoft][2]))?" selected":"").">".$l->g(410)."</option>";
            echo "<option".($_SESSION["softs"][$indLigneSoft][2]==$l->g(130)?" selected":"").">".$l->g(130)."</option>";
            echo "</select>&nbsp;&nbsp;";
            echo "<input OnClick='act$suff.checked=true' name='val$suff' value=\"".stripslashes($_SESSION["softs"][$indLigneSoft][3])."\">";
            $indLigne++;
            $indLigneSoft++;
            return;
      }

      echo"       
      <tr bgcolor=$color>
            <td>
                  <input type=checkbox id='act$suff' name='act$suff'".($_SESSION["reqs"][$label][0]=="on"||$_POST["selOpt"]==$label?" checked":"").">&nbsp;".$l->g(205)."</input>
                  <input type=hidden name='chm$suff' value=$champ>
                  <input type=hidden name='lbl$suff' value='".urlencode($label)."'>
            </td>
            <td>
                  $label
            </td>
            <td>";      
            
      if( $champ == "ipdisc" ) {    
            echo "<select OnClick='act$suff.checked=true' name='val$suff'>
            <option ".($_SESSION["reqs"][$label][3]=="elu"?" selected":"")." value='elu'>".$l->g(502)."</option>
            <option ".($_SESSION["reqs"][$label][3]=="for"?" selected":"")." value='for'>".$l->g(503)."</option>
            <option ".($_SESSION["reqs"][$label][3]=="nelu"?" selected":"")." value='nelu'>".$l->g(504)."</option>
            <option ".($_SESSION["reqs"][$label][3]=="eli"?" selected":"")." value='eli'>".$l->g(505)."</option>
            <option ".($_SESSION["reqs"][$label][3]=="neli"?" selected":"")." value='neli'>".$l->g(506)."</option></select></td></tr>";
            $indLigne++;
            return;     
      }
      else if( $champ == "freq" ) {
            echo "<select OnClick='act$suff.checked=true' name='val$suff'>
            <option ".($_SESSION["reqs"][$label][3]=="std"?" selected":"")." value='std'>".$l->g(488)."</option>
            <option ".($_SESSION["reqs"][$label][3]=="always"?" selected":"")." value='always'>".$l->g(485)."</option>
            <option ".($_SESSION["reqs"][$label][3]=="never"?" selected":"")." value='never'>".$l->g(486)."</option>
            <option ".($_SESSION["reqs"][$label][3]=="custom"?" selected":"")." value='custom'>".$l->g(487)."</option></select></td></tr>";
            $indLigne++;
            return;     
      }
      else if( $champ == "tele" ) {
            
            $resTele = @mysql_query("SELECT distinct NAME FROM download_available ORDER BY NAME", $_SESSION["readServer"]);
            
            if( mysql_num_rows( $resTele ) >0 ) {           
                  echo "<select OnClick='act$suff.checked=true' name='ega$suff'>
                  <option ".($_SESSION["reqs"][$label][2]=="ayant"?" selected":"")." value='ayant'>".$l->g(507)."</option>
                  <option ".($_SESSION["reqs"][$label][2]=="nayant"?" selected":"")." value='nayant'>".$l->g(508)."</option>
                  </select>  ".$l->g(498).": <select OnClick='act$suff.checked=true' name='val$suff'>";
                  while( $valTele = mysql_fetch_array( $resTele )) {
                        echo "<option ".($_SESSION["reqs"][$label][3]==$valTele["NAME"]?" selected":"").">".$valTele["NAME"]."
                        </option>"; 
                  }                       
                  
                  echo "</select> ".$l->g(546).": <select OnClick='act$suff.checked=true' name='val2$suff'>
                  <option ".($_SESSION["reqs"][$label][4]=="ind"?" selected":"")." value='ind'>".$l->g(509)."</option>
                  <option ".($_SESSION["reqs"][$label][4]=="nsuc"?" selected":"")." value='nsuc'>".$l->g(548)."</option>
                  <option ".($_SESSION["reqs"][$label][4]=="suc"?" selected":"")." value='suc'>SUCCESS</option>
                  <option ".($_SESSION["reqs"][$label][4]=="stats"?" selected":"")." value='stats'>".$l->g(482)."</option>";
                  
                  $resState = @mysql_query("SELECT distinct(tvalue) FROM devices WHERE tvalue<>'SUCCESS' AND tvalue IS NOT NULL AND name='DOWNLOAD'", $_SESSION["readServer"]);
                  while( $valState = @mysql_fetch_array( $resState )) {
                        echo "<option ".($_SESSION["reqs"][$label][4]==$valState["tvalue"]?" selected":"")." value='".$valState["tvalue"]."'>".$valState["tvalue"]."</option>";
                  }      
                  
                  echo "</select>";
                  $indLigne++;
            }
            else {
                  echo $l->g(510);  
            }
            return;     
      }
            
            if($type != 4 && $type != 6) {
                              echo $_SESSION["reqs"][$label][2];
                  echo "<select OnClick='act$suff.checked=true' name='ega$suff'>                
                  <option".($_SESSION["reqs"][$label][2]==$l->g(129)?" selected":"").">".$l->g(129)."</option>";
                  if( $allowExact ) echo "<option".(($_SESSION["reqs"][$label][2]==$l->g(410) or !isset($_SESSION["reqs"][$label][2]))?" selected":"").">".$l->g(410)."</option>";
                  echo "<option".($_SESSION["reqs"][$label][2]==$l->g(130)?" selected":"").">".$l->g(130)."</option>";
      
                  if( $isDate) {
                        echo "<option".($_SESSION["reqs"][$label][2]==$l->g(346)?" selected":"").">".$l->g(346)."</option><option".($_SESSION["reqs"][$label][2]==$l->g(347)?" selected":"").">".$l->g(347)."</option>"; 
                  }
                  else if( $type==2||$type==3 )
                  {
                        echo "<option".($_SESSION["reqs"][$label][2]==$l->g(201)?" selected":"").">".$l->g(201)."</option><option".($_SESSION["reqs"][$label][2]==$l->g(202)?" selected":"").">".$l->g(202)."</option>";
                  }
                  if ($type==3)
                  {
                        echo "<option".($_SESSION["reqs"][$label][2]==$l->g(203)?" selected":"").">".$l->g(203)."</option>";//<option".($_POST["ega$suff"]==$l->g(204)?" selected":"").">".$l->g(204)."</option>";            
                  }
            }
            else if( $type != 6)
                  echo $l->g(129);
            if( $type != 6)
                  echo "</select>&nbsp;&nbsp;";
                  
      if($combo==1)
      {
            echo "<select OnClick='act$suff.checked=true' name='val$suff'>";  
            $res=mysql_query($laRequete, $_SESSION["readServer"]) or die(mysql_error($_SESSION["readServer"]));
            
            $linSel = "LINUX"   == $_SESSION["reqs"][$label][3] ?" selected":"";
            $winSel = "WINDOWS" == $_SESSION["reqs"][$label][3] ?" selected":"";
            $macOSX = "MacOSX"  == $_SESSION["reqs"][$label][3] ?" selected":""; //add by WES Young
            
            if( $champ=="osname")
                  echo "<option value='LINUX' $linSel>LINUX (".$l->g(547).")</option>
                          <option value='WINDOWS' $winSel>WINDOWS (".$l->g(547).")</option>
                          <option value='MacOSX' $macOSX>MacOSX (".$l->g(547).")</option>";//add by WES Young
                         
            while($row=mysql_fetch_array($res))
            {
                  if($row[0]=="") continue;     
                  $selected = $row[0]== $_SESSION["reqs"][$label][3] ?" selected":"";
                  echo "<option$selected>".$row[0]."</option>\n"; 
            }
            
            echo "</select>";
      }
      else
      {
            if( $isDate ) {
                  echo "<input READONLY ".dateOnClick("val$suff","act$suff")." OnClick='act$suff.checked=true' name='val$suff' id='val$suff' value='"./*dateFromMysql(*/$_SESSION["reqs"][$label][3]/*)*/."'>".datePick("val$suff","act$suff");
            }
            else
                  echo "<input OnClick='act$suff.checked=true' name='val$suff' value=\"".stripslashes($_SESSION["reqs"][$label][3])."\">";
            
            if ($type==3) // deux inputs pour "entre machin et truc"
            {
                  echo "&nbsp;&nbsp;--&nbsp;&nbsp;<input OnClick='act$suff.checked=true' name='val2$suff' value='".$_SESSION["reqs"][$label][4]."'>";
            }     
      }
      if( $type == 6) {
                  echo "<select OnClick='act$suff.checked=true' name='ega$suff'>                
                  <option".($_SESSION["reqs"][$label][2]==$l->g(129)?" selected":"").">".$l->g(129)."</option>";
                  if( $allowExact ) echo "<option".(($_SESSION["reqs"][$label][2]==$l->g(410) or !isset($_SESSION["reqs"][$label][2]))?" selected":"").">".$l->g(410)."</option>";
                  echo "<option".($_SESSION["reqs"][$label][2]==$l->g(130)?" selected":"").">".$l->g(130)."</option></select>";
                  /*$reqRes = mysql_query("SELECT DISTINCT(regvalue) FROM registry", $_SESSION["readServer"]) or die(mysql_error($_SESSION["readServer"])); // mesmachines
                  echo "&nbsp;&nbsp;".$l->g(224).":&nbsp;&nbsp;*/
                  echo "<input OnClick='act$suff.checked=true' name='valreg$suff' value='".($_SESSION["reqs"][$label][5])."'>";
                              
                  /*while($row=mysql_fetch_array($reqRes))
                  {
                        if($row[0]=="") continue;     
                        $selected = $row[0]== $_SESSION["reqs"][$label][5] ?" selected":"";
                        echo "<option$selected>".$row[0]."</option>\n"; 
                  }*/
                  
                  echo "</input>";              
      }     
      
      echo "&nbsp;&nbsp;&nbsp;$leg</td></tr>";
      $indLigne++;
}

function getCache( $table, $field, $value, &$count ) {
      $reqCache = "SELECT ".$field." FROM ".$table."_".$field."_cache WHERE ".$field." LIKE '%".$value."%' AND ".$field." IS NOT NULL";    
      $resCache = mysql_query( $reqCache, $_SESSION["readServer"] );
      $cached = array();
      while( $valCache = mysql_fetch_array( $resCache ) ) {
            if( $count > 200 )
                  return NULL;
            $cached[] = $valCache[$field];
            $count++;                                       
      }
      
      $glued = @implode("','", $cached);
      return $glued;
}

function isFieldDate($nom) {
      if( $nom == "lastdate" )
            return true;
            
      $reqType = "SELECT $nom FROM accountinfo";
      if( $resType = @mysql_query($reqType, $_SESSION["readServer"])) {
            $valType = mysql_fetch_field($resType);
            return ($valType->type == "date");
      }
      return false;
}

            
?>

Generated by  Doxygen 1.6.0   Back to index