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 = "<input type='button' class='bouton' value='" . $msg['bannette_duplicate_bouton'] . "' onclick='document.location=\"./dsi.php?categ=bannettes&sub={$type}&id_bannette={$this->id_bannette}&suite=duplicate&id_classement={$id_classement}&form_cb={$form_cb}{$link_pagination}\"' />";
         $link_annul = "<input type='button' class='bouton' value='{$msg['76']}' onClick=\"document.location='./dsi.php?categ=bannettes&sub={$type}&id_bannette=&suite=search&id_classement={$id_classement}&form_cb={$form_cb}{$link_pagination}';\" />";
         $button_delete = "<input type='button' class='bouton' value='{$msg['63']}' onClick=\"confirm_delete();\">";
         $libelle = $msg['dsi_ban_form_modif'];
     } else {
         $action = "./dsi.php?categ=bannettes&sub={$type}&id_bannette=0&suite=update";
         $link_duplicate = "";
         $link_annul = "<input type='button' class='bouton' value='{$msg['76']}' onClick=\"history.go(-1);\" />";
         $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!!', "<input type=hidden name=num_classement value=0 />", $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) . "&param1=form_date_last_envoi&param2=form_aff_date_last_envoi&auto_submit=NO&date_anterieure=YES', 'date_last_envoi', 250, 300, -2, -2, 'toolbar=no, dependent=yes, resizable=yes')\"  ";
     $date_last_envoi = "\n\t\t\t\t\t<input type='hidden' name='form_date_last_envoi' value='" . str_replace(' ', '', str_replace('-', '', str_replace(':', '', $this->date_last_envoi))) . "' />\n\t\t\t\t\t<input class='bouton' type='button' name='form_aff_date_last_envoi' value='" . $this->aff_date_last_envoi . "' " . $date_clic . " />";
     $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_tpl!!', notice_tpl_gen::gen_tpl_select("notice_tpl", $this->notice_tpl), $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);
     }
     // 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);
     }
     if ($this->bannette_aff_notice_number) {
         $dsi_bannette_form = str_replace('!!bannette_aff_notice_number!!', " checked='checked' ", $dsi_bannette_form);
     } else {
         $dsi_bannette_form = str_replace('!!bannette_aff_notice_number!!', "", $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);
     }
     if ($this->display_notice_in_every_group) {
         $dsi_bannette_form = str_replace("!!display_notice_in_every_group!!", "checked", $dsi_bannette_form);
     } else {
         $dsi_bannette_form = str_replace("!!display_notice_in_every_group!!", "", $dsi_bannette_form);
     }
     if ($type == "pro") {
         $requete = "SELECT id_categ_empr, libelle FROM empr_categ ORDER BY libelle ";
         $onchange = "res=confirm('" . htmlentities($msg['dsi_ban_confirm_modif_categ'], ENT_QUOTES, $charset) . "'); if (res) this.form.majautocateg.value=1; else this.form.majautocateg.value=0;";
         $categ_lect_aff = gen_liste($requete, "id_categ_empr", "libelle", "categorie_lecteurs", $onchange, $this->categorie_lecteurs, 0, $msg['dsi_ban_aucune_categ'], 0, $msg['dsi_ban_aucune_categ'], 0);
         $dsi_bannette_form = str_replace('!!categorie_lecteurs!!', $categ_lect_aff, $dsi_bannette_form);
         $requete = "SELECT id_groupe, libelle_groupe FROM groupe ORDER BY libelle_groupe ";
         $onchange = "res=confirm('" . htmlentities($msg['dsi_ban_confirm_modif_groupe'], ENT_QUOTES, $charset) . "'); if (res) this.form.majautogroupe.value=1; else this.form.majautogroupe.value=0;";
         $groupe_lect_aff = gen_liste($requete, "id_groupe", "libelle_groupe", "groupe_lecteurs", $onchange, $this->groupe_lecteurs, 0, $msg['dsi_ban_aucun_groupe'], 0, $msg['dsi_ban_aucun_groupe'], 0);
         $dsi_bannette_form = str_replace('!!groupe_lecteurs!!', $groupe_lect_aff, $dsi_bannette_form);
     } else {
         $dsi_bannette_form = str_replace('!!categorie_lecteurs!!', "<input type=hidden name=categorie_lecteurs value=0 />", $dsi_bannette_form);
         $dsi_bannette_form = str_replace('!!groupe_lecteurs!!', "<input type=hidden name=groupe_lecteurs value=0 />", $dsi_bannette_form);
     }
     $dsi_bannette_form = str_replace('!!desc_fields!!', $this->build_sel_descriptor(), $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);
     switch ($this->limite_type) {
         case "D":
             $selectn = "";
             $selecti = "";
             $selectd = " SELECTED ";
             break;
         case "I":
             $selectn = "";
             $selectd = "";
             $selecti = " SELECTED ";
             break;
         default:
         case "":
             $selecti = "";
             $selectd = "";
             $selectn = " SELECTED ";
             break;
     }
     $limite_type = "<select name='limite_type' id='limite_type'>\n\t\t\t\t\t\t<option value='' {$selectn}>" . $msg['dsi_ban_non_cumul'] . "</option>\n\t\t\t\t\t\t<option value='D' {$selectd}>" . $msg['dsi_ban_cumul_jours'] . "</option>\n\t\t\t\t\t\t<option value='I' {$selecti}>" . $msg['dsi_ban_cumul_notice'] . "</option>\n\t\t\t\t\t\t</select>";
     $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 ?
     switch ($this->update_type) {
         case "C":
             $selectu = "";
             $selectc = " SELECTED ";
             break;
         case "U":
             $selectc = "";
             $selectu = " SELECTED ";
             break;
         default:
         case "":
             $selectu = "";
             $selectc = " SELECTED ";
             break;
     }
     $update_type = "<select name='update_type' id='update_type'>\n\t\t\t\t\t\t<option value='C' {$selectc}>" . $msg['dsi_ban_update_type_c'] . "</option>\n\t\t\t\t\t\t<option value='U' {$selectu}>" . $msg['dsi_ban_update_type_u'] . "</option>\n\t\t\t\t\t\t</select>";
     $dsi_bannette_form = str_replace('!!update_type!!', $update_type, $dsi_bannette_form);
     $exp = start_export::get_exports();
     $liste_exports = "<select name='typeexport' onchange=\"if(this.selectedIndex==0) document.getElementById('liste_parametre').style.display='none'; else document.getElementById('liste_parametre').style.display=''; \">";
     if (!$this->typeexport) {
         $liste_exports .= "<option value='' selected>" . $msg['dsi_ban_noexport'] . "</option>";
     } else {
         $liste_exports .= "<option value=''>" . $msg['dsi_ban_noexport'] . "</option>";
     }
     for ($i = 0; $i < count($exp); $i++) {
         if ($this->typeexport == $exp[$i]["PATH"]) {
             $liste_exports .= "<option value='" . $exp[$i]["PATH"] . "' selected>" . $exp[$i]["NAME"] . "</option>";
         } else {
             $liste_exports .= "<option value='" . $exp[$i]["PATH"] . "' >" . $exp[$i]["NAME"] . "</option>";
         }
     }
     $liste_exports .= "</select>";
     $dsi_bannette_form = str_replace('!!typeexport!!', $liste_exports, $dsi_bannette_form);
     $dsi_bannette_form = str_replace('!!prefixe_fichier!!', $this->prefixe_fichier, $dsi_bannette_form);
     if ($this->bannette_opac_accueil) {
         $bannette_opac_accueil_check = " checked ";
     } else {
         $bannette_opac_accueil_check = "";
     }
     $dsi_bannette_form = str_replace('!!bannette_opac_accueil_check!!', $bannette_opac_accueil_check, $dsi_bannette_form);
     if ($this->document_generate) {
         $dsi_bannette_form = str_replace('!!document_generate!!', "checked=checked", $dsi_bannette_form);
     } else {
         $dsi_bannette_form = str_replace('!!document_generate!!', "", $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);
     if ($this->document_insert_docnum) {
         $dsi_bannette_form = str_replace('!!document_insert_docnum!!', "checked=checked", $dsi_bannette_form);
     } else {
         $dsi_bannette_form = str_replace('!!document_insert_docnum!!', "", $dsi_bannette_form);
     }
     if ($this->document_group) {
         $dsi_bannette_form = str_replace('!!document_group!!', "checked=checked", $dsi_bannette_form);
     } else {
         $dsi_bannette_form = str_replace('!!document_group!!', "", $dsi_bannette_form);
     }
     if ($this->document_add_summary) {
         $dsi_bannette_form = str_replace('!!document_add_summary!!', "checked=checked", $dsi_bannette_form);
     } else {
         $dsi_bannette_form = str_replace('!!document_add_summary!!', "", $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);
     }
     if (!$this->typeexport) {
         $dsi_bannette_form = str_replace('!!display_liste_param!!', 'display:none', $dsi_bannette_form);
     } else {
         $dsi_bannette_form = str_replace('!!display_liste_param!!', '', $dsi_bannette_form);
     }
     $dsi_bannette_form = str_replace('!!form_param!!', $param->check_default_param(), $dsi_bannette_form);
     //ajout champs emprunteur
     $dsi_bannette_form = str_replace('!!info_empr!!', $dsi_bannette_form_selvars, $dsi_bannette_form);
     print $dsi_bannette_form;
 }