Line 442... |
Line 442... |
442 |
* @param integer L'etat de validation de l'annonce (laisser 1 pour les annonces validees, 0 pour les non-validees)
|
442 |
* @param integer L'etat de validation de l'annonce (laisser 1 pour les annonces validees, 0 pour les non-validees)
|
443 |
* @param string La requete SQL personnalisee
|
443 |
* @param string La requete SQL personnalisee
|
444 |
*
|
444 |
*
|
445 |
* @return string Le code du flux RSS
|
445 |
* @return string Le code du flux RSS
|
446 |
*/
|
446 |
*/
|
447 |
function gen_RSS($typeannonce='', $nbitem='', $emetteur='', $valide=1, $requeteSQL='') {
|
447 |
function gen_RSS($typeannonce='', $nbitem='', $emetteur='', $valide=1, $requeteSQL='', $requeteSQLFrom = '') {
|
448 |
// generation de la requete MySQL personnalisee
|
448 |
// generation de la requete MySQL personnalisee
|
449 |
$req_where=0;
|
449 |
$req_where=0;
|
450 |
$requete = 'SELECT DISTINCT bf_id_fiche, bf_titre, bf_date_debut_validite_fiche '.
|
450 |
$requete = 'SELECT DISTINCT bf_id_fiche, bf_titre, bf_date_debut_validite_fiche '.
|
451 |
'FROM bazar_fiche, bazar_nature WHERE ';
|
451 |
'FROM bazar_fiche, bazar_nature '.$requeteSQLFrom.' WHERE ';
|
452 |
if ($valide!=2) {
|
452 |
if ($valide!=2) {
|
453 |
$requete .= 'bf_statut_fiche='.$valide;
|
453 |
$requete .= 'bf_statut_fiche='.$valide;
|
454 |
$req_where=1;
|
454 |
$req_where=1;
|
455 |
}
|
455 |
}
|
456 |
$nomflux=BAZ_DERNIERE_ACTU;
|
456 |
$nomflux=BAZ_DERNIERE_ACTU;
|
Line 580... |
Line 580... |
580 |
$type_annonce_select[$ligne['bn_id_nature']] = $ligne['bn_label_nature'];
|
580 |
$type_annonce_select[$ligne['bn_id_nature']] = $ligne['bn_label_nature'];
|
581 |
$tableau_typeannonces[] = $ligne['bn_id_nature'] ;
|
581 |
$tableau_typeannonces[] = $ligne['bn_id_nature'] ;
|
582 |
}
|
582 |
}
|
583 |
if ($GLOBALS['_BAZAR_']['typeannonce']=='toutes') {
|
583 |
if ($GLOBALS['_BAZAR_']['typeannonce']=='toutes') {
|
584 |
$res= '<h2>'.BAZ_TOUTES_LES_ANNONCES.'</h2><br />'."\n";
|
584 |
$res= '<h2>'.BAZ_TOUTES_LES_ANNONCES.'</h2><br />'."\n";
|
585 |
$option=array('style'=>'border:1px solid #000;width: 140px;font:12px Myriad, Arial, sans-serif;');
|
585 |
$option=array('style'=>'border:1px solid #000;width: 140px;font:12px Myriad, Arial, sans-serif;',
|
- |
|
586 |
'onchange' => 'javascript:this.form.submit();');
|
586 |
$formtemplate->addElement ('select', 'nature', BAZ_TYPEANNONCE, $type_annonce_select, $option) ;
|
587 |
$formtemplate->addElement ('select', 'nature', BAZ_TYPEANNONCE, $type_annonce_select, $option) ;
|
587 |
}
|
588 |
}
|
588 |
//cas du type d'annonces prédéfini
|
589 |
//cas du type d'annonces prédéfini
|
589 |
else {
|
590 |
else {
|
590 |
$res = '<h2>'.BAZ_TOUTES_LES_ANNONCES_DE_TYPE.' '.$GLOBALS['_BAZAR_']['typeannonce'].'</h2>'."\n";
|
591 |
$res = '<h2>'.BAZ_TOUTES_LES_ANNONCES_DE_TYPE.' '.$GLOBALS['_BAZAR_']['typeannonce'].'</h2>'."\n";
|
Line 648... |
Line 649... |
648 |
$formtemplate->setDefaults($defauts);
|
649 |
$formtemplate->setDefaults($defauts);
|
Line 649... |
Line 650... |
649 |
|
650 |
|
650 |
//option cachee pour savoir si le formulaire a ete appele deja
|
651 |
//option cachee pour savoir si le formulaire a ete appele deja
|
Line -... |
Line 652... |
- |
|
652 |
$formtemplate->addElement('hidden', 'recherche_effectuee', 1) ;
|
- |
|
653 |
|
- |
|
654 |
// Ajout des options si un type de fiche a ete choisie
|
- |
|
655 |
if (isset($_POST['nature']) || isset($GLOBALS['_BAZAR_']['categorie_nature'])) {
|
- |
|
656 |
if ($GLOBALS['_BAZAR_']['categorie_nature'] != '') {
|
- |
|
657 |
$champs_requete = 'bn_ce_id_menu' ;
|
- |
|
658 |
$_POST['nature'] = $GLOBALS['_BAZAR_']['categorie_nature'];
|
- |
|
659 |
} else {
|
- |
|
660 |
$champs_requete = 'bn_id_nature' ;
|
- |
|
661 |
}
|
- |
|
662 |
// Récupération du template
|
- |
|
663 |
$requete = 'select bn_template from bazar_nature where '.$champs_requete.'='.$_POST['nature'];
|
- |
|
664 |
$resultat = $GLOBALS['_BAZAR_']['db']->getOne($requete) ;
|
- |
|
665 |
if (DB::isError($resultat)) {
|
- |
|
666 |
die ($resultat->getMessage().$resultat->getDebugInfo()) ;
|
- |
|
667 |
}
|
- |
|
668 |
|
- |
|
669 |
$tableau = baz_valeurs_template($resultat) ;
|
- |
|
670 |
|
- |
|
671 |
for ($i=0; $i<count($tableau); $i++) {
|
- |
|
672 |
if ($tableau[$i]['type'] == 'liste' || $tableau[$i]['type'] == 'checkbox') {
|
- |
|
673 |
if ($tableau[$i]['type'] == 'checkbox') {
|
- |
|
674 |
$formtemplate->addElement ('html', '<br />'.$tableau[$i]['label'].'<br />') ;
|
- |
|
675 |
}
|
- |
|
676 |
$tableau[$i]['type']($formtemplate, $tableau[$i]['nom_bdd'], $tableau[$i]['label'], $tableau[$i]['limite1'],
|
- |
|
677 |
$tableau[$i]['limite2'], $tableau[$i]['defaut'], $tableau[$i]['table_source'], $tableau[$i]['obligatoire']) ;
|
- |
|
678 |
}
|
651 |
$formtemplate->addElement('hidden', 'recherche_effectuee', 1) ;
|
679 |
}
|
652 |
|
680 |
}
|
653 |
//Bouton de validation du formulaire
|
681 |
//Bouton de validation du formulaire
|
654 |
$option=array('style'=>'border:1px solid #000;width:80px;font:12px Myriad, Arial, sans-serif;');
|
682 |
$option=array('style'=>'border:1px solid #000;width:80px;font:12px Myriad, Arial, sans-serif;');
|
Line 655... |
Line 683... |
655 |
$bouton[] = &HTML_QuickForm::createElement('submit', 'rechercher', BAZ_RECHERCHER, $option);
|
683 |
$bouton[] = &HTML_QuickForm::createElement('submit', 'rechercher', BAZ_RECHERCHER, $option);
|
656 |
$formtemplate->addGroup($bouton, null, null, '');
|
684 |
$formtemplate->addGroup($bouton, null, null, '');
|
Line -... |
Line 685... |
- |
|
685 |
|
- |
|
686 |
//affichage du formulaire
|
- |
|
687 |
$res.=$formtemplate->toHTML()."\n";
|
- |
|
688 |
|
- |
|
689 |
// Ajout de la table bazar_fiche_liste_valeur dans le from de la requete
|
- |
|
690 |
$case_coche = false ;
|
- |
|
691 |
$requeteFrom = '' ;
|
- |
|
692 |
$requeteWhere = '' ;
|
- |
|
693 |
$requeteWhereListe = '' ;
|
- |
|
694 |
|
- |
|
695 |
for ($i = 0; $i < count ($tableau); $i++) {
|
- |
|
696 |
if ($tableau[$i]['type'] == 'checkbox' || $tableau[$i]['type'] == 'liste') {
|
- |
|
697 |
$nom_liste = $tableau[$i]['type'].$tableau[$i]['nom_bdd'] ;
|
- |
|
698 |
|
- |
|
699 |
if (is_array($_POST[$nom_liste])) {
|
- |
|
700 |
foreach ($_POST[$nom_liste] as $cle =>$valeur) {
|
- |
|
701 |
echo $valeur ;
|
- |
|
702 |
if ($valeur == 1) {
|
- |
|
703 |
$case_coche = true ;
|
- |
|
704 |
$requeteWhereListe .= ' AND bfvl_ce_liste='.$tableau[$i]['nom_bdd'] ; // Numéro de la liste
|
- |
|
705 |
|
- |
|
706 |
}
|
- |
|
707 |
}
|
- |
|
708 |
}
|
- |
|
709 |
}
|
- |
|
710 |
}
|
- |
|
711 |
if ($case_coche) {
|
- |
|
712 |
$requeteFrom = ', bazar_fiche_valeur_liste ' ;
|
657 |
|
713 |
$requeteWhereListe .= ' AND bfvl_valeur IN ()' ;
|
658 |
//affichage du formulaire
|
714 |
$requeteWhere = ' bfvl_ce_fiche=bf_id_fiche'.$requeteWhereListe;
|
659 |
$res.=$formtemplate->toHTML()."\n";
|
715 |
}
|
660 |
|
716 |
|
661 |
//affichage des resultats de la recherche si le formulaire a ete envoye
|
717 |
//affichage des resultats de la recherche si le formulaire a ete envoye
|
Line 682... |
Line 738... |
682 |
if ($typeannonce!='toutes') $typedefiches=$typeannonce;
|
738 |
if ($typeannonce!='toutes') $typedefiches=$typeannonce;
|
683 |
if (isset($_POST['valides'])) {$valides=$_POST['valides'];}
|
739 |
if (isset($_POST['valides'])) {$valides=$_POST['valides'];}
|
684 |
else {$valides=1;}
|
740 |
else {$valides=1;}
|
685 |
//generation de la liste de flux a afficher
|
741 |
//generation de la liste de flux a afficher
|
Line 686... |
Line 742... |
686 |
|
742 |
|
687 |
$res .= RSSversHTML(gen_RSS($typedefiches, '', $_POST['personnes'], $valides, $requeteSQL),
|
743 |
$res .= RSSversHTML(gen_RSS($typedefiches, '', $_POST['personnes'], $valides, $requeteSQL, $requeteFrom),
|
688 |
0, BAZ_TYPE_AFFICHAGE_LISTE, 1) ;
|
744 |
0, BAZ_TYPE_AFFICHAGE_LISTE, 1) ;
|
689 |
}
|
745 |
}
|
690 |
else {
|
746 |
else {
|
691 |
//on affiche toutes les annonces
|
747 |
//on affiche toutes les annonces
|