function analysis_delete() { global $dbh; global $pmb_synchro_rdf, $pmb_notice_img_folder_id; //Suppression de la vignette de la notice si il y en a une d'uploadée if ($pmb_notice_img_folder_id) { $req = "select repertoire_path from upload_repertoire where repertoire_id ='" . $pmb_notice_img_folder_id . "'"; $res = pmb_mysql_query($req, $dbh); if (pmb_mysql_num_rows($res)) { $rep = pmb_mysql_fetch_object($res); $img = $rep->repertoire_path . "img_" . $this->analysis_id; @unlink($img); } } //synchro rdf if ($pmb_synchro_rdf) { $synchro_rdf = new synchro_rdf(); $synchro_rdf->delRdf($this->analysis_id, 0); } //elimination des docs numeriques $req_explNum = "select explnum_id from explnum where explnum_notice=" . $this->analysis_id . " "; $result_explNum = @pmb_mysql_query($req_explNum, $dbh); while ($explNum = pmb_mysql_fetch_object($result_explNum)) { $myExplNum = new explnum($explNum->explnum_id); $myExplNum->delete(); } // suppression des entrees dans les caddies $query_caddie = "select caddie_id from caddie_content, caddie where type='NOTI' and object_id in ({$this->analysis_id}) and caddie_id=idcaddie "; $result_caddie = @pmb_mysql_query($query_caddie, $dbh); while ($cad = pmb_mysql_fetch_object($result_caddie)) { $req_suppr_caddie = "delete from caddie_content where caddie_id = '{$cad->caddie_id}' and object_id in ({$this->analysis_id}) "; @pmb_mysql_query($req_suppr_caddie, $dbh); } //elimination des champs persos $p_perso = new parametres_perso("notices"); $p_perso->delete_values($this->analysis_id); // on supprime l'entree dans la table 'analysis' $requete = "DELETE FROM analysis WHERE analysis_notice=" . $this->analysis_id; pmb_mysql_query($requete, $dbh); $result = pmb_mysql_affected_rows($dbh); // on supprime la notice du dépouillement $requete = "DELETE FROM notices WHERE notice_id='" . $this->analysis_id . "' "; pmb_mysql_query($requete, $dbh); $result += pmb_mysql_affected_rows($dbh); //suppression des droits d'acces user_notice $requete = "delete from acces_res_1 where res_num=" . $this->analysis_id; @pmb_mysql_query($requete, $dbh); //suppression des droits d'acces empr_notice $requete = "delete from acces_res_2 where res_num=" . $this->analysis_id; @pmb_mysql_query($requete, $dbh); // suppression des audits audit::delete_audit(AUDIT_NOTICE, $this->analysis_id); // suppression des categories $rqt_del = "delete from notices_categories where notcateg_notice='" . $this->analysis_id . "' "; @pmb_mysql_query($rqt_del, $dbh); // Clean des vedettes analysis::delete_vedette_links($this->analysis_id); // suppression des responsabilités $rqt_del = "delete from responsability where responsability_notice='" . $this->analysis_id . "' "; @pmb_mysql_query($rqt_del, $dbh); // suppression des liens $rqt_del = "delete from notices_relations where num_notice='" . $this->analysis_id . "' OR linked_notice='" . $this->analysis_id . "'"; @pmb_mysql_query($rqt_del, $dbh); // suppression des bannettes $rqt_del = "delete from bannette_contenu where num_notice='" . $this->analysis_id . "' "; @pmb_mysql_query($rqt_del, $dbh); // suppression des tags $rqt_del = "delete from tags where num_notice='" . $this->analysis_id . "' "; @pmb_mysql_query($rqt_del, $dbh); // suppression des avis $rqt_del = "delete from avis where num_notice='" . $this->analysis_id . "' "; @pmb_mysql_query($rqt_del, $dbh); //suppression des langues $query = "delete from notices_langues where num_notice='" . $this->analysis_id . "' "; @pmb_mysql_query($query, $dbh); // suppression index global $query = "delete from notices_global_index where num_notice='" . $this->analysis_id . "' "; @pmb_mysql_query($query, $dbh); // suppression notices_mots_global_index $query = "delete from notices_mots_global_index where id_notice='" . $this->analysis_id . "' "; @pmb_mysql_query($query, $dbh); // suppression notices_fields_global_index $query = "delete from notices_fields_global_index where id_notice='" . $this->analysis_id . "' "; @pmb_mysql_query($query, $dbh); //Suppression de la reference a la notice dans la table suggestions $query = "UPDATE suggestions set num_notice = 0 where num_notice=" . $this->analysis_id; @pmb_mysql_query($query, $dbh); //Suppression de la reference a la notice dans la table lignes_actes $requete = "UPDATE lignes_actes set num_produit=0, type_ligne=0 where num_produit='" . $this->analysis_id . "' and type_ligne in ('1','5') "; @pmb_mysql_query($requete, $dbh); //Suppression de la référence de la source si exitante.. $query = "delete from notices_externes where num_notice=" . $this->analysis_id; @pmb_mysql_query($query, $dbh); //Suppression dans les listes de lecture partagées $requete = "SELECT id_liste, notices_associees from opac_liste_lecture"; $res = pmb_mysql_query($requete, $dbh); $id_tab = array(); while ($notices = pmb_mysql_fetch_object($res)) { $id_tab = explode(',', $notices->notices_associees); for ($i = 0; $i < sizeof($id_tab); $i++) { if ($id_tab[$i] == $this->analysis_id) { unset($id_tab[$i]); } } $requete = "UPDATE opac_liste_lecture set notices_associees='" . addslashes(implode(',', $id_tab)) . "' where id_liste='" . $notices->id_liste . "'"; pmb_mysql_query($requete, $dbh); } $req = "delete from notices_authperso where notice_authperso_notice_num=" . $id; pmb_mysql_query($req, $dbh); return $result; }
$f_rel_type = $f_rel[0]; $f_rel_direction = $f_rel[1]; $f_rel_rank = ${$f_rel_rank}; $f_rel_id = ${$f_rel_id}; if ($f_rel_id) { if ($f_rel_direction == 'up') { $requete = "INSERT INTO notices_relations VALUES('{$result}','{$f_rel_id}','{$f_rel_type}','{$f_rel_rank}')"; @pmb_mysql_query($requete); } elseif ($f_rel_direction == 'down') { $requete = "INSERT INTO notices_relations VALUES('{$f_rel_id}','{$result}','{$f_rel_type}','{$f_rel_rank}')"; @pmb_mysql_query($requete); } } } // Clean des vedettes analysis::delete_vedette_links($result); // traitement des auteurs $rqt_del = "DELETE FROM responsability WHERE responsability_notice='{$result}' "; $res_del = pmb_mysql_query($rqt_del, $dbh); $rqt_ins = "INSERT INTO responsability (responsability_author, responsability_notice, responsability_fonction, responsability_type, responsability_ordre) VALUES "; $i = 0; $var_name = 'notice_role_composed'; $role_composed = ${$var_name}; $var_name = 'notice_role_autre_composed'; $role_composed_autre = ${$var_name}; $var_name = 'notice_role_secondaire_composed'; $role_composed_secondaire = ${$var_name}; while ($i <= count($f_aut) - 1) { $id_aut = $f_aut[$i]['id']; if ($id_aut) { $fonc_aut = $f_aut[$i]['fonction'];