function trans_by_checksum($onglet, $list_soft, $affect_type, $new_cat, $exist_cat) { global $l; if ($_SESSION['OCS']['usecache']) { $table = "softwares_name_cache"; } else { $table = "softwares"; } //verif is this cat exist if ($new_cat != '') { $sql_verif = "select extracted from dico_soft where formatted ='" . mysql_real_escape_string($new_cat) . "'"; $result_search_soft = mysql_query($sql_verif, $_SESSION['OCS']["readServer"]); $item_search_soft = mysql_fetch_object($result_search_soft); if (isset($item_search_soft->extracted) or $new_cat == "IGNORED" or $new_cat == "UNCHANGED") { $already_exist = TRUE; } } if ($onglet == "NEW") { $table = "softwares"; } else { if (!isset($already_exist)) { foreach ($list_soft as $soft_checksum) { del_soft_by_checksum($onglet, $soft_checksum); } } } $placeholders = array(); foreach ($list_soft as $soft_checksum) { $placeholders[] = "'%s'"; } if ($affect_type == "EXIST_CAT") { if ($exist_cat == "IGNORED") { $sql = "insert dico_ignored (extracted) select distinct NAME from " . $table . " where MD5(NAME) in (" . implode(",", $placeholders) . ")"; } elseif ($exist_cat == "UNCHANGED") { $sql = "insert dico_soft (extracted,formatted) select distinct NAME,NAME from " . $table . " where MD5(NAME) in (" . implode(",", $placeholders) . ")"; } else { $sql = "insert dico_soft (extracted,formatted) select distinct NAME,'" . mysql_real_escape_string($exist_cat) . "' from " . $table . " where MD5(NAME) in (" . implode(",", $placeholders) . ")"; } } else { if (!isset($already_exist)) { $sql = "insert dico_soft (extracted,formatted) select distinct NAME,'" . mysql_real_escape_string($new_cat) . "' from " . $table . " where MD5(NAME) in (" . implode(",", $placeholders) . ")"; } else { echo "<script>alert('" . $l->g(771) . "')</script>"; } } if ($sql != '') { mysql2_query_secure($sql, $_SESSION['OCS']["writeServer"], $list_soft); } }
if ($protectedPost['all_item'] != '') { $list_check = search_all_item($protectedPost['onglet'], $protectedPost['onglet_soft']); } else { foreach ($protectedPost as $key => $value) { if (substr($key, 0, 5) == "check") { $list_check[] = substr($key, 5); } } } if ($list_check != '') { trans_by_checksum($protectedPost['onglet'], $list_check, $protectedPost['AFFECT_TYPE'], $protectedPost['NEW_CAT'], $protectedPost['EXIST_CAT']); } } //delete a soft in list => return in 'NEW' liste if ($protectedPost['SUP_PROF'] != "") { del_soft_by_checksum($protectedPost['onglet'], $protectedPost['SUP_PROF']); } /************************************END ACTION**************************************/ if ($protectedPost['onglet'] != $protectedPost['old_onglet']) { unset($protectedPost['onglet_soft']); } /*******************************************************CAS OF CATEGORIES*******************************************************/ if ($protectedPost['onglet'] == 'CAT') { //search all categories $sql_list_cat = "select formatted name\n\t\t from dico_soft where extracted!=formatted " . $search_count . " group by formatted"; $result_list_cat = mysql_query($sql_list_cat, $_SESSION['OCS']["readServer"]); $i = 1; while ($item_list_cat = mysql_fetch_object($result_list_cat)) { if ($i == 1) { $first_onglet = $i; }