1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163
|
function createwheresaad() {
$session =& JFactory::getSession();
$where = ' where published = 1 ';
if($type) {
//$typevalue = implode('","', $type);
$where .= ' and id_soustype='.$type.' ';
}
$retour = JRequest::getvar('retour');
if(!$retour){
$ou = JRequest::getvar('ou',false);
$quand = JRequest::getvar('quand',false);
$horaire = JRequest::getvar('horaire',false);
$qui = JRequest::getvar('qui',false);
$type = JRequest::getvar('type',false);
//$retour = JRequest::getvar('retour',false);
$limitstar = JRequest::getvar('limitstart',$session->get('qui',false));
}else{
$ou = $session->get('ou');
$quand = $session->get('quand');
$horaire = $session->get('horaire');
$qui = $session->get('qui');
$type = $session->get('type');
//$retour = $session->get('retour');
$limitstar = $session->get('limitstart');
}
$session->set('ou',$ou);
$session->set('quand',$quand);
$session->set('horaire',$horaire);
$session->set('qui',$qui);
$session->set('type',$type);
//$session->set('retour',$retour);
$session->set('limitstart',$limitstar);
$this->limitstart = $limitstar;
if($ou) {
$ouvalue = implode(',', $ou);
$where .= ' and lieu in ('.$ouvalue.') ';
}
if($quand) {
$quandvalue = explode(',', $quand);
$where .= ' and JOUR_DEBUT ="'.$quandvalue[0].'" and JOUR_FIN ="'.$quandvalue[1].'"';
}
if($horaire) {
/*$horairevalue = implode('","', $horaire);
$where .= ' and horaire_afficher in ("'.$horairevalue.'") ';*/
if(in_array('matin',$horaire)) {
$horairearray[] = ' HFIN < "12:00" ';
}
if(in_array('midi',$horaire)) {
$horairearray[] = ' (HDEB >= "12:00" and HFIN <= "14:00") ';
}
if(in_array('apresmidi',$horaire)) {
$horairearray[] = ' (HDEB > "14:00" and HFIN <= "18:00") ';
}
if(in_array('soir',$horaire)) {
$horairearray[] = ' HDEB > "18:00" ';
}
if(in_array('journeeentiere',$horaire)) {
$horairearray[] = ' (HDEB <= "10:00" and HFIN >= "17:00") ';
}
$where .= 'and ( '.implode(' or ', $horairearray ).' )';
}
if($qui) {
switch($qui){
case 'Adultes':
$where .= ' and age_min <= 24 and age_max >= 18';
break;
case 'Seniors':
$where .= ' and age_min >= 25 ';
break;
default :
$where .= ' and age_min <= '.$qui.' and age_max >= '.$qui.'';
break;
}
}
if($type) {
//$typevalue = implode('","', $type);
$where .= ' and id_soustype='.$type.' ';
}
return $where ;
}
function getlistage($limit,$type) {
$db = & JFactory :: getDBO();
$result = array();
$filter = $this->createwheresaad();
$where = ' where published = 1 ';
$where .= ' and id_soustype = '.$type.'';
$query1 = "SELECT COUNT(id) FROM #__f_evenement ";
if($filter)
$query1 .= $filter ;
$query1 .= ' and id_soustype = '.$type.'';
$db->setQuery($query1);
$total = $db->loadResult();
$query1 = "SELECT COUNT(id) FROM #__f_evenement ";
if($filter)
$query1 .= $filter;
$db->setQuery($query1);
$totalcategorie = $db->loadResult();
//$arrayquand = "('Lundi','Mardi','Mercredi','Jeudi','Vendredi','Samedi','Dimanche')";
$query2 = "SELECT distinct JOUR_DEBUT,JOUR_FIN FROM #__f_evenement ".$filter." order by JOUR_DEBUT ";
$db->setQuery($query2);
$date_afficher = $db->loadObjectList();
$query2 = "SELECT count(*) FROM (SELECT distinct JOUR_DEBUT,JOUR_FIN FROM #__f_evenement ".$filter.") as saad ";
$db->setQuery($query2);
$totaldate = $db->loadResult();
$query3 = "SELECT count(*) FROM #__f_evenement ".$filter." and HFIN < '12:00' ";
$db->setQuery($query3);
$horaire_afficher['matin'] = $db->loadresult();
$query3 = "SELECT count(*) FROM #__f_evenement ".$filter." and (HDEB >= '12:00' and HFIN <= '14:00') ";
$db->setQuery($query3);
$horaire_afficher['midi'] = $db->loadresult();
$query3 = "SELECT count(*) FROM #__f_evenement ".$filter." and (HDEB > '14:00' and HFIN <= '18:00') ";
$db->setQuery($query3);
$horaire_afficher['apresmidi'] = $db->loadresult();
$query3 = "SELECT count(*) FROM #__f_evenement ".$filter." and HDEB > '18:00' ";
$db->setQuery($query3);
$horaire_afficher['soir'] = $db->loadresult();
$query3 = "SELECT count(*) FROM #__f_evenement ".$filter." and (HDEB <= '10:00' and HFIN >= '17:00') ";
$db->setQuery($query3);
$horaire_afficher['journeeentiere'] = $db->loadresult();
$query = "SELECT * FROM #__f_evenement ";
if($filter)
$query .= $filter;
$query .= ' order by id ';
$db->setQuery($query,$this->limitstart, $limit);
$this->_application = $db->loadObjectList();
$saad=$query;
$query = 'SELECT lieu , count(*) as counter FROM #__f_evenement '.$filter.' group by lieu ' ;
$db->setQuery($query);
$lieu = $db->loadObjectlist();
$query = 'select id, Nom_Lieu from #__f_lieuHY where id in (select distinct(lieu) FROM #__f_evenement ) order by Nom_Lieu' ;
$db->setQuery($query);
$lieunom = $db->loadObjectlist();
$result[0] = $this->_application;
$result[1] = $total;
$result[2] = $date_afficher;
$result[3] = $horaire_afficher;
$result[4] = $lieu;
$result[5] = $lieunom;
$result[6] = $totalcategorie;
$result[7] = $saad;
$result[8] = $totaldate;
return $result;
} |
Partager