function delete($id_noeud = 0) { global $dbh; if (!$id_noeud && is_object($this)) { $id_noeud = $this->id_noeud; } // Supprime les categories. $q = "delete from categories where num_noeud = '" . $id_noeud . "' "; pmb_mysql_query($q, $dbh); //Import d'autorité noeuds::delete_autority_sources($id_noeud); // Supprime les renvois voir_aussi vers ce noeud. $q = "delete from voir_aussi where num_noeud_dest = '" . $id_noeud . "' "; pmb_mysql_query($q, $dbh); // Supprime les renvois voir_aussi depuis ce noeud. $q = "delete from voir_aussi where num_noeud_orig = '" . $id_noeud . "' "; pmb_mysql_query($q, $dbh); // Supprime les associations avec des notices. $q = "delete from notices_categories where num_noeud = '" . $id_noeud . "' "; pmb_mysql_query($q, $dbh); //Supprime les emprises du noeud $req = "select map_emprise_id from map_emprises where map_emprise_type=2 and map_emprise_obj_num=" . $id_noeud; $result = pmb_mysql_query($req, $dbh); if (pmb_mysql_num_rows($result)) { $row = pmb_mysql_fetch_object($result); $q = "delete from map_emprises where map_emprise_obj_num ='" . $id_noeud . "' and map_emprise_type = 2"; pmb_mysql_query($q, $dbh); $req_areas = "delete from map_hold_areas where type_obj=2 and id_obj=" . $row->map_emprise_id; pmb_mysql_query($req_areas, $dbh); } //suppression des renvois voir restants $q = "update noeuds set num_renvoi_voir = '0' where num_renvoi_voir = '" . $id_noeud . "' "; pmb_mysql_query($q, $dbh); // Supprime le noeud. $q = "delete from noeuds where id_noeud = '" . $id_noeud . "' "; pmb_mysql_query($q, $dbh); audit::delete_audit(AUDIT_CATEG, $id_noeud); // liens entre autorités $aut_link = new aut_link(AUT_TABLE_CATEG, $id_noeud); $aut_link->delete(); $aut_pperso = new aut_pperso("categ", $id_noeud); $aut_pperso->delete(); // nettoyage indexation indexation_authority::delete_all_index($id_noeud, "authorities", "id_authority", AUT_TABLE_CATEG); // effacement de l'identifiant unique d'autorité $authority = new authority(0, $id_noeud, AUT_TABLE_CATEG); $authority->delete(); }
function replace($by, $link_save) { global $msg; global $dbh; global $pmb_synchro_rdf; if ($this->id == $by || !$this->id) { return $msg[223]; } $aut_link = new aut_link(AUT_TABLE_TITRES_UNIFORMES, $this->id); // "Conserver les liens entre autorités" est demandé if ($link_save) { // liens entre autorités $aut_link->add_link_to(AUT_TABLE_TITRES_UNIFORMES, $by); } $aut_link->delete(); // remplacement dans les responsabilités $requete = "UPDATE notices_titres_uniformes SET ntu_num_tu='{$by}' WHERE ntu_num_tu='{$this->id}' "; @pmb_mysql_query($requete, $dbh); $requete = "UPDATE responsability_tu set responsability_tu_num ='{$by}' where responsability_tu_num='" . $this->id . "' "; @pmb_mysql_query($requete); // effacement dans la table des titres_uniformes $requete = "DELETE FROM titres_uniformes WHERE tu_id='{$this->id}' "; pmb_mysql_query($requete, $dbh); // delete les champs répétables $requete = "DELETE FROM tu_distrib WHERE distrib_num_tu='{$this->id}' "; pmb_mysql_query($requete, $dbh); $requete = "DELETE FROM tu_ref WHERE ref_num_tu='{$this->id}' "; pmb_mysql_query($requete, $dbh); $requete = "DELETE FROM tu_subdiv WHERE subdiv_num_tu='{$this->id}' "; pmb_mysql_query($requete, $dbh); //nettoyage d'autorities_sources $query = "select * from authorities_sources where num_authority = " . $this->id . " and authority_type = 'uniform_title'"; $result = pmb_mysql_query($query); if (pmb_mysql_num_rows($result)) { while ($row = pmb_mysql_fetch_object($result)) { if ($row->authority_favorite == 1) { //on suprime les références si l'autorité a été importée... $query = "delete from notices_authorities_sources where num_authority_source = " . $row->id_authority_source; pmb_mysql_result($query); $query = "delete from authorities_sources where id_authority_source = " . $row->id_authority_source; pmb_mysql_result($query); } else { //on fait suivre le reste $query = "update authorities_sources set num_authority = " . $by . " where num_authority_source = " . $row->id_authority_source; pmb_mysql_query($query); } } } audit::delete_audit(AUDIT_TITRE_UNIFORME, $this->id); // nettoyage indexation indexation_authority::delete_all_index($this->id, "authorities", "id_authority", AUT_TABLE_TITRES_UNIFORMES); // effacement de l'identifiant unique d'autorité $authority = new authority(0, $this->id, AUT_TABLE_TITRES_UNIFORMES); $authority->delete(); titre_uniforme::update_index($by); //mise à jour de l'oeuvre rdf if ($pmb_synchro_rdf) { $synchro_rdf = new synchro_rdf(); $synchro_rdf->replaceAuthority($this->id, $by, 'oeuvre'); } return FALSE; }
function delete($id_noeud = 0) { global $dbh; if (!$id_noeud && is_object($this)) { $id_noeud = $this->id_noeud; } // Supprime les categories. $q = "delete from categories where num_noeud = '" . $id_noeud . "' "; mysql_query($q, $dbh); //Import d'autorité noeuds::delete_autority_sources($id_noeud); // Supprime les renvois voir_aussi vers ce noeud. $q = "delete from voir_aussi where num_noeud_dest = '" . $id_noeud . "' "; mysql_query($q, $dbh); // Supprime les renvois voir_aussi depuis ce noeud. $q = "delete from voir_aussi where num_noeud_orig = '" . $id_noeud . "' "; mysql_query($q, $dbh); // Supprime les associations avec des notices. $q = "delete from notices_categories where num_noeud = '" . $id_noeud . "' "; mysql_query($q, $dbh); // Supprime le noeud. $q = "delete from noeuds where id_noeud = '" . $id_noeud . "' "; mysql_query($q, $dbh); audit::delete_audit(AUDIT_CATEG, $id_noeud); // liens entre autorités $aut_link = new aut_link(AUT_TABLE_CATEG, $id_noeud); $aut_link->delete(); $aut_pperso = new aut_pperso("categ", $id_noeud); $aut_pperso->delete(); }
function del_pret($id_expl) { // le lien MySQL global $dbh; global $msg; // récupérer la stat insérée pour la supprimer ! $query = "select pret_arc_id ,pret_temp from pret where pret_idexpl = '" . $id_expl . "' "; $result = pmb_mysql_query($query, $dbh); $stat_id = pmb_mysql_fetch_object($result); if ($stat_id->pret_temp) { $result = pmb_mysql_query("delete from pret_archive where arc_id='" . $stat_id->pret_arc_id . "' ", $dbh); audit::delete_audit(AUDIT_PRET, $stat_id->pret_arc_id); // supprimer les valeurs de champs personnalisés $p_perso = new pret_parametres_perso("pret"); $p_perso->delete_values($stat_id->pret_arc_id); // supprimer le prêt annulé $query = "delete from pret where pret_idexpl = '" . $id_expl . "' "; $result = pmb_mysql_query($query, $dbh); } $array[0] = $this; $buf_xml = array2xml($array); return $buf_xml; }
static function delete($demande) { global $dbh, $delnoti; if ($demande->id_demande) { $demande->fetch_data($demande->id_demande, false); if ($delnoti) { //Si on supprime la notice associée $query = "SELECT num_notice FROM demandes WHERE id_demande = " . $demande->id_demande . " AND num_notice!=0"; $result = pmb_mysql_query($query, $dbh); if (pmb_mysql_num_rows($result)) { notice::del_notice(pmb_mysql_result($result, 0, 0)); } } // suppression des actions et des notes if (sizeof($demande->actions)) { foreach ($demande->actions as $action) { demandes_actions::delete($action); } } // suppression des liens user - demande $req = "delete from demandes_users where num_demande='" . $demande->id_demande . "'"; pmb_mysql_query($req, $dbh); //suppression des doc num $req = "delete ed,eda from explnum_doc ed \n\t\t\tjoin explnum_doc_actions eda on ed.id_explnum_doc=eda.num_explnum_doc \n\t\t\tjoin demandes_actions da on eda.num_action=da.id_action\n\t\t\twhere da.num_demande=" . $demande->id_demande; pmb_mysql_query($req, $dbh); // suppression des valeurs de CP $p_perso = new parametres_perso("demandes"); $p_perso->delete_values($demande->id_demande); // suppression de la demande $req = "delete from demandes where id_demande='" . $demande->id_demande . "'"; pmb_mysql_query($req, $dbh); //suppression de l'audit audit::delete_audit(AUDIT_DEMANDE, $demande->id_demande); } }
static function delete(demandes_actions $action) { global $dbh, $chk; if ($action->id_action) { $action->fetch_data($action->id_action, false); if (sizeof($action->notes)) { foreach ($action->notes as $note) { demandes_notes::delete($note); } } $req = "delete from demandes_actions where id_action='" . $action->id_action . "'"; pmb_mysql_query($req, $dbh); $q = "delete ed,eda from explnum_doc ed join explnum_doc_actions eda on ed.id_explnum_doc=eda.num_explnum_doc where eda.num_action={$action->id_action}"; pmb_mysql_query($q, $dbh); audit::delete_audit(AUDIT_ACTION, $action->id_action); } }
function delete($id) { global $dbh; $p_perso = new custom_parametres_perso("authperso", "authperso", $this->id); $p_perso->delete_values($id); // nettoyage indexation concepts $index_concept = new index_concept($id, TYPE_AUTHPERSO); $index_concept->delete(); indexation_authperso::delete_all_index($id, "authorities", "id_authority", AUT_TABLE_AUTHPERSO); // effacement de l'identifiant unique d'autorité $authority = new authority(0, $id, AUT_TABLE_AUTHPERSO); $authority->delete(); $req = "DELETE FROM authperso_authorities where id_authperso_authority=" . $id; $resultat = pmb_mysql_query($req); audit::delete_audit($this->id + 1000, $id); }
function replace($by, $link_save = 0) { // à compléter global $msg; global $dbh; if (!$by) { // pas de valeur de remplacement !!! return "serious error occured, please contact admin..."; } if ($this->s_id == $by || !$this->s_id) { // impossible de remplacer une autorité par elle-même return $msg[411]; } $aut_link = new aut_link(AUT_TABLE_SERIES, $this->s_id); // "Conserver les liens entre autorités" est demandé if ($link_save) { // liens entre autorités $aut_link->add_link_to(AUT_TABLE_SERIES, $by); } $aut_link->delete(); // a) remplacement dans les notices $requete = "UPDATE notices SET tparent_id={$by} WHERE tparent_id=" . $this->s_id; $res = pmb_mysql_query($requete, $dbh); $rqt_notice = "select notice_id,tit1,tit2,tit3,tit4 from notices where tparent_id=" . $by; $r_notice = pmb_mysql_query($rqt_notice); while ($r = pmb_mysql_fetch_object($r_notice)) { $rq_serie = "update notices, series set notices.index_serie=serie_index, notices.index_wew=concat(serie_name,' ',tit1,' ',tit2,' ',tit3,' ',tit4),notices.index_sew=concat(' ',serie_index,' ','" . addslashes(strip_empty_words($r->tit1 . " " . $r->tit2 . " " . $r->tit3 . " " . $r->tit4)) . "',' ') where notice_id=" . $r->notice_id . " and serie_id=tparent_id"; pmb_mysql_query($rq_serie); } // b) suppression du titre de série à remplacer $requete = "DELETE FROM series WHERE serie_id=" . $this->s_id; $res = pmb_mysql_query($requete, $dbh); audit::delete_audit(AUDIT_SERIE, $this->s_id); // nettoyage indexation indexation_authority::delete_all_index($this->s_id, "authorities", "id_authority", AUT_TABLE_SERIES); // effacement de l'identifiant unique d'autorité $authority = new authority(0, $this->s_id, AUT_TABLE_SERIES); $authority->delete(); serie::update_index($by); return FALSE; }
static function del_expl($id = 0) { global $dbh; global $explr_invisible, $explr_visible_unmod, $explr_visible_mod, $pmb_droits_explr_localises; $sql_pret = pmb_mysql_query("select 1 from pret where pret_idexpl ='{$id}' "); if (pmb_mysql_num_rows($sql_pret)) { return 0; } // visibilite de l'exemplaire if ($pmb_droits_explr_localises) { $query = "select expl_location from exemplaires where expl_id='" . $id . "'"; $result = pmb_mysql_query($query, $dbh); $location_id = pmb_mysql_result($result, 0, 0); $tab_mod = explode(",", $explr_visible_mod); $as_modif = array_search($location_id, $tab_mod); if ($as_modif === false) { return 0; } } $requete = "select idcaddie FROM caddie where type='EXPL' "; $result = pmb_mysql_query($requete, $dbh); for ($i = 0; $i < pmb_mysql_num_rows($result); $i++) { $temp = pmb_mysql_fetch_object($result); $requete_suppr = "delete from caddie_content where caddie_id='" . $temp->idcaddie . "' and object_id='" . $id . "' "; $result_suppr = pmb_mysql_query($requete_suppr, $dbh); } audit::delete_audit(AUDIT_EXPL, $id); $p_perso = new parametres_perso("expl"); $p_perso->delete_values($id); // nettoyage transfert $requete_suppr = "delete from transferts_demande where num_expl='{$id}'"; $result_suppr = pmb_mysql_query($requete_suppr); // nettoyage circulation des périodiques serialcirc::delete_expl($id); // nettoyage doc. à ranger $requete_suppr = "delete from resa_ranger where resa_cb in (select expl_cb from exemplaires where expl_id='" . $id . "') "; $result_suppr = pmb_mysql_query($requete_suppr, $dbh); // nettoyage indexation concepts $index_concept = new index_concept($id, TYPE_EXPL); $index_concept->delete(); $sql_del = pmb_mysql_query("delete from exemplaires where expl_id='{$id}' "); return 1; }
function del_pret($id_expl) { // le lien MySQL global $dbh; global $msg; // récupérer la stat insérée pour la supprimer ! $query = "select pret_arc_id ,pret_temp from pret where pret_idexpl = '" . $id_expl . "' "; $result = mysql_query($query, $dbh); $stat_id = mysql_fetch_object($result); if ($stat_id->pret_temp) { $result = mysql_query("delete from pret_archive where arc_id='" . $stat_id->pret_arc_id . "' ", $dbh); audit::delete_audit(AUDIT_PRET, $stat_id->pret_arc_id); // supprimer le prêt annulé $query = "delete from pret where pret_idexpl = '" . $id_expl . "' "; $result = mysql_query($query, $dbh); } $array[0] = $this; $buf_xml = array2xml($array); return $buf_xml; }
$requete = "select 1 from pret where pret_idexpl='{$expl_id}' "; $result = @pmb_mysql_query($requete); if (pmb_mysql_num_rows($result)) { // gestion erreur prêt en cours error_message($msg[416], $msg[impossible_expl_del_pret], 1, "./catalog.php?categ=isbd&id={$id}"); } else { //archivage if ($pmb_archive_warehouse) { exemplaire::save_to_agnostic_warehouse(array(0 => $expl_id), $pmb_archive_warehouse); } // nettoyage doc. à ranger $requete_suppr = "delete from resa_ranger where resa_cb in (select expl_cb from exemplaires where expl_id='" . $expl_id . "') "; $result_suppr = pmb_mysql_query($requete_suppr, $dbh); $requete = "DELETE FROM exemplaires WHERE expl_cb='{$cb}' or expl_id='{$expl_id}'"; $result = @pmb_mysql_query($requete, $dbh); audit::delete_audit(AUDIT_EXPL, $expl_id); $query_caddie = "select caddie_id from caddie_content, caddie where type='EXPL' and object_id ='{$expl_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 ='{$expl_id}' "; @pmb_mysql_query($req_suppr_caddie, $dbh); } //Supression des champs perso if ($expl_id) { $p_perso = new parametres_perso("expl"); $p_perso->delete_values($expl_id); } // nettoyage transfert $requete_suppr = "delete from transferts_demande where num_expl='{$expl_id}'"; $result_suppr = pmb_mysql_query($requete_suppr); // nettoyage indexation concepts
function replace($by, $link_save = 0) { global $msg; global $dbh; global $pmb_synchro_rdf; if (!$by || !$this->id) { // pas de valeur de remplacement !!! return "L'identifiant editeur est vide ou l'editeur de remplacement est meme que celui d'origine !"; } if ($this->id == $by) { // impossible de remplacer un editeur par lui-meme return $msg[228]; } $aut_link = new aut_link(AUT_TABLE_PUBLISHERS, $this->id); // "Conserver les liens entre autorités" est demandé if ($link_save) { // liens entre autorités $aut_link->add_link_to(AUT_TABLE_PUBLISHERS, $by); } $aut_link->delete(); // a) remplacement dans les notices $requete = "UPDATE notices SET ed1_id={$by} WHERE ed1_id=" . $this->id; $res = pmb_mysql_query($requete, $dbh); $requete = "UPDATE notices SET ed2_id={$by} WHERE ed2_id=" . $this->id; $res = pmb_mysql_query($requete, $dbh); // b) remplacement dans la table des collections $requete = "UPDATE collections SET collection_parent={$by} WHERE collection_parent=" . $this->id; $res = pmb_mysql_query($requete, $dbh); // c) suppression de l'editeur a remplacer $requete = "DELETE FROM publishers WHERE ed_id=" . $this->id; $res = pmb_mysql_query($requete, $dbh); audit::delete_audit(AUDIT_PUBLISHER, $this->id); editeur::update_index($by); //mise à jour de l'oeuvre rdf if ($pmb_synchro_rdf) { $synchro_rdf = new synchro_rdf(); $synchro_rdf->replaceAuthority($this->id, $by, 'editeur'); } return FALSE; }
static function del_notice($id) { global $dbh, $class_path, $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_" . $id; @unlink($img); } } //synchro_rdf (à laisser en premier : a besoin des éléments de la notice pour retirer du graphe rdf) if ($pmb_synchro_rdf) { $synchro_rdf = new synchro_rdf(); $synchro_rdf->delRdf($id, 0); } $p_perso = new parametres_perso("notices"); $p_perso->delete_values($id); $requete = "DELETE FROM notices_categories WHERE notcateg_notice='{$id}'"; @pmb_mysql_query($requete, $dbh); $requete = "DELETE FROM notices_langues WHERE num_notice='{$id}'"; @pmb_mysql_query($requete, $dbh); $requete = "DELETE FROM notices WHERE notice_id='{$id}'"; @pmb_mysql_query($requete, $dbh); audit::delete_audit(AUDIT_NOTICE, $id); // Effacement de l'occurence de la notice ds la table notices_global_index : $requete = "DELETE FROM notices_global_index WHERE num_notice=" . $id; @pmb_mysql_query($requete, $dbh); // Effacement des occurences de la notice ds la table notices_mots_global_index : $requete = "DELETE FROM notices_mots_global_index WHERE id_notice=" . $id; @pmb_mysql_query($requete, $dbh); // Effacement des occurences de la notice ds la table notices_fields_global_index : $requete = "DELETE FROM notices_fields_global_index WHERE id_notice=" . $id; @pmb_mysql_query($requete, $dbh); $requete = "delete from notices_relations where num_notice='{$id}' OR linked_notice='{$id}' "; @pmb_mysql_query($requete, $dbh); // elimination des docs numeriques $req_explNum = "select explnum_id from explnum where explnum_notice=" . $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(); } // Clean des vedettes notice::delete_vedette_links($id); $requete = "DELETE FROM responsability WHERE responsability_notice='{$id}'"; @pmb_mysql_query($requete, $dbh); $requete = "DELETE FROM bannette_contenu WHERE num_notice='{$id}'"; @pmb_mysql_query($requete, $dbh); $requete = "delete from caddie_content using caddie, caddie_content where caddie_id=idcaddie and type='NOTI' and object_id='" . $id . "' "; @pmb_mysql_query($requete, $dbh); $requete = "delete from analysis where analysis_notice='" . $id . "' "; @pmb_mysql_query($requete, $dbh); $requete = "update bulletins set num_notice=0 where num_notice='" . $id . "' "; @pmb_mysql_query($requete, $dbh); //Suppression de la reference a la notice dans la table suggestions $requete = "UPDATE suggestions set num_notice = 0 where num_notice=" . $id; @pmb_mysql_query($requete, $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='" . $id . "' and type_ligne in ('1','5') "; @pmb_mysql_query($requete, $dbh); //suppression des droits d'acces user_notice $requete = "delete from acces_res_1 where res_num=" . $id; @pmb_mysql_query($requete, $dbh); // suppression des tags $rqt_del = "delete from tags where num_notice=" . $id; @pmb_mysql_query($rqt_del, $dbh); //suppression des avis $requete = "delete from avis where num_notice=" . $id; @pmb_mysql_query($requete, $dbh); //suppression des droits d'acces empr_notice $requete = "delete from acces_res_2 where res_num=" . $id; @pmb_mysql_query($requete, $dbh); // Supression des liens avec les titres uniformes $requete = "DELETE FROM notices_titres_uniformes WHERE ntu_num_notice='{$id}'"; @pmb_mysql_query($requete, $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] == $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); } // Suppression des résas $requete = "DELETE FROM resa WHERE resa_idnotice=" . $id; pmb_mysql_query($requete, $dbh); // Suppression des transferts_demande $requete = "DELETE FROM transferts_demande using transferts_demande, transferts WHERE num_transfert=id_transfert and num_notice=" . $id; pmb_mysql_query($requete, $dbh); // Suppression des transferts $requete = "DELETE FROM transferts WHERE num_notice=" . $id; pmb_mysql_query($requete, $dbh); //si intégré depuis une source externe, on supprime aussi la référence $query = "delete from notices_externes where num_notice=" . $id; @pmb_mysql_query($query, $dbh); $req = "delete from notices_authperso where notice_authperso_notice_num=" . $id; pmb_mysql_query($req, $dbh); //Suppression des emprises liées à la notice $req = "select map_emprise_id from map_emprises where map_emprise_type=11 and map_emprise_obj_num=" . $id; $result = pmb_mysql_query($req, $dbh); if (pmb_mysql_num_rows($result)) { $row = pmb_mysql_fetch_object($result); $query = "delete from map_emprises where map_emprise_obj_num=" . $id . " and map_emprise_type=11"; pmb_mysql_query($query, $dbh); $req_areas = "delete from map_hold_areas where type_obj=11 and id_obj=" . $row->map_emprise_id; pmb_mysql_query($req_areas, $dbh); } $query = "update docwatch_items set item_num_notice=0 where item_num_notice = " . $id; pmb_mysql_query($query, $dbh); // Nettoyage indexation concepts $index_concept = new index_concept($id, TYPE_NOTICE); $index_concept->delete(); }
function replace($by, $link_save = 0) { global $msg; global $dbh; global $pmb_synchro_rdf; if ($this->id == $by || !$this->id) { return $msg[223]; } $aut_link = new aut_link(AUT_TABLE_AUTHORS, $this->id); // "Conserver les liens entre autorités" est demandé if ($link_save) { // liens entre autorités $aut_link->add_link_to(AUT_TABLE_AUTHORS, $by); // Voir aussi if ($this->see) { $requete = "UPDATE authors SET author_see='" . $this->see . "' WHERE author_id='{$by}' "; @pmb_mysql_query($requete, $dbh); } } $aut_link->delete(); // remplacement dans les responsabilités $requete = "UPDATE responsability SET responsability_author='{$by}' WHERE responsability_author='{$this->id}' "; @pmb_mysql_query($requete, $dbh); // effacement dans les responsabilités $requete = "DELETE FROM responsability WHERE responsability_author='{$this->id}' "; @pmb_mysql_query($requete, $dbh); // remplacement dans les titres uniformes $requete = "UPDATE responsability_tu SET responsability_tu_author_num='{$by}' WHERE responsability_tu_author_num='{$this->id}' "; @pmb_mysql_query($requete, $dbh); $requete = "DELETE FROM responsability_tu WHERE responsability_tu_author_num='{$this->id}' "; @pmb_mysql_query($requete, $dbh); // effacement dans la table des auteurs $requete = "DELETE FROM authors WHERE author_id='{$this->id}' "; pmb_mysql_query($requete, $dbh); // nettoyage d'autorities_sources $query = "select * from authorities_sources where num_authority = " . $this->id . " and authority_type = 'author'"; $result = pmb_mysql_query($query); if (pmb_mysql_num_rows($result)) { while ($row = pmb_mysql_fetch_object($result)) { if ($row->authority_favorite == 1) { // on suprime les références si l'autorité a été importée... $query = "delete from notices_authorities_sources where num_authority_source = " . $row->id_authority_source; pmb_mysql_result($query); $query = "delete from authorities_sources where id_authority_source = " . $row->id_authority_source; pmb_mysql_result($query); } else { // on fait suivre le reste $query = "update authorities_sources set num_authority = " . $by . " where num_authority_source = " . $row->id_authority_source; pmb_mysql_query($query); } } } audit::delete_audit(AUDIT_AUTHOR, $this->id); auteur::update_index($by); // mise à jour de l'oeuvre rdf if ($pmb_synchro_rdf) { $synchro_rdf = new synchro_rdf(); $synchro_rdf->replaceAuthority($this->id, $by, 'auteur'); } return FALSE; }
static function delete($note) { global $dbh; if ($note->id_note) { $req = "delete from demandes_notes where id_note='" . $note->id_note . "'"; pmb_mysql_query($req, $dbh); $req = "delete from demandes_notes where num_note_parent='" . $note->id_note . "'"; pmb_mysql_query($req, $dbh); audit::delete_audit(AUDIT_NOTE, $note->id_note); } }
function delete($id_acte = 0) { global $dbh; if (!$id_acte) { $id_acte = $this->id_acte; } actes::deleteLignes($id_acte); liens_actes::delete($id_acte); $q = "delete from actes where id_acte = '" . $id_acte . "' "; mysql_query($q, $dbh); audit::delete_audit(AUDIT_ACQUIS, $id_acte); }
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); // 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; }
public function delete() { $result = $this->is_deletable(); if ($result === true) { //documents du portfolio $query = "delete from cms_documents_links where document_link_type_object = '" . $this->type . "' and document_link_num_object = " . $this->id; pmb_mysql_query($query); //l'elément $del = "delete from cms_" . $this->type . "s where id_" . $this->type . "='" . $this->id . "'"; pmb_mysql_query($del); //ses descripteurs $del_desc = "delete from cms_" . $this->type . "s_descriptors where num_" . $this->type . " = '" . $this->id . "'"; pmb_mysql_query($del_desc); //ses champs persos $fields_type = new cms_editorial_parametres_perso($this->num_type); $fields_type->delete_values($this->id, $this->type); //indexation $query = "delete from cms_editorial_fields_global_index where num_obj = " . $this->id . " and type='" . $this->type . "'"; pmb_mysql_query($query); $query = "delete from cms_editorial_words_global_index where num_obj = " . $this->id . " and type='" . $this->type . "'"; pmb_mysql_query($query); //ses extensions $query = "delete from cms_modules_extensions_datas where extension_datas_type_element ='" . $this->type . "' and extension_datas_num_element = '" . $this->id . "'"; pmb_mysql_query($query); //audit if ($this->type == 'article') { audit::delete_audit(AUDIT_EDITORIAL_ARTICLE, $this->id); } else { audit::delete_audit(AUDIT_EDITORIAL_SECTION, $this->id); } return true; } else { return $result; } }
function replace($by, $link_save = 0) { global $msg; global $dbh; if (!$by) { // pas de valeur de remplacement !!! return "serious error occured, please contact admin..."; } if ($this->id == $by || !$this->id) { // impossible de remplacer une collection par elle-même return $msg[226]; } // a) remplacement dans les notices // on obtient les infos de la nouvelle collection $n_collection = new collection($by); if (!$n_collection->parent) { // la nouvelle collection est foireuse return $msg[406]; } $aut_link = new aut_link(AUT_TABLE_COLLECTIONS, $this->id); // "Conserver les liens entre autorités" est demandé if ($link_save) { // liens entre autorités $aut_link->add_link_to(AUT_TABLE_COLLECTIONS, $by); } $aut_link->delete(); $requete = "UPDATE notices SET ed1_id=" . $n_collection->parent . ", coll_id={$by} WHERE coll_id=" . $this->id; $res = pmb_mysql_query($requete, $dbh); // b) remplacement dans la table des sous-collections $requete = "UPDATE sub_collections SET sub_coll_parent={$by} WHERE sub_coll_parent=" . $this->id; $res = pmb_mysql_query($requete, $dbh); // c) suppression de la collection $requete = "DELETE FROM collections WHERE collection_id=" . $this->id; $res = pmb_mysql_query($requete, $dbh); //nettoyage d'autorities_sources $query = "select * from authorities_sources where num_authority = " . $this->id . " and authority_type = 'collection'"; $result = pmb_mysql_query($query); if (pmb_mysql_num_rows($result)) { while ($row = pmb_mysql_fetch_object($result)) { if ($row->authority_favorite == 1) { //on suprime les références si l'autorité a été importée... $query = "delete from notices_authorities_sources where num_authority_source = " . $row->id_authority_source; pmb_mysql_result($query); $query = "delete from authorities_sources where id_authority_source = " . $row->id_authority_source; pmb_mysql_result($query); } else { //on fait suivre le reste $query = "update authorities_sources set num_authority = " . $by . " where num_authority_source = " . $row->id_authority_source; pmb_mysql_query($query); } } } audit::delete_audit(AUDIT_COLLECTION, $this->id); // nettoyage indexation indexation_authority::delete_all_index($this->id, "authorities", "id_authority", AUT_TABLE_COLLECTIONS); // effacement de l'identifiant unique d'autorité $authority = new authority(0, $this->id, AUT_TABLE_COLLECTIONS); $authority->delete(); collection::update_index($by); return TRUE; }
$erreur_affichage = "<hr />\n\t\t<div class='row'>\n\t\t<div class='colonne10'><img src='./images/info.png' /></div>\n\t\t<div class='colonne-suite'><span class='erreur'>" . $msg[384] . "</span><br />\n\t\t"; $erreur_affichage .= get_display_custom_fields($id_empr, $id_expl); if ($pmb_play_pret_sound) { $alert_sound_list[] = "information"; } $empr = new emprunteur($id_empr, $erreur_affichage, FALSE, 1); $affichage = $empr->fiche; } else { if ($sub == "pret_annulation" && $id_expl) { // récupérer la stat insérée pour la supprimer ! $query = "select pret_arc_id from pret "; $query .= "where pret_idexpl = '" . $id_expl . "' "; $result = pmb_mysql_query($query, $dbh); $stat_id = pmb_mysql_fetch_object($result); $result = pmb_mysql_query("delete from pret_archive where arc_id='" . $stat_id->pret_arc_id . "' ", $dbh); audit::delete_audit(AUDIT_PRET, $stat_id->pret_arc_id); // supprimer les valeurs de champs personnalisés $p_perso = new pret_parametres_perso("pret"); $p_perso->delete_values($stat_id->pret_arc_id); // supprimer le prêt annulé $query = "delete from pret "; $query .= "where pret_idexpl = '" . $id_expl . "' "; $result = pmb_mysql_query($query, $dbh); $erreur_affichage = "<hr />\n\t\t\t\t\t<div class='row'>\n\t\t\t\t\t<div class='colonne10'><img src='./images/info.png' /></div>\n\t\t\t\t\t<div class='colonne-suite'><span class='erreur'>" . str_replace('!!cb_expl!!', $cb_doc, $msg[607]) . "</span></div>\n\t\t\t\t\t</div><br />"; $alert_sound_list[] = "information"; $empr = new emprunteur($id_empr, $erreur_affichage, FALSE, 1); $affichage = $empr->fiche; } else { $script_magnetique = "\n<script language='javascript' type='text/javascript'>\nvar requete = null;\n\nfunction creerRequette(){\n\tif(window.XMLHttpRequest) // Firefox\n\t\trequete = new XMLHttpRequest();\n\telse if(window.ActiveXObject) // Internet Explorer\n \t\trequete = new ActiveXObject('Microsoft.XMLHTTP');\n\telse { // XMLHttpRequest non supporté par le navigateur\n \t\talert('Votre navigateur ne supporte pas les objets XMLHTTPRequest...');\n \treturn;\n\t}\n}\n\nfunction magnetise(commande){\n\tcreerRequette();\n\tif(netscape.security.PrivilegeManager)netscape.security.PrivilegeManager.enablePrivilege('UniversalBrowserRead');\n\trequete.open('GET', 'http://localhost:30000/?send_value='+commande+'&command=Send', false);\n\trequete.send(null);\n\tif(requete.readyState != 4) alert('Requête antivol non effectuée !');\n}\n\n"; //Si il y a un emprunteur if ($id_empr) {
function replace($by, $link_save) { global $msg; global $dbh; if (!$by) { // pas de valeur de remplacement !!! return "serious error occured, please contact admin..."; } if ($this->indexint_id == $by || !$this->indexint_id) { // impossible de remplacer une autorité par elle-même return $msg[indexint_self]; } $aut_link = new aut_link(AUT_TABLE_INDEXINT, $this->indexint_id); // "Conserver les liens entre autorités" est demandé if ($link_save) { // liens entre autorités $aut_link->add_link_to(AUT_TABLE_INDEXINT, $by); } $aut_link->delete(); // a) remplacement dans les notices $requete = "UPDATE notices SET indexint={$by} WHERE indexint='" . $this->indexint_id . "' "; $res = pmb_mysql_query($requete, $dbh); // b) suppression de l'indexation à remplacer $requete = "DELETE FROM indexint WHERE indexint_id=" . $this->indexint_id; $res = pmb_mysql_query($requete, $dbh); audit::delete_audit(AUDIT_INDEXINT, $this->indexint_id); indexint::update_index($by); return FALSE; }
function delete($id) { global $dbh; $p_perso = new custom_parametres_perso("authperso", "authperso", $this->id); $p_perso->delete_values($id); // nettoyage indexation concepts $index_concept = new index_concept($id, TYPE_AUTHPERSO); $index_concept->delete(); $req = "DELETE FROM authperso_authorities where id_authperso_authority=" . $id; $resultat = pmb_mysql_query($req); audit::delete_audit($this->id + 1000, $id); }