Subversion Repositories Applications.bazar

Rev

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

Rev 419 Rev 422
Line 363... Line 363...
363
				$res .= '</div>'."\n";
363
				$res .= '</div>'."\n";
364
			}
364
			}
365
		}
365
		}
366
		$res .= '</div>'."\n";
366
		$res .= '</div>'."\n";
367
		$res .= '</div>'."\n";
367
		$res .= '</div>'."\n";
-
 
368
		
368
	}
369
	}
Line 369... Line 370...
369
 
370
 
370
	// Nous vérifions comment est appelé la fonction
371
	// Nous vérifions comment est appelé la fonction
371
	if ($danslappli == 0) {
372
	if ($danslappli == 0) {
Line 817... Line 818...
817
*
818
*
818
*   @return  string    le code HTML a afficher
819
*   @return  string    le code HTML a afficher
819
*/
820
*/
820
function baz_liste($typeannonce='toutes') {
821
function baz_liste($typeannonce='toutes') {
Line -... Line 822...
-
 
822
 
821
 
823
 
-
 
824
	if(isset($_REQUEST['liste31']) && !empty($_REQUEST['liste31'])) { 
-
 
825
		
-
 
826
		if($_REQUEST['liste31'] != "0")
822
	if(isset($_REQUEST['liste31']) && !empty($_REQUEST['liste31'])) { 
827
		{
-
 
828
			$GLOBALS['_BAZAR_']['categorie_nature'] = $_REQUEST['liste31'] ;
-
 
829
		}
-
 
830
		else
-
 
831
		{
-
 
832
			$GLOBALS['_BAZAR_']['categorie_nature'] = 'toutes' ;
823
		$GLOBALS['_BAZAR_']['categorie_nature'] = $_REQUEST['liste31'] ;
833
		}
Line 824... Line 834...
824
	}
834
	}
825
	
835
	
826
	//pour les super-administrateurs, on peut voir les annonces non validees
836
	//pour les super-administrateurs, on peut voir les annonces non validees
Line 845... Line 855...
845
  	  	
855
  	  	
846
 	$squelette->setRequiredNoteTemplate("\n".'<tr>'."\n".'<td colspan="2" class="symbole_obligatoire">* {requiredNote}</td></tr>'."\n");
856
 	$squelette->setRequiredNoteTemplate("\n".'<tr>'."\n".'<td colspan="2" class="symbole_obligatoire">* {requiredNote}</td></tr>'."\n");
847
	//Traduction de champs requis
857
	//Traduction de champs requis
848
	$formtemplate->setRequiredNote(BAZ_CHAMPS_REQUIS) ;
858
	$formtemplate->setRequiredNote(BAZ_CHAMPS_REQUIS) ;
-
 
859
	$formtemplate->setJsWarnings(BAZ_ERREUR_SAISIE,BAZ_VEUILLEZ_CORRIGER);
-
 
860
	GEN_stockerFichierScript('jquery', 'http://code.jquery.com/jquery-latest.js');
-
 
861
                    GEN_stockerFichierScript('jquery_date_picker', 'api/js/jquery/ui.datepicker.js');
-
 
862
                    GEN_stockerFichierScript('jquery_date_picker_fr', 'api/js/jquery/ui.datepicker-fr.js');
-
 
863
                    GEN_stockerStyleExterne( 'jquery_date_picker_style', 'api/js/jquery/ui.datepicker.css');
Line 849... Line 864...
849
	$formtemplate->setJsWarnings(BAZ_ERREUR_SAISIE,BAZ_VEUILLEZ_CORRIGER);
864
                    $formtemplate->addElement('html', '<tr><td>Dates: &nbsp;</td><td>'.bazar::getFiltrePlageDeDate().'</td></tr>');
850
		
865
		
851
	//cas du formulaire de recherche proposant de chercher parmis tous les types d'annonces 
866
	//cas du formulaire de recherche proposant de chercher parmis tous les types d'annonces 
852
	//requete pour obtenir l'id et le label des types d'annonces
867
	//requete pour obtenir l'id et le label des types d'annonces
853
	$requete = 'SELECT bn_id_nature, bn_label_nature '.
868
	$requete = 'SELECT bn_id_nature, bn_label_nature '.
854
	           'FROM bazar_nature' ;
869
	           'FROM bazar_nature' ;
855
	if(isset($GLOBALS['_BAZAR_']['categorie_nature']) && !empty($GLOBALS['_BAZAR_']['categorie_nature']) && $GLOBALS['_BAZAR_']['categorie_nature'] != 0) {
870
	if(isset($GLOBALS['_BAZAR_']['categorie_nature']) && !empty($GLOBALS['_BAZAR_']['categorie_nature']) && $GLOBALS['_BAZAR_']['categorie_nature'] != 'toutes') {
Line 856... Line 871...
856
		$requete .= ' WHERE bn_ce_id_menu IN ('.$GLOBALS['_BAZAR_']['categorie_nature'].') ';
871
		$requete .= ' WHERE bn_ce_id_menu IN ('.$GLOBALS['_BAZAR_']['categorie_nature'].') ';
857
	}
872
	}
Line 881... Line 896...
881
			$formtemplate->setDefaults($defauts);
896
			$formtemplate->setDefaults($defauts);
882
		}		
897
		}		
883
	}
898
	}
884
	//cas du type d'annonces predefini 
899
	//cas du type d'annonces predefini 
885
	else {
900
	else {
886
		if ($nb_type_de_fiches==1) {
901
		if ($nb_type_de_fiches==1 && key($type_annonce_select) != 'toutes') {
887
			$GLOBALS['_BAZAR_']['typeannonce']=end($type_annonce_select);
902
			$GLOBALS['_BAZAR_']['typeannonce']=end($type_annonce_select);
888
			$GLOBALS['_BAZAR_']['id_typeannonce']=key($type_annonce_select);
903
			$GLOBALS['_BAZAR_']['id_typeannonce']=key($type_annonce_select);
889
		}
904
		}
-
 
905
		
890
		$res = '<h2 class="bazar_titre2">'.BAZ_TOUTES_LES_ANNONCES_DE_TYPE.' '.$GLOBALS['_BAZAR_']['typeannonce'].'</h2>'."\n";
906
		$res = '<h2 class="bazar_titre2">'.BAZ_RECHERCHE_FICHE.'</h2>'."\n";
891
	}
907
	}
Line 892... Line 908...
892
 
908
 
893
	//requete pour obtenir l'id, le nom et prenom de toutes les personnes ayant depose une fiche
909
	//requete pour obtenir l'id, le nom et prenom de toutes les personnes ayant depose une fiche
894
	// dans le but de construire l'element de formulaire select avec les noms des emetteurs de fiche	
910
	// dans le but de construire l'element de formulaire select avec les noms des emetteurs de fiche	
895
	if (BAZ_RECHERCHE_PAR_EMETTEUR && ($utilisateur->isAdmin() || $utilisateur->isSuperAdmin())) {
911
	if (BAZ_RECHERCHE_PAR_EMETTEUR && ($utilisateur->isAdmin() || $utilisateur->isSuperAdmin())) {
896
		$requete = 'SELECT DISTINCT '.BAZ_CHAMPS_ID.', '.BAZ_CHAMPS_NOM.', '.BAZ_CHAMPS_PRENOM.' '.
912
		$requete = 'SELECT DISTINCT '.BAZ_CHAMPS_ID.', '.BAZ_CHAMPS_NOM.', '.BAZ_CHAMPS_PRENOM.' '.
Line 897... Line 913...
897
		           'FROM bazar_fiche,'.BAZ_ANNUAIRE.' WHERE ' ;
913
		           'FROM bazar_fiche,'.BAZ_ANNUAIRE.' WHERE ' ;
898
	
914
	
-
 
915
		$requete .= ' bf_date_debut_validite_fiche<=NOW() AND';	
899
		$requete .= ' bf_date_debut_validite_fiche<=NOW() AND';	
916
		$requete .= ' bf_ce_utilisateur='.BAZ_CHAMPS_ID.' ';
900
		$requete .= ' bf_ce_utilisateur='.BAZ_CHAMPS_ID.' ';
917
		
901
	    if (!isset($_REQUEST['nature'])) {
918
	    if (!isset($_REQUEST['nature'])) {
902
	    		if (isset($GLOBALS['_BAZAR_']['id_typeannonce'])) {
919
	    		if (isset($GLOBALS['_BAZAR_']['id_typeannonce']) && $GLOBALS['_BAZAR_']['id_typeannonce'] != 'toutes') {
903
	    			$requete .= 'AND bf_ce_nature="'.$GLOBALS['_BAZAR_']['id_typeannonce'].'" ';
920
	    			$requete .= 'AND bf_ce_nature="'.$GLOBALS['_BAZAR_']['id_typeannonce'].'" ';
904
	    		} 
921
	    		} 
905
		}
922
		}
Line 1000... Line 1017...
1000
 
1017
 
1001
	// Ajout de la table bazar_fiche_liste_valeur dans le from de la requete
1018
	// Ajout de la table bazar_fiche_liste_valeur dans le from de la requete
1002
	$case_coche = false ;
1019
	$case_coche = false ;
1003
	$nb_jointures=0;
1020
	$nb_jointures=0;
1004
	$requeteFrom = '' ;
1021
	$requeteFrom = '' ;
1005
	$requeteWhere = ' bn_ce_id_menu IN ('.$GLOBALS['_BAZAR_']['categorie_nature'].') ';
1022
	if ($GLOBALS['_BAZAR_']['id_typeannonce'] != 'toutes') { 
-
 
1023
	 $requeteWhere .= 'bn_id_nature='.$GLOBALS['_BAZAR_']['id_typeannonce'].' AND ' ;
1006
	if ($GLOBALS['_BAZAR_']['id_typeannonce'] != 'toutes') $requeteWhere .= 'AND bn_id_nature='.$GLOBALS['_BAZAR_']['id_typeannonce'] ;
1024
	}
1007
	$requeteWhere .= ' AND bn_id_nature=bf_ce_nature AND ' ;
1025
	$requeteWhere .= ' bn_id_nature=bf_ce_nature AND ' ;
1008
	if (isset($GLOBALS['_BAZAR_']['langue'])) {
1026
	if (isset($GLOBALS['_BAZAR_']['langue'])) {
1009
		$requeteWhere .= ' bn_ce_i18n like "'.$GLOBALS['_BAZAR_']['langue'].'%" and ';
1027
		$requeteWhere .= ' bn_ce_i18n like "'.$GLOBALS['_BAZAR_']['langue'].'%" and ';
1010
	}
1028
	}
Line 1043... Line 1061...
1043
		}
1061
		}
1044
 	}
1062
 	}
1045
	if ($case_coche) {
1063
	if ($case_coche) {
1046
		 $requeteWhere .= $requeteWhereListe;
1064
		 $requeteWhere .= $requeteWhereListe;
1047
	}
1065
	}
1048
	if (isset($_REQUEST['liste31']) && $_REQUEST['liste31'] != 0 && $_REQUEST['nature']!='toutes') {
1066
	if (isset($_REQUEST['liste31']) && $_REQUEST['liste31'] != '0' && $_REQUEST['nature']!='toutes') {
1049
		$requeteWhere = 'bf_ce_nature="'.$_REQUEST['nature'].'" AND '.$requeteWhere;
1067
		$requeteWhere = 'bf_ce_nature="'.$_REQUEST['nature'].'" AND '.$requeteWhere;
1050
	}
1068
	}
Line 1051... Line 1069...
1051
	
1069
	
1052
	if (BAZ_UTILISE_TEMPLATE) {
1070
	if (BAZ_UTILISE_TEMPLATE) {
Line 1058... Line 1076...
1058
		if (bazarTemplate::isError ($chaine)) return $chaine->getMessage() ;
1076
		if (bazarTemplate::isError ($chaine)) return $chaine->getMessage() ;
1059
		ob_start();
1077
		ob_start();
1060
		eval ($chaine) ;
1078
		eval ($chaine) ;
1061
		$res .= ob_get_contents();
1079
		$res .= ob_get_contents();
1062
		ob_end_clean() ;
1080
		ob_end_clean() ;
-
 
1081
 
1063
	} else {
1082
	} else {
1064
    	$res .= $formtemplate->toHTML();
1083
    	$res .= $formtemplate->toHTML();
1065
    	if (!isset($_REQUEST['recherche_effectuee'])) {
1084
    	if (!isset($_REQUEST['recherche_effectuee'])) {
1066
        	$res .= '<p class="zone_info">'.BAZ_ENTRER_VOS_CRITERES_DE_RECHERCHE.'</p>'."\n";
1085
        	$res .= '<p class="zone_info">'.BAZ_ENTRER_VOS_CRITERES_DE_RECHERCHE.'</p>'."\n";
1067
        	$GLOBALS['_BAZAR_']['url']->addQueryString(BAZ_VARIABLE_ACTION,BAZ_VOIR_FLUX_RSS);
1086
        	$GLOBALS['_BAZAR_']['url']->addQueryString(BAZ_VARIABLE_ACTION,BAZ_VOIR_FLUX_RSS);
1068
        	$GLOBALS['_BAZAR_']['url']->addQueryString('annonce',$GLOBALS['_BAZAR_']['id_typeannonce']);
1087
        	$GLOBALS['_BAZAR_']['url']->addQueryString('annonce',$GLOBALS['_BAZAR_']['id_typeannonce']);
1069
	        if ($GLOBALS['_BAZAR_']['categorie_nature']!=0) { 	
1088
	        if ($GLOBALS['_BAZAR_']['categorie_nature']!=0) { 	
1070
	       		$GLOBALS['_BAZAR_']['url']->addQueryString('categorie_nature',$GLOBALS['_BAZAR_']['categorie_nature']);
1089
	       		$GLOBALS['_BAZAR_']['url']->addQueryString('categorie_nature',$GLOBALS['_BAZAR_']['categorie_nature']);
1071
	        }
1090
	        }
1072
        //	$res .= '{{Syndication titre="'.BAZ_DERNIERES_FICHES.'" url="'.$GLOBALS['_BAZAR_']['url']->getURL().'" nb=10 nouvellefenetre=0 formatdate="'.BAZ_TYPE_AFFICHAGE_LISTE.'"}}';
1091
        //	$res .= '{{Syndication titre="'.BAZ_DERNIERES_FICHES.'" url="'.$GLOBALS['_BAZAR_']['url']->getURL().'" nb=10 nouvellefenetre=0 formatdate="'.BAZ_TYPE_AFFICHAGE_LISTE.'"}}';
1073
		    $requete = 'SELECT DISTINCT bf_id_fiche, bf_titre, bf_date_debut_validite_fiche, bf_description, bn_label_nature, bf_date_creation_fiche FROM bazar_fiche, bazar_nature WHERE bn_id_nature=bf_ce_nature AND bn_ce_id_menu="'.$GLOBALS['_BAZAR_']['categorie_nature'].'" AND (bf_date_debut_validite_fiche<=NOW() or bf_date_debut_validite_fiche="0000-00-00") AND (bf_date_fin_validite_fiche>=NOW() or bf_date_fin_validite_fiche="0000-00-00") 
1092
		    $requete = 'SELECT DISTINCT bf_id_fiche, bf_titre, bf_date_debut_validite_fiche, bf_description, bn_label_nature, bf_date_creation_fiche FROM bazar_fiche, bazar_nature WHERE bn_id_nature=bf_ce_nature ' ;
-
 
1093
		    if($GLOBALS['_BAZAR_']['categorie_nature'] != 'toutes')
-
 
1094
		    {
-
 
1095
		    	 $requete .= ' AND bn_ce_id_menu="'.$GLOBALS['_BAZAR_']['categorie_nature'].'"' ;
-
 
1096
			}
-
 
1097
			
-
 
1098
			if (isset($_REQUEST['date_debut']) && $_REQUEST['date_debut'] != '') {
-
 
1099
            $requete .= ' AND ((bf_date_debut_evenement <= "'.date('Y-m-d', strtotime($_POST['date_fin'])).'" and bf_date_debut_evenement >="'.date('Y-m-d', strtotime($_POST['date_debut'])).'" )' .
-
 
1100
                        ' or (bf_date_fin_evenement >="'.date('Y-m-d', strtotime($_POST['date_debut'])).'" and bf_date_fin_evenement <="'.date('Y-m-d', strtotime($_POST['date_fin'])).'")' .
-
 
1101
                        ' or bf_date_debut_evenement <= "'.date('Y-m-d', strtotime($_POST['date_debut'])).'" and bf_date_fin_evenement >= "'.date('Y-m-d', strtotime($_POST['date_fin'])).'") ';
-
 
1102
	        } else {		
-
 
1103
				
-
 
1104
				$requete .= ' AND (bf_date_debut_validite_fiche<=NOW() or bf_date_debut_validite_fiche="0000-00-00") AND (bf_date_fin_validite_fiche>=NOW() or bf_date_fin_validite_fiche="0000-00-00") ' ;
-
 
1105
			}		
1074
			ORDER BY   bf_date_creation_fiche DESC, bf_date_fin_validite_fiche DESC, bf_date_maj_fiche DESC';
1106
				$requete .= 'ORDER BY   bf_date_creation_fiche DESC, bf_date_fin_validite_fiche DESC, bf_date_maj_fiche DESC';
-
 
1107
		
1075
		$resultat = $GLOBALS['_BAZAR_']['db']->query($requete);
1108
			$resultat = $GLOBALS['_BAZAR_']['db']->query($requete);
1076
		if (DB::isError($resultat)) {
1109
			if (DB::isError($resultat)) {
1077
			return ($resultat->getMessage().$resultat->getDebugInfo()) ;
1110
				return ($resultat->getMessage().$resultat->getDebugInfo()) ;
1078
		}
1111
			}
1079
	        if($resultat->numRows() != 0) {
1112
	        if($resultat->numRows() != 0) {
1080
			$res .= '<h2>'.BAZ_DERNIERES_FICHES.'</h2>';	
1113
			$res .= '<h2>'.BAZ_DERNIERES_FICHES.'</h2>';	
1081
			$res .= '<ul class="liste_rss">';
1114
			$res .= '<ul class="liste_rss">';
1082
			while($ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC)) {
1115
			while($ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC)) {
1083
		    		$GLOBALS['_BAZAR_']['url']->addQueryString(BAZ_VARIABLE_ACTION, BAZ_VOIR_FICHE);
1116
		    		$GLOBALS['_BAZAR_']['url']->addQueryString(BAZ_VARIABLE_ACTION, BAZ_VOIR_FICHE);
Line 1095... Line 1128...
1095
		//preparation de la requete pour trouver les mots cles
1128
		//preparation de la requete pour trouver les mots cles
1096
		if (($_REQUEST['recherche_mots_cles']!='')and($_REQUEST['recherche_mots_cles']!=BAZ_MOT_CLE)) {
1129
		if (($_REQUEST['recherche_mots_cles']!='')and($_REQUEST['recherche_mots_cles']!=BAZ_MOT_CLE)) {
1097
			//decoupage des mots cles
1130
			//decoupage des mots cles
1098
			$recherche = split(' ', $_REQUEST['recherche_mots_cles']) ;
1131
			$recherche = split(' ', $_REQUEST['recherche_mots_cles']) ;
1099
			$nbmots=count($recherche);
1132
			$nbmots=count($recherche);
-
 
1133
			
1100
			$requeteSQL='';
1134
			$requeteSQL='';
1101
			if (isset($GLOBALS['_BAZAR_']['categorie_nature']))
1135
			if (isset($GLOBALS['_BAZAR_']['categorie_nature']))
-
 
1136
			{
1102
			$tableau=baz_valeurs_template($GLOBALS['_BAZAR_']['template']);
1137
				$tableau=baz_valeurs_template($GLOBALS['_BAZAR_']['template']);
1103
			
1138
			}
1104
			for ($i=0; $i<$nbmots; $i++) {
1139
			for ($i=0; $i<$nbmots; $i++) {
1105
				for ($j=0; $j<count($tableau); $j++) {
1140
				for ($j=0; $j<count($tableau); $j++) {
1106
					if ( $tableau[$j]['type']=='texte' || $tableau[$j]['type']=='textelong') { 
1141
					if ( $tableau[$j]['type']=='texte' || $tableau[$j]['type']=='textelong') { 
1107
						//if ($i>0) $requeteSQL.=' OR ';
1142
						//if ($i>0) $requeteSQL.=' OR ';
1108
						$requeteSQL.= $tableau[$j]['nom_bdd'].' LIKE "%'.$recherche[$i].'%" or ';
1143
						$requeteSQL.= $tableau[$j]['nom_bdd'].' LIKE "%'.$recherche[$i].'%" or ';
1109
					}
1144
					}
1110
				}
1145
				}
1111
			}
1146
			}
1112
			$requeteSQL = substr($requeteSQL, 0, count($requeteSQL) - 4);
1147
			$requeteSQL = substr($requeteSQL, 0, count($requeteSQL) - 4);
-
 
1148
			
1113
		}
1149
		}
1114
		if (!isset($_REQUEST['nature'])) {
1150
		if (!isset($_REQUEST['nature'])) {
1115
			if (!isset ($GLOBALS['_BAZAR_']['id_nature'])) $typedefiches = $tableau_typeannonces;
1151
			if (!isset ($GLOBALS['_BAZAR_']['id_nature'])) $typedefiches = $tableau_typeannonces;
1116
			else $typedefiches = $GLOBALS['_BAZAR_']['id_nature'] ; 
1152
			else $typedefiches = $GLOBALS['_BAZAR_']['id_nature'] ; 
1117
		} else {
1153
		} else {
Line 1120... Line 1156...
1120
		}
1156
		}
1121
		if ($typeannonce!='toutes') $typedefiches=$typeannonce;
1157
		if ($typeannonce!='toutes') $typedefiches=$typeannonce;
1122
		if (isset($_REQUEST['valides'])) {$valides=$_REQUEST['valides'];}
1158
		if (isset($_REQUEST['valides'])) {$valides=$_REQUEST['valides'];}
1123
		else {$valides=1;}
1159
		else {$valides=1;}
1124
		//generation de la liste de flux a afficher
1160
		//generation de la liste de flux a afficher
-
 
1161
		if (!isset($_REQUEST['personnes'])) {
-
 
1162
			 $_REQUEST['personnes']='tous';
-
 
1163
		}
1125
		if (!isset($_REQUEST['personnes'])) $_REQUEST['personnes']='tous';
1164
		if (isset($_REQUEST['date_debut']) && $_REQUEST['date_debut'] != '') {
-
 
1165
            $requeteWhere .= ' ((bf_date_debut_evenement <= "'.date('Y-m-d', strtotime($_POST['date_fin'])).'" and bf_date_debut_evenement >="'.date('Y-m-d', strtotime($_POST['date_debut'])).'" )' .
-
 
1166
                        ' or (bf_date_fin_evenement >="'.date('Y-m-d', strtotime($_POST['date_debut'])).'" and bf_date_fin_evenement <="'.date('Y-m-d', strtotime($_POST['date_fin'])).'")' .
-
 
1167
                        ' or bf_date_debut_evenement <= "'.date('Y-m-d', strtotime($_POST['date_debut'])).'" and bf_date_fin_evenement >= "'.date('Y-m-d', strtotime($_POST['date_fin'])).'") AND ';
-
 
1168
        } else {		
-
 
1169
				
-
 
1170
			$requeteWhere .= ' (bf_date_debut_validite_fiche<=NOW() or bf_date_debut_validite_fiche="0000-00-00") AND (bf_date_fin_validite_fiche>=NOW() or bf_date_fin_validite_fiche="0000-00-00") AND ' ;
-
 
1171
		}		
-
 
1172
 
1126
		$res .= baz_liste_pagine_HTML($typedefiches, '', $_REQUEST['personnes'], $valides, $requeteSQL, $requeteFrom, $requeteWhere);		
1173
		$res .= baz_liste_pagine_HTML($typedefiches, '', $_REQUEST['personnes'], $valides, $requeteSQL, $requeteFrom, $requeteWhere);		
1127
	}
1174
	}
Line 1128... Line 1175...
1128
	
1175
	
1129
	// Nettoyage de l'url
1176
	// Nettoyage de l'url