id_bannette = $id+0;
$this->getData();
}
// ---------------------------------------------------------------
// getData() : récupération infos
// ---------------------------------------------------------------
public function getData() {
global $msg;
global $opac_bannette_priv_periodicite;
$this->periodicite = $opac_bannette_priv_periodicite;
$this->p_perso=new parametres_perso("notices");
if (!$this->id_bannette) {
// pas d'identifiant. on retourne un tableau vide
$this->date_last_envoi=today();
$this->aff_date_last_envoi=formatdate($this->date_last_envoi);
$this->date_last_envoi_sql=today();
} else {
$requete = "SELECT id_bannette, num_classement, nom_bannette,comment_gestion,comment_public,statut_not_account, associated_campaign, bannette_num_sender, ";
$requete .= "date_last_remplissage, date_format(date_last_remplissage, '".$msg["format_date_heure"]."') as aff_date_last_remplissage, ";
$requete .= "date_last_envoi,date_last_envoi as date_last_envoi_sql, date_format(date_last_envoi, '".$msg["format_date_heure"]."') as aff_date_last_envoi, ";
$requete .= "proprio_bannette,bannette_auto,periodicite,diffusion_email, nb_notices_diff, update_type, entete_mail, bannette_tpl_num, piedpage_mail, notice_display_type, notice_tpl, django_directory, num_panier, ";
$requete .= "limite_type, limite_nombre, typeexport, prefixe_fichier, param_export, group_type, group_pperso, display_notice_in_every_group, archive_number, ";
$requete .= "document_generate, document_notice_display_type, document_notice_tpl, document_django_directory, document_insert_docnum, document_group, document_add_summary, bannette_opac_accueil, bannette_aff_notice_number ";
$requete .= "FROM bannettes WHERE id_bannette='".$this->id_bannette."' " ;
$result = pmb_mysql_query($requete) or die ($requete." in bannette.class.php : ".pmb_mysql_error());
if(pmb_mysql_num_rows($result)) {
$temp = pmb_mysql_fetch_object($result);
$this->id_bannette = $temp->id_bannette ;
$this->num_classement = $temp->num_classement ;
$this->nom_bannette = $temp->nom_bannette ;
$this->comment_gestion = $temp->comment_gestion ;
$this->comment_public = $temp->comment_public ;
$this->bannette_tpl_num = $temp->bannette_tpl_num ;
$this->entete_mail = $temp->entete_mail ;
$this->piedpage_mail = $temp->piedpage_mail ;
$this->notice_display_type = $temp->notice_display_type ;
$this->notice_tpl = $temp->notice_tpl ;
$this->django_directory = $temp->django_directory;
$this->date_last_remplissage= $temp->date_last_remplissage ;
$this->date_last_envoi = $temp->date_last_envoi ;
$this->aff_date_last_remplissage = $temp->aff_date_last_remplissage ;
$this->aff_date_last_envoi = $temp->aff_date_last_envoi ;
$this->date_last_envoi_sql = $temp->date_last_envoi_sql;
$this->proprio_bannette = $temp->proprio_bannette ;
$this->bannette_auto = $temp->bannette_auto ;
$this->periodicite = $temp->periodicite ;
$this->diffusion_email = $temp->diffusion_email ;
$this->nb_notices_diff = $temp->nb_notices_diff;
$this->update_type = $temp->update_type ;
$this->num_panier = $temp->num_panier ;
$this->limite_type = $temp->limite_type ;
$this->limite_nombre = $temp->limite_nombre ;
$this->typeexport = $temp->typeexport ;
$this->prefixe_fichier = $temp->prefixe_fichier ;
$this->group_pperso = $temp->group_pperso ;
$this->group_type = $temp->group_type;
$this->display_notice_in_every_group=$temp->display_notice_in_every_group;
$this->statut_not_account = $temp->statut_not_account ;
$this->associated_campaign = $temp->associated_campaign ;
$this->num_sender = $temp->bannette_num_sender ;
$this->archive_number = $temp->archive_number ;
$this->document_generate = $temp->document_generate ;
$this->document_notice_display_type = $temp->document_notice_display_type;
$this->document_notice_tpl = $temp->document_notice_tpl;
$this->document_django_directory = $temp->document_django_directory;
$this->document_insert_docnum= $temp->document_insert_docnum ;
$this->document_group = $temp->document_group ;
$this->document_add_summary = $temp->document_add_summary ;
$this->bannette_opac_accueil= $temp->bannette_opac_accueil ;
$this->bannette_aff_notice_number= $temp->bannette_aff_notice_number;
$this->param_export = unserialize($temp->param_export) ;
$this->compte_elements();
$requete = "SELECt nom_classement FROM classements WHERE id_classement='".$this->num_classement."'" ;
$resultclass = pmb_mysql_query($requete) or die ($requete." in bannette.class.php : ".pmb_mysql_error());
if ($temp = pmb_mysql_fetch_object($resultclass)) $this->nom_classement = $temp->nom_classement ;
else $this->nom_classement = "" ;
$rqt = "select * from bannette_empr_groupes where empr_groupe_num_bannette = '".$this->id_bannette."'";
$res = pmb_mysql_query($rqt);
if(pmb_mysql_num_rows($res)){
while($row = pmb_mysql_fetch_object($res)){
$this->groupe_lecteurs[] = $row->empr_groupe_num_groupe;
}
}
$rqt = "select * from bannette_empr_categs where empr_categ_num_bannette = '".$this->id_bannette."'";
$res = pmb_mysql_query($rqt);
if(pmb_mysql_num_rows($res)){
while($row = pmb_mysql_fetch_object($res)){
$this->categorie_lecteurs[] = $row->empr_categ_num_categ;
}
}
}
}
$this->bannette_descriptors = new bannette_descriptors($this->id_bannette);
$this->bannette_equations = new bannette_equations($this->id_bannette);
}
public function gen_facette_selection(){
$facette = new bannette_facettes($this->id_bannette);
return $facette->gen_facette_selection();
}
protected function get_senders_selector() {
global $msg, $charset;
$selector = "";
return $selector;
}
// ---------------------------------------------------------------
// show_form : affichage du formulaire de saisie
// ---------------------------------------------------------------
public function show_form($type="pro") {
global $msg, $charset;
global $dsi_bannette_form;
global $dsi_bannette_form_abo, $dsi_bannette_form_selvars;
global $nom_prenom_abo;
global $dsi_bannette_notices_template, $PMBuserid;
global $form_cb, $id_classement;
global $page, $nbr_lignes, $nb_per_page;
if ($type=="abo") $dsi_bannette_form = $dsi_bannette_form_abo ;
if($this->id_bannette) {
$link_pagination = "";
if($page > 1) {
$link_pagination .= "&page=".$page."&nbr_lignes=".$nbr_lignes."&nb_per_page=".$nb_per_page;
}
$action = "./dsi.php?categ=bannettes&sub=$type&id_bannette=$this->id_bannette&suite=update&id_classement=$id_classement&form_cb=$form_cb$link_pagination";
$link_duplicate = "";
$link_annul = "";
$button_delete = "";
$libelle = $msg['dsi_ban_form_modif'];
} else {
$action = "./dsi.php?categ=bannettes&sub=$type&id_bannette=0&suite=update";
$link_duplicate = "";
$link_annul = "";
$libelle = $msg['dsi_ban_form_creat'];
$button_delete ="";
if ($this->id_bannette_origine) { //On vient d'une duplication
$origine_bannette = new bannette($this->id_bannette_origine) ;
$this->notice_tpl=$origine_bannette->notice_tpl;
} else {
$this->notice_tpl=$dsi_bannette_notices_template;
}
}
$bannette_tpl_list=bannette_tpl::gen_tpl_select("bannette_tpl_num",$this->bannette_tpl_num);
$dsi_bannette_form = str_replace('!!libelle!!', $libelle, $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!type!!', $type, $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!id_bannette!!', $this->id_bannette, $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!action!!', $action, $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!link_duplicate!!', $link_duplicate, $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!link_annul!!', $link_annul, $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!nom_bannette!!', htmlentities($this->nom_bannette,ENT_QUOTES, $charset), $dsi_bannette_form);
if ($type=="pro") $dsi_bannette_form = str_replace('!!num_classement!!', show_classement_utilise ('BAN', $this->num_classement, 0), $dsi_bannette_form);
else $dsi_bannette_form = str_replace('!!num_classement!!', "", $dsi_bannette_form);
global $id_empr ;
$dsi_bannette_form = str_replace('!!id_empr!!', $id_empr, $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!comment_gestion!!', htmlentities($this->comment_gestion,ENT_QUOTES, $charset), $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!comment_public!!', htmlentities($this->comment_public,ENT_QUOTES, $charset), $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!bannette_tpl_list!!', $bannette_tpl_list, $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!entete_mail!!', htmlentities($this->entete_mail,ENT_QUOTES, $charset), $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!piedpage_mail!!', htmlentities($this->piedpage_mail,ENT_QUOTES, $charset), $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!date_last_remplissage!!', htmlentities($this->aff_date_last_remplissage,ENT_QUOTES, $charset), $dsi_bannette_form);
$date_clic = "onClick=\"openPopUp('./select.php?what=calendrier&caller=saisie_bannette&date_caller=".substr(preg_replace('/-/', '', $this->date_last_envoi),0,8)."¶m1=form_date_last_envoi¶m2=form_aff_date_last_envoi&auto_submit=NO&date_anterieure=YES', 'calendar')\" ";
$date_last_envoi = "
date_last_envoi)))."' />
";
$dsi_bannette_form = str_replace('!!date_last_envoi!!', $date_last_envoi, $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!archive_number!!', $this->archive_number, $dsi_bannette_form);
if ($type=="pro") $dsi_bannette_form = str_replace('!!proprio_bannette!!', htmlentities($msg['dsi_ban_no_proprio'],ENT_QUOTES, $charset), $dsi_bannette_form);
else $dsi_bannette_form = str_replace('!!proprio_bannette!!', htmlentities($nom_prenom_abo,ENT_QUOTES, $charset), $dsi_bannette_form);
if ($this->bannette_auto) $dsi_bannette_form = str_replace('!!bannette_auto!!', "checked", $dsi_bannette_form);
else $dsi_bannette_form = str_replace('!!bannette_auto!!', "", $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!periodicite!!', htmlentities($this->periodicite,ENT_QUOTES, $charset), $dsi_bannette_form);
if ($this->diffusion_email) $dsi_bannette_form = str_replace('!!diffusion_email!!', "checked='checked'", $dsi_bannette_form);
else $dsi_bannette_form = str_replace('!!diffusion_email!!', "", $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!nb_notices_diff!!', htmlentities($this->nb_notices_diff,ENT_QUOTES, $charset), $dsi_bannette_form);
// $dsi_bannette_form = str_replace('!!notice_display_type_0!!', (!$this->notice_display_type ? "checked='checked'" : ""), $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!notice_tpl!!', notice_tpl_gen::gen_tpl_select("notice_tpl",$this->notice_tpl), $dsi_bannette_form);
// $dsi_bannette_form = str_replace('!!notice_display_type_1!!', ($this->notice_display_type ? "checked='checked'" : ""), $dsi_bannette_form);
// $dsi_bannette_form = str_replace('!!django_directory!!', record_display::get_directories_options($this->django_directory), $dsi_bannette_form);
if ($this->statut_not_account) $dsi_bannette_form = str_replace('!!statut_not_account!!', "checked", $dsi_bannette_form);
else $dsi_bannette_form = str_replace('!!statut_not_account!!', "", $dsi_bannette_form);
if ($this->associated_campaign) $dsi_bannette_form = str_replace('!!associated_campaign!!', "checked", $dsi_bannette_form);
else $dsi_bannette_form = str_replace('!!associated_campaign!!', "", $dsi_bannette_form);
// choix de l'expéditeur
$dsi_bannette_form = str_replace('!!senders!!', $this->get_senders_selector(), $dsi_bannette_form);
// group_type, group_pperso, group_facettes
if($this->group_type){
$dsi_bannette_form = str_replace('!!checked_group_facette!!', " checked='checked' ", $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!checked_group_pperso!!', "", $dsi_bannette_form);
}else{
$dsi_bannette_form = str_replace('!!checked_group_facette!!', "", $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!checked_group_pperso!!', " checked='checked' ", $dsi_bannette_form);
}
$dsi_bannette_form = str_replace('!!bannette_aff_notice_number!!', ($this->bannette_aff_notice_number ? " checked='checked' " : ""), $dsi_bannette_form);
$liste_p_perso = $this->p_perso->gen_liste_field("group_pperso",$this->group_pperso,$msg["dsi_ban_form_regroupe_pperso_no"]);
$dsi_bannette_form = str_replace('!!pperso_group!!', $liste_p_perso, $dsi_bannette_form);
if ($this->id_bannette_origine) { //On vient d'une duplication
$origine_bannette = new bannette($this->id_bannette_origine) ;
$dsi_bannette_form = str_replace('!!facette_group!!', $origine_bannette->gen_facette_selection(), $dsi_bannette_form);
} else {
$dsi_bannette_form = str_replace('!!facette_group!!', $this->gen_facette_selection(), $dsi_bannette_form);
}
$dsi_bannette_form = str_replace("!!display_notice_in_every_group!!", ($this->display_notice_in_every_group ? "checked='checked'" : ""), $dsi_bannette_form);
if ($type=="pro") {
$requete = 'SELECT id_categ_empr, libelle, IF(empr_categ_num_categ IS NULL, 0,1) as inscription FROM empr_categ
left join bannette_empr_categs on (id_categ_empr=empr_categ_num_categ and empr_categ_num_bannette=' . $this->id_bannette . ' )
ORDER BY libelle';
$categ_lect_aff = gen_liste_multiple ($requete, "id_categ_empr", "libelle", "inscription", "categorie_lecteurs[]", '', 1, 0, $msg['dsi_ban_aucune_categ'], -1,$msg['dsi_all_empr_categ'], 5) ;
$dsi_bannette_form = str_replace('!!categorie_lecteurs!!', $categ_lect_aff, $dsi_bannette_form);
$requete = 'SELECT id_groupe, libelle_groupe, IF(empr_groupe_num_groupe IS NULL, 0,1) as inscription FROM groupe
left join bannette_empr_groupes on (id_groupe=empr_groupe_num_groupe and empr_groupe_num_bannette=' . $this->id_bannette . ' )
ORDER BY libelle_groupe';
$groupe_lect_aff = gen_liste_multiple ($requete, "id_groupe", "libelle_groupe", "inscription", "groupe_lecteurs[]", '', 1, 0, $msg['empr_form_aucungroupe'], 0,'', 5) ;
$dsi_bannette_form = str_replace('!!groupe_lecteurs!!', $groupe_lect_aff, $dsi_bannette_form);
} else {
$dsi_bannette_form = str_replace('!!categorie_lecteurs!!', "", $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!groupe_lecteurs!!', "", $dsi_bannette_form);
}
$dsi_bannette_form = str_replace('!!desc_fields!!', $this->bannette_descriptors->get_form(), $dsi_bannette_form);
$requete = "SELECT idcaddie, name FROM caddie where type='NOTI' ";
if ($PMBuserid!=1) $requete.=" and (autorisations='$PMBuserid' or autorisations like '$PMBuserid %' or autorisations like '% $PMBuserid %' or autorisations like '% $PMBuserid') ";
$requete.=" ORDER BY name ";
$panier_bann_aff = gen_liste ($requete, "idcaddie", "name", "num_panier", "", $this->num_panier, 0, $msg['dsi_panier_aucun'], 0,$msg['dsi_panier_aucun'], 0) ;
$dsi_bannette_form = str_replace('!!num_panier!!', $panier_bann_aff, $dsi_bannette_form);
$limite_type = "";
$dsi_bannette_form = str_replace('!!limite_type!!', $limite_type, $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!limite_nombre!!', $this->limite_nombre, $dsi_bannette_form);
// update_type: se baser sur la date de création ou la date de mise à jour des notices ?
$update_type = "";
$dsi_bannette_form = str_replace('!!update_type!!', $update_type, $dsi_bannette_form);
$exp = start_export::get_exports();
$liste_exports = "" ;
$dsi_bannette_form = str_replace('!!typeexport!!', $liste_exports, $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!prefixe_fichier!!', $this->prefixe_fichier, $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!bannette_opac_accueil_check!!', ($this->bannette_opac_accueil ? "checked='checked'" : ""), $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!document_generate!!', ($this->document_generate ? "checked='checked'" : ""), $dsi_bannette_form);
// $dsi_bannette_form = str_replace('!!document_notice_display_type_0!!', (!$this->document_notice_display_type ? "checked='checked'" : ""), $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!document_notice_tpl!!', notice_tpl_gen::gen_tpl_select("document_notice_tpl",$this->document_notice_tpl), $dsi_bannette_form);
// $dsi_bannette_form = str_replace('!!document_notice_display_type_1!!', ($this->document_notice_display_type ? "checked='checked'" : ""), $dsi_bannette_form);
// $dsi_bannette_form = str_replace('!!document_django_directory!!', record_display::get_directories_options($this->document_django_directory), $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!document_insert_docnum!!', ($this->document_insert_docnum ? "checked='checked'" : ""), $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!document_group!!', ($this->document_group ? "checked='checked'" : ""), $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!document_add_summary!!', ($this->document_add_summary ? "checked='checked'" : ""), $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!delete!!', $button_delete, $dsi_bannette_form);
// afin de revenir où on était : $form_cb, le critère de recherche
$dsi_bannette_form = str_replace('!!form_cb!!', $form_cb, $dsi_bannette_form);
if($this->param_export) {
$param=new export_param(EXP_DSI_CONTEXT, $this->param_export);
} else {
$param=new export_param(EXP_DEFAULT_GESTION);
}
$dsi_bannette_form = str_replace('!!display_liste_param!!', (!$this->typeexport ? 'display:none' : ''), $dsi_bannette_form);
$dsi_bannette_form = str_replace('!!form_param!!', $param->check_default_param(), $dsi_bannette_form);
//ajout champs emprunteur
$comment_public_info_empr = str_replace('!!selector_name!!', 'comment_public_selvars_id', $dsi_bannette_form_selvars);
$comment_public_info_empr = str_replace('!!dest_dom_node!!', 'comment_public', $comment_public_info_empr);
$dsi_bannette_form = str_replace('!!comment_public_info_empr!!', $comment_public_info_empr, $dsi_bannette_form);
$info_empr = str_replace('!!selector_name!!', 'selvars_id', $dsi_bannette_form_selvars);
$info_empr = str_replace('!!dest_dom_node!!', 'entete_mail', $info_empr);
$dsi_bannette_form = str_replace('!!info_empr!!', $info_empr, $dsi_bannette_form);
print $dsi_bannette_form;
}
public function set_properties_from_form() {
global $num_classement, $nom_bannette, $comment_gestion, $comment_public;
global $entete_mail, $piedpage_mail, $notice_display_type, $notice_tpl, $django_directory;
global $id_empr;
global $bannette_auto, $periodicite, $diffusion_email, $statut_not_account, $associated_campaign, $num_sender, $dsi_private_bannette_nb_notices;
global $categorie_lecteurs, $groupe_lecteurs;
global $update_type, $date_last_envoi, $num_panier;
global $limite_type, $limite_nombre, $typeexport, $prefixe_fichier;
global $group_pperso, $display_notice_in_every_group, $archive_number, $group_type;
global $document_generate, $document_notice_display_type, $document_notice_tpl, $document_django_directory, $document_insert_docnum, $document_group, $document_add_summary;
global $bannette_opac_accueil,$bannette_tpl_num, $dsi_private_bannette_tpl;
global $genere_lien, $mere, $fille, $notice_mere, $notice_fille, $art_link, $bull_link, $perio_link, $bulletinage, $notice_art, $notice_perio;
global $empr_nom, $empr_prenom;
global $dsi_private_bannette_notices_template;
global $bannette_diffuse_checked;
global $opac_private_bannette_date_used_to_calc;
$this->num_classement = $num_classement+0;
if(!$this->id_bannette) {
if(trim($dsi_private_bannette_notices_template)){
$this->notice_tpl = trim($dsi_private_bannette_notices_template)+0;
}
$this->django_directory = stripslashes($django_directory);
}
$this->nom_bannette = $empr_nom." ".$empr_prenom.' > '.stripslashes($nom_bannette);
$this->comment_gestion = $empr_nom." ".$empr_prenom.' > '.stripslashes($nom_bannette);
$this->comment_public = stripslashes($nom_bannette);
$this->get_entete_mail();
$this->proprio_bannette = $id_empr+0;
$this->bannette_auto = 1;
$this->periodicite = (!$periodicite || $periodicite>200 ? 15 : $periodicite*1);
$this->diffusion_email = 1;
// $this->statut_not_account = $statut_not_account+0;
$this->nb_notices_diff = $dsi_private_bannette_nb_notices+0;
$this->categorie_lecteurs = array();
$this->groupe_lecteurs = array();
switch ($opac_private_bannette_date_used_to_calc) {
case 0 :
$this->update_type = "C";
break;
case 1 :
$this->update_type = "U";
break;
default :
$this->update_type = $update_type;
break;
}
if(isset($bannette_diffuse_checked) && $bannette_diffuse_checked) {
$this->date_last_envoi = date('Y-m-d H:i:s',strtotime("-".$this->periodicite." day",mktime(0,0,0,date('m'),date('d'),date('Y'))));
$this->date_last_remplissage = $this->date_last_envoi;
} else {
if($date_last_envoi) {
$this->date_last_envoi = $date_last_envoi;
$this->date_last_remplissage = $date_last_envoi;
} elseif(!$this->id_bannette) {
$this->date_last_envoi = date('Y-m-d H:i:s',strtotime("-".$this->periodicite." day",mktime(0,0,0,date('m'),date('d'),date('Y'))));
$this->date_last_remplissage = $this->date_last_envoi;
}
}
$this->num_panier = $num_panier+0;
// $this->limite_type = stripslashes($limite_type);
// $this->limite_nombre = $limite_nombre+0;
$this->typeexport = stripslashes($typeexport);
$this->prefixe_fichier = stripslashes($nom_bannette);
$this->group_pperso = stripslashes($group_pperso);
$this->display_notice_in_every_group = $display_notice_in_every_group+0;
$this->archive_number = $archive_number+0;
$this->group_type = $group_type+0;
$this->document_generate = $document_generate+0;
$this->document_notice_display_type = intval($document_notice_display_type);
$this->document_notice_tpl = $document_notice_tpl+0;
$this->document_django_directory = stripslashes($document_django_directory);
$this->document_insert_docnum = $document_insert_docnum+0;
$this->document_group = $document_group+0;
$this->document_add_summary = $document_add_summary+0;
$this->bannette_opac_accueil= $bannette_opac_accueil+0;
if($bannette_tpl_num) {
$this->bannette_tpl_num = $bannette_tpl_num+0;
} else {
$this->bannette_tpl_num = $dsi_private_bannette_tpl;
}
if(!$this->id_bannette) {
$this->param_export=array("genere_lien" => $genere_lien+0,
"mere" => $mere+0,
"fille" => $fille+0,
"notice_mere" => $notice_mere+0,
"notice_fille" => $notice_fille+0,
"art_link" => $art_link+0,
"bull_link" => $bull_link+0,
"perio_link" => $perio_link+0,
"bulletinage" => $bulletinage+0,
"notice_art" => $notice_art+0,
"notice_perio" => $notice_perio+0);
}
}
// ---------------------------------------------------------------
// save
// ---------------------------------------------------------------
public function save() {
global $msg;
if ($this->id_bannette) {
// update
$req = "UPDATE bannettes set ";
$clause = " WHERE id_bannette='".$this->id_bannette."'";
} else {
$req = "insert into bannettes set ";
$clause = "";
}
$req.="num_classement='".$this->num_classement."',";
$req.="nom_bannette='".addslashes($this->nom_bannette)."',";
$req.="comment_gestion='".addslashes($this->comment_gestion)."',";
$req.="comment_public='".addslashes($this->comment_public)."',";
$req.="bannette_tpl_num='".$this->bannette_tpl_num."',";
$req.="entete_mail='".addslashes($this->entete_mail)."',";
$req.="piedpage_mail='".addslashes($this->piedpage_mail)."',";
$req.="notice_display_type='".$this->notice_display_type."',";
$req.="notice_tpl='".$this->notice_tpl."',";
$req.="django_directory='".addslashes($this->django_directory)."',";
$req.="proprio_bannette='".$this->proprio_bannette."',";
$req.="bannette_auto='".$this->bannette_auto."',";
$req.="periodicite='".$this->periodicite."',";
$req.="diffusion_email='".$this->diffusion_email."',";
$req.="statut_not_account='".$this->statut_not_account."',";
$req.="associated_campaign='".$this->associated_campaign."',";
$req.="bannette_num_sender='".$this->num_sender."',";
$req.="nb_notices_diff='".$this->nb_notices_diff."',";
$req.="update_type='".$this->update_type."',";
$req.="num_panier='".$this->num_panier."',";
$req.="limite_type='".$this->limite_type."',";
$req.="limite_nombre='".$this->limite_nombre."',";
$req.="typeexport='".$this->typeexport."',";
$req.="prefixe_fichier='".$this->prefixe_fichier."',";
$req.="group_type='".$this->group_type."',";
$req.="group_pperso='".$this->group_pperso."',";
$req.="display_notice_in_every_group='".$this->display_notice_in_every_group."',";
$req.="archive_number='".$this->archive_number."',";
$req.="param_export='".addslashes(serialize($this->param_export))."',";
$req.="document_generate='".$this->document_generate."',";
$req.="document_notice_display_type='".$this->document_notice_display_type."',";
$req.="document_notice_tpl='".$this->document_notice_tpl."',";
$req.="document_django_directory='".addslashes($this->document_django_directory)."',";
$req.="document_insert_docnum='".$this->document_insert_docnum."',";
$req.="document_group='".$this->document_group."',";
$req.="document_add_summary='".$this->document_add_summary."',";
$req.="bannette_opac_accueil='".$this->bannette_opac_accueil."',";
$req.="bannette_aff_notice_number='".$this->bannette_aff_notice_number."',";
if (!$this->date_last_envoi) $req.="date_last_envoi=sysdate(), ";
else $req.="date_last_envoi='".$this->date_last_envoi."', ";
if (!$this->date_last_remplissage) $req.="date_last_remplissage=sysdate() ";
else $req.="date_last_remplissage='".$this->date_last_remplissage."' ";
$req.=$clause ;
$res = pmb_mysql_query($req);
if (!$this->id_bannette) $this->id_bannette = pmb_mysql_insert_id() ;
$del = "delete from bannette_empr_groupes where empr_groupe_num_bannette = '".$this->id_bannette."'";
pmb_mysql_query($del);
if(count($this->groupe_lecteurs))
for($i=0 ; $igroupe_lecteurs) ; $i++){
$id_groupe=$this->groupe_lecteurs[$i]*1;
$rqt = "insert into bannette_empr_groupes set empr_groupe_num_bannette = '".$this->id_bannette."', empr_groupe_num_groupe = '".$id_groupe."' ";
pmb_mysql_query($rqt);
}
$del = "delete from bannette_empr_categs where empr_categ_num_bannette = '".$this->id_bannette."'";
pmb_mysql_query($del);
if(count($this->categorie_lecteurs)){
$this->categorie_lecteurs=$this->categorie_lecteurs;
if($this->categorie_lecteurs[0]==-1){
$this->categorie_lecteurs=array();
$rqt = "SELECT id_categ_empr FROM empr_categ";
$res=pmb_mysql_query($rqt);
if(pmb_mysql_num_rows($res)){
while($row = pmb_mysql_fetch_object($res)){
$this->categorie_lecteurs[] = $row->id_categ_empr;
}
}
}
for($i=0 ; $icategorie_lecteurs) ; $i++){
$id_categ=$this->categorie_lecteurs[$i]*1;
$rqt = "insert into bannette_empr_categs set empr_categ_num_bannette = '".$this->id_bannette."', empr_categ_num_categ = '".$id_categ."' ";
pmb_mysql_query($rqt);
}
}else{
$this->categorie_lecteurs=array();
}
$this->bannette_descriptors->set_properties_from_form();
$this->bannette_descriptors->save();
$facette = new bannette_facettes($this->id_bannette);
$facette->save();
}
// ---------------------------------------------------------------
// delete() : suppression
// ---------------------------------------------------------------
public function delete() {
global $msg;
$requete = "delete from bannette_abon WHERE num_bannette='$this->id_bannette'";
pmb_mysql_query($requete);
$requete = "delete from bannette_contenu WHERE num_bannette='$this->id_bannette'";
pmb_mysql_query($requete);
$requete = "delete from bannettes WHERE id_bannette='$this->id_bannette'";
pmb_mysql_query($requete);
bannette_descriptors::delete($this->id_bannette);
bannette_equations::delete($this->id_bannette);
$facette = new bannette_facettes($this->id_bannette);
$facette->delete();
$del = "delete from bannette_empr_groupes where empr_groupe_num_bannette = '".$this->id_bannette."'";
pmb_mysql_query($del);
$del = "delete from bannette_empr_categs where empr_categ_num_bannette = '".$this->id_bannette."'";
pmb_mysql_query($del);
}
protected function get_records_over_days() {
$query = "select num_notice from bannette_contenu WHERE num_bannette='$this->id_bannette' and ";
$query .= " date_add(date_ajout, INTERVAL ".$this->limite_nombre." DAY) >= sysdate() ";
$result = pmb_mysql_query($query);
$tab = array();
while ($row=pmb_mysql_fetch_object($result)) {
$tab[] = $row->num_notice ;
}
return $tab;
}
protected function get_records_limit() {
$tab = array();
// selection des ## dernières notices, celles qu'il faut absolument garder
$requete = "select num_notice from bannette_contenu, notices WHERE num_bannette='".$this->id_bannette."' and notice_id=num_notice order by date_ajout DESC, update_date DESC ";
$requete .= " limit $this->limite_nombre ";
$res = pmb_mysql_query($requete);
while ($obj=pmb_mysql_fetch_object($res)) {
$tab[]=$obj->num_notice ;
}
// selection des notices ajoutées depuis moins d'un jour
$requete = "select num_notice from bannette_contenu WHERE num_bannette='".$this->id_bannette."' and ";
$requete .= " date_add(date_ajout, INTERVAL 1 DAY)>=sysdate() ";
$res = pmb_mysql_query($requete);
while ($obj=pmb_mysql_fetch_object($res)) {
$tab[]=$obj->num_notice ;
}
return $tab;
}
// ---------------------------------------------------------------
// purger() : après remplissage, vider ce qui dépasse selon le type de cumul de la bannette
// ---------------------------------------------------------------
public function purger() {
global $msg;
global $gestion_acces_active,$gestion_acces_empr_notice;
//purge pour les bannettes privees des notices ne devant pas etre diffusees
if ($this->proprio_bannette && $gestion_acces_active==1 && $gestion_acces_empr_notice==1){
$ac = new acces();
$dom_2 = $ac->setDomain(2);
$acces_j = $dom_2->getJoin($this->proprio_bannette,'4=0','num_notice');
$q="delete from bannette_contenu using bannette_contenu $acces_j WHERE num_bannette='$this->id_bannette' ";
pmb_mysql_query($q);
}
$records = array();
switch ($this->limite_type) {
case "D":
$records = $this->get_records_over_days();
break;
case "I":
$records = $this->get_records_limit();
break;
}
if(count($records)) {
$notice_suppr=implode(",",$records);
if ($this->num_panier) {
$requete = "delete from caddie_content WHERE caddie_id='$this->num_panier' and object_id not in (".$notice_suppr.") ";
$res = pmb_mysql_query($requete);
}
$requete = "delete from bannette_contenu WHERE num_bannette='$this->id_bannette' and num_notice not in (".$notice_suppr.") ";
$res = pmb_mysql_query($requete);
}
$this->compte_elements() ;
}
// ---------------------------------------------------------------
// vider() : vider le contenu de la bannette
// ---------------------------------------------------------------
public function vider() {
$requete = "delete from bannette_contenu WHERE num_bannette='".$this->id_bannette."'";
pmb_mysql_query($requete);
$requete = "delete from caddie_content WHERE caddie_id='".$this->num_panier."'";
pmb_mysql_query($requete);
$this->compte_elements() ;
}
// ---------------------------------------------------------------
// remplir() : remplir la bannette à partir des équations
// ---------------------------------------------------------------
public function remplir() {
global $msg;
global $gestion_acces_active,$gestion_acces_empr_notice;
// récupérer les équations associées à la bannette
$equations = $this->bannette_equations->get_equations() ;
$res_affichage = "
" ;
if ($this->update_type=="C") $colonne_update_create="create_date";
else $colonne_update_create="update_date";
for ($i=0 ; $i < sizeof($equations) ; $i++) {
// pour chaque équation ajouter les notices trouvées au contenu de la bannette
$equ = new equation ($equations[$i]) ;
$search = new search() ;
$search->unserialize_search($equ->requete) ;
$table = $search->make_search() ;
if($search->is_created_temporary_table($table)) {
$temp_requete = "insert into bannette_contenu (num_bannette, num_notice) (select ".$this->id_bannette." , notices.notice_id from $table , notices, notice_statut where notices.$colonne_update_create>='".$this->date_last_envoi."' and $table.notice_id=notices.notice_id and statut=id_notice_statut and ((notice_visible_opac=1 and notice_visible_opac_abon=0) or (notice_visible_opac_abon=1 and notice_visible_opac=1)) limit 300) " ;
@pmb_mysql_query($temp_requete);
$temp_requete = "drop table $table " ;
@pmb_mysql_query($temp_requete);
}
$res_affichage .= "
".$equ->human_query."
" ;
}
$res_affichage .= "
" ;
$this->compte_elements() ;
$temp_requete = "update bannettes set date_last_remplissage=sysdate() where id_bannette='".$this->id_bannette."' " ;
$res = @pmb_mysql_query($temp_requete);
//purge pour les bannettes privees des notices ne devant pas etre diffusees
if ($this->proprio_bannette && $gestion_acces_active==1 && $gestion_acces_empr_notice==1){
$ac = new acces();
$dom_2 = $ac->setDomain(2);
$acces_j = $dom_2->getJoin($this->proprio_bannette,'4=0','num_notice');
$q="delete from bannette_contenu using bannette_contenu $acces_j WHERE num_bannette='$this->id_bannette' ";
pmb_mysql_query($q);
}
return $res_affichage ;
}
protected function get_css($directory) {
global $base_path;
global $opac_url_base;
$css = '';
$css_path= $base_path."/styles/".$directory."/dsi";
if (is_dir($css_path)) {
if (($dh = opendir($css_path))) {
while (($css_file = readdir($dh)) !== false) {
if(filetype($css_path."/".$css_file) =='file') {
if( substr($css_file, -4) == ".css" ) {
$css.="\n";
}
}
}
closedir($dh);
}
}
return $css;
}
protected function get_css_style() {
global $opac_default_style;
// récupération des fichiers de style commun
$css = $this->get_css('common');
// récupération des fichiers de style personnalisé
$css .= $this->get_css($opac_default_style);
return $css;
}
protected function get_query_records() {
global $dsi_bannette_notices_order;
if (!$dsi_bannette_notices_order) $dsi_bannette_notices_order="index_serie, tnvol, index_sew";
$limitation = '';
if ($this->nb_notices_diff && $this->use_limit) $limitation = " LIMIT $this->nb_notices_diff " ;
$query = "select num_notice from bannette_contenu, notices where num_bannette='".$this->id_bannette."' and notice_id=num_notice order by $dsi_bannette_notices_order $limitation ";
return $query;
}
protected function get_data_structure() {
$data = array();
//Nb total sans limitation
$data['records']['length_total'] = $this->nb_notices;
$result = pmb_mysql_query($this->get_query_records());
$data['records']['length'] = pmb_mysql_num_rows($result);
if(pmb_mysql_num_rows($result)) {
$bannette_facette = $this->get_instance_bannette_facette();
if($this->get_notice_tpl()){
$bannette_facette->noti_tpl_document = notice_tpl_gen::get_instance($this->get_notice_tpl());
}
while (($row = pmb_mysql_fetch_object($result))) {
$data['records'][$row->num_notice]['render'] = $bannette_facette->build_notice($row->num_notice, $this->id_bannette);
}
}
if($this->add_summary()) {
$data['sommaires'] = $this->get_data_summary_structure();
} else {
$data['sommaires'] = array();
}
return $data;
}
public function get_display_bannette_tpl() {
$data=$this->get_data_structure(); //$this->data_document
$data['info']['header']=$this->get_display_header();
$data['info']['footer']=$this->get_display_footer();
$data['info']['opac_name']=$this->comment_public;
$data['info']['id']=$this->id_bannette;
$data['info']['name']=$this->nom_bannette;
$data['info']['date_diff']=formatdate(today());
$data['info']['equation']=$this->bannette_equations->get_text();
$data['info']['nb_abonnes']=$this->nb_abonnes;
$data['empr']['name']='!!empr_name!!';
$data['empr']['first_name']='!!empr_first_name!!';
$data['empr']['civ']='!!empr_sexe!!';
$data['empr']['cb']='!!empr_cb!!';
$data['empr']['login']='!!empr_login!!';
$data['empr']['mail']='!!empr_mail!!';
$data['empr']['name_and_adress']='!!empr_name_and_adress!!';
$data['empr']['all_information']='!!empr_all_information!!';
$data['empr']['connect']='!!empr_connect!!';
$data['empr']['statut_id']='!!empr_statut_id!!';
$data['empr']['statut_lib']='!!empr_statut_lib!!';
$data['empr']['categ_id']='!!empr_categ_id!!';
$data['empr']['categ_lib']='!!empr_categ_lib!!';
$data['empr']['codestat_id']='!!empr_codestat_id!!';
$data['empr']['codestat_lib']='!!empr_codestat_lib!!';
$data['empr']['langopac_code']='!!empr_langopac_code!!';
$data['empr']['langopac_lib']='!!empr_langopac_lib!!';
$data['loc']['name']='!!loc_name!!';
$data['loc']['adr1']='!!loc_adr1!!';
$data['loc']['adr2']='!!loc_adr2!!';
$data['loc']['cp']='!!loc_cp!!';
$data['loc']['town']='!!loc_town!!';
$data['loc']['phone']='!!loc_phone!!';
$data['loc']['email']='!!loc_email!!';
$data['loc']['website']='!!loc_website!!';
if($this->bannette_tpl_num){
$tpl_id = $this->bannette_tpl_num;
} else{
$tpl_id = $this->get_private_bannette_tpl();
}
return bannette_tpl::render($tpl_id,$data);
}
public function get_display_document() {
global $charset;
global $suite;
$this->set_records_globals();
$this->set_output_format('document');
$this->build_lists(0);
$document = "".$this->get_css_style()."";
if($this->get_private_bannette_tpl()){
$document .= $this->get_display_bannette_tpl();
} else {
$document .= $this->get_display_header();
if (count($this->list) && $this->group_type==1) {
$facette = $this->get_instance_bannette_facette();
$document .= $facette->build_document($this->list,$this->document_notice_tpl,$this->document_add_summary,1);
} else {
$this->add_list_group_in_list();
if($this->is_grouped()){
$document .= $this->get_display_summary();
} else {
if($this->list) {
$document .= $this->get_display_template();
}
}
}
$document .= $this->get_display_footer();
}
$document.= "";
return $document;
}
public function get_empr_mail($id_empr){
$requete = "select empr_mail, bannette_mail from empr, bannette_abon, bannettes ";
$requete .= "where num_bannette='".$this->id_bannette."' and num_empr=$id_empr and num_bannette=id_bannette and num_empr=id_empr";
$res = pmb_mysql_query($requete);
$emaildest="";
if($empr=pmb_mysql_fetch_object($res)) {
$emaildest = $empr->empr_mail;
if ($empr->bannette_mail && $emaildest){
$destinataires = explode(";",$emaildest);
foreach($destinataires as $mail){
if($mail == $empr->bannette_mail){
$emaildest=$empr->bannette_mail;
break;
}
}
}
}
return $emaildest;
}
protected function get_display_header() {
$header = $this->construit_liens_HTML();
return $header;
}
protected function add_list_group_in_list() {
global $dsi_bannette_notices_order;
if(count($this->list_group)) {
foreach($this->list_group as $list_notice) {
$req_list=array();
foreach($list_notice as $r) {
$req_list[]=$r->num_notice;
}
$query = "select notice_id as num_notice from notices where notice_id in(".implode(",",$req_list).") order by $dsi_bannette_notices_order ";
$result = pmb_mysql_query($query) ;
while ($row = pmb_mysql_fetch_object($result)) {
$this->list[] = $row->num_notice;
}
}
}
}
protected function get_display_content() {
$display = "";
$this->build_lists(1);
if (count($this->list) && $this->group_type==1) {
$facette = $this->get_instance_bannette_facette();
$display .= $facette->build_document($this->list,$this->notice_tpl,1,0);
} else {
$this->add_list_group_in_list();
// il faut trier les regroupements par ordre alphabétique
if($this->group_pperso) {
$display .= $this->get_display_summary();
} else {
if ($this->list) {
// DSI classique par mail...
$display .= $this->get_display_template();
}
}
}
return $display;
}
protected function get_display_footer() {
$footer = $this->piedpage_mail;
$footer = str_replace('!!equation!!', $this->bannette_equations->get_text(), $footer);
return $footer;
}
protected function get_display_mail() {
global $charset;
$this->set_records_globals();
$this->set_output_format('mail');
$this->build_lists(1);
$display = "".$this->get_css_style()."";
if($this->bannette_aff_notice_number){
$display .= "!!dsi_diff_n_notices!!";
}
if($this->get_private_bannette_tpl()){
if ($this->diffusion_email) {
$display .= $this->get_display_bannette_tpl();
}
} else {
$display .= $this->get_display_header();
if ($this->diffusion_email) {
$display .= $this->get_display_content();
}
$display .= $this->get_display_footer();
}
$display .= "";
return $display;
}
protected function get_empr_informations($id_empr=0) {
global $msg;
$query = "SELECT id_empr, empr_cb, empr_mail, empr_nom, empr_prenom, empr_login, empr_password, if(empr_sexe=2,'".$msg["civilite_madame"]."', ";
$query .= "if(empr_sexe=1,'".$msg["civilite_monsieur"]."','".$msg["civilite_unknown"]."')) as empr_sexe, empr_adr1, empr_adr2, empr_cp, empr_ville, empr_lang, ";
$query .= "empr_pays, empr_tel1, empr_tel2, date_format(empr_date_adhesion, '".$msg["format_date"]."') as aff_empr_date_adhesion, date_format(empr_date_expiration, '".$msg["format_date"]."') as aff_empr_date_expiration,";
$query .= "idstatut, statut_libelle, id_categ_empr, empr_categ.libelle as libelle_categ, idcode as id_codestat, empr_codestat.libelle as libelle_codestat, allow_dsi, allow_dsi_priv, empr_location ";
$query .= "FROM empr ";
$query .= "JOIN empr_statut ON empr_statut=idstatut ";
$query .= "JOIN empr_categ ON empr_categ=id_categ_empr ";
$query .= "JOIN empr_codestat ON empr_codestat=idcode ";
$query .= "where id_empr=".$id_empr." ";
$query .= "order by empr_nom, empr_prenom ";
$result = pmb_mysql_query($query);
$empr = pmb_mysql_fetch_object($result);
return $empr;
}
protected function get_formatted_text($text, $empr) {
global $opac_url_base;
global $opac_connexion_phrase;
$lang_messages = static::get_lang_messages($empr->empr_lang);
$formatted_text = $text;
$formatted_text = str_replace ("!!nb_notice!!", $this->nb_notices, $formatted_text);
$formatted_text = str_replace("!!print_n_notices!!", sprintf($lang_messages["print_n_notices"],$this->nb_notices), $formatted_text);
if (($this->nb_notices_diff >= $this->nb_notices) || (!$this->nb_notices_diff)) {
$nb_envoyees = $this->nb_notices ;
} else {
$nb_envoyees = $this->nb_notices_diff;
}
$msg_dsi_diff_n_notices = sprintf($lang_messages["dsi_diff_n_notices"],$nb_envoyees,$this->nb_notices);
$formatted_text = str_replace("!!dsi_diff_n_notices!!", ($msg_dsi_diff_n_notices ? $msg_dsi_diff_n_notices.'' : ''), $formatted_text);
$formatted_text = str_replace ("!!public!!",$this->get_formatted_comment_public(),$formatted_text) ;
$formatted_text = str_replace ("!!equation!!",$this->bannette_equations->get_text(),$formatted_text) ;
$dates = time();
$code=md5($opac_connexion_phrase.$empr->empr_login.$dates);
$formatted_text = str_replace('!!empr_connect!!',"".$lang_messages["selvars_empr_auth_opac"]."",$formatted_text);
$formatted_text = str_replace('!!code!!',$code,$formatted_text);
$formatted_text = str_replace('!!login!!',$empr->empr_login,$formatted_text);
$formatted_text = str_replace('!!date_conex!!',$dates,$formatted_text);
$formatted_text = str_replace ("!!date!!",formatdate(today()),$formatted_text) ;
$formatted_text = str_replace('!!empr_name!!',$empr->empr_nom,$formatted_text);
$formatted_text = str_replace('!!empr_first_name!!',$empr->empr_prenom,$formatted_text);
$formatted_text = str_replace('!!empr_sexe!!',$empr->empr_sexe,$formatted_text);
$formatted_text = str_replace('!!empr_cb!!',$empr->empr_cb,$formatted_text);
$formatted_text = str_replace('!!empr_login!!',$empr->empr_login,$formatted_text);
$formatted_text = str_replace('!!empr_mail!!',$empr->empr_mail,$formatted_text);
if (strpos($formatted_text,"!!empr_name_and_adress!!")) {
$formatted_text=str_replace("!!empr_name_and_adress!!", nl2br($this->m_lecteur_adresse($empr)),$formatted_text);
}
if (strpos($formatted_text,"!!empr_all_information!!")) {
$formatted_text=str_replace("!!empr_all_information!!", nl2br($this->m_lecteur_info($empr)),$formatted_text);
}
$formatted_text = str_replace('!!empr_statut_id!!',$empr->idstatut,$formatted_text);
$formatted_text = str_replace('!!empr_statut_lib!!',$empr->statut_libelle,$formatted_text);
$formatted_text = str_replace('!!empr_categ_id!!',$empr->id_categ_empr,$formatted_text);
$formatted_text = str_replace('!!empr_categ_lib!!',$empr->libelle_categ,$formatted_text);
$formatted_text = str_replace('!!empr_codestat_id!!',$empr->id_codestat,$formatted_text);
$formatted_text = str_replace('!!empr_codestat_lib!!',$empr->libelle_codestat,$formatted_text);
$formatted_text = str_replace('!!empr_langopac_code!!',$empr->empr_lang,$formatted_text);
$langues = marc_list_collection::get_instance('languages');
$formatted_text = str_replace('!!empr_langopac_lib!!',$langues->table[$empr->empr_lang],$formatted_text);
if ($empr->empr_location) {
$empr_dest_loc = pmb_mysql_query("SELECT * FROM docs_location WHERE idlocation=".$empr->empr_location);
$empr_loc = pmb_mysql_fetch_object($empr_dest_loc);
$formatted_text = str_replace('!!loc_name!!',$empr_loc->name,$formatted_text);
$formatted_text = str_replace('!!loc_adr1!!',$empr_loc->adr1,$formatted_text);
$formatted_text = str_replace('!!loc_adr2!!',$empr_loc->adr2,$formatted_text);
$formatted_text = str_replace('!!loc_cp!!',$empr_loc->cp,$formatted_text);
$formatted_text = str_replace('!!loc_town!!',$empr_loc->town,$formatted_text);
$formatted_text = str_replace('!!loc_phone!!',$empr_loc->phone,$formatted_text);
$formatted_text = str_replace('!!loc_email!!',$empr_loc->email,$formatted_text);
$formatted_text = str_replace('!!loc_website!!',$empr_loc->website,$formatted_text);
} else {
$formatted_text = str_replace('!!loc_name!!','',$formatted_text);
$formatted_text = str_replace('!!loc_adr1!!','',$formatted_text);
$formatted_text = str_replace('!!loc_adr2!!','',$formatted_text);
$formatted_text = str_replace('!!loc_cp!!','',$formatted_text);
$formatted_text = str_replace('!!loc_town!!','',$formatted_text);
$formatted_text = str_replace('!!loc_phone!!','',$formatted_text);
$formatted_text = str_replace('!!loc_email!!','',$formatted_text);
$formatted_text = str_replace('!!loc_website!!','',$formatted_text);
}
return $formatted_text;
}
protected function get_formatted_mail($empr) {
$text = $this->get_display_mail();
$formatted_mail = $this->get_formatted_text($text, $empr);
return $formatted_mail;
}
public function get_display_export() {
global $charset;
$this->set_records_globals();
$this->set_output_format('export');
$this->build_lists(0);
$display = "".$this->get_css_style()."";
if($this->get_private_bannette_tpl()){
$display .= $this->get_display_bannette_tpl();
} else {
$display .= $this->get_display_header().$this->get_display_content().$this->get_display_footer();
}
$display .= "";
return $display;
}
protected function get_record_display($idnotice) {
global $opac_notice_affichage_class;
global $liens_opac;
global $opac_bannette_notices_format;
global $opac_bannette_notices_depliables;
global $opac_notices_format_django_directory;
global $record_css_already_included; // Pour pas inclure la css 10 fois
global $include_path;
$display = '';
$notice = new $opac_notice_affichage_class($idnotice, $liens_opac, 1) ;
// si notice visible
if ($notice->visu_notice) {
$notice->do_header();
switch ($opac_bannette_notices_format) {
case AFF_BAN_NOTICES_REDUIT :
$display .= "
".$notice->notice_header_with_link."
" ;
break;
case AFF_BAN_NOTICES_ISBD :
$notice->do_isbd();
$notice->genere_simple($opac_bannette_notices_depliables, 'ISBD') ;
$display .= $notice->result ;
break;
case AFF_BAN_NOTICES_PUBLIC :
$notice->do_public();
$notice->genere_simple($opac_bannette_notices_depliables, 'PUBLIC') ;
$display .= $notice->result ;
break;
case AFF_BAN_NOTICES_BOTH :
$notice->do_isbd();
$notice->do_public();
$notice->genere_double($opac_bannette_notices_depliables, 'PUBLIC') ;
$display .= $notice->result ;
break ;
case AFF_BAN_NOTICES_TEMPLATE_DJANGO :
if (!$opac_notices_format_django_directory) $opac_notices_format_django_directory = "common";
if (!$record_css_already_included) {
if (file_exists($include_path."/templates/record/".$opac_notices_format_django_directory."/styles/style.css")) {
$display .= "";
}
$record_css_already_included = true;
}
$display .= record_display::get_display_in_result($idnotice);
break;
default:
$notice->do_isbd();
$notice->do_public();
$notice->genere_double($opac_bannette_notices_depliables, 'autre') ;
$display .= $notice->result ;
break ;
}
}
return $display;
}
public function get_display($aff_notices_nb=0, $link_to_bannette="",$home=false ) {
global $msg,$charset;
global $date_diff;
global $affiche_bannette_tpl;
global $id_empr;
global $opac_websubscribe_show;
$diffusion = "";
$diffusion .= "\n
";
}
protected static function get_lang_messages($lang) {
global $include_path;
if (!isset(static::$lang_messages[$lang])) {
$messages = new XMLlist($include_path."/messages/".$lang.".xml", 0);
$messages->analyser();
static::$lang_messages[$lang] = $messages->table;
}
return static::$lang_messages[$lang];
}
} # fin de définition de la classe bannette