Subversion Repositories Applications.bazar

Rev

Rev 57 | Rev 67 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 57 Rev 64
Line 28... Line 28...
28
		else {$tableau[$nblignes]['table_source'] ='';}
28
		else {$tableau[$nblignes]['table_source'] ='';}
29
		if (isset($souschaine[7])) $tableau[$nblignes]['id_source'] = trim($souschaine[7]);
29
		if (isset($souschaine[7])) $tableau[$nblignes]['id_source'] = trim($souschaine[7]);
30
		else {$tableau[$nblignes]['id_source'] ='';}
30
		else {$tableau[$nblignes]['id_source'] ='';}
31
		if (isset($souschaine[8])) $tableau[$nblignes]['obligatoire'] = trim($souschaine[8]);
31
		if (isset($souschaine[8])) $tableau[$nblignes]['obligatoire'] = trim($souschaine[8]);
32
		else {$tableau[$nblignes]['obligatoire'] ='';}
32
		else {$tableau[$nblignes]['obligatoire'] ='';}
-
 
33
		if (isset($souschaine[8])) $tableau[$nblignes]['recherche'] = trim($souschaine[9]);
-
 
34
		else {$tableau[$nblignes]['recherche'] ='';}
33
		$nblignes++;
35
		$nblignes++;
34
	}
36
	}
35
	return $tableau;
37
	return $tableau;
36
}
38
}
Line 376... Line 378...
376
*   @param  boolean  afficher ou non la description
378
*   @param  boolean  afficher ou non la description
377
*   @param  string  choisir le format de date: jmah (12/02/2004 12h34) jmh (12/02 12h34) jma (12/02/2004) jm (12/02) ou rien
379
*   @param  string  choisir le format de date: jmah (12/02/2004 12h34) jmh (12/02 12h34) jma (12/02/2004) jm (12/02) ou rien
378
*
380
*
379
*   @return  string    le code HTML
381
*   @return  string    le code HTML
380
*/
382
*/
381
function RSSversHTML($rss, $voirdesc, $formatdate) {
383
function RSSversHTML($rss, $voirdesc, $formatdate, $affichenb) {
382
	if ($rss!='') {
384
	if ($rss!='') {
383
		$rawitems='';$title='';$url='';$cat='';$date='';
385
		$rawitems='';$title='';$url='';$cat='';$date='';
384
		$res='';
386
		$res='';
385
		if( eregi('<item>(.*)</item>', $rss, $rawitems ) ) {
387
		if( eregi('<item>(.*)</item>', $rss, $rawitems ) ) {
386
			$items = explode('<item>', $rawitems[0]);
388
			$items = explode('<item>', $rawitems[0]);
Line 398... Line 400...
398
				$res.='<a href="'.preg_replace ('/&amp;/', '&', $url[1]).'">'.$title[1].'</a><br />';
400
				$res.='<a href="'.preg_replace ('/&amp;/', '&', $url[1]).'">'.$title[1].'</a><br />';
399
				if ($voirdesc) {$res.=$cat[1];}
401
				if ($voirdesc) {$res.=$cat[1];}
400
				$res.='</li>'."\n";
402
				$res.='</li>'."\n";
401
			}
403
			}
402
			$res.='</ul>'."\n";
404
			$res.='</ul>'."\n";
-
 
405
			if ($affichenb==1) {
-
 
406
				//une annonce trouvee, on accorde au singulier
-
 
407
				if (((count($items)-1)==1)and($title!=BAZ_PAS_D_ANNONCES)) {
-
 
408
					$res = '<br /><h4>'.BAZ_IL_Y_A.' 1 '.BAZ_FICHE_CORRESPONDANTE.'</h4><br />'."\n".$res;
-
 
409
				}
-
 
410
				//plusieures annonces trouvees, on accorde au pluriel
-
 
411
				else {
-
 
412
					$res = '<br /><h4>'.BAZ_IL_Y_A.(count($items)-1).' '.BAZ_FICHES_CORRESPONDANTES.'</h4><br />'."\n".$res;
-
 
413
				}
-
 
414
			}
-
 
415
			//cas des fiches pas trouvées
-
 
416
			if (((count($items)-1)==1)and($title[1]==BAZ_PAS_D_ANNONCES)) {
-
 
417
				$res = '<br /><h4>'.BAZ_PAS_D_ANNONCES.'</h4><br />'."\n";
-
 
418
			}  
403
		}
419
		}
404
	}
420
	}
405
	else $res = BAZ_PAS_D_ANNONCES;
421
	else $res = BAZ_PAS_D_ANNONCES;
406
	return $res;
422
	return $res;
407
}
423
}
Line 410... Line 426...
410
*
426
*
411
* @param   string Le type de l'annonce (laisser vide pour tout type d'annonce)
427
* @param   string Le type de l'annonce (laisser vide pour tout type d'annonce)
412
* @param   integer Le nombre d'annonces a regrouper dans le fichier XML (laisser vide pour toutes)
428
* @param   integer Le nombre d'annonces a regrouper dans le fichier XML (laisser vide pour toutes)
413
* @param   integer L'identifiant de l'emetteur (laisser vide pour tous)
429
* @param   integer L'identifiant de l'emetteur (laisser vide pour tous)
414
* @param   integer L'état de validation de l'annonce (laisser 1 pour les annonces validées, 0 pour les non-validées)
430
* @param   integer L'état de validation de l'annonce (laisser 1 pour les annonces validées, 0 pour les non-validées)
415
* @param   string La requête SQL personnalisée
431
* @param   string La requête SQL personnalisee
416
*
432
*
417
* @return  string Le code du flux RSS
433
* @return  string Le code du flux RSS
418
*/
434
*/
419
function gen_RSS($typeannonce='', $nbitem='', $emetteur='', $valide=1, $requeteSQL='') {
435
function gen_RSS($typeannonce='', $nbitem='', $emetteur='', $valide=1, $requeteSQL='') {
420
	// génération de la requete MySQL personnalisée
436
	// generation de la requete MySQL personnalisee
-
 
437
	$req_where=0;
421
	$requete = 'SELECT DISTINCT bf_id_fiche, bf_titre, bf_date_debut_validite_fiche, bn_label_nature FROM bazar_fiche, bazar_nature';
438
	$requete = 'SELECT DISTINCT bf_id_fiche, bf_titre, bf_date_debut_validite_fiche FROM bazar_fiche, bazar_nature WHERE ';
-
 
439
	if ($valide!=2) {
422
	$requete .= ' WHERE bf_statut_fiche='.$valide;
440
		$requete .= 'bf_statut_fiche='.$valide;
-
 
441
		$req_where=1;
-
 
442
	}
423
	$nomflux=BAZ_DERNIERE_ACTU;
443
	$nomflux=BAZ_DERNIERE_ACTU;
424
	if (($typeannonce!='')and($typeannonce!='toutes')) {
444
	if (($typeannonce!='')and($typeannonce!='toutes')) {
-
 
445
		if ($req_where==1) {$requete .= ' AND ';}
425
		$requete .= ' AND bn_label_nature="'.$typeannonce.'"';
446
		$requete .= 'bf_ce_nature='.$typeannonce;
-
 
447
		$req_where=1;
426
		//le nom du flux devient le type d'annonce
448
		//le nom du flux devient le type d'annonce
427
		$nomflux = $typeannonce;
449
		$nomflux = $typeannonce;
428
	}
450
	}
-
 
451
	if ($valide!=0) {
-
 
452
		if ($req_where==1) {$requete .= ' AND ';}
429
	if ($valide!=0) $requete .= ' AND (bf_date_debut_validite_fiche<=NOW() or bf_date_debut_validite_fiche="0000-00-00")'.
453
		$requete .= '(bf_date_debut_validite_fiche<=NOW() or bf_date_debut_validite_fiche="0000-00-00")'.
430
					' AND (bf_date_fin_validite_fiche>=NOW() or bf_date_fin_validite_fiche="0000-00-00") AND bn_id_nature=bf_ce_nature';
454
					' AND (bf_date_fin_validite_fiche>=NOW() or bf_date_fin_validite_fiche="0000-00-00") AND bn_id_nature=bf_ce_nature';
-
 
455
		$req_where=1;
-
 
456
	}
431
	else $nomflux .= BAZ_A_MODERER;
457
	else $nomflux .= BAZ_A_MODERER;
432
	if (($emetteur!='')and($emetteur!='tous')) {
458
	if (($emetteur!='')and($emetteur!='tous')) {
-
 
459
		if ($req_where==1) {$requete .= ' AND ';}
433
		$requete .= ' AND bf_ce_utilisateur='.$emetteur;
460
		$requete .= 'bf_ce_utilisateur='.$emetteur;
-
 
461
		$req_where=1;
434
		//requete pour afficher le nom de la structure
462
		//requete pour afficher le nom de la structure
435
		$requetenom = 'SELECT '.BAZ_CHAMPS_NOM.', '.BAZ_CHAMPS_PRENOM.' FROM '.BAZ_ANNUAIRE.' WHERE '.BAZ_CHAMPS_ID.'='.$emetteur;
463
		$requetenom = 'SELECT '.BAZ_CHAMPS_NOM.', '.BAZ_CHAMPS_PRENOM.' FROM '.BAZ_ANNUAIRE.' WHERE '.BAZ_CHAMPS_ID.'='.$emetteur;
436
		$resultat = $GLOBALS['_BAZAR_']['db']->query($requetenom) ;
464
		$resultat = $GLOBALS['_BAZAR_']['db']->query($requetenom) ;
437
		if (DB::isError($resultat)) {
465
		if (DB::isError($resultat)) {
438
			die ($resultat->getMessage().$resultat->getDebugInfo()) ;
466
			die ($resultat->getMessage().$resultat->getDebugInfo()) ;
439
		}
467
		}
440
		$ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC);
468
		$ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC);
441
		$nomflux .= ' ('.$ligne[BAZ_CHAMPS_NOM].' '.$ligne[BAZ_CHAMPS_PRENOM].')';
469
		$nomflux .= ' ('.$ligne[BAZ_CHAMPS_NOM].' '.$ligne[BAZ_CHAMPS_PRENOM].')';
442
	}
470
	}
-
 
471
	if ($requeteSQL!='') {
-
 
472
		if ($req_where==1) {$requete .= ' AND ';}
443
	if ($requeteSQL!='') $requete .= ' AND ('.$requeteSQL.')';
473
		$requete .= '('.$requeteSQL.')';
-
 
474
		$req_where=1;
-
 
475
	}
444
	$requete .= ' ORDER BY  bf_date_debut_validite_fiche DESC, bf_date_fin_validite_fiche DESC, bf_date_maj_fiche DESC';
476
	$requete .= ' ORDER BY  bf_date_debut_validite_fiche DESC, bf_date_fin_validite_fiche DESC, bf_date_maj_fiche DESC';
445
	if ($nbitem!='') {$requete .= ' LIMIT 0,'.$nbitem;}
477
	if ($nbitem!='') {$requete .= ' LIMIT 0,'.$nbitem;}
446
	$resultat = $GLOBALS['_BAZAR_']['db']->query($requete) ;
478
	$resultat = $GLOBALS['_BAZAR_']['db']->query($requete) ;
447
	if (DB::isError($resultat)) {
479
	if (DB::isError($resultat)) {
448
		die ($GLOBALS['_BAZAR_']['db']->getMessage().$GLOBALS["db"]->getDebugInfo()) ;
480
		die ($GLOBALS['_BAZAR_']['db']->getMessage().$GLOBALS["db"]->getDebugInfo()) ;
449
	}
481
	}
450
	// En-tête du flux RSS version 2.0
482
	// En-tete du flux RSS version 2.0
451
	$xml = '<?xml version="1.0" encoding="ISO-8859-1"?>'."\n".'<rss version="2.0">'."\n";
483
	$xml = '<?xml version="1.0" encoding="ISO-8859-1"?>'."\n".'<rss version="2.0">'."\n";
452
	$xml .= '<channel>'."\n".'<title>'.$nomflux.'</title>'."\n".'<link>'.BAZ_RSS_ADRESSESITE.'</link>'."\n";
484
	$xml .= '<channel>'."\n".'<title>'.$nomflux.'</title>'."\n".'<link>'.BAZ_RSS_ADRESSESITE.'</link>'."\n";
453
	$xml .= '<description>'.BAZ_RSS_DESCRIPTIONSITE.'</description>'."\n".'<language>fr-FR</language>'."\n".
485
	$xml .= '<description>'.BAZ_RSS_DESCRIPTIONSITE.'</description>'."\n".'<language>fr-FR</language>'."\n".
454
	'<copyright>Copyright 2005 '.BAZ_RSS_NOMSITE.'</copyright>'."\n";
486
	'<copyright>Copyright 2005 '.BAZ_RSS_NOMSITE.'</copyright>'."\n";
455
	// Ajout de la date actuelle de publication (suivant la DTD RSS)
487
	// Ajout de la date actuelle de publication (suivant la DTD RSS)
456
	$xml .= '<lastBuildDate>'.strftime('%d %b %Y %H:%M:%S GMT').'</lastBuildDate>'."\n";
488
	$xml .= '<lastBuildDate>'.strftime('%d %b %Y %H:%M:%S GMT').'</lastBuildDate>'."\n";
457
	// En-tête suite et fin
489
	// En-tete suite et fin
458
	$xml .= '<docs>http://www.stervinou.com/projets/rss/</docs>'."\n".'<category>'.BAZ_RSS_CATEGORIE.'</category>'."\n".
490
	$xml .= '<docs>http://www.stervinou.com/projets/rss/</docs>'."\n".'<category>'.BAZ_RSS_CATEGORIE.'</category>'."\n".
459
	'<managingEditor>'.BAZ_RSS_MANAGINGEDITOR.'</managingEditor>'."\n".'<webMaster>'.BAZ_RSS_WEBMASTER.'</webMaster>'."\n";
491
	'<managingEditor>'.BAZ_RSS_MANAGINGEDITOR.'</managingEditor>'."\n".'<webMaster>'.BAZ_RSS_WEBMASTER.'</webMaster>'."\n";
460
	$xml .= '<ttl>60</ttl>'."\n".'<image>'."\n".'<title>'.BAZ_RSS_NOMSITE.'</title>'."\n".'<url>'.BAZ_RSS_LOGOSITE.'</url>'."\n".
492
	$xml .= '<ttl>60</ttl>'."\n".'<image>'."\n".'<title>'.BAZ_RSS_NOMSITE.'</title>'."\n".'<url>'.BAZ_RSS_LOGOSITE.'</url>'."\n".
461
	'<link>'.BAZ_RSS_ADRESSESITE.'</link>'."\n".'</image>'."\n";
493
	'<link>'.BAZ_RSS_ADRESSESITE.'</link>'."\n".'</image>'."\n";
462
	if ($resultat->numRows()>0) {
494
	if ($resultat->numRows()>0) {
Line 486... Line 518...
486
}
518
}
Line 487... Line 519...
487
 
519
 
488
 
520
 
489
/** baz_liste() Formate la liste de toutes les annonces actuelles
521
/** baz_liste() Formate la liste de toutes les annonces actuelles
490
*
522
*
491
*   @return  string    le code HTML à afficher
523
*   @return  string    le code HTML a afficher
492
*/
-
 
493
function baz_liste($typeannonce='toutes') {
-
 
494
	
-
 
495
	//titre 
-
 
496
	if ($typeannonce=='toutes') $res= '<h2>'.BAZ_TOUTES_LES_ANNONCES.'</h2>'."\n";
-
 
497
	else $res = '<h2>'.BAZ_TOUTES_LES_ANNONCES_DE_TYPE.$typeannonce.'</h2>'."\n";
524
*/
498
		
525
function baz_liste($typeannonce='toutes') {
499
	//creation du lien pour le formulaire de recherche
526
	//creation du lien pour le formulaire de recherche
500
	$GLOBALS['_BAZAR_']['url']->addQueryString('action', BAZ_VOIR_TOUTES_ANNONCES);
527
	$GLOBALS['_BAZAR_']['url']->addQueryString('action', BAZ_VOIR_TOUTES_ANNONCES);
501
	$lien_formulaire=preg_replace ('/&amp;/', '&', $GLOBALS['_BAZAR_']['url']->getURL()) ;
528
	$lien_formulaire=preg_replace ('/&amp;/', '&', $GLOBALS['_BAZAR_']['url']->getURL()) ;
502
	$formtemplate = new HTML_QuickForm('formulaire', 'post', $lien_formulaire) ;
529
	$formtemplate = new HTML_QuickForm('formulaire', 'post', $lien_formulaire) ;
503
	$squelette =&$formtemplate->defaultRenderer();
530
	$squelette =&$formtemplate->defaultRenderer();
-
 
531
	$squelette->setFormTemplate("\n".'<form{attributes}>'."\n".'<ul style="padding:0;margin:0;">'."\n".'{content}'."\n".'</ul>'."\n".'</form>'."\n");
-
 
532
	$squelette->setElementTemplate( '<li class="enligne">'."\n".'{element}'."\n".'</li>'."\n");
-
 
533
		
-
 
534
	//cas du formulaire de recherche proposant de chercher parmis tous les types d'annonces 
504
	$squelette->setFormTemplate("\n".'<form{attributes}>'."\n".'<ul>'."\n".'{content}'."\n".'</ul>'."\n".'</form>'."\n");
535
	if ($typeannonce=='toutes') {
505
	$squelette->setElementTemplate( '<li class="enligne">'."\n".'{element}'."\n".'</li>'."\n");
536
		$res= '<h2>'.BAZ_TOUTES_LES_ANNONCES.'</h2><br />'."\n";
506
	//requete pour obtenir l'id et le label des types d'annonces
537
		//requete pour obtenir l'id et le label des types d'annonces
507
	$requete = 'SELECT bn_label_nature '.
538
		$requete = 'SELECT bn_id_nature, bn_label_nature '.
508
	           'FROM bazar_nature WHERE bn_ce_id_menu='.$GLOBALS['_GEN_commun']['info_menu']->gm_id_menu.
539
		           'FROM bazar_nature WHERE bn_ce_id_menu='.$GLOBALS['_BAZAR_']['categorie_nature'].' '.
509
		   '  or  bn_ce_id_menu=0 ORDER BY bn_label_nature ASC';
540
				   'ORDER BY bn_label_nature ASC';
510
	$resultat = $GLOBALS['_BAZAR_']['db']->query($requete) ;
541
		$resultat = $GLOBALS['_BAZAR_']['db']->query($requete) ;
-
 
542
		if (DB::isError($resultat)) {
-
 
543
			die ($resultat->getMessage().$resultat->getDebugInfo()) ;
-
 
544
		}
-
 
545
		$type_annonce_select['toutes']=BAZ_TOUS_TYPES_FICHES;
-
 
546
		while ($ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC)) {
-
 
547
			$type_annonce_select[$ligne['bn_id_nature']] = constant($ligne['bn_label_nature']);
-
 
548
		}
511
	if (DB::isError($resultat)) {
549
		$option=array('style'=>'border:1px solid #000;width: 140px;font:12px Myriad, Arial, sans-serif;');
-
 
550
		$formtemplate->addElement ('select', 'nature', BAZ_TYPEANNONCE, $type_annonce_select, $option) ;
-
 
551
	}
-
 
552
	//cas du type d'annonces prédéfini 
-
 
553
	else {
-
 
554
		//requete pour obtenir le label du type d'annonce
-
 
555
		$requete = 'SELECT bn_label_nature '.
512
		die ($resultat->getMessage().$resultat->getDebugInfo()) ;
556
		           'FROM bazar_nature WHERE bn_id_nature='.$typeannonce.' '.
-
 
557
				   'ORDER BY bn_label_nature ASC';
-
 
558
		$resultat = $GLOBALS['_BAZAR_']['db']->query($requete) ;
-
 
559
		if (DB::isError($resultat)) {
513
	}
560
			die ($resultat->getMessage().$resultat->getDebugInfo()) ;
514
	$type_annonce_select['toutes']=BAZ_TOUS_TYPES_FICHES;
561
		}
-
 
562
		while ($ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC)) {
-
 
563
			$nom_typeannonce = constant($ligne['bn_label_nature']) ;
515
	while ($ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC)) {
564
		}
516
		$type_annonce_select[$ligne['bn_label_nature']] = $ligne['bn_label_nature'];
-
 
517
	}
-
 
518
	$option=array('style'=>'width: 160px;');
565
		$res = '<h2>'.BAZ_TOUTES_LES_ANNONCES_DE_TYPE.' '.$nom_typeannonce.'</h2>'."\n";
519
	$formtemplate->addElement ('select', 'nature', BAZ_TYPEANNONCE, $type_annonce_select, $option) ;
566
	}
520
	
567
		
521
	//requete pour obtenir l'id, le nom et prénom de toutes les personnes ayant une fiche publiée actuellement
568
	//requete pour obtenir l'id, le nom et prenom de toutes les personnes ayant depose une fiche
522
	$requete = 'SELECT '.BAZ_CHAMPS_ID.', '.BAZ_CHAMPS_NOM.', '.BAZ_CHAMPS_PRENOM.' '.
569
	$requete = 'SELECT '.BAZ_CHAMPS_ID.', '.BAZ_CHAMPS_NOM.', '.BAZ_CHAMPS_PRENOM.' '.
-
 
570
	           'FROM bazar_fiche,'.BAZ_ANNUAIRE.' '.
-
 
571
		       'WHERE bf_date_debut_validite_fiche<=NOW() AND bf_date_fin_validite_fiche>=NOW() AND bf_ce_utilisateur='.BAZ_CHAMPS_ID.' ';
-
 
572
    if (!isset($_REQUEST['nature'])) {
-
 
573
    	if ($GLOBALS['_BAZAR_']['id_nature']!='toutes') {
-
 
574
    		$requete .= 'AND bf_ce_nature='.$GLOBALS['_BAZAR_']['id_nature'].' ';
-
 
575
    	} 
-
 
576
    }
-
 
577
    else {
-
 
578
    	if ($_REQUEST['nature']!='toutes') {
-
 
579
    		$requete .= 'AND bf_ce_nature='.$_REQUEST['nature'].' ';
-
 
580
    	}
523
	           'FROM bazar_fiche,'.BAZ_ANNUAIRE.' '.
581
    }
524
		   'WHERE bf_statut_fiche=1 AND bf_date_debut_validite_fiche<=NOW() AND bf_date_fin_validite_fiche>=NOW() AND bf_ce_utilisateur='.BAZ_CHAMPS_ID.' '.
582
    
525
		   'ORDER BY '.BAZ_CHAMPS_NOM.' ASC';
583
    $requete .= 'ORDER BY '.BAZ_CHAMPS_NOM.' ASC';
526
	$resultat = $GLOBALS['_BAZAR_']['db']->query($requete) ;
584
	$resultat = $GLOBALS['_BAZAR_']['db']->query($requete) ;
527
	if (DB::isError($resultat)) {
585
	if (DB::isError($resultat)) {
528
		die ($resultat->getMessage().$resultat->getDebugInfo()) ;
586
		die ($resultat->getMessage().$resultat->getDebugInfo()) ;
529
	}
587
	}
530
	$personnes_select['tous']=BAZ_TOUS_LES_EMETTEURS;
588
	$personnes_select['tous']=BAZ_TOUS_LES_EMETTEURS;
531
	while ($ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC)) {
589
	while ($ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC)) {
532
		$personnes_select[$ligne[BAZ_CHAMPS_ID]] = $ligne[BAZ_CHAMPS_NOM]." ".$ligne[BAZ_CHAMPS_PRENOM] ;
590
		$personnes_select[$ligne[BAZ_CHAMPS_ID]] = $ligne[BAZ_CHAMPS_NOM]." ".$ligne[BAZ_CHAMPS_PRENOM] ;
533
	}
591
	}
Line -... Line 592...
-
 
592
	$option=array('style'=>'border:1px solid #000;width: 140px;font:12px Myriad, Arial, sans-serif;');
-
 
593
	$formtemplate->addElement ('select', 'personnes', BAZ_EMETTEUR, $personnes_select, $option) ;
-
 
594
	
-
 
595
	//pour les super-administrateurs, on peut voir les annonces non validées
-
 
596
	//on verifie si l'utilisateur est administrateur
-
 
597
	$est_admin=0;
-
 
598
	if ($GLOBALS['AUTH']->getAuth()) {
-
 
599
		if (niveau_droit('0',$GLOBALS['AUTH']->getAuthData(BAZ_CHAMPS_ID))=='superadministrateur')
-
 
600
		{
-
 
601
		        $est_admin=1;
-
 
602
		}
-
 
603
	}
-
 
604
	if ($est_admin==1) {
-
 
605
		$option=array('style'=>'border:1px solid #000;width: 60px;font:12px Myriad, Arial, sans-serif;');
-
 
606
		$valide_select[0] = BAZ_FICHES_PAS_VALIDEES;
-
 
607
		$valide_select[1] = BAZ_FICHES_VALIDEES;
-
 
608
		$valide_select[2] = BAZ_LES_DEUX;
-
 
609
		$formtemplate->addElement ('select', 'valides', BAZ_VALIDE, $valide_select, $option) ; 
-
 
610
		$defauts=array('valides'=>2);
534
	$option=array('style'=>'width: 160px;');
611
		$formtemplate->setDefaults($defauts);
535
	$formtemplate->addElement ('select', 'personnes', BAZ_EMETTEUR, $personnes_select, $option) ;
612
	}
536
	
613
	
537
	//champs texte pour entrer les mots clés
614
	//champs texte pour entrer les mots cles
538
	$option=array('size'=>15,'maxlength'=>40);
615
	$option=array('maxlength'=>60,'style'=>'border:1px solid #000;width:100px;font:12px Myriad, Arial, sans-serif;');
-
 
616
	$formtemplate->addElement('text', 'recherche_mots_cles', BAZ_MOT_CLE, $option) ;
-
 
617
	$defauts=array('recherche_mots_cles'=>BAZ_MOT_CLE);
-
 
618
	$formtemplate->setDefaults($defauts);
-
 
619
	
539
	$formtemplate->addElement('text', 'recherche_mots_cles', BAZ_MOT_CLE, $option) ;
620
	//option cachee pour savoir si le formulaire a ete appele deja 
-
 
621
	$formtemplate->addElement('hidden', 'recherche_effectuee', 1) ;
540
	$defauts=array('recherche_mots_cles'=>BAZ_MOT_CLE);
622
	
541
	$formtemplate->setDefaults($defauts);
623
	//Bouton de validation du formulaire
-
 
624
	$option=array('style'=>'border:1px solid #000;width:50px;font:12px Myriad, Arial, sans-serif;');
-
 
625
	$bouton[] = &HTML_QuickForm::createElement('submit', 'valider', BAZ_VALIDER, $option);
542
	//Bouton de validation du formulaire
626
	$formtemplate->addGroup($bouton, null, null, '');
543
	$bouton[] = &HTML_QuickForm::createElement('submit', 'valider', BAZ_VALIDER);
-
 
-
 
627
	
544
	$formtemplate->addGroup($bouton, null, null, '');
628
	//affichage du formulaire
545
	$res.=$formtemplate->toHTML()."\n";
629
	$res.=$formtemplate->toHTML()."\n";
546
	$requeteSQL='';
630
	
547
	//affichage des résultats de la recherche si le formulaire a été envoyé
631
	//affichage des resultats de la recherche si le formulaire a ete envoye
548
	if (isset($_POST['nature'])) {
632
	if (isset($_REQUEST['recherche_effectuee'])) {
549
		//préparation de la requète pour trouver les mots clés
633
		//preparation de la requete pour trouver les mots cles
550
		if (($_POST['recherche_mots_cles']!='')and($_POST['recherche_mots_cles']!=BAZ_MOT_CLE)) {
634
		if (($_POST['recherche_mots_cles']!='')and($_POST['recherche_mots_cles']!=BAZ_MOT_CLE)) {
-
 
635
			//decoupage des mots cles
551
			//découpage des mots clés
636
			$recherche = split(' ', $_POST['recherche_mots_cles']) ;
552
			$recherche = split(' ', $_POST['recherche_mots_cles']) ;
637
			$nbmots=count($recherche);
553
			$nbmots=count($recherche); 
638
			$requeteSQL=''; 
554
			for ($i=0; $i<$nbmots; $i++) {
639
			for ($i=0; $i<$nbmots; $i++) {
555
				if ($i>0) $requeteSQL.=' OR ';
640
				if ($i>0) $requeteSQL.=' OR ';
-
 
641
				$requeteSQL.='bf_titre LIKE "%'.$recherche[$i].'%" OR bf_description LIKE "%'.$recherche[$i].'%" ';
-
 
642
			}
-
 
643
		}
-
 
644
		if (!isset($_REQUEST['nature'])) {$typedefiches=$GLOBALS['_BAZAR_']['id_nature'] ; }
-
 
645
		else {$typedefiches=$_REQUEST['nature'] ; }
556
				$requeteSQL.='bf_titre LIKE "%'.$recherche[$i].'%" OR bf_description LIKE "%'.$recherche[$i].'%" ';
646
		
557
			}
647
		if (isset($_POST['valides'])) {$valides=$_POST['valides'];}
558
		}
648
		else {$valides=1;}
559
		//génération de la liste de flux à afficher
649
		//generation de la liste de flux a afficher
560
		$res.=RSSversHTML(gen_RSS($_POST['nature'], '', $_POST['personnes'], 1, $requeteSQL), 1, BAZ_TYPE_AFFICHAGE_LISTE) ;
650
		$res.=RSSversHTML(gen_RSS($typedefiches, '', $_POST['personnes'], $valides, $requeteSQL), 1, BAZ_TYPE_AFFICHAGE_LISTE, 1) ;
561
	}
651
	}
562
	else {
652
	else {
563
		//on affiche toutes les annonces
653
		//on affiche toutes les annonces
564
		$res .= RSSversHTML(gen_RSS($typeannonce, '', '', 1, ''), 0, 'jm') ;		
654
		$res .= '<br />'."\n".BAZ_ENTRER_VOS_CRITERES_DE_RECHERCHE;		
565
	}
655
	}
566
	return $res;
656
	return $res;