function delete() { global $dbh; global $msg; if (!$this->id) { // impossible d'accéder à cette notice de collection return $msg[406]; } // récupération du nombre de notices affectées $requete = "SELECT COUNT(1) FROM notices WHERE "; $requete .= "coll_id={$this->id}"; $res = pmb_mysql_query($requete, $dbh); $nbr_lignes = pmb_mysql_result($res, 0, 0); if (!$nbr_lignes) { // on regarde si la collection a des collections enfants $requete = "SELECT COUNT(1) FROM sub_collections WHERE "; $requete .= "sub_coll_parent=" . $this->id; $res = pmb_mysql_query($requete, $dbh); $nbr_lignes = pmb_mysql_result($res, 0, 0); if (!$nbr_lignes) { // On regarde si l'autorité est utilisée dans des vedettes composées $attached_vedettes = vedette_composee::get_vedettes_built_with_element($this->id, "collection"); if (count($attached_vedettes)) { // Cette autorité est utilisée dans des vedettes composées, impossible de la supprimer return '<strong>' . $this->display . "</strong><br />" . $msg["vedette_dont_del_autority"]; } // effacement dans la table des collections $requete = "DELETE FROM collections WHERE collection_id=" . $this->id; $result = pmb_mysql_query($requete, $dbh); //Import d'autorité collection::delete_autority_sources($this->id); // liens entre autorités $aut_link = new aut_link(AUT_TABLE_COLLECTIONS, $this->id); $aut_link->delete(); $aut_pperso = new aut_pperso("collection", $this->id); $aut_pperso->delete(); // nettoyage indexation concepts $index_concept = new index_concept($this->id, TYPE_COLLECTION); $index_concept->delete(); // 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(); audit::delete_audit(AUDIT_COLLECTION, $this->id); return false; } else { // Cet collection a des sous-collections, impossible de la supprimer return '<strong>' . $this->display . "</strong><br />{$msg[408]}"; } } else { // Cette collection est utilisé dans des notices, impossible de la supprimer return '<strong>' . $this->display . "</strong><br />{$msg[407]}"; } }
function delete() { global $dbh; global $msg; if (!$this->indexint_id) { // impossible d'accéder à cette indexation return $msg[indexint_unable]; } // récupération du nombre de notices affectées $requete = "SELECT COUNT(1) FROM notices WHERE "; $requete .= "indexint=" . $this->indexint_id; $res = pmb_mysql_query($requete, $dbh); $nbr_lignes = pmb_mysql_result($res, 0, 0); if (!$nbr_lignes) { // On regarde si l'autorité est utilisée dans des vedettes composées $attached_vedettes = vedette_composee::get_vedettes_built_with_element($this->indexint_id, "indexint"); if (count($attached_vedettes)) { // Cette autorité est utilisée dans des vedettes composées, impossible de la supprimer return '<strong>' . $this->name . "</strong><br />" . $msg["vedette_dont_del_autority"]; } // indexation non-utilisé dans les notices : Suppression OK // effacement dans la table des indexations internes $requete = "DELETE FROM indexint WHERE indexint_id=" . $this->indexint_id; $result = pmb_mysql_query($requete, $dbh); // liens entre autorités $aut_link = new aut_link(AUT_TABLE_INDEXINT, $this->indexint_id); $aut_link->delete(); $aut_pperso = new aut_pperso("indexint", $this->indexint_id); $aut_pperso->delete(); // nettoyage indexation concepts $index_concept = new index_concept($this->indexint_id, TYPE_INDEXINT); $index_concept->delete(); audit::delete_audit(AUDIT_INDEXINT, $this->indexint_id); return false; } else { // Cette indexation est utilisée dans des notices, impossible de la supprimer return '<strong>' . $this->name . "</strong><br />{$msg[indexint_used]}"; } }
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 delete() { global $dbh; global $msg; if (!$this->id) { // impossible d'accéder à cette notice de collection return $msg[406]; } // récupération du nombre de notices affectées $requete = "SELECT COUNT(1) FROM notices WHERE "; $requete .= "coll_id={$this->id}"; $res = mysql_query($requete, $dbh); $nbr_lignes = mysql_result($res, 0, 0); if (!$nbr_lignes) { // on regarde si la collection a des collections enfants $requete = "SELECT COUNT(1) FROM sub_collections WHERE "; $requete .= "sub_coll_parent=" . $this->id; $res = mysql_query($requete, $dbh); $nbr_lignes = mysql_result($res, 0, 0); if (!$nbr_lignes) { // effacement dans la table des collections $requete = "DELETE FROM collections WHERE collection_id=" . $this->id; $result = mysql_query($requete, $dbh); //Import d'autorité $this->delete_autority_sources($this->id); // liens entre autorités $aut_link = new aut_link(AUT_TABLE_COLLECTIONS, $this->id); $aut_link->delete(); $aut_pperso = new aut_pperso("collection", $this->id); $aut_pperso->delete(); audit::delete_audit(AUDIT_COLLECTION, $this->id); return false; } else { // Cet collection a des sous-collections, impossible de la supprimer return '<strong>' . $this->display . "</strong><br />{$msg[408]}"; } } else { // Cette collection est utilisé dans des notices, impossible de la supprimer return '<strong>' . $this->display . "</strong><br />{$msg[407]}"; } }
function delete() { global $dbh; global $msg; if (!$this->id) { // impossible d'accéder à cette notice titre uniforme return $msg[403]; } // effacement dans les notices // récupération du nombre de notices affectées $requete = "SELECT count(1) FROM notices_titres_uniformes WHERE ntu_num_tu='{$this->id}' "; $res = pmb_mysql_query($requete, $dbh); $nbr_lignes = pmb_mysql_result($res, 0, 0); if ($nbr_lignes) { // Ce titre uniforme est utilisé dans des notices, impossible de le supprimer return '<strong>' . $this->display . "</strong><br />{$msg['titre_uniforme_delete']}"; } // On regarde si l'autorité est utilisée dans des vedettes composées $attached_vedettes = vedette_composee::get_vedettes_built_with_element($this->id, "titre_uniforme"); if (count($attached_vedettes)) { // Cette autorité est utilisée dans des vedettes composées, impossible de la supprimer return '<strong>' . $this->display . "</strong><br />" . $msg["vedette_dont_del_autority"]; } // 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); //suppression dans la table de stockage des numéros d'autorités... titre_uniforme::delete_autority_sources($this->id); // Clean des vedettes titre_uniforme::delete_vedette_links($this->id); // suppression des auteurs $rqt_del = "delete from responsability_tu where responsability_tu_num='" . $this->id . "' "; pmb_mysql_query($rqt_del); // liens entre autorités $aut_link = new aut_link(AUT_TABLE_TITRES_UNIFORMES, $this->id); $aut_link->delete(); $aut_pperso = new aut_pperso("tu", $this->id); $aut_pperso->delete(); // nettoyage indexation concepts $index_concept = new index_concept($this->id, TYPE_TITRE_UNIFORME); $index_concept->delete(); // 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(); audit::delete_audit(AUDIT_TITRE_UNIFORME, $this->id); 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 delete() { global $dbh; global $msg; if (!$this->id) { // impossible d'acceder a cette notice auteur return $msg[403]; } // effacement dans les notices // recuperation du nombre de notices affectees $requete = "SELECT COUNT(1) FROM notices WHERE "; $requete .= "ed1_id={$this->id} OR "; $requete .= "ed2_id={$this->id}"; $res = pmb_mysql_query($requete, $dbh); $nbr_lignes = pmb_mysql_result($res, 0, 0); if (!$nbr_lignes) { // on regarde si l'editeur a des collections enfants $requete = "SELECT COUNT(1) FROM collections WHERE "; $requete .= "collection_parent=" . $this->id; $res = pmb_mysql_query($requete, $dbh); $nbr_lignes = pmb_mysql_result($res, 0, 0); if (!$nbr_lignes) { // On regarde si l'autorité est utilisée dans des vedettes composées $attached_vedettes = vedette_composee::get_vedettes_built_with_element($this->id, "publisher"); if (count($attached_vedettes)) { // Cette autorité est utilisée dans des vedettes composées, impossible de la supprimer return '<strong>' . $this->name . "</strong><br />" . $msg["vedette_dont_del_autority"]; } // effacement dans la table des editeurs $requete = "DELETE FROM publishers WHERE ed_id=" . $this->id; $result = pmb_mysql_query($requete, $dbh); // liens entre autorités $aut_link = new aut_link(AUT_TABLE_PUBLISHERS, $this->id); $aut_link->delete(); $aut_pperso = new aut_pperso("publisher", $this->id); $aut_pperso->delete(); // nettoyage indexation concepts $index_concept = new index_concept($this->id, TYPE_PUBLISHER); $index_concept->delete(); audit::delete_audit(AUDIT_PUBLISHER, $this->id); return false; } else { // Cet editeur a des collections, impossible de le supprimer return '<strong>' . $this->name . "</strong><br />{$msg[405]}"; } } else { // Cet editeur est utilise dans des notices, impossible de le supprimer return '<strong>' . $this->name . "</strong><br />{$msg[404]}"; } }
function delete() { global $dbh; global $msg; if (!$this->s_id) { // impossible d'accéder à cette notice de titre de série return $msg[409]; } // récupération du nombre de notices affectées $requete = "SELECT COUNT(1) AS qte FROM notices WHERE tparent_id=" . $this->s_id; $res = pmb_mysql_query($requete, $dbh); $nbr_lignes = pmb_mysql_result($res, 0, 0); if (!$nbr_lignes) { // On regarde si l'autorité est utilisée dans des vedettes composées $attached_vedettes = vedette_composee::get_vedettes_built_with_element($this->s_id, "serie"); if (count($attached_vedettes)) { // Cette autorité est utilisée dans des vedettes composées, impossible de la supprimer return '<strong>' . $this->name . "</strong><br />" . $msg["vedette_dont_del_autority"]; } // titre de série non-utilisé dans des notices : Suppression OK // effacement dans la table des titres de série $requete = "DELETE FROM series WHERE serie_id=" . $this->s_id; $result = pmb_mysql_query($requete, $dbh); // liens entre autorités $aut_link = new aut_link(AUT_TABLE_SERIES, $this->s_id); $aut_link->delete(); $aut_pperso = new aut_pperso("serie", $this->s_id); $aut_pperso->delete(); // nettoyage indexation concepts $index_concept = new index_concept($this->s_id, TYPE_SERIE); $index_concept->delete(); // 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(); audit::delete_audit(AUDIT_SERIE, $this->s_id); return false; } else { // Ce titre de série est utilisé dans des notices, impossible de le supprimer return '<strong>' . $this->name . "</strong><br />{$msg[410]}"; } }
function delete() { global $dbh; global $msg; if (!$this->id) { // impossible d'accéder à cette notice auteur return $msg[403]; } // effacement dans les notices // récupération du nombre de notices affectées $requete = "SELECT count(1) FROM responsability WHERE "; $requete .= "responsability_author='{$this->id}' "; $res = mysql_query($requete, $dbh); $nbr_lignes = mysql_result($res, 0, 0); if ($nbr_lignes) { // Cet auteur est utilisé dans des notices, impossible de le supprimer return '<strong>' . $this->display . "</strong><br />{$msg[402]}"; } // effacement dans les titres uniformes // récupération du nombre de titres affectées $requete = "SELECT count(1) FROM titres_uniformes WHERE "; $requete .= "tu_num_author='{$this->id}' "; $res = mysql_query($requete, $dbh); $nbr_lignes = mysql_result($res, 0, 0); if ($nbr_lignes) { // Cet auteur est utilisé dans des notices, impossible de le supprimer return '<strong>' . $this->display . "</strong><br />{$msg[tu_dont_del_author]}"; } // liens entre autorités $aut_link = new aut_link(AUT_TABLE_AUTHORS, $this->id); $aut_link->delete(); $aut_pperso = new aut_pperso("author", $this->id); $aut_pperso->delete(); //suppression dans la table de stockage des numéros d'autorités... $this->delete_autority_sources($this->id); // on supprime automatiquement les formes rejetes $query = "select author_id from authors where author_see = " . $this->id; $result = mysql_query($query); if (mysql_num_rows($result)) { while ($row = mysql_fetch_object($result)) { //on regarde si cette forme est utilisée... $query2 = "select count(responsability_author) from responsability where responsability_author =" . $row->author_id; $result2 = mysql_query($query2); $rejete = new auteur($row->author_id); //elle est utilisée donc on nettoie juste la référence if (mysql_num_rows($result2)) { mysql_query("update authors set author_see= 0 where author_id = " . $row->author_id); } else { //sinon, on supprime... $rejete->delete(); } } } audit::delete_audit(AUDIT_AUTHOR, $this->id); // effacement dans la table des auteurs $requete = "DELETE FROM authors WHERE author_id='{$this->id}' "; mysql_query($requete, $dbh); return false; }
function delete() { global $dbh; global $msg; if (!$this->id) { // impossible d'accéder à cette notice auteur return $msg[403]; } // effacement dans les notices // récupération du nombre de notices affectées $requete = "SELECT count(1) FROM responsability WHERE "; $requete .= "responsability_author='{$this->id}' "; $res = pmb_mysql_query($requete, $dbh); $nbr_lignes = pmb_mysql_result($res, 0, 0); if ($nbr_lignes) { // Cet auteur est utilisé dans des notices, impossible de le supprimer return '<strong>' . $this->display . "</strong><br />{$msg[402]}"; } // effacement dans les titres uniformes // récupération du nombre de titres affectées $requete = "SELECT count(1) FROM responsability_tu WHERE "; $requete .= "responsability_tu_author_num='{$this->id}' "; $res = pmb_mysql_query($requete, $dbh); $nbr_lignes = pmb_mysql_result($res, 0, 0); if ($nbr_lignes) { // Cet auteur est utilisé dans des tirres uniformes, impossible de le supprimer return '<strong>' . $this->display . "</strong><br />{$msg[tu_dont_del_author]}"; } $attached_vedettes = vedette_composee::get_vedettes_built_with_element($this->id, "author"); if (count($attached_vedettes)) { // Cette autorité est utilisée dans des vedettes composées, impossible de la supprimer return '<strong>' . $this->display . "</strong><br />" . $msg["vedette_dont_del_autority"]; } // liens entre autorités $aut_link = new aut_link(AUT_TABLE_AUTHORS, $this->id); $aut_link->delete(); $aut_pperso = new aut_pperso("author", $this->id); $aut_pperso->delete(); // nettoyage indexation concepts $index_concept = new index_concept($this->id, TYPE_AUTHOR); $index_concept->delete(); // suppression dans la table de stockage des numéros d'autorités... auteur::delete_autority_sources($this->id); // on supprime automatiquement les formes rejetes $query = "select author_id from authors where author_see = " . $this->id; $result = pmb_mysql_query($query); if (pmb_mysql_num_rows($result)) { while ($row = pmb_mysql_fetch_object($result)) { // on regarde si cette forme est utilisée... $query2 = "select count(responsability_author) from responsability where responsability_author =" . $row->author_id; $result2 = pmb_mysql_query($query2); $query3 = "select count(responsability_tu_author_num) from responsability_tu where responsability_tu_author_num =" . $row->author_id; $result3 = pmb_mysql_query($query3); $rejete = new auteur($row->author_id); // elle est utilisée donc on nettoie juste la référence if (pmb_mysql_num_rows($result2) || pmb_mysql_num_rows($result3)) { pmb_mysql_query("update authors set author_see= 0 where author_id = " . $row->author_id); } else { // sinon, on supprime... $rejete->delete(); } } } audit::delete_audit(AUDIT_AUTHOR, $this->id); // effacement dans l'entrepot rdf auteur::delete_enrichment($id); // effacement dans la table des auteurs $requete = "DELETE FROM authors WHERE author_id='{$this->id}' "; pmb_mysql_query($requete, $dbh); return false; }
function delete() { global $dbh; global $msg; if (!$this->id) { // impossible d'acceder a cette notice auteur return $msg[403]; } // effacement dans les notices // recuperation du nombre de notices affectees $requete = "SELECT COUNT(1) FROM notices WHERE "; $requete .= "ed1_id={$this->id} OR "; $requete .= "ed2_id={$this->id}"; $res = mysql_query($requete, $dbh); $nbr_lignes = mysql_result($res, 0, 0); if (!$nbr_lignes) { // on regarde si l'editeur a des collections enfants $requete = "SELECT COUNT(1) FROM collections WHERE "; $requete .= "collection_parent=" . $this->id; $res = mysql_query($requete, $dbh); $nbr_lignes = mysql_result($res, 0, 0); if (!$nbr_lignes) { // effacement dans la table des editeurs $requete = "DELETE FROM publishers WHERE ed_id=" . $this->id; $result = mysql_query($requete, $dbh); // liens entre autorités $aut_link = new aut_link(AUT_TABLE_PUBLISHERS, $this->id); $aut_link->delete(); $aut_pperso = new aut_pperso("publisher", $this->id); $aut_pperso->delete(); audit::delete_audit(AUDIT_PUBLISHER, $this->id); return false; } else { // Cet editeur a des collections, impossible de le supprimer return '<strong>' . $this->name . "</strong><br />{$msg[405]}"; } } else { // Cet editeur est utilise dans des notices, impossible de le supprimer return '<strong>' . $this->name . "</strong><br />{$msg[404]}"; } }
function delete() { global $dbh; global $msg; if (!$this->s_id) { // impossible d'accéder à cette notice de titre de série return $msg[409]; } // récupération du nombre de notices affectées $requete = "SELECT COUNT(1) AS qte FROM notices WHERE tparent_id=" . $this->s_id; $res = mysql_query($requete, $dbh); $nbr_lignes = mysql_result($res, 0, 0); if (!$nbr_lignes) { // titre de série non-utilisé dans des notices : Suppression OK // effacement dans la table des titres de série $requete = "DELETE FROM series WHERE serie_id=" . $this->s_id; $result = mysql_query($requete, $dbh); // liens entre autorités $aut_link = new aut_link(AUT_TABLE_SERIES, $this->s_id); $aut_link->delete(); $aut_pperso = new aut_pperso("serie", $this->s_id); $aut_pperso->delete(); audit::delete_audit(AUDIT_SERIE, $this->s_id); return false; } else { // Ce titre de série est utilisé dans des notices, impossible de le supprimer return '<strong>' . $this->name . "</strong><br />{$msg[410]}"; } }
function delete() { global $dbh; global $msg; if (!$this->id) { // impossible d'accéder à cette notice titre uniforme return $msg[403]; } // effacement dans les notices // récupération du nombre de notices affectées $requete = "SELECT count(1) FROM notices_titres_uniformes WHERE ntu_num_tu='{$this->id}' "; $res = mysql_query($requete, $dbh); $nbr_lignes = mysql_result($res, 0, 0); if ($nbr_lignes) { // Ce titre uniforme est utilisé dans des notices, impossible de le supprimer return '<strong>' . $this->display . "</strong><br />{$msg['titre_uniforme_delete']}"; } // effacement dans la table des titres_uniformes $requete = "DELETE FROM titres_uniformes WHERE tu_id='{$this->id}' "; mysql_query($requete, $dbh); // delete les champs répétables $requete = "DELETE FROM tu_distrib WHERE distrib_num_tu='{$this->id}' "; mysql_query($requete, $dbh); $requete = "DELETE FROM tu_ref WHERE ref_num_tu='{$this->id}' "; mysql_query($requete, $dbh); $requete = "DELETE FROM tu_subdiv WHERE subdiv_num_tu='{$this->id}' "; mysql_query($requete, $dbh); //suppression dans la table de stockage des numéros d'autorités... $this->delete_autority_sources($this->id); // liens entre autorités $aut_link = new aut_link(AUT_TABLE_TITRES_UNIFORMES, $this->id); $aut_link->delete(); $aut_pperso = new aut_pperso("tu", $this->id); $aut_pperso->delete(); audit::delete_audit(AUDIT_TITRE_UNIFORME, $this->id); return false; }
function delete() { global $dbh; global $msg; if (!$this->id) { // impossible d'accéder à cette notice de sous-collection return $msg[406]; } // récupération du nombre de notices affectées $requete = "SELECT COUNT(1) FROM notices WHERE "; $requete .= "subcoll_id=" . $this->id; $res = pmb_mysql_query($requete, $dbh); $nbr_lignes = pmb_mysql_result($res, 0, 0); if (!$nbr_lignes) { // On regarde si l'autorité est utilisée dans des vedettes composées $attached_vedettes = vedette_composee::get_vedettes_built_with_element($this->id, "subcollection"); if (count($attached_vedettes)) { // Cette autorité est utilisée dans des vedettes composées, impossible de la supprimer return '<strong>' . $this->display . "</strong><br />" . $msg["vedette_dont_del_autority"]; } // sous collection non-utilisée dans des notices : Suppression OK // effacement dans la table des collections $requete = "DELETE FROM sub_collections WHERE sub_coll_id=" . $this->id; $result = pmb_mysql_query($requete, $dbh); //suppression dans la table de stockage des numéros d'autorités... //Import d'autorité subcollection::delete_autority_sources($this->id); // liens entre autorités $aut_link = new aut_link(AUT_TABLE_SUB_COLLECTIONS, $this->id); $aut_link->delete(); $aut_pperso = new aut_pperso("subcollection", $this->id); $aut_pperso->delete(); // nettoyage indexation concepts $index_concept = new index_concept($this->id, TYPE_SUBCOLLECTION); $index_concept->delete(); audit::delete_audit(AUDIT_SUB_COLLECTION, $this->id); return false; } else { // Cette collection est utilisé dans des notices, impossible de la supprimer return '<strong>' . $this->display . "</strong><br />{$msg[407]}"; } }
function delete() { global $dbh; global $msg; if (!$this->indexint_id) { // impossible d'accéder à cette indexation return $msg[indexint_unable]; } // récupération du nombre de notices affectées $requete = "SELECT COUNT(1) FROM notices WHERE "; $requete .= "indexint=" . $this->indexint_id; $res = mysql_query($requete, $dbh); $nbr_lignes = mysql_result($res, 0, 0); if (!$nbr_lignes) { // indexation non-utilisé dans les notices : Suppression OK // effacement dans la table des indexations internes $requete = "DELETE FROM indexint WHERE indexint_id=" . $this->indexint_id; $result = mysql_query($requete, $dbh); // liens entre autorités $aut_link = new aut_link(AUT_TABLE_INDEXINT, $this->indexint_id); $aut_link->delete(); $aut_pperso = new aut_pperso("indexint", $this->indexint_id); $aut_pperso->delete(); audit::delete_audit(AUDIT_INDEXINT, $this->indexint_id); return false; } else { // Cette indexation est utilisée dans des notices, impossible de la supprimer return '<strong>' . $this->name . "</strong><br />{$msg[indexint_used]}"; } }