Example #1
0
 function replace($by, $del_article = 0)
 {
     global $msg;
     global $dbh;
     global $pmb_synchro_rdf;
     global $keep_categories;
     // traitement des dépouillements du bulletin
     if ($del_article) {
         // suppression des notices de dépouillement
         $this->delete_analysis();
     } else {
         // sinon on ratache les dépouillements existants
         $requete = "UPDATE analysis SET analysis_bulletin={$by} where analysis_bulletin=" . $this->bulletin_id;
         @pmb_mysql_query($requete, $dbh);
     }
     // traitement des catégories (si conservation cochée)
     if ($keep_categories) {
         update_notice_categories_from_form(0, $by);
     }
     // ratachement des exemplaires
     $requete = "UPDATE exemplaires SET expl_bulletin={$by} WHERE expl_bulletin=" . $this->bulletin_id;
     @pmb_mysql_query($requete, $dbh);
     // élimination des docs numériques
     $requete = "UPDATE explnum SET explnum_bulletin={$by} WHERE explnum_bulletin=" . $this->bulletin_id;
     @pmb_mysql_query($requete, $dbh);
     //Mise à jour des articles reliés
     if ($pmb_synchro_rdf) {
         $synchro_rdf = new synchro_rdf();
         $requete = "SELECT analysis_notice FROM analysis WHERE analysis_bulletin='{$by}' ";
         $result = pmb_mysql_query($requete, $dbh);
         while ($row = pmb_mysql_fetch_object($result)) {
             $synchro_rdf->delRdf($row->analysis_notice, 0);
             $synchro_rdf->addRdf($row->analysis_notice, 0);
         }
     }
     $this->delete();
     return false;
 }
Example #2
0
 function replace($by, $supp_notice = true)
 {
     global $msg;
     global $dbh;
     global $keep_categories;
     if ($this->id == $by) {
         return $msg[223];
     }
     if ($this->id == $by || !$this->id) {
         return $msg[223];
     }
     $by_notice = new notice($by);
     if ($this->biblio_level != $by_notice->biblio_level || $this->hierar_level != $by_notice->hierar_level) {
         return $msg[catal_rep_not_err1];
     }
     // traitement des catégories (si conservation cochée)
     if ($keep_categories) {
         update_notice_categories_from_form($by);
     }
     // remplacement dans les exemplaires numériques
     $requete = "UPDATE explnum SET explnum_notice='{$by}' WHERE explnum_notice='{$this->id}' ";
     pmb_mysql_query($requete, $dbh);
     // remplacement dans les exemplaires
     $requete = "UPDATE exemplaires SET expl_notice='{$by}' WHERE expl_notice='{$this->id}' ";
     pmb_mysql_query($requete, $dbh);
     // remplacement dans les depouillements
     $requete = "UPDATE analysis SET analysis_notice='{$by}' WHERE analysis_notice='{$this->id}' ";
     pmb_mysql_query($requete, $dbh);
     // remplacement dans les bulletins
     $requete = "UPDATE bulletins SET bulletin_notice='{$by}' WHERE bulletin_notice='{$this->id}' ";
     pmb_mysql_query($requete, $dbh);
     // remplacement dans les notices filles
     /*$requete = "UPDATE notices_relations SET num_notice='$by' WHERE num_notice='$this->id' ";
     		@pmb_mysql_query($requete, $dbh);
     		$requete = "UPDATE notices_relations SET linked_notice='$by' WHERE linked_notice='$this->id' ";
     		@pmb_mysql_query($requete, $dbh);*/
     // remplacement dans les resas
     $requete = "UPDATE resa SET resa_idnotice='{$by}' WHERE resa_idnotice='{$this->id}' ";
     pmb_mysql_query($requete, $dbh);
     $req = "UPDATE notices_authperso SET notice_authperso_notice_num='{$by}' where notice_authperso_notice_num='{$this->id}' ";
     pmb_mysql_query($req, $dbh);
     //Suppression de la notice
     if ($supp_notice) {
         notice::del_notice($this->id);
     }
     return FALSE;
 }