Пример #1
0
 public function create_notice()
 {
     global $dbh;
     global $pmb_keyword_sep;
     $fields = "\n\t\t\ttit1='" . addslashes($this->title) . "',\n\t\t\tn_resume='" . addslashes($this->summary) . "',\n\t\t\tlien='" . addslashes($this->url) . "',\n\t\t\tthumbnail_url='" . addslashes($this->logo_url) . "',\n\t\t\tdate_parution='" . addslashes($this->publication_date) . "',\n\t\t\tindex_l='" . addslashes(implode($pmb_keyword_sep, $this->tags)) . "'\n\t\t";
     $req = "INSERT INTO notices SET {$fields} ";
     pmb_mysql_query($req, $dbh);
     $num_notice = pmb_mysql_insert_id();
     if (!$num_notice) {
         return array();
     }
     $query .= "update docwatch_items set\titem_num_notice = '" . $num_notice . "' where id_item = '" . $this->id . "'";
     pmb_mysql_query($query, $dbh);
     // permet de charger la bonne langue, mot vide...
     $info = notice::indexation_prepare($num_notice);
     // Mise a jour des index de la notice
     notice::majNotices($num_notice);
     // Mise a jour de la table notices_global_index
     notice::majNoticesGlobalIndex($num_notice);
     // Mise a jour de la table notices_mots_global_index
     notice::majNoticesMotsGlobalIndex($num_notice);
     // restaure l'environnement de langue
     notice::indexation_restaure($info);
     return array('id' => $num_notice, 'title' => $this->title, 'link' => "./catalog.php?categ=isbd&id=" . $num_notice);
 }
 public function create_record_child($id_parent, $data)
 {
     global $dbh;
     global $pmb_nomenclature_record_children_link;
     $tit1 = "Notice fille temporaire de la nomenclature {$id_parent}";
     $fields = "\r\n\t\ttit1='" . addslashes($tit1) . "'\r\n\t\t";
     $req = "INSERT INTO notices SET {$fields} ";
     pmb_mysql_query($req, $dbh);
     $this->id = pmb_mysql_insert_id();
     if (!$this->id) {
         return 0;
     }
     if (!$data["rank"]) {
         $data["rank"] = 1;
     }
     $requete = 'INSERT INTO notices_relations VALUES("' . $this->id . '","' . $id_parent . '","' . $pmb_nomenclature_record_children_link . '","' . $data["rank"] . '")';
     pmb_mysql_query($requete, $dbh);
     $this->save($data);
     $this->fetch_datas();
     $data = $this->get_data();
     $tit1 = $data["instrument_name"] . $data["voice_name"];
     if ($data["musicstand_name"]) {
         $tit1 .= " / " . $data["musicstand_name"];
     }
     if ($data["formation_label"]) {
         $tit1 .= " / " . $data["formation_label"];
     }
     $fields = "\r\n\t\ttit1='" . addslashes($tit1) . "'\r\n\t\t";
     $req = "UPDATE notices SET {$fields} where notice_id= " . $this->id;
     pmb_mysql_query($req, $dbh);
     // permet de charger la bonne langue, mot vide...
     $info = notice::indexation_prepare($this->id);
     // Mise a jour des index de la notice
     notice::majNotices($this->id);
     // Mise a jour de la table notices_global_index
     notice::majNoticesGlobalIndex($this->id);
     // Mise a jour de la table notices_mots_global_index
     notice::majNoticesMotsGlobalIndex($this->id);
     // restaure l'environnement de langue
     notice::indexation_restaure($info);
     return array('id' => $this->id, 'title' => $tit1);
 }
Пример #3
0
 public function create_notice()
 {
     global $dbh;
     global $pmb_keyword_sep;
     if (docwatch_watch::check_watch_rights($this->num_watch)) {
         /** Récupération des paramètres défini dans la veille pour la création de notice à partir de ses items **/
         $query = "select watch_record_default_type, watch_record_default_status from docwatch_watches where id_watch =" . $this->num_watch;
         $result = pmb_mysql_query($query, $dbh);
         if (pmb_mysql_num_rows($result)) {
             $row = pmb_mysql_fetch_object($result);
             $record_type = $row->watch_record_default_type;
             $record_status = $row->watch_record_default_status;
         } else {
             return array();
         }
         $tab_tag = array();
         foreach ($this->tags as $tag) {
             $tab_tag[] = $tag["label"];
         }
         $fields = "\n\t\t\t\ttit1='" . addslashes($this->title) . "',\n\t\t\t\tn_resume='" . addslashes($this->summary) . "',\n\t\t\t\tlien='" . addslashes($this->url) . "',\n\t\t\t\tthumbnail_url='" . addslashes($this->logo_url) . "',\n\t\t\t\tdate_parution='" . addslashes($this->publication_date) . "',\n\t\t\t\tyear='" . addslashes(format_date($this->publication_date)) . "',\n\t\t\t\ttypdoc='" . addslashes($record_type) . "',\n\t\t\t\tstatut='" . addslashes($record_status) . "',\n\t\t\t\tindex_l='" . addslashes(implode($pmb_keyword_sep, $tab_tag)) . "'\n\t\t\t";
         $req = "INSERT INTO notices SET {$fields} ";
         pmb_mysql_query($req, $dbh);
         $num_notice = pmb_mysql_insert_id();
         if (!$num_notice) {
             return array();
         }
         foreach ($this->descriptors as $num_categ => $label) {
             $query = "insert into notices_categories set notcateg_notice = '" . $num_notice . "', num_noeud='" . $num_categ . "'";
             pmb_mysql_query($query, $dbh);
         }
         $query = "update docwatch_items set\titem_num_notice = '" . $num_notice . "' where id_item = '" . $this->id . "'";
         pmb_mysql_query($query, $dbh);
         $this->set_num_notice($num_notice);
         // permet de charger la bonne langue, mot vide...
         $info = notice::indexation_prepare($num_notice);
         // Mise a jour des index de la notice
         notice::majNotices($num_notice);
         // Mise a jour de la table notices_global_index
         notice::majNoticesGlobalIndex($num_notice);
         // Mise a jour de la table notices_mots_global_index
         notice::majNoticesMotsGlobalIndex($num_notice);
         // restaure l'environnement de langue
         notice::indexation_restaure($info);
         return array('id' => $num_notice, 'title' => $this->title, 'link' => "./catalog.php?categ=isbd&id=" . $num_notice);
     }
 }
Пример #4
0
         }
     }
     //Traitement des champs personnalises
     $p_perso->rec_fields_perso($id);
     if ($result) {
         include './catalog/notices/isbd.inc.php';
     } else {
         // echec de la requete
         error_message($libelle, $msg[281], 1, "./catalog.php");
     }
     //Recherche du titre uniforme automatique
     global $opac_enrichment_bnf_sparql;
     $opac_enrichment_bnf_sparql = 1;
     $titre_uniforme = notice::getAutomaticTu($id);
     // permet de charger la bonne langue, mot vide...
     $info = notice::indexation_prepare($id);
     // Mise a jour des index de la notice
     notice::majNotices($id);
     // Mise a jour de la table notices_global_index
     notice::majNoticesGlobalIndex($id);
     // Mise a jour de la table notices_mots_global_index
     notice::majNoticesMotsGlobalIndex($id);
     // restaure l'environnement de langue
     notice::indexation_restaure($info);
     //synchro_rdf
     if ($pmb_synchro_rdf) {
         $synchro_rdf->addRdf($id, 0);
     }
 } else {
     if ($f_tit1 == "") {
         // erreur : le champ tit1 est vide
Пример #5
0
         }
     }
     // traitement des langues originales
     $rqt_ins = "insert into notices_langues (num_notice, type_langue, code_langue, ordre_langue) VALUES ";
     while (list($key, $val) = each($f_langorg_form)) {
         $tmpcode_langue = $val['code'];
         if ($tmpcode_langue) {
             $tmpordre_langue = $val['ordre'];
             $rqt = $rqt_ins . " ('{$update_result}',1, '{$tmpcode_langue}', {$tmpordre_langue}) ";
             $res_ins = @mysql_query($rqt, $dbh);
         }
     }
     //Traitement des champs perso
     $p_perso->rec_fields_perso($update_result);
     // permet de charger la bonne langue, mot vide...
     $info = notice::indexation_prepare($serial->serial_id);
     // Mise à jour de la table notices_global_index
     notice::majNoticesGlobalIndex($serial->serial_id);
     // Mise à jour de la table notices_mots_global_index
     notice::majNoticesMotsGlobalIndex($serial->serial_id);
     // restaure l'environnement de langue
     notice::indexation_restaure($info);
     //Pour la synchro rdf
     if ($pmb_synchro_rdf) {
         $synchro_rdf->addRdf($serial->serial_id, 0);
     }
     print "<div class='row'><div class='msg-perio'>" . $msg[maj_encours] . "</div></div>";
     $retour = "./catalog.php?categ=serials&sub=view&serial_id=" . $serial->serial_id;
     print "\n\t\t\t<form class='form-{$current_module}' name=\"dummy\" method=\"post\" action=\"{$retour}\" style=\"display:none\">\n\t\t\t\t<input type=\"hidden\" name=\"id_form\" value=\"{$id_form}\">\n\t\t\t</form>\n\t\t\t<script type=\"text/javascript\">document.dummy.submit();</script>\n\t\t\t";
 } else {
     error_message($msg[4004], $msg['catalog_serie_impossible'], 1, './catalog.php?categ=serials');
Пример #6
0
 static function majNoticesTotal($notice)
 {
     $info = notice::indexation_prepare($notice);
     notice::majNotices($notice);
     notice::majNoticesGlobalIndex($notice);
     notice::majNoticesMotsGlobalIndex($notice);
     notice::indexation_restaure($info);
 }
Пример #7
0
$NoIndex = 1;
$query = pmb_mysql_query("select notice_id from notices order by notice_id LIMIT {$start}, {$lot}");
if (pmb_mysql_num_rows($query)) {
    // définition de l'état de la jauge
    $state = floor($start / ($count / $jauge_size));
    $state .= "px";
    // mise à jour de l'affichage de la jauge
    print "<table border='0' align='center' width='{$jauge_size}' cellpadding='0'><tr><td class='jauge' width='100%'>";
    print "<img src='../../images/jauge.png' width='{$state}' height='16px'></td></tr></table>";
    // calcul pourcentage avancement
    $percent = floor($start / $count * 100);
    // affichage du % d'avancement et de l'état
    print "<div align='center'>{$percent}%</div>";
    while ($mesNotices = pmb_mysql_fetch_assoc($query)) {
        // permet de charger la bonne langue, mot vide...
        $info = notice::indexation_prepare($mesNotices['notice_id']);
        // Mise à jour de la table "notices_global_index"
        notice::majNoticesGlobalIndex($mesNotices['notice_id']);
        // Mise à jour de la table "notices_mots_global_index"
        notice::majNoticesMotsGlobalIndex($mesNotices['notice_id']);
        // restaure l'environnement de langue
        notice::indexation_restaure($info);
    }
    pmb_mysql_free_result($query);
    $next = $start + $lot;
    print "\n\t<form class='form-{$current_module}' name='current_state' action='./clean.php' method='post'>\n\t<input type='hidden' name='v_state' value=\"" . urlencode($v_state) . "\">\n\t<input type='hidden' name='spec' value=\"{$spec}\">\n\t<input type='hidden' name='start' value=\"{$next}\">\n\t<input type='hidden' name='count' value=\"{$count}\">\n\t</form>\n\t<script type=\"text/javascript\"><!-- \n\tsetTimeout(\"document.forms['current_state'].submit()\",1000); \n\t-->\n\t</script>";
} else {
    $spec = $spec - INDEX_GLOBAL;
    $not = pmb_mysql_query("SELECT count(1) FROM notices_global_index", $dbh);
    $compte = pmb_mysql_result($not, 0, 0);
    $v_state .= "<br /><img src=../../images/d.gif hspace=3>" . htmlentities($msg["nettoyage_reindex_global"], ENT_QUOTES, $charset) . " :";
function pmb_init_indexation_records()
{
    global $dbh, $msg;
    $result = pmb_mysql_query("select notice_id from notices", $dbh);
    if ($result) {
        $count = pmb_mysql_num_rows($result);
        if ($count) {
            while ($mesNotices = pmb_mysql_fetch_assoc($result)) {
                // permet de charger la bonne langue, mot vide...
                $info = notice::indexation_prepare($mesNotices['notice_id']);
                // Mise à jour de la table "notices_global_index"
                notice::majNoticesGlobalIndex($mesNotices['notice_id']);
                // Mise à jour de la table "notices_mots_global_index"
                notice::majNoticesMotsGlobalIndex($mesNotices['notice_id']);
                // restaure l'environnement de langue
                notice::indexation_restaure($info);
            }
            pmb_indexation_display($msg["nettoyage_reindex_notices"], $count . " " . $msg["nettoyage_res_reindex_notices"]);
        }
    }
}