GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ // Vérification de sécurité if (!defined("WIKINI_VERSION")) { die("accès direct interdit"); } if (isset($_REQUEST['demand'])) { header('Content-type: application/json; charset=UTF-8'); switch ($_REQUEST['demand']) { case "listes_et_fiches": if (baz_a_le_droit($_REQUEST['demand'])) { $tab['listes'] = baz_valeurs_toutes_les_listes('json'); $tab['fiches'] = baz_valeurs_tous_les_formulaires('toutes', 'json'); echo json_encode($tab); } break; //sur mesure pour moustic //sur mesure pour moustic case "fiches": $tab = baz_requete_recherche_fiches('', 'alphabetique', 21, 'inscription'); echo json_encode($tab); break; } } ?>
<?php if (!defined("WIKINI_VERSION")) { die("accès direct interdit"); } $lien_RSS = $this->href('xmlutf8', $this->tag, BAZ_VARIABLE_VOIR . '=' . BAZ_VOIR_S_ABONNER . '&' . BAZ_VARIABLE_ACTION . '=' . BAZ_VOIR_FLUX_RSS); $listerss = ''; //on prend toutes les PageWiki de type formulaire $val_formulaire = baz_valeurs_tous_les_formulaires(); foreach ($val_formulaire as $type_fiche => $formulaire) { foreach ($formulaire as $nomwiki => $ligne) { $listerss .= '<link rel="alternate" type="application/rss+xml" title="' . $ligne['bn_label_nature'] . ' (' . $type_fiche . ')" href="' . $lien_RSS . '&type=' . $nomwiki . '" />' . "\n"; } } $listerss = '<link rel="alternate" type="application/rss+xml" title="' . BAZ_FLUX_RSS_GENERAL . '" href="' . $lien_RSS . '" />' . "\n" . $listerss . "\n"; //ajout des styles css pour bazar, le calendrier, la google map $style = '<link rel="stylesheet" type="text/css" href="tools/bazar/presentation/bazar.css" media="screen" />' . "\n" . '<link rel="stylesheet" type="text/css" href="tools/bazar/libs/fullcalendar/fullcalendar.css" media="screen" />' . "\n"; $plugin_output_new = preg_replace('/<\\/head>/', $listerss . $style . "\n" . '</head>', $plugin_output_new);
<?php if (!defined("WIKINI_VERSION")) { die("accès direct interdit"); } $liste = ''; $resultat = baz_valeurs_tous_les_formulaires(); if (is_array($resultat) && count($resultat) > 0) { foreach ($resultat as $categories) { foreach ($categories as $ligne) { $liste .= '<link rel="alternate" type="application/rss+xml" ' . 'title="' . htmlspecialchars($ligne['bn_label_nature']) . '" ' . 'href="' . $this->href('rss', $this->getPageTag(), 'id_typeannonce=' . $ligne['bn_id_nature']) . '">' . "\n"; } } } echo ' <link rel="alternate" type="application/rss+xml" title="' . htmlspecialchars(_t('BAZ_FLUX_RSS_GENERAL')) . '" ' . 'href="' . $this->href('rss') . '">' . "\n" . $liste;
/** baz_rechercher() Formate la liste de toutes les fiches * @return string le code HTML a afficher */ function baz_rechercher($typeannonce = '', $categorienature = '') { $res = ''; // parametres complémentaires de l'url $urlparam = BAZ_VARIABLE_VOIR . '=' . BAZ_VOIR_DEFAUT . '&' . BAZ_VARIABLE_ACTION . '=' . BAZ_MOTEUR_RECHERCHE; if (isset($_GET['query']) && !empty($_GET['query'])) { $urlparam .= '&query=' . $_GET['query']; } // creation du lien pour le formulaire de recherche $data['url'] = $GLOBALS['wiki']->href('', $GLOBALS['wiki']->GetPageTag(), $urlparam, 0); // on recupere la liste des formulaires, a afficher dans une liste deroulante pour la recherche $tab_formulaires = baz_valeurs_tous_les_formulaires($categorienature, 'html', $typeannonce); // on recupere le nb de types de fiches, pour plus tard $nb_type_de_fiches = 0; $type_formulaire_select[''] = _t('BAZ_TOUS_TYPES_FICHES'); if (is_array($tab_formulaires)) { foreach ($tab_formulaires as $type_fiche => $formulaire) { foreach ($formulaire as $nomwiki => $ligne) { $nb_type_de_fiches++; $tableau_typeformulaires[] = $nomwiki; $type_formulaire_select[$nomwiki] = $ligne['bn_label_nature'] . (!empty($type_fiche) ? ' (' . $type_fiche . ')' : ''); } } } if ($nb_type_de_fiches > 1) { $data['forms'] = $type_formulaire_select; } else { $data['forms'] = ''; } if (isset($_REQUEST['id_typeannonce']) && !empty($_REQUEST['id_typeannonce'])) { $data['idform'] = $_REQUEST['id_typeannonce']; } elseif (is_array($typeannonce) && count($typeannonce) == 1) { $data['idform'] = $typeannonce[0]; } else { $data['idform'] = ''; } // y a t'il des mots clés pour le moteur de recherche $data['search'] = ''; if (isset($_REQUEST['recherche_mots_cles']) && !empty($_REQUEST['recherche_mots_cles'])) { $data['search'] = $_REQUEST['recherche_mots_cles']; $_REQUEST['id_typeannonce'] = ''; } // affichage du formulaire include_once 'tools/bazar/libs/squelettephp.class.php'; $templatetoload = 'tools/bazar/presentation/templates/search_form.tpl.html'; $squelsearch = new SquelettePhp($templatetoload); $squelsearch->set($data); $res .= $squelsearch->analyser(); if (!isset($_REQUEST['id_typeannonce'])) { // la recherche n'a pas encore ete effectuee, on affiche les 10 dernieres fiches $res .= '<h4>' . _t('BAZ_DERNIERES_FICHES') . '</h4>'; $tableau_dernieres_fiches = baz_requete_recherche_fiches('', '', $typeannonce, $categorienature, 1, '', 10); $res .= displayResultList($tableau_dernieres_fiches, $GLOBALS['params'], false); } else { // la recherche a ete effectuee, on etablie la requete SQL $tableau_fiches = baz_requete_recherche_fiches('', '', $data['idform'], $categorienature, 1, '', '', true, isset($_REQUEST['recherche_mots_cles']) ? $_REQUEST['recherche_mots_cles'] : ''); $shownbres = count($GLOBALS['params']['groups']) == 0 || count($tableau_fiches) == 0; $res .= displayResultList($tableau_fiches, $GLOBALS['params'], $shownbres); } return $res; }
/** baz_rechercher() Formate la liste de toutes les fiches * * @return string le code HTML a afficher */ function baz_rechercher() { $res = ''; //creation du lien pour le formulaire de recherche $lien_formulaire = $GLOBALS['wiki']->href('', $GLOBALS['wiki']->GetPageTag(), BAZ_VARIABLE_VOIR . '=' . BAZ_VOIR_DEFAUT . '&' . BAZ_VARIABLE_ACTION . '=' . BAZ_MOTEUR_RECHERCHE, 0); $formtemplate = '<form action="' . $lien_formulaire . '" method="post" name="formulaire" id="formulaire">' . "\n"; //on recupere la liste des formulaires, a afficher dans une liste deroulante pour la recherche $tab_formulaires = baz_valeurs_tous_les_formulaires(); foreach ($tab_formulaires as $type_fiche => $formulaire) { foreach ($formulaire as $nomwiki => $ligne) { $tableau_typeformulaires[] = $nomwiki; $type_formulaire_select[$nomwiki] = $ligne['bn_label_nature'] . ' (' . $type_fiche . ')'; } } $type_fiche_choisie = isset($_REQUEST['id_typeannonce']); $formtemplate_champs_recherche_supplementaires = ''; if (count($tab_formulaires) > 1) { $formtemplate .= '<div class="formulaire_ligne">' . "\n" . '<div class="formulaire_label">' . BAZ_TYPE_FICHE . '</div>' . "\n"; $formtemplate .= '<div class="formulaire_input">' . "\n" . ' <select name="id_typeannonce" onchange="javascript:this.form.submit();">' . "\n" . ' <option value="toutes">' . BAZ_TOUS_TYPES_FICHES . '</option>' . "\n"; foreach ($type_formulaire_select as $nomwikiformulaire => $formulaire_select) { $formtemplate .= ' <option value="' . $nomwikiformulaire . '"'; if ($type_fiche_choisie && $_REQUEST['id_typeannonce'] == $nomwikiformulaire) { $formtemplate .= ' selected="selected"'; } $formtemplate .= '>' . $formulaire_select . '</option>' . "\n"; } $formtemplate .= ' </select>' . "\n" . '</div>' . "\n" . '</div>' . "\n"; // on ajoute les champs de recherche du type de fiche choisi if ($type_fiche_choisie) { $tab_nature = baz_valeurs_formulaire($_REQUEST['id_typeannonce']); $tableau = formulaire_valeurs_template_champs($GLOBALS['_BAZAR_']['template']); for ($i = 0; $i < count($tableau); $i++) { if ($tableau[$i][0] == 'liste' || $tableau[$i][0] == 'checkbox' || $tableau[$i][0] == 'listefiche' || $tableau[$i][0] == 'checkboxfiche' || $tableau[$i][0] == 'labelhtml') { $formtemplate_champs_recherche_supplementaires .= $tableau[$i][0]($formtemplate, $tableau[$i], 'formulaire_recherche', ''); } } } } else { $formtemplate .= '<input type="hidden" name="id_typeannonce" value="' . $GLOBALS['_BAZAR_']['id_typeannonce'] . '" />' . "\n"; } //requete pour obtenir l'id, le nom et prenom de toutes les personnes ayant depose une fiche // dans le but de construire l'element de formulaire select avec les noms des emetteurs de fiche if (BAZ_RECHERCHE_PAR_EMETTEUR) { //TODO: gestion des emetteurs } else { $formtemplate .= '<input type="hidden" value="tous" name="personnes">' . "\n"; } //teste si le user est admin, dans ce cas, il peut voir les fiches perimees if ($GLOBALS['wiki']->UserIsAdmin()) { //TODO: gestion des fiches perimees } $formtemplate .= '<div class="grouperecherche">' . "\n" . ' <input type="text" name="recherche_mots_cles" onfocus="if (this.value==\'' . BAZ_MOT_CLE . '\') {this.value=\'\';}" value="' . BAZ_MOT_CLE . '" class="boite_recherche" maxlength="255">' . "\n" . ' <input type="submit" value="' . BAZ_RECHERCHER . '" name="rechercher" class="btn bouton_recherche">' . "\n" . '</div>' . "\n"; //affichage du formulaire $res .= $formtemplate . $formtemplate_champs_recherche_supplementaires . "\n" . '</form>' . "\n"; //si la recherche n'a pas encore ete effectuee, on affiche les 10 dernieres fiches if (!isset($_REQUEST['id_typeannonce'])) { $tableau_dernieres_fiches = baz_requete_recherche_fiches('', '', $GLOBALS['_BAZAR_']['id_typeannonce'], $GLOBALS['_BAZAR_']['categorie_nature'], 1, '', 10); if (count($tableau_dernieres_fiches) > 0) { $res .= '<h2>' . BAZ_DERNIERES_FICHES . '</h2>'; $res .= baz_afficher_liste_resultat($tableau_dernieres_fiches, false); } else { $res .= '<div class="info_box">' . BAZ_PAS_DE_FICHES . '</div>' . "\n"; } } else { $tableau_fiches = baz_requete_recherche_fiches('', '', $_REQUEST['id_typeannonce'], $GLOBALS['_BAZAR_']['categorie_nature'], 1, ''); $res .= baz_afficher_liste_resultat($tableau_fiches); } return $res; }