/**
  * @see PluginOcsinventoryngOcsClient::getComputersToUpdate()
  * @param array $cfg_ocs
  * @param date $max_date
  * @return array
  */
 public function getComputersToUpdate($cfg_ocs, $max_date)
 {
     $query = "SELECT *\n                       FROM `hardware`\n                       INNER JOIN `accountinfo` ON (`hardware`.`ID` = `accountinfo`.`HARDWARE_ID`)\n                       WHERE ((`hardware`.`CHECKSUM` & " . $cfg_ocs["checksum"] . ") > '0'\n                              OR `hardware`.`LASTDATE` > '{$max_date}') ";
     // workaround to avoid duplicate when synchro occurs during an inventory
     // "after" insert in ocsweb.hardware  and "before" insert in ocsweb.deleted_equiv
     $query .= " AND UNIX_TIMESTAMP(`LASTDATE`) < (UNIX_TIMESTAMP(NOW())-180) ";
     $tag_limit = PluginOcsinventoryngOcsServer::getTagLimit($cfg_ocs);
     if (!empty($tag_limit)) {
         $query .= "AND " . $tag_limit;
     }
     $query .= " ORDER BY `hardware`.`LASTDATE` ASC\n                        LIMIT " . intval($cfg_ocs["cron_sync_number"]);
     $res = $this->db->query($query);
     $data = array();
     if ($res->num_rows > 0) {
         while ($num = $this->db->fetch_assoc($res)) {
             $data[] = $num;
         }
     }
     return $data;
 }