예제 #1
0
 /**
  * Met à jour les objets liés à la vedette
  * 
  * @param vedette_composee $vedette Vedette liée
  */
 public static function update_objects_linked_with_vedette(vedette_composee $vedette)
 {
     global $dbh, $class_path;
     $query = "select num_object, type_object from vedette_link where num_vedette = " . $vedette->get_id();
     $result = pmb_mysql_query($query, $dbh);
     if ($result && pmb_mysql_num_rows($result)) {
         while ($object = pmb_mysql_fetch_object($result)) {
             // On appelle les fonctions de mise à jour des différents objets
             switch ($object->type_object) {
                 case TYPE_CONCEPT_PREFLABEL:
                     require_once $class_path . "/concept.class.php";
                     $concept = new concept($object->num_object);
                     $concept->update_display_label($vedette->get_label());
                     break;
             }
         }
     }
 }
예제 #2
0
 function getdata()
 {
     global $dbh, $msg;
     global $aut_table_name_list;
     global $pmb_opac_url;
     $this->aut_table_name = $aut_table_name_list[$this->aut_table];
     $this->aut_list = array();
     $rqt = "select * from aut_link where (aut_link_from='" . $this->aut_table . "'\tand aut_link_from_num='" . $this->id . "' )\n\t\tor ( aut_link_to='" . $this->aut_table . "' and aut_link_to_num='" . $this->id . "' and aut_link_reciproc=1 )\n\t\torder by aut_link_type ";
     $aut_res = pmb_mysql_query($rqt, $dbh);
     $i = 0;
     while ($row = pmb_mysql_fetch_object($aut_res)) {
         $i++;
         $this->aut_list[$i]["to"] = $row->aut_link_to;
         $this->aut_list[$i]["to_num"] = $row->aut_link_to_num;
         $this->aut_list[$i]["type"] = $row->aut_link_type;
         $this->aut_list[$i]["reciproc"] = $row->aut_link_reciproc;
         $this->aut_list[$i]["comment"] = $row->aut_link_comment;
         if ($this->aut_table == $row->aut_link_to and $this->id == $row->aut_link_to_num) {
             $this->aut_list[$i]["flag_reciproc"] = 1;
             $this->aut_list[$i]["to"] = $row->aut_link_from;
             $this->aut_list[$i]["to_num"] = $row->aut_link_from_num;
         } else {
             $this->aut_list[$i]["flag_reciproc"] = 0;
         }
         switch ($this->aut_list[$i]["to"]) {
             case AUT_TABLE_AUTHORS:
                 $auteur = new auteur($this->aut_list[$i]["to_num"]);
                 $this->aut_list[$i]["isbd_entry"] = $auteur->isbd_entry;
                 $this->aut_list[$i]["libelle"] = "[" . $msg[133] . "] " . $auteur->isbd_entry;
                 break;
             case AUT_TABLE_CATEG:
                 $categ = new category($this->aut_list[$i]["to_num"]);
                 $this->aut_list[$i]["isbd_entry"] = $categ->libelle;
                 $this->aut_list[$i]["libelle"] = "[" . $msg[134] . "] " . $categ->libelle;
                 break;
             case AUT_TABLE_PUBLISHERS:
                 $ed = new editeur($this->aut_list[$i]["to_num"]);
                 $this->aut_list[$i]["isbd_entry"] = $ed->isbd_entry;
                 $this->aut_list[$i]["libelle"] = "[" . $msg[135] . "] " . $ed->isbd_entry;
                 break;
             case AUT_TABLE_COLLECTIONS:
                 $subcollection = new collection($this->aut_list[$i]["to_num"]);
                 $this->aut_list[$i]["isbd_entry"] = $subcollection->isbd_entry;
                 $this->aut_list[$i]["libelle"] = "[" . $msg[136] . "] " . $subcollection->isbd_entry;
                 break;
             case AUT_TABLE_SUB_COLLECTIONS:
                 $collection = new subcollection($this->aut_list[$i]["to_num"]);
                 $this->aut_list[$i]["isbd_entry"] = $collection->isbd_entry;
                 $this->aut_list[$i]["libelle"] = "[" . $msg[137] . "] " . $collection->isbd_entry;
                 break;
             case AUT_TABLE_SERIES:
                 $serie = new serie($this->aut_list[$i]["to_num"]);
                 $this->aut_list[$i]["isbd_entry"] = $serie->name;
                 $this->aut_list[$i]["libelle"] = "[" . $msg[333] . "] " . $serie->name;
                 break;
             case AUT_TABLE_TITRES_UNIFORMES:
                 $tu = new titre_uniforme($this->aut_list[$i]["to_num"]);
                 $this->aut_list[$i]["isbd_entry"] = $tu->name;
                 $this->aut_list[$i]["libelle"] = "[" . $msg["aut_menu_titre_uniforme"] . "] " . $tu->name;
                 break;
             case AUT_TABLE_INDEXINT:
                 $indexint = new indexint($this->aut_list[$i]["to_num"]);
                 $this->aut_list[$i]["isbd_entry"] = $indexint->display;
                 $this->aut_list[$i]["libelle"] = "[" . $msg["indexint_menu"] . "] " . $indexint->display;
                 break;
             case AUT_TABLE_CONCEPT:
                 $concept = new concept($this->aut_list[$i]["to_num"]);
                 $this->aut_list[$i]["isbd_entry"] = $concept->get_display_label();
                 $this->aut_list[$i]["libelle"] = "[" . $msg["concept_menu"] . "] " . $concept->get_display_label();
                 break;
             default:
                 if ($this->aut_list[$i]["to"] > 1000) {
                     // authperso
                     $authperso = new authperso($this->aut_list[$i]["to"] - 1000);
                     $isbd = $authperso->get_isbd($this->aut_list[$i]["to_num"]);
                     $this->aut_list[$i]["isbd_entry"] = $isbd;
                     $this->aut_list[$i]["libelle"] = "[" . $authperso->info['name'] . "] " . $isbd;
                     $this->aut_list[$i]["url_to_gestion"] = "./autorites.php?categ=authperso&sub=authperso_form&id_authperso=&id=" . $this->aut_list[$i]["to_num"];
                     $this->aut_list[$i]["url_to_opac"] = $pmb_opac_url . "index.php?lvl=authperso_see&id=" . $this->aut_list[$i]["to_num"];
                 }
                 break;
         }
         if ($this->aut_list[$i]["flag_reciproc"]) {
             $type_relation = new marc_select("relationtype_autup", "f_aut_link_type{$i}", $this->aut_list[$i]["type"]);
         } else {
             $type_relation = new marc_select("relationtype_aut", "f_aut_link_type{$i}", $this->aut_list[$i]["type"]);
         }
         $this->aut_list[$i]["relation_libelle"] = $type_relation->libelle;
     }
 }
예제 #3
0
 /**
  * Renvoie l'affichage html de la liste hierarchisée
  * 
  * @param onto_common_controler $controler
  * @param onto_param $params
  */
 public static function get_list($controler, $params)
 {
     global $msg, $charset, $base_path, $ontology_tpl, $lang;
     $elements = $controler->get_list_elements($params);
     $list = "<h3>" . $elements['nb_total_elements'] . " " . $msg['onto_skos_concept_nb_results'] . "</h3>" . $ontology_tpl['skos_concept_list'];
     $list = str_replace("!!list_header!!", htmlentities($msg['103'], ENT_QUOTES, $charset), $list);
     $list = str_replace("!!list_header_utilisation!!", htmlentities($msg['voir_notices_assoc'], ENT_QUOTES, $charset), $list);
     $list_content = '';
     foreach ($elements['elements'] as $uri => $item) {
         $id = onto_common_uri::get_id($uri);
         if ($controler->has_narrower($uri, $params)) {
             $line = $ontology_tpl['skos_concept_list_line_folder'];
             $line = str_replace("!!list_line_folder_href!!", $base_path . "/autorites.php?categ=" . $params->categ . "&sub=" . $params->sub . "&action=list&parent_id=" . $id . "&concept_scheme=" . $params->concept_scheme, $line);
         } else {
             $line = $ontology_tpl['skos_concept_list_line_doc'];
         }
         $line = str_replace("!!list_line_href!!", $base_path . "/autorites.php?categ=" . $params->categ . "&sub=" . $params->sub . "&action=edit&id=" . $id . "&parent_id=" . $params->parent_id . "&concept_scheme=" . $params->concept_scheme, $line);
         $line = str_replace("!!list_line_libelle!!", htmlentities(isset($item[substr($lang, 0, 2)]) ? $item[substr($lang, 0, 2)] : $item['default'], ENT_QUOTES, $charset), $line);
         $concept = new concept($id);
         $line = str_replace("!!list_line_nb_utilisations!!", count($concept->get_indexed_notices()), $line);
         $line = str_replace("!!list_line_nb_utilisations_href!!", $base_path . "/catalog.php?categ=search&mode=0&etat=aut_search&aut_type=concept&aut_id=" . $id, $line);
         $list_content .= $line;
     }
     $list = str_replace("!!list_content!!", $list_content, $list);
     $list = str_replace("!!list_pagination!!", aff_pagination("./autorites.php?categ=" . $params->categ . "&sub=" . $params->sub . "&action=" . $params->action . "&concept_scheme=" . $params->concept_scheme . "&parent_id=" . $params->parent_id . "&user_input=" . $params->user_input, $elements['nb_total_elements'], $elements['nb_onto_element_per_page'], $params->page, 10, true, true), $list);
     return $list;
 }
예제 #4
0
 function aut_notice_list()
 {
     global $msg;
     global $charset;
     global $aut_type;
     switch ($aut_type) {
         case 'concept':
             $concept = new concept($this->id);
             $research .= "<b>{$msg['search_concept_title']}</b>&nbsp;" . $concept->get_display_label();
             break;
         default:
             $auteur = new auteur($this->id);
             $research .= "<b>{$msg[234]}</b>&nbsp;" . $auteur->display;
             break;
     }
     $this->human_notice_query = $research;
     $this->notice_list_common($research);
 }
예제 #5
0
 public function set_vedette_element_from_database()
 {
     $concept = new concept($this->get_db_id());
     $this->isbd = $concept->get_display_label();
 }