function aff_suite() { global $msg; global $charset; // afin d'eviter de recalculer un truc deja calcule.. if ($this->affichage_suite) { return $this->affichage_suite; } // serials : si article $ret .= $this->genere_in_perio(); // resume if($this->notice->n_resume) if ($this->notice->n_resume) { $ret .= "<tr><td align='right' class='bg-grey'><b>" . $msg['n_resume_start'] . "</b></td><td>" . nl2br(htmlentities($this->notice->n_resume, ENT_QUOTES, $charset)) . "</td></tr>"; } // note de contenu if ($this->notice->n_contenu) { $ret .= "<tr><td align='right' class='bg-grey'><b>" . $msg['n_contenu_start'] . "</b></td><td>" . nl2br(htmlentities($this->notice->n_contenu, ENT_QUOTES, $charset)) . "</td></tr>"; } // Categories if ($this->categories_toutes) { $ret .= "<tr><td align='right' class='bg-grey'><b>" . $msg['categories_start'] . "</b></td><td>" . $this->categories_toutes . "</td></tr>"; } // indexation libre $mots_cles = $this->do_mots_cle(); if ($mots_cles) { $ret .= "<tr><td align='right' class='bg-grey'><b>" . $msg['motscle_start'] . "</b></td><td>" . $mots_cles . "</td></tr>"; } // indexation interne if ($this->notice->indexint) { $indexint = new indexint($this->notice->indexint); $ret .= "<tr><td align='right' class='bg-grey'><b>" . $msg['indexint_start'] . "</b></td><td>" . inslink($indexint->name, str_replace("!!id!!", $this->notice->indexint, $this->lien_rech_indexint)) . " " . nl2br(htmlentities($indexint->comment, ENT_QUOTES, $charset)) . "</td></tr>"; } //Champs personnalises $perso_aff = ""; if (!$this->p_perso->no_special_fields) { $perso_ = $this->p_perso->show_fields($this->notice_id); for ($i = 0; $i < count($perso_["FIELDS"]); $i++) { $p = $perso_["FIELDS"][$i]; if ($p['OPAC_SHOW'] && $p["AFF"]) { $perso_aff .= "<tr><td align='right' class='bg-grey'>" . $p["TITRE"] . "</td><td>" . $p["AFF"] . "</td></tr>"; } } } if ($perso_aff) { //Espace //$ret.="<tr class='tr_spacer'><td colspan='2' class='td_spacer'> </td></tr>"; $ret .= $perso_aff; } if ($this->notice->lien) { //$ret.="<tr class='tr_spacer'><td colspan='2' class='td_spacer'> </td></tr>"; $ret .= "<tr><td align='right' class='bg-grey'><b>" . $msg["lien_start"] . "</b></td><td>"; if (substr($this->notice->eformat, 0, 3) == 'RSS') { $ret .= affiche_rss($this->notice->notice_id); } else { $ret .= "<a href=\"" . $this->notice->lien . "\" target=\"top\">" . htmlentities($this->notice->lien, ENT_QUOTES, $charset) . "</a></td></tr>"; } $ret .= "</td></tr>"; if ($this->notice->eformat && substr($this->notice->eformat, 0, 3) != 'RSS') { $ret .= "<tr><td align='right' class='bg-grey'><b>" . $msg["eformat_start"] . "</b></td><td>" . htmlentities($this->notice->eformat, ENT_QUOTES, $charset) . "</td></tr>"; } } $this->affichage_suite = $ret; return $ret; }
function aff_suite() { global $msg; global $charset; global $mode; global $opac_allow_tags_search; // afin d'eviter de recalculer un truc deja calcule... if ($this->affichage_suite) { return $this->affichage_suite; } // serials : si article $ret .= $this->genere_in_perio(); //Espace $ret .= "<tr class='tr_spacer'><td colspan='2' class='td_spacer'> </td></tr>"; // resume if ($this->notice->n_resume) { $ret .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['n_resume_start'] . "</span></td><td>" . nl2br(htmlentities(strip_tags(implode("\n", $this->notice->n_resume)), ENT_QUOTES, $charset)) . "</td></tr>"; } // note de contenu if ($this->notice->n_contenu) { $ret .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['n_contenu_start'] . "</span></td><td>" . nl2br(htmlentities(strip_tags(implode("\n", $this->notice->n_contenu)), ENT_QUOTES, $charset)) . "</td></tr>"; } // Categories if ($this->categories_toutes) { $ret .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['categories_start'] . "</span></td><td>" . $this->categories_toutes . "</td></tr>"; } // Affectation du libelle mots cles ou tags en fonction de la recherche precedente if ($opac_allow_tags_search == 1) { $libelle_key = $msg['tags']; } else { $libelle_key = $msg['motscle_start']; } // indexation libre $mots_cles = $this->do_mots_cle(); if ($mots_cles) { $ret .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $libelle_key . "</span></td><td>" . $mots_cles . "</td></tr>"; } if (is_array($this->notice->indexint) && count($this->notice->indexint)) { $indexint = implode("<br>", $this->notice->indexint); $ret .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['indexint_start'] . "</span></td><td>{$indexint}</td></tr>"; } if ($this->notice->lien) { $ret .= "<tr class='tr_spacer'><td colspan='2' class='td_spacer'> </td></tr>"; $ret .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg["lien_start"] . "</span></td><td>"; if (substr($this->notice->eformat, 0, 3) == 'RSS') { $ret .= affiche_rss($this->notice->notice_id); } else { $ret .= "<a href=\"" . $this->notice->lien . "\" target=\"top\">" . htmlentities($this->notice->lien_texte ? $this->notice->lien_texte : $this->notice->lien, ENT_QUOTES, $charset) . "</a></td></tr>"; } $ret .= "</td></tr>"; if ($this->notice->eformat && substr($this->notice->eformat, 0, 3) != 'RSS') { $ret .= "<tr><td align='right' class='bg-grey'><b>" . $msg["eformat_start"] . "</b></td><td>" . htmlentities($this->notice->eformat, ENT_QUOTES, $charset) . "</td></tr>"; } } $this->affichage_suite = $ret; return $ret; }
static function majNoticesGlobalIndex($notice, $NoIndex = 1) { global $dbh; pmb_mysql_query("delete from notices_global_index where num_notice = " . $notice . " AND no_index = " . $NoIndex, $dbh); $titres = pmb_mysql_query("select index_serie, tnvol, index_wew, index_sew, index_l, index_matieres, n_gen, n_contenu, n_resume, index_n_gen, index_n_contenu, index_n_resume, eformat, niveau_biblio from notices where notice_id = " . $notice, $dbh); $mesNotices = pmb_mysql_fetch_assoc($titres); $tit = $mesNotices['index_wew']; $indTit = $mesNotices['index_sew']; $indMat = $mesNotices['index_matieres']; $indL = $mesNotices['index_l']; $indResume = $mesNotices['index_n_resume']; $indGen = $mesNotices['index_n_gen']; $indContenu = $mesNotices['index_n_contenu']; $resume = $mesNotices['n_resume']; $gen = $mesNotices['n_gen']; $contenu = $mesNotices['n_contenu']; $indSerie = $mesNotices['index_serie']; $tvol = $mesNotices['tnvol']; $eformatlien = $mesNotices['eformat']; $infos_global = ' ' . $tvol . ' ' . $tit . ' ' . $resume . ' ' . $gen . ' ' . $contenu . ' ' . $indL . ' '; $infos_global_index = ' ' . $indSerie . ' ' . $indTit . ' ' . $indResume . ' ' . $indGen . ' ' . $indContenu . ' ' . $indMat . ' '; // Authors : $auteurs = pmb_mysql_query("select author_id, author_type, author_name, author_rejete, author_date, author_lieu,author_ville,author_pays,author_numero,author_subdivision, index_author from authors, responsability WHERE responsability_author = author_id AND responsability_notice = {$notice}", $dbh); $numA = pmb_mysql_num_rows($auteurs); $aut_pperso = new aut_pperso("author"); for ($j = 0; $j < $numA; $j++) { $mesAuteurs = pmb_mysql_fetch_assoc($auteurs); $infos_global .= $mesAuteurs['author_name'] . ' ' . $mesAuteurs['author_rejete'] . ' ' . $mesAuteurs['author_lieu'] . ' ' . $mesAuteurs['author_ville'] . ' ' . $mesAuteurs['author_pays'] . ' ' . $mesAuteurs['author_numero'] . ' ' . $mesAuteurs['author_subdivision'] . ' '; if ($mesAuteurs['author_type'] == "72") { $infos_global .= ' ' . $mesAuteurs['author_date'] . ' '; } $infos_global_index .= strip_empty_chars($mesAuteurs['author_name'] . ' ' . $mesAuteurs['author_rejete'] . ' ' . $mesAuteurs['author_lieu'] . ' ' . $mesAuteurs['author_ville'] . ' ' . $mesAuteurs['author_pays'] . ' ' . $mesAuteurs['author_numero'] . ' ' . $mesAuteurs['author_subdivision']) . ' '; if ($mesAuteurs['author_type'] == "72") { $infos_global_index .= strip_empty_chars($mesAuteurs['author_date'] . " "); } $mots_perso = $aut_pperso->get_fields_recherche($mesAuteurs['author_id']); if ($mots_perso) { $infos_global .= $mots_perso . ' '; $infos_global_index .= strip_empty_words($mots_perso) . ' '; } } pmb_mysql_free_result($auteurs); // Nom du periodique //cas d'un article if ($mesNotices['niveau_biblio'] == 'a') { $temp = pmb_mysql_query("select bulletin_notice, bulletin_titre, index_titre, index_wew, index_sew from analysis, bulletins, notices WHERE analysis_notice=" . $notice . " and analysis_bulletin = bulletin_id and bulletin_notice=notice_id", $dbh); $numP = pmb_mysql_num_rows($temp); if ($numP) { // La notice appartient a un periodique, on selectionne le titre de periodique : $mesTemp = pmb_mysql_fetch_assoc($temp); $infos_global .= $mesTemp['index_wew'] . ' ' . $mesTemp['bulletin_titre'] . ' ' . $mesTemp['index_titre'] . ' '; $infos_global_index .= strip_empty_words($mesTemp['index_wew'] . ' ' . $mesTemp['bulletin_titre'] . ' ' . $mesTemp['index_titre']) . ' '; } pmb_mysql_free_result($temp); //cas d'un bulletin } else { if ($mesNotices['niveau_biblio'] == 'b') { $temp = pmb_mysql_query("select serial.index_wew from notices join bulletins on bulletins.num_notice = notices.notice_id join notices as serial on serial.notice_id = bulletins.bulletin_notice where notices.notice_id = " . $notice); $numP = pmb_mysql_num_rows($temp); if ($numP) { // La notice appartient a un periodique, on selectionne le titre de periodique : $mesTemp = pmb_mysql_fetch_assoc($temp); $infos_global .= $mesTemp['index_wew'] . ' '; $infos_global_index .= strip_empty_words($mesTemp['index_wew']); } pmb_mysql_free_result($temp); } } // Categories : $aut_pperso = new aut_pperso("categ"); $noeud = pmb_mysql_query("select notices_categories.num_noeud as categ_id, libelle_categorie from notices_categories,categories where notcateg_notice = " . $notice . " and notices_categories.num_noeud=categories.num_noeud order by ordre_categorie", $dbh); $numNoeuds = pmb_mysql_num_rows($noeud); // Pour chaque noeud trouve on cherche les noeuds parents et les noeuds fils : for ($j = 0; $j < $numNoeuds; $j++) { // On met a jour la table notices_global_index avec le noeud trouve: $mesNoeuds = pmb_mysql_fetch_assoc($noeud); $infos_global .= $mesNoeuds['libelle_categorie'] . ' '; $infos_global_index .= strip_empty_words($mesNoeuds['libelle_categorie']) . ' '; $mots_perso = $aut_pperso->get_fields_recherche($mesNoeuds['categ_id']); if ($mots_perso) { $infos_global .= $mots_perso . ' '; $infos_global_index .= strip_empty_words($mots_perso) . ' '; } } // Sous-collection : $aut_pperso = new aut_pperso("subcollection"); $subColls = pmb_mysql_query("select subcoll_id, sub_coll_name, index_sub_coll from notices, sub_collections WHERE subcoll_id = sub_coll_id AND notice_id = " . $notice, $dbh); $numSC = pmb_mysql_num_rows($subColls); for ($j = 0; $j < $numSC; $j++) { $mesSubColl = pmb_mysql_fetch_assoc($subColls); $infos_global .= $mesSubColl['index_sub_coll'] . ' ' . $mesSubColl['sub_coll_name'] . ' '; $infos_global_index .= strip_empty_words($mesSubColl['index_sub_coll'] . ' ' . $mesSubColl['sub_coll_name']) . ' '; $mots_perso = $aut_pperso->get_fields_recherche($mesSubColl['subcoll_id']); if ($mots_perso) { $infos_global .= $mots_perso . ' '; $infos_global_index .= strip_empty_words($mots_perso) . ' '; } } pmb_mysql_free_result($subColls); // Indexation numerique : $aut_pperso = new aut_pperso("indexint"); $indexNums = pmb_mysql_query("select indexint_id, indexint_name, indexint_comment from notices, indexint WHERE indexint = indexint_id AND notice_id = " . $notice, $dbh); $numIN = pmb_mysql_num_rows($indexNums); for ($j = 0; $j < $numIN; $j++) { $mesindexNums = pmb_mysql_fetch_assoc($indexNums); $infos_global .= $mesindexNums['indexint_name'] . ' ' . $mesindexNums['indexint_comment'] . ' '; $infos_global_index .= strip_empty_words($mesindexNums['indexint_name'] . ' ' . $mesindexNums['indexint_comment']) . ' '; $mots_perso = $aut_pperso->get_fields_recherche($mesindexNums['indexint_id']); if ($mots_perso) { $infos_global .= $mots_perso . ' '; $infos_global_index .= strip_empty_words($mots_perso) . ' '; } } pmb_mysql_free_result($indexNums); // Collection : $aut_pperso = new aut_pperso("collection"); $Colls = pmb_mysql_query("select coll_id, collection_name ,collection_issn from notices, collections WHERE coll_id = collection_id AND notice_id = " . $notice, $dbh); $numCo = pmb_mysql_num_rows($Colls); for ($j = 0; $j < $numCo; $j++) { $mesColl = pmb_mysql_fetch_assoc($Colls); $infos_global .= $mesColl['collection_name'] . ' ' . $mesColl['collection_issn'] . ' '; $infos_global_index .= strip_empty_words($mesColl['collection_name']) . ' ' . strip_empty_words($mesColl['collection_issn']) . ' '; $mots_perso = $aut_pperso->get_fields_recherche($mesColl['coll_id']); if ($mots_perso) { $infos_global .= $mots_perso . ' '; $infos_global_index .= strip_empty_words($mots_perso) . ' '; } } pmb_mysql_free_result($Colls); // Editeurs : $aut_pperso = new aut_pperso("publisher"); $editeurs = pmb_mysql_query("select ed_id, ed_name from notices, publishers WHERE (ed1_id = ed_id OR ed2_id = ed_id) AND notice_id = " . $notice, $dbh); $numE = pmb_mysql_num_rows($editeurs); for ($j = 0; $j < $numE; $j++) { $mesEditeurs = pmb_mysql_fetch_assoc($editeurs); $infos_global .= $mesEditeurs['ed_name'] . ' '; $infos_global_index .= strip_empty_chars($mesEditeurs['ed_name']) . ' '; $mots_perso = $aut_pperso->get_fields_recherche($mesEditeurs['ed_id']); if ($mots_perso) { $infos_global .= $mots_perso . ' '; $infos_global_index .= strip_empty_words($mots_perso) . ' '; } } pmb_mysql_free_result($editeurs); pmb_mysql_free_result($titres); // Titres Uniformes : $aut_pperso = new aut_pperso("tu"); $tu = pmb_mysql_query("select tu_id, ntu_titre, tu_name, tu_tonalite, tu_sujet, tu_lieu, tu_contexte from notices_titres_uniformes,titres_uniformes WHERE tu_id=ntu_num_tu and ntu_num_notice=" . $notice, $dbh); if (pmb_mysql_error() == "" && pmb_mysql_num_rows($tu)) { $numtu = pmb_mysql_num_rows($tu); for ($j = 0; $j < $numtu; $j++) { $mesTu = pmb_mysql_fetch_assoc($tu); $infos_global .= $mesTu['ntu_titre'] . ' ' . $mesTu['tu_name'] . ' ' . $mesTu['tu_tonalite'] . ' ' . $mesTu['tu_sujet'] . ' ' . $mesTu['tu_lieu'] . ' ' . $mesTu['tu_contexte'] . ' '; $infos_global_index .= strip_empty_words($mesTu['ntu_titre'] . ' ' . $mesTu['tu_name'] . ' ' . $mesTu['tu_tonalite'] . ' ' . $mesTu['tu_sujet'] . ' ' . $mesTu['tu_lieu'] . ' ' . $mesTu['tu_contexte']) . ' '; $mots_perso = $aut_pperso->get_fields_recherche($mesTu['tu_id']); if ($mots_perso) { $infos_global .= $mots_perso . ' '; $infos_global_index .= strip_empty_words($mots_perso) . ' '; } } pmb_mysql_free_result($tu); } // indexer les cotes des etat des collections : $p_perso = new parametres_perso("collstate"); $coll = pmb_mysql_query("select collstate_id, collstate_cote from collections_state WHERE id_serial=" . $notice, $dbh); $numcoll = pmb_mysql_num_rows($coll); for ($j = 0; $j < $numcoll; $j++) { $mescoll = pmb_mysql_fetch_assoc($coll); $infos_global .= $mescoll['collstate_cote'] . ' '; $infos_global_index .= strip_empty_words($mescoll['collstate_cote']) . ' '; // champ perso cherchable $mots_perso = $p_perso->get_fields_recherche($mescoll['collstate_id']); if ($mots_perso) { $infos_global .= $mots_perso . ' '; $infos_global_index .= strip_empty_words($mots_perso) . ' '; } } pmb_mysql_free_result($coll); // Nomenclature global $pmb_nomenclature_activate; if ($pmb_nomenclature_activate) { $mots = nomenclature_record_ui::get_index($notice); $infos_global .= $mots . ' '; $infos_global_index .= strip_empty_words($mots) . ' '; } // champ perso cherchable $p_perso = new parametres_perso("notices"); $mots_perso = $p_perso->get_fields_recherche($notice); if ($mots_perso) { $infos_global .= $mots_perso . ' '; $infos_global_index .= strip_empty_words($mots_perso) . ' '; } // champs des authperso $auth_perso = new authperso_notice($notice); $mots_authperso = $auth_perso->get_fields_search(); if ($mots_authperso) { $infos_global .= $mots_authperso . ' '; $infos_global_index .= strip_empty_words($mots_authperso) . ' '; } // flux RSS éventuellement $eformat = array(); $eformat = explode(' ', $eformatlien); if ($eformat[0] == 'RSS' && $eformat[3] == '1') { $flux = strip_tags(affiche_rss($notice)); $infos_global_index .= strip_empty_words($flux) . ' '; } pmb_mysql_query("insert into notices_global_index SET num_notice=" . $notice . ",no_index =" . $NoIndex . ", infos_global='" . addslashes($infos_global) . "', index_infos_global='" . addslashes($infos_global_index) . "'", $dbh); }
function aff_suite() { global $msg; global $charset; global $opac_allow_tags_search, $opac_permalink, $opac_url_base; // afin d'éviter de recalculer un truc déjà calculé... if ($this->affichage_suite_flag) { return $this->affichage_suite; } //Espace //$ret.="<tr class='tr_spacer'><td colspan='2' class='td_spacer'> </td></tr>"; // toutes indexations $ret_index = ""; // Catégories if ($this->categories_toutes) { $ret_index .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['categories_start'] . "</span></td><td>" . $this->categories_toutes . "</td></tr>"; } // Affectation du libellé mots clés ou tags en fonction de la recherche précédente if ($opac_allow_tags_search == 1) { $libelle_key = $msg['tags']; } else { $libelle_key = $msg['motscle_start']; } // indexation libre $mots_cles = $this->do_mots_cle(); if ($mots_cles) { $ret_index .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $libelle_key . "</span></td><td>" . nl2br($mots_cles) . "</td></tr>"; } // indexation interne if ($this->notice->indexint) { $indexint = new indexint($this->notice->indexint); $ret_index .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['indexint_start'] . "</span></td><td>" . inslink($indexint->name, str_replace("!!id!!", $this->notice->indexint, $this->lien_rech_indexint)) . " " . nl2br(htmlentities($indexint->comment, ENT_QUOTES, $charset)) . "</td></tr>"; } if ($ret_index) { $ret .= $ret_index; //$ret.="<tr class='tr_spacer'><td colspan='2' class='td_spacer'> </td></tr>"; } // résumé if ($this->notice->n_resume) { $ret .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['n_resume_start'] . "</span></td><td class='td_resume'>" . nl2br($this->notice->n_resume) . "</td></tr>"; } // note de contenu if ($this->notice->n_contenu) { $ret .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['n_contenu_start'] . "</span></td><td>" . nl2br(htmlentities($this->notice->n_contenu, ENT_QUOTES, $charset)) . "</td></tr>"; } //Champs personalisés $perso_aff = ""; if (!$this->p_perso->no_special_fields) { // $this->memo_perso_ permet au affichages personalisés dans notice_affichage_ex de gagner du temps if (!$this->memo_perso_) { $this->memo_perso_ = $this->p_perso->show_fields($this->notice_id); } for ($i = 0; $i < count($this->memo_perso_["FIELDS"]); $i++) { $p = $this->memo_perso_["FIELDS"][$i]; if ($p['OPAC_SHOW'] && $p["AFF"]) { $perso_aff .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . strip_tags($p["TITRE"]) . "</span></td><td>" . $p["AFF"] . "</td></tr>"; } } } $ret .= $perso_aff; if ($this->notice->lien) { //$ret.="<tr class='tr_spacer'><td colspan='2' class='td_spacer'> </td></tr>"; $ret .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg["lien_start"] . "</span></td><td>"; if (substr($this->notice->eformat, 0, 3) == 'RSS') { $ret .= affiche_rss($this->notice->notice_id); } else { if (strlen($this->notice->lien) > 80) { $ret .= "<a href=\"" . $this->notice->lien . "\" target=\"top\" class='lien856'>" . htmlentities(substr($this->notice->lien, 0, 80), ENT_QUOTES, $charset) . "</a> [...]"; } else { $ret .= "<a href=\"" . $this->notice->lien . "\" target=\"top\" class='lien856'>" . htmlentities($this->notice->lien, ENT_QUOTES, $charset) . "</a>"; } //$ret.="</td></tr>"; } $ret .= "</td></tr>"; if ($this->notice->eformat && substr($this->notice->eformat, 0, 3) != 'RSS') { $ret .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg["eformat_start"] . "</span></td><td>" . htmlentities($this->notice->eformat, ENT_QUOTES, $charset) . "</td></tr>"; } } // Permalink avec Id if ($opac_permalink) { if ($this->notice->niveau_biblio != "b") { $ret .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg["notice_permalink"] . "</span></td><td><a href='" . $opac_url_base . "index.php?lvl=notice_display&id=" . $this->notice_id . "'>" . substr($opac_url_base . "index.php?lvl=notice_display&id=" . $this->notice_id, 0, 80) . "</a></td></tr>"; } else { $ret .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg["notice_permalink"] . "</span></td><td><a href='" . $opac_url_base . "index.php?lvl=bulletin_display&id=" . $this->bulletin_id . "'>" . substr($opac_url_base . "index.php?lvl=bulletin_display&id=" . $this->bulletin_id, 0, 80) . "</a></td></tr>"; } } $this->affichage_suite = $ret; $this->affichage_suite_flag = 1; return $ret; }
function do_public($short = 0, $ex = 1) { global $dbh; global $msg; global $tdoc; global $charset; global $memo_notice; global $opac_notice_affichage_class; global $opac_url_base, $opac_permalink; $this->notice_public = $this->genere_in_perio(); if (!$this->notice_id) { return; } // Notices parentes //$this->notice_public.=$this->parents; $this->notice_public .= "<table>"; if ($this->notice->typdoc == 'a' || $this->notice->typdoc == 'j' || $this->notice->typdoc == 'm' || $this->notice->typdoc == '3' || $this->notice->typdoc == '4' || $this->notice->typdoc == '5') { /* * Ouvrage - Thèse / Mémoire * Multimédia - Photo - Vidéo - Audio */ //Titre $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['title'] . " :</span></td>"; $this->notice_public .= "<td><span class='public_title'><b>" . $this->notice->tit1 . "</b>"; $this->notice_public .= "</span></td></tr>"; // constitution de la mention de titre if ($this->notice->serie_name) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['tparent_start'] . "</span></td><td>" . inslink($this->notice->serie_name, str_replace("!!id!!", $this->notice->tparent_id, $this->lien_rech_serie)); $this->notice_public .= "</td></tr>"; } //Partie if ($this->notice->tnvol) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['tnvol_start'] . "</span></td><td>" . $this->notice->tnvol; $this->notice_public .= "</td></tr>"; } //Complément du titre if ($this->notice->tit4) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['240'] . " :</span></td>"; $this->notice_public .= "<td>" . $this->notice->tit4 . "</td></tr>"; } //Titre parallèle if ($this->notice->tit3) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['other_title_t3'] . " :</span></td><td>" . $this->notice->tit2 . "</td></tr>"; } //type de doc if ($tdoc->table[$this->notice->typdoc]) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['typdocdisplay_start'] . "</span></td><td>" . $tdoc->table[$this->notice->typdoc] . "</td></tr>"; } //Auteurs if ($this->auteurs_tous) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['auteur_start'] . "</span></td><td>" . $this->auteurs_tous . "</td></tr>"; } //Congrès if ($this->congres_tous) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['congres_aff_public_libelle'] . "</span></td><td>" . $this->congres_tous . "</td></tr>"; } // mention d'édition if ($this->notice->mention_edition) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['mention_edition_start'] . "</span></td><td>" . $this->notice->mention_edition . "</td></tr>"; } // zone de l'éditeur if ($this->notice->ed1_id) { $editeur = new publisher($this->notice->ed1_id); $this->publishers[] = $editeur; $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['editeur_start'] . "</span></td><td>" . ($editeur->ville ? $editeur->ville . " : " : "") . inslink($editeur->name, str_replace("!!id!!", $this->notice->ed1_id, $this->lien_rech_editeur)) . "</td></tr>"; } //Année de publication if ($this->notice->year) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['year_start'] . "</span></td><td>" . $this->notice->year . "</td></tr>"; } //Pagination if ($this->notice->npages) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['npages_start'] . "</span></td><td>" . $this->notice->npages . "</td></tr>"; } //Matériel d'accompagnement if ($this->notice->accomp) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['accomp_start'] . "</span></td><td>" . $this->notice->accomp . "</td></tr>"; } //Collection et Sous-collection if ($this->notice->subcoll_id) { $subcollection = new subcollection($this->notice->subcoll_id); $collection = new collection($this->notice->coll_id); $this->collections[] = $collection; $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['coll_start'] . "</span></td><td>" . inslink($collection->name, str_replace("!!id!!", $this->notice->coll_id, $this->lien_rech_collection)) . "</td></tr>"; $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['subcoll_start'] . "</span></td><td>" . inslink($subcollection->name, str_replace("!!id!!", $this->notice->subcoll_id, $this->lien_rech_subcollection)); if ($this->notice->nocoll) { $this->notice_public .= ", " . $this->notice->nocoll . "</td></tr>"; } } elseif ($this->notice->coll_id) { $collection = new collection($this->notice->coll_id); $this->collections[] = $collection; $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['coll_start'] . "</span></td><td>" . inslink($collection->name, str_replace("!!id!!", $this->notice->coll_id, $this->lien_rech_collection)); if ($this->notice->nocoll) { $this->notice_public .= ", " . $this->notice->nocoll . "</td></tr>"; } } //ISBN ou NO. commercial if ($this->notice->code) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['code_start'] . "</span></td><td>" . $this->notice->code . "</td></tr>"; } //Note générale if ($this->notice->n_gen) { $zoneNote = nl2br(htmlentities($this->notice->n_gen, ENT_QUOTES, $charset)); } if ($zoneNote) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['n_gen_start'] . "</span></td><td>" . $zoneNote . "</td></tr>"; } //Langues if (count($this->langues)) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['537'] . " :</span></td><td>" . $this->construit_liste_langues($this->langues); if (count($this->languesorg)) { $this->notice_public .= " <span class='etiq_champ'>" . $msg['711'] . " :</span> " . $this->construit_liste_langues($this->languesorg); } $this->notice_public .= "</td></tr>"; } elseif (count($this->languesorg)) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['711'] . " :</span></td><td>" . $this->construit_liste_langues($this->languesorg) . "</td></tr>"; } //Catégories if ($this->categories_toutes) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['categories_start'] . "</span></td><td>" . $this->categories_toutes . "</td></tr>"; } //Indexation décimale if ($this->notice->indexint) { $indexint = new indexint($this->notice->indexint); $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['indexint_start'] . "</span></td><td>" . inslink($indexint->name . ($indexint->comment ? " - " . nl2br(htmlentities($indexint->comment, ENT_QUOTES, $charset)) : ""), str_replace("!!id!!", $this->notice->indexint, $this->lien_rech_indexint)) . "</td></tr>"; } //URL associée if ($this->notice->lien) { $ret .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg["lien_start"] . "</span></td><td>"; if (substr($this->notice->eformat, 0, 3) == 'RSS') { $ret .= affiche_rss($this->notice->notice_id); } else { if (strlen($this->notice->lien) > 80) { $ret .= "<a href=\"" . $this->notice->lien . "\" target=\"top\" class='lien856'>" . htmlentities(substr($this->notice->lien, 0, 80), ENT_QUOTES, $charset) . "</a> [...]"; } else { $ret .= "<a href=\"" . $this->notice->lien . "\" target=\"top\" class='lien856'>" . htmlentities($this->notice->lien, ENT_QUOTES, $charset) . "</a>"; } } $ret .= "</td></tr>"; if ($this->notice->eformat && substr($this->notice->eformat, 0, 3) != 'RSS') { $ret .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg["eformat_start"] . "</span></td><td>" . htmlentities($this->notice->eformat, ENT_QUOTES, $charset) . "</td></tr>"; } } if ($this->notice->typdoc == 'j') { //Champs perso - Lieu de la soutenance $perso_aff_1 = ""; if (!$this->p_perso->no_special_fields) { // $this->memo_perso_ permet aux affichages personnalisés dans notice_affichage_ext de gagner du temps if (!$this->memo_perso_) { $this->memo_perso_ = $this->p_perso->show_fields($this->notice_id); } for ($i = 0; $i < count($this->memo_perso_["FIELDS"]); $i++) { $p = $this->memo_perso_["FIELDS"][$i]; if ($p["AFF"]) { if ($p['NAME'] == 'cp_lieusout') { $perso_aff_1 .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . strip_tags($p["TITRE"]) . "</span></td><td>" . $p["AFF"] . "</td></tr>"; } } } } $this->notice_public .= $perso_aff_1; } } elseif ($this->notice->typdoc == 'f' || $this->notice->typdoc == 'i') { /* * Dossier * Archive */ //type de doc if ($tdoc->table[$this->notice->typdoc]) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['typdocdisplay_start'] . "</span></td><td>" . $tdoc->table[$this->notice->typdoc] . "</td></tr>"; } //Titre $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['title'] . " :</span></td>"; $this->notice_public .= "<td><span class='public_title'><b>" . $this->notice->tit1 . "</b>"; $this->notice_public .= "</span></td></tr>"; //Complément du titre if ($this->notice->tit4) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['240'] . " :</span></td>"; $this->notice_public .= "<td>" . $this->notice->tit4 . "</td></tr>"; } //Auteurs if ($this->auteurs_tous) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['auteur_start'] . "</span></td><td>" . $this->auteurs_tous . "</td></tr>"; } //Congrès if ($this->congres_tous) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['congres_aff_public_libelle'] . "</span></td><td>" . $this->congres_tous . "</td></tr>"; } // zone de l'éditeur if ($this->notice->ed1_id) { $editeur = new publisher($this->notice->ed1_id); $this->publishers[] = $editeur; $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['editeur_start'] . "</span></td><td>" . ($editeur->ville ? $editeur->ville . " : " : "") . inslink($editeur->name, str_replace("!!id!!", $this->notice->ed1_id, $this->lien_rech_editeur)) . "</td></tr>"; } //Année édition if ($this->notice->year) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['year_start'] . "</span></td><td>" . $this->notice->year . "</td></tr>"; } //Indexation décimale if ($this->notice->indexint) { $indexint = new indexint($this->notice->indexint); $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['indexint_start'] . "</span></td><td>" . inslink($indexint->name . ($indexint->comment ? " - " . nl2br(htmlentities($indexint->comment, ENT_QUOTES, $charset)) : ""), str_replace("!!id!!", $this->notice->indexint, $this->lien_rech_indexint)) . "</td></tr>"; } } elseif ($this->notice->typdoc == 'c' || $this->notice->niveau_biblio == 's' && $this->notice->typdoc == 'e') { /* * Revue juridique * Revue de presse */ //type de doc if ($tdoc->table[$this->notice->typdoc]) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['typdocdisplay_start'] . "</span></td><td>" . $tdoc->table[$this->notice->typdoc] . "</td></tr>"; } //Titre $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['title'] . " :</span></td>"; $this->notice_public .= "<td><span class='public_title'><b>" . $this->notice->tit1 . "</b>"; $this->notice_public .= "</span></td></tr>"; //Complément du titre if ($this->notice->tit4) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['240'] . " :</span></td>"; $this->notice_public .= "<td>" . $this->notice->tit4 . "</td></tr>"; } // zone de l'éditeur if ($this->notice->ed1_id) { $editeur = new publisher($this->notice->ed1_id); $this->publishers[] = $editeur; $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['editeur_start'] . "</span></td><td>" . ($editeur->ville ? $editeur->ville . " : " : "") . inslink($editeur->name, str_replace("!!id!!", $this->notice->ed1_id, $this->lien_rech_editeur)) . "</td></tr>"; } //Année de publication if ($this->notice->year) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['year_start'] . "</span></td><td>" . $this->notice->year . "</td></tr>"; } //ISSN if ($this->notice->code) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['issn'] . "</span></td><td>" . $this->notice->code . "</td></tr>"; } //Note générale if ($this->notice->n_gen) { $zoneNote = nl2br(htmlentities($this->notice->n_gen, ENT_QUOTES, $charset)); } if ($zoneNote) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['n_gen_start'] . "</span></td><td>" . $zoneNote . "</td></tr>"; } //Lien - En ligne if ($this->notice->lien) { $ret .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg["lien_start"] . "</span></td><td>"; if (substr($this->notice->eformat, 0, 3) == 'RSS') { $ret .= affiche_rss($this->notice->notice_id); } else { if (strlen($this->notice->lien) > 80) { $ret .= "<a href=\"" . $this->notice->lien . "\" target=\"top\" class='lien856'>" . htmlentities(substr($this->notice->lien, 0, 80), ENT_QUOTES, $charset) . "</a> [...]"; } else { $ret .= "<a href=\"" . $this->notice->lien . "\" target=\"top\" class='lien856'>" . htmlentities($this->notice->lien, ENT_QUOTES, $charset) . "</a>"; } } $ret .= "</td></tr>"; if ($this->notice->eformat && substr($this->notice->eformat, 0, 3) != 'RSS') { $ret .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg["eformat_start"] . "</span></td><td>" . htmlentities($this->notice->eformat, ENT_QUOTES, $charset) . "</td></tr>"; } } //Champs personnalisés (en 2 parties) $perso_aff_1 = ""; $perso_aff_2 = ""; if (!$this->p_perso->no_special_fields) { // $this->memo_perso_ permet aux affichages personnalisés dans notice_affichage_ext de gagner du temps if (!$this->memo_perso_) { $this->memo_perso_ = $this->p_perso->show_fields($this->notice_id); } for ($i = 0; $i < count($this->memo_perso_["FIELDS"]); $i++) { $p = $this->memo_perso_["FIELDS"][$i]; if ($p["AFF"]) { if ($p['NAME'] == 'cp_abrev') { $perso_aff_1 .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . strip_tags($p["TITRE"]) . "</span></td><td>" . $p["AFF"] . "</td></tr>"; } else { if ($p['NAME'] == 'cp_titreabrev') { $perso_aff_2 .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . strip_tags($p["TITRE"]) . "</span></td><td>" . $p["AFF"] . "</td></tr>"; } } } } } //Abréviation $this->notice_public .= $perso_aff_1; } elseif ($this->notice->typdoc == 'd' || $this->notice->niveau_biblio == 'a' && $this->notice->typdoc == 'e') { /* * Article de périodique * Article de presse */ //Champs personnalisés (en 4 parties) $perso_aff_1 = ""; $perso_aff_2 = ""; $perso_aff_3 = ""; $perso_aff_4 = ""; $perso_aff_5 = ""; $perso_aff_6 = ""; if (!$this->p_perso->no_special_fields) { // $this->memo_perso_ permet aux affichages personnalisés dans notice_affichage_ext de gagner du temps if (!$this->memo_perso_) { $this->memo_perso_ = $this->p_perso->show_fields($this->notice_id); } for ($i = 0; $i < count($this->memo_perso_["FIELDS"]); $i++) { $p = $this->memo_perso_["FIELDS"][$i]; if ($p["AFF"]) { if ($p['NAME'] == 'cp_theme') { $perso_aff_1 .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . strip_tags($p["TITRE"]) . "</span></td><td>" . $p["AFF"] . "</td></tr>"; } else { if ($p['NAME'] == 'cp_cahier') { $perso_aff_2 .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . strip_tags($p["TITRE"]) . "</span></td><td>" . $p["AFF"] . "</td></tr>"; } else { if ($p['NAME'] == 'cp_recueil') { $perso_aff_3 .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . strip_tags($p["TITRE"]) . "</span></td><td>" . $p["AFF"] . "</td></tr>"; } else { if ($p['NAME'] == 'cp_revdoct') { $perso_aff_4 .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . strip_tags($p["TITRE"]) . "</span></td><td>" . $p["AFF"] . "</td></tr>"; } else { if ($p['NAME'] == 'cp_cpt_tit') { $perso_aff_5 .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . strip_tags($p["TITRE"]) . "</span></td><td>" . $p["AFF"] . "</td></tr>"; } else { if ($p['NAME'] == 'cp_partie_revue') { $perso_aff_6 .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . strip_tags($p["TITRE"]) . "</span></td><td>" . $p["AFF"] . "</td></tr>"; } } } } } } } } } //Titre $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['title'] . " :</span></td>"; $this->notice_public .= "<td><span class='public_title'><b>" . $this->notice->tit1 . "</b>"; $this->notice_public .= "</span></td></tr>"; //Complément du titre if ($this->notice->tit4) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['240'] . " :</span></td>"; $this->notice_public .= "<td>" . $this->notice->tit4 . "</td></tr>"; } //Autres compléments de titre $this->notice_public .= $perso_aff_5; //Partie revue $this->notice_public .= $perso_aff_6; //Auteurs if ($this->auteurs_tous) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['auteur_start'] . "</span></td><td>" . $this->auteurs_tous . "</td></tr>"; } //Congrès if ($this->congres_tous) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['congres_aff_public_libelle'] . "</span></td><td>" . $this->congres_tous . "</td></tr>"; } //Année édition if ($this->notice->year) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['year_start'] . "</span></td><td>" . $this->notice->year . "</td></tr>"; } //Pagination if ($this->notice->npages) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['npages_start'] . "</span></td><td>" . $this->notice->npages . "</td></tr>"; } //Thématique $this->notice_public .= $perso_aff_1; //Cahier $this->notice_public .= $perso_aff_2; //Recueil $this->notice_public .= $perso_aff_3; //Revue doctrine $this->notice_public .= $perso_aff_4; } elseif ($this->notice->typdoc == 'b') { /* * Article d'ouvrage */ //Champs personnalisés $perso_aff_1 = ""; if (!$this->p_perso->no_special_fields) { // $this->memo_perso_ permet aux affichages personnalisés dans notice_affichage_ext de gagner du temps if (!$this->memo_perso_) { $this->memo_perso_ = $this->p_perso->show_fields($this->notice_id); } for ($i = 0; $i < count($this->memo_perso_["FIELDS"]); $i++) { $p = $this->memo_perso_["FIELDS"][$i]; if ($p["AFF"]) { if ($p['NAME'] == 'cp_cpt_tit') { $perso_aff_1 .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . strip_tags($p["TITRE"]) . "</span></td><td>" . $p["AFF"] . "</td></tr>"; } } } } //Titre $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['title'] . " :</span></td>"; $this->notice_public .= "<td><span class='public_title'><b>" . $this->notice->tit1 . "</b>"; $this->notice_public .= "</span></td></tr>"; //Complément du titre if ($this->notice->tit4) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['240'] . " :</span></td>"; $this->notice_public .= "<td>" . $this->notice->tit4 . "</td></tr>"; } //Autres compléments de titre $this->notice_public .= $perso_aff_1; //Titre en langue étrangère if ($this->notice->tit3) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['other_title_t3'] . " :</span></td><td>" . $this->notice->tit2 . "</td></tr>"; } //type de doc if ($tdoc->table[$this->notice->typdoc]) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['typdocdisplay_start'] . "</span></td><td>" . $tdoc->table[$this->notice->typdoc] . "</td></tr>"; } //Auteurs if ($this->auteurs_tous) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['auteur_start'] . "</span></td><td>" . $this->auteurs_tous . "</td></tr>"; } //Congrès if ($this->congres_tous) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['congres_aff_public_libelle'] . "</span></td><td>" . $this->congres_tous . "</td></tr>"; } // mention d'édition if ($this->notice->mention_edition) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['mention_edition_start'] . "</span></td><td>" . $this->notice->mention_edition . "</td></tr>"; } // zone de l'éditeur if ($this->notice->ed1_id) { $editeur = new publisher($this->notice->ed1_id); $this->publishers[] = $editeur; $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['editeur_start'] . "</span></td><td>" . ($editeur->ville ? $editeur->ville . " : " : "") . inslink($editeur->name, str_replace("!!id!!", $this->notice->ed1_id, $this->lien_rech_editeur)) . "</td></tr>"; } //Année de publication if ($this->notice->year) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['year_start'] . "</span></td><td>" . $this->notice->year . "</td></tr>"; } //Pagination if ($this->notice->npages) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['npages_start'] . "</span></td><td>" . $this->notice->npages . "</td></tr>"; } // langues if (count($this->langues)) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['537'] . " :</span></td><td>" . $this->construit_liste_langues($this->langues); if (count($this->languesorg)) { $this->notice_public .= " <span class='etiq_champ'>" . $msg['711'] . " :</span> " . $this->construit_liste_langues($this->languesorg); } $this->notice_public .= "</td></tr>"; } elseif (count($this->languesorg)) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['711'] . " :</span></td><td>" . $this->construit_liste_langues($this->languesorg) . "</td></tr>"; } //Catégories if ($this->categories_toutes) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['categories_start'] . "</span></td><td>" . $this->categories_toutes . "</td></tr>"; } //URL associée if ($this->notice->lien) { $ret .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg["lien_start"] . "</span></td><td>"; if (substr($this->notice->eformat, 0, 3) == 'RSS') { $ret .= affiche_rss($this->notice->notice_id); } else { if (strlen($this->notice->lien) > 80) { $ret .= "<a href=\"" . $this->notice->lien . "\" target=\"top\" class='lien856'>" . htmlentities(substr($this->notice->lien, 0, 80), ENT_QUOTES, $charset) . "</a> [...]"; } else { $ret .= "<a href=\"" . $this->notice->lien . "\" target=\"top\" class='lien856'>" . htmlentities($this->notice->lien, ENT_QUOTES, $charset) . "</a>"; } } $ret .= "</td></tr>"; if ($this->notice->eformat && substr($this->notice->eformat, 0, 3) != 'RSS') { $ret .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg["eformat_start"] . "</span></td><td>" . htmlentities($this->notice->eformat, ENT_QUOTES, $charset) . "</td></tr>"; } } } elseif ($this->notice->typdoc == 'g') { /* * Décision du CC */ //Champs personnalisés (en 4 parties) $perso_aff_1 = ""; $perso_aff_2 = ""; $perso_aff_3 = ""; $perso_aff_4 = ""; if (!$this->p_perso->no_special_fields) { // $this->memo_perso_ permet aux affichages personnalisés dans notice_affichage_ext de gagner du temps if (!$this->memo_perso_) { $this->memo_perso_ = $this->p_perso->show_fields($this->notice_id); } for ($i = 0; $i < count($this->memo_perso_["FIELDS"]); $i++) { $p = $this->memo_perso_["FIELDS"][$i]; if ($p["AFF"]) { if ($p['NAME'] == 'cp_referent') { $perso_aff_1 .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . strip_tags($p["TITRE"]) . "</span></td><td>" . $p["AFF"] . "</td></tr>"; } else { if ($p['NAME'] == 'cp_datedec') { $perso_aff_2 .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . strip_tags($p["TITRE"]) . "</span></td><td>" . $p["AFF"] . "</td></tr>"; } else { if ($p['NAME'] == 'cp_codedec') { $perso_aff_3 .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . strip_tags($p["TITRE"]) . "</span></td><td>" . $p["AFF"] . "</td></tr>"; } else { if ($p['NAME'] == 'cp_type_dec') { $perso_aff_4 .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . strip_tags($p["TITRE"]) . "</span></td><td>" . $p["AFF"] . "</td></tr>"; } } } } } } } //type de doc if ($tdoc->table[$this->notice->typdoc]) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['typdocdisplay_start'] . "</span></td><td>" . $tdoc->table[$this->notice->typdoc] . "</td></tr>"; } //Référent $this->notice_public .= $perso_aff_1; //Titre $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['title'] . " :</span></td>"; $this->notice_public .= "<td><span class='public_title'><b>" . $this->notice->tit1 . "</b>"; $this->notice_public .= "</span></td></tr>"; //Complément du titre if ($this->notice->tit4) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['240'] . " :</span></td>"; $this->notice_public .= "<td>" . $this->notice->tit4 . "</td></tr>"; } //Date de décision $this->notice_public .= $perso_aff_2; //Code décision $this->notice_public .= $perso_aff_3; //Type décision $this->notice_public .= $perso_aff_4; } elseif ($this->notice->typdoc == 'l') { /* * Ressource électronique */ //Champs personnalisés $perso_aff_1 = ""; if (!$this->p_perso->no_special_fields) { // $this->memo_perso_ permet aux affichages personnalisés dans notice_affichage_ext de gagner du temps if (!$this->memo_perso_) { $this->memo_perso_ = $this->p_perso->show_fields($this->notice_id); } for ($i = 0; $i < count($this->memo_perso_["FIELDS"]); $i++) { $p = $this->memo_perso_["FIELDS"][$i]; if ($p["AFF"]) { if ($p['NAME'] == 'cp_cpt_tit') { $perso_aff_1 .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . strip_tags($p["TITRE"]) . "</span></td><td>" . $p["AFF"] . "</td></tr>"; } } } } //Titre $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['title'] . " :</span></td>"; $this->notice_public .= "<td><span class='public_title'><b>" . $this->notice->tit1 . "</b>"; $this->notice_public .= "</span></td></tr>"; //Complément du titre if ($this->notice->tit4) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['240'] . " :</span></td>"; $this->notice_public .= "<td>" . $this->notice->tit4 . "</td></tr>"; } //Autres compléments de titre $this->notice_public .= $perso_aff_1; //Auteurs if ($this->auteurs_tous) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['auteur_start'] . "</span></td><td>" . $this->auteurs_tous . "</td></tr>"; } //Congrès if ($this->congres_tous) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['congres_aff_public_libelle'] . "</span></td><td>" . $this->congres_tous . "</td></tr>"; } // zone de l'éditeur if ($this->notice->ed1_id) { $editeur = new publisher($this->notice->ed1_id); $this->publishers[] = $editeur; $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['editeur_start'] . "</span></td><td>" . ($editeur->ville ? $editeur->ville . " : " : "") . inslink($editeur->name, str_replace("!!id!!", $this->notice->ed1_id, $this->lien_rech_editeur)) . "</td></tr>"; } //Année de publication if ($this->notice->year) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['year_start'] . "</span></td><td>" . $this->notice->year . "</td></tr>"; } //Pagination if ($this->notice->npages) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['npages_start'] . "</span></td><td>" . $this->notice->npages . "</td></tr>"; } //Indexation décimale if ($this->notice->indexint) { $indexint = new indexint($this->notice->indexint); $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['indexint_start'] . "</span></td><td>" . inslink($indexint->name . ($indexint->comment ? " - " . nl2br(htmlentities($indexint->comment, ENT_QUOTES, $charset)) : ""), str_replace("!!id!!", $this->notice->indexint, $this->lien_rech_indexint)) . "</td></tr>"; } //Catégories if ($this->categories_toutes) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['categories_start'] . "</span></td><td>" . $this->categories_toutes . "</td></tr>"; } } elseif ($this->notice->typdoc == '6') { /* * Bulletin */ //Titre du bulletin if ($this->parent_bulletin_title) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['title'] . " :</span></td><td><span class='public_title'><b>" . $this->parent_bulletin_title . "</b></span></td></tr>"; } //type de doc if ($tdoc->table[$this->notice->typdoc]) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['typdocdisplay_start'] . "</span></td><td>" . $tdoc->table[$this->notice->typdoc] . "</td></tr>"; } //Mention de date if ($this->parent_date) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['bull_mention_date'] . "</span></td><td>" . $this->parent_date . "</td></tr>"; } //Numéro du bulletin if ($this->parent_numero) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['bull_numero_start'] . "</span></td><td>" . $this->parent_numero . "</td></tr>"; } //Pagination if ($this->notice->npages) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['npages_start'] . "</span></td><td>" . $this->notice->npages . "</td></tr>"; } } else { /* * Default */ //Titre $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['title'] . " :</span></td>"; $this->notice_public .= "<td><span class='public_title'><b>" . $this->notice->tit1 . "</b>"; $this->notice_public .= "</span></td></tr>"; // constitution de la mention de titre if ($this->notice->serie_name) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['tparent_start'] . "</span></td><td>" . inslink($this->notice->serie_name, str_replace("!!id!!", $this->notice->tparent_id, $this->lien_rech_serie)); $this->notice_public .= "</td></tr>"; } //Partie if ($this->notice->tnvol) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['tnvol_start'] . "</span></td><td>" . $this->notice->tnvol; $this->notice_public .= "</td></tr>"; } //Complément du titre if ($this->notice->tit4) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['240'] . " :</span></td>"; $this->notice_public .= "<td>" . $this->notice->tit4 . "</td></tr>"; } //Titre parallèle if ($this->notice->tit3) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['other_title_t3'] . " :</span></td><td>" . $this->notice->tit2 . "</td></tr>"; } //type de doc if ($tdoc->table[$this->notice->typdoc]) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['typdocdisplay_start'] . "</span></td><td>" . $tdoc->table[$this->notice->typdoc] . "</td></tr>"; } //Auteurs if ($this->auteurs_tous) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['auteur_start'] . "</span></td><td>" . $this->auteurs_tous . "</td></tr>"; } //Congrès if ($this->congres_tous) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['congres_aff_public_libelle'] . "</span></td><td>" . $this->congres_tous . "</td></tr>"; } // mention d'édition if ($this->notice->mention_edition) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['mention_edition_start'] . "</span></td><td>" . $this->notice->mention_edition . "</td></tr>"; } // zone de l'éditeur if ($this->notice->ed1_id) { $editeur = new publisher($this->notice->ed1_id); $this->publishers[] = $editeur; $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['editeur_start'] . "</span></td><td>" . ($editeur->ville ? $editeur->ville . " : " : "") . inslink($editeur->name, str_replace("!!id!!", $this->notice->ed1_id, $this->lien_rech_editeur)) . "</td></tr>"; } //Année de publication if ($this->notice->year) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['year_start'] . "</span></td><td>" . $this->notice->year . "</td></tr>"; } //Pagination if ($this->notice->npages) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['npages_start'] . "</span></td><td>" . $this->notice->npages . "</td></tr>"; } //Matériel d'accompagnement if ($this->notice->accomp) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['accomp_start'] . "</span></td><td>" . $this->notice->accomp . "</td></tr>"; } //Collection et Sous-collection if ($this->notice->subcoll_id) { $subcollection = new subcollection($this->notice->subcoll_id); $collection = new collection($this->notice->coll_id); $this->collections[] = $collection; $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['coll_start'] . "</span></td><td>" . inslink($collection->name, str_replace("!!id!!", $this->notice->coll_id, $this->lien_rech_collection)) . "</td></tr>"; $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['subcoll_start'] . "</span></td><td>" . inslink($subcollection->name, str_replace("!!id!!", $this->notice->subcoll_id, $this->lien_rech_subcollection)); if ($this->notice->nocoll) { $this->notice_public .= ", " . $this->notice->nocoll . "</td></tr>"; } } elseif ($this->notice->coll_id) { $collection = new collection($this->notice->coll_id); $this->collections[] = $collection; $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['coll_start'] . "</span></td><td>" . inslink($collection->name, str_replace("!!id!!", $this->notice->coll_id, $this->lien_rech_collection)); if ($this->notice->nocoll) { $this->notice_public .= ", " . $this->notice->nocoll . "</td></tr>"; } } //ISBN ou NO. commercial if ($this->notice->code) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['code_start'] . "</span></td><td>" . $this->notice->code . "</td></tr>"; } //Note générale if ($this->notice->n_gen) { $zoneNote = nl2br(htmlentities($this->notice->n_gen, ENT_QUOTES, $charset)); } if ($zoneNote) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['n_gen_start'] . "</span></td><td>" . $zoneNote . "</td></tr>"; } //Langues if (count($this->langues)) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['537'] . " :</span></td><td>" . $this->construit_liste_langues($this->langues); if (count($this->languesorg)) { $this->notice_public .= " <span class='etiq_champ'>" . $msg['711'] . " :</span> " . $this->construit_liste_langues($this->languesorg); } $this->notice_public .= "</td></tr>"; } elseif (count($this->languesorg)) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['711'] . " :</span></td><td>" . $this->construit_liste_langues($this->languesorg) . "</td></tr>"; } //Catégories if ($this->categories_toutes) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['categories_start'] . "</span></td><td>" . $this->categories_toutes . "</td></tr>"; } //Indexation décimale if ($this->notice->indexint) { $indexint = new indexint($this->notice->indexint); $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['indexint_start'] . "</span></td><td>" . inslink($indexint->name . ($indexint->comment ? " - " . nl2br(htmlentities($indexint->comment, ENT_QUOTES, $charset)) : ""), str_replace("!!id!!", $this->notice->indexint, $this->lien_rech_indexint)) . "</td></tr>"; } //URL associée if ($this->notice->lien) { $ret .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg["lien_start"] . "</span></td><td>"; if (substr($this->notice->eformat, 0, 3) == 'RSS') { $ret .= affiche_rss($this->notice->notice_id); } else { if (strlen($this->notice->lien) > 80) { $ret .= "<a href=\"" . $this->notice->lien . "\" target=\"top\" class='lien856'>" . htmlentities(substr($this->notice->lien, 0, 80), ENT_QUOTES, $charset) . "</a> [...]"; } else { $ret .= "<a href=\"" . $this->notice->lien . "\" target=\"top\" class='lien856'>" . htmlentities($this->notice->lien, ENT_QUOTES, $charset) . "</a>"; } } $ret .= "</td></tr>"; if ($this->notice->eformat && substr($this->notice->eformat, 0, 3) != 'RSS') { $ret .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg["eformat_start"] . "</span></td><td>" . htmlentities($this->notice->eformat, ENT_QUOTES, $charset) . "</td></tr>"; } } if ($this->notice->typdoc == 'j') { //Champs perso - Lieu de la soutenance $perso_aff_1 = ""; if (!$this->p_perso->no_special_fields) { // $this->memo_perso_ permet aux affichages personnalisés dans notice_affichage_ext de gagner du temps if (!$this->memo_perso_) { $this->memo_perso_ = $this->p_perso->show_fields($this->notice_id); } for ($i = 0; $i < count($this->memo_perso_["FIELDS"]); $i++) { $p = $this->memo_perso_["FIELDS"][$i]; if ($p["AFF"]) { if ($p['NAME'] == 'cp_lieusout') { $perso_aff_1 .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . strip_tags($p["TITRE"]) . "</span></td><td>" . $p["AFF"] . "</td></tr>"; } } } } $this->notice_public .= $perso_aff_1; } } //statut de notice en commande if ($this->notice->statut == 3) { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['statut_start'] . "</span></td>\r\n\t\t\t\t<td><font color='red'>" . $this->statut_notice . "</font></td></tr>"; } // Permalink avec Id if ($opac_permalink) { if ($this->notice->niveau_biblio != "b") { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg["notice_permalink"] . "</span></td><td><a href='" . $opac_url_base . "index.php?lvl=notice_display&id=" . $this->notice_id . "'>" . substr($opac_url_base . "index.php?lvl=notice_display&id=" . $this->notice_id, 0, 80) . "</a></td></tr>"; } else { $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg["notice_permalink"] . "</span></td><td><a href='" . $opac_url_base . "index.php?lvl=bulletin_display&id=" . $this->bulletin_id . "'>" . substr($opac_url_base . "index.php?lvl=bulletin_display&id=" . $this->bulletin_id, 0, 80) . "</a></td></tr>"; } } //Identifiant de la notice $this->notice_public .= "<tr><td align='right' class='bg-grey'><span class='etiq_champ'>" . $msg['notice_id_start'] . "</span></td><td>" . $this->notice_id . "</td></tr>"; // if (!$short) $this->notice_public .= $this->aff_suite() ; // else $this->notice_public.=$this->genere_in_perio(); $this->notice_public .= "</table>\n"; //notice mère $this->notice_public .= $this->parents; //etat des collections if ($this->notice->niveau_biblio == 's' && $this->notice->niveau_hierar == 1) { $this->notice_public .= $this->affichage_etat_collections(); } // exemplaires, résas et compagnie if ($ex) { $this->affichage_resa_expl = $this->aff_resa_expl(); } return; }
<?php // +-------------------------------------------------+ // © 2002-2004 PMB Services / www.sigb.net pmb@sigb.net et contributeurs (voir www.sigb.net) // +-------------------------------------------------+ // $Id: rss.inc.php,v 1.7 2015-04-03 11:16:16 jpermanne Exp $ if (stristr($_SERVER['REQUEST_URI'], ".inc.php")) { die("no access"); } require_once $include_path . "/rss_func.inc.php"; $req_rss = "select notice_id, eformat from notices where eformat like 'RSS%' order by tit1 "; $res_rss = pmb_mysql_query($req_rss); while ($rss = pmb_mysql_fetch_object($res_rss)) { $rss_lu = explode(' ', $rss->eformat); if ($rss_lu[2]) { $sites[] = $rss->notice_id; } } // $sites=array("http://www.lemonde.fr/rss/sequence/0,2-3208,1-0,0.xml","http://www.liberation.fr/rss.php","http://www.lefigaro.fr/rss/figaro_une.xml","http://www.aful.org/nouvelles/rss","http://rss.zdnet.fr/feeds/rss/actualites/","http://rss.zdnet.fr/feeds/rss/actualites/informatique/"); if (count($sites) > 0) { print pmb_bidi("<div id='rss'><h3><span id='titre_rss'>" . htmlentities($msg[rss_titre], ENT_QUOTES, $charset) . "</span></h3><span>"); $red = false; $articles = ""; for ($i = 0; $i < count($sites); $i++) { $articles .= affiche_rss($sites[$i]); } print pmb_bidi($articles); print "</span></div>"; }