%PDF- %PDF-
Direktori : /home/alliance/domains/congress-pact1in5.eu/public_html/inc/classes/ |
Current File : /home/alliance/domains/congress-pact1in5.eu/public_html/inc/classes/Edition.php |
<?php class Edition extends Load { var $bd; var $language; function Edition() { //constructor parent::Load(); $this->bd = new BaseOps; $this->profil = new Profil; $this->language = new Lang; $this->admtext = new Admtext; } function getEdition($id_edition){ $query = 'SELECT e.*,el.titre FROM `edition` e LEFT JOIN `edition_lang` el ON el.edition=e.id WHERE lang='.$this->language->getlangid().' AND e.id = '.$id_edition; $result = $this->bd->select_array($query); return $result; } function getQuestion($id_question){ $query = 'SELECT q.*,ql.libelle FROM `question` q LEFT JOIN `question_lang` ql ON ql.question=q.id WHERE lang='.$this->language->getlangid().' AND q.id = '.$id_question; $result = $this->bd->select_array($query); return $result; } function getCurrentEdition($aff="front",$lang=1){ if($aff="ins"){ $query="SELECT e.*,el.titre,el.texte FROM `edition` e LEFT JOIN `edition_lang` el ON e.`id`=el.`edition` WHERE el.lang=".$lang." AND e.`date_ins`>".date('Y-m-d')." ORDER BY `date_ins` DESC LIMIT 1"; $actual_edition = $this->bd->select_array($query); } if($aff="front"){ $query="SELECT e.*,el.titre,el.texte FROM `edition` e LEFT JOIN `edition_lang` el ON e.`id`=el.`edition` WHERE el.lang=".$lang." AND e.`date_pub`>".date('Y-m-d')." ORDER BY `date_pub` DESC LIMIT 1"; $actual_edition = $this->bd->select_array($query); } return $actual_edition; } function getTitreEdition($edition,$lang=1){ $query="SELECT e.*,el.titre,el.texte FROM `edition` e LEFT JOIN `edition_lang` el ON e.`id`=el.`edition` WHERE el.lang=".$lang." AND e.id=".$edition." ORDER BY `date_ins` DESC LIMIT 1"; $actual_edition = $this->bd->select_array($query); return $actual_edition['titre']; } function liste_sections_all() { $query = "SELECT DISTINCT a.* FROM `section` a, `section_lang` b WHERE b.section = a.id ORDER BY b.titre"; if( $this->bd->isres($query) ) { $result = $this->bd->q($query); $nb = 0; while( $data = mysql_fetch_assoc($result)) { $query = "SELECT * FROM `section_lang` WHERE section = ".$data['id']." AND lang = ".$this->language->getlangid(); $datalang = $this->bd->select_array($query); $res[$nb] = array ( 'id' => $data['id'], 'categorie' => $data['categorie'], 'type' => $data['type'], 'ordre' => $data['ordre'], 'site' => $data['site'], 'email' => $data['email'], 'titre' => $datalang['titre'], 'permalien' => $datalang['permalien'] ); $nb++; } return $res; } else return null; } function liste_edition($template=false) { $html=""; if(!$template) { $template = "edition"; } $result = $this->liste_editions(); foreach($result as $edition) { $datesplit = explode('-', $edition['date_debut']); $annee = $datesplit['0']; $html.='<li> <div style="background: #94cdff;"> '.$annee.' <strong>'.$edition['titre'].'</strong> <a href="admin/modifier_ed.php?id='.$edition['id'].'">Modifier l\'édition</a> <a href="admin/gerer_question.php?id='.$edition['id'].'">Gérer les questions</a> <a href="admin/gerer_condition.php?id='.$edition['id'].'">Gérer les engagements</a> <a href="admin/adm_text.php?edition='.$edition['id'].'&page=formins">Textes à l\'inscription</a> </div> </li>'; } echo $html; } // Liste des éditions function liste_editions() { $query = "SELECT e.*,el.titre,el.texte FROM `edition` e LEFT JOIN `edition_lang` el ON el.edition=e.id WHERE el.lang=".$this->language->getlangid()." ORDER BY `date_debut` DESC"; $result = $this->bd->q($query); $nb = 0; $res=array(); while( $data = mysql_fetch_assoc($result)) { $res[$nb] = $data; $nb++; } return $res; } // Liste des categories function liste_categories($lang = false) { if(!$lang) { $lang = $this->language->getlangid(); } $html=""; $query = "SELECT c.*,cl.titre FROM `categorie` c LEFT JOIN `categorie_lang` cl ON c.id=cl.categorie WHERE cl.lang=".$lang." ORDER BY c.ordre ASC"; $result = $this->bd->select_arrays($query); return $result; } // Liste des categories admin function liste_categories_admin($lang = false) { if(!$lang) { $lang = $this->language->getlangid(); } $html=""; $result = $this->liste_categories($lang); $i = 0; foreach($result as $categorie) { $html.='<li> <div> <strong><a href="admin/liste_theme.php?cat='.$categorie['id'].'">'.$categorie['titre'].'</a></strong> <a href="admin/liste_theme.php?cat='.$categorie['id'].'">Voir les thèmes</a> <a href="admin/modifier_categorie.php?id='.$categorie['id'].'">Modifier la catégorie</a>'; if($i != 0) { $html.=' <a href="admin/monter.php?table=categorie&id='.$categorie['id'].'&avant='.$prev.'">Monter</a>'; } $html.=' <a href="admin/suppr_categorie.php?id='.$categorie['id'].'" class="confirm">Supprimer la catégorie</a> </div> </li>'; $i++; $prev = $categorie['id']; } return $html; } // Liste des themes function liste_themes($lang = false, $categorie = false) { if(!$lang) { $lang = $this->language->getlangid(); } $html=""; $query = "SELECT t.*,tl.titre FROM `theme` t LEFT JOIN `theme_lang` tl ON t.id=tl.theme"; if($categorie) { $query .= " LEFT JOIN `theme_cat` tc ON t.id=tc.theme WHERE tc.categorie = ".$categorie." AND tl.lang=".$lang; } else { $query .= " WHERE tl.lang=".$lang; } $query .= " ORDER BY t.ordre ASC"; $result = $this->bd->select_arrays($query); return $result; } // Liste des themes admin function liste_themes_admin($lang = false, $categorie = false) { if(!$lang) { $lang = $this->language->getlangid(); } $html=""; $result = $this->liste_themes($lang, $categorie); $i = 0; foreach($result as $theme) { $html.='<li> <div> <strong>'.$theme['titre'].'</strong> <a href="admin/modifier_theme.php?id='.$theme['id'].'">Modifier le thème</a>'; if(!$categorie && $i != 0) { $html.=' <a href="admin/monter.php?table=theme&id='.$theme['id'].'&avant='.$prev.'">Monter</a>'; } $html.=' <a href="admin/suppr_theme.php?id='.$theme['id'].'" class="confirm">Supprimer le thème</a> </div> </li>'; $i++; $prev = $theme['id']; } return $html; } // Liste des questions function liste_question($edition) { $html=""; $query = "SELECT q.*,ql.libelle FROM `question` q LEFT JOIN `question_lang` ql ON q.id=ql.question WHERE q.edition=".$edition." AND ql.lang=".$this->language->getlangid()." ORDER BY `profil` ASC,`ordre` ASC"; $result = $this->bd->select_arrays($query); foreach($result as $question) { $couleur=$this->profil->getCouleur($question['profil']); $html.='<li> <div style="background: #'.$couleur.';"> <strong>'.$question['libelle'].'</strong> '; if($question['ordre'] != 1) { $html.='<a href="admin/monter.php?table=question&id='.$question['id'].'&avant='.$avant.'&id_edition='.$edition.'">Monter</a>'; } $html.=' <a href="admin/editer_question.php?id='.$question['id'].'">Modifier la question</a> <a href="admin/suppr_question.php?id='.$question['id'].'" class="confirm">Supprimer la question</a> </div> </li>'; $avant=$question['id']; } return $html; } // Liste des réponses function liste_reponse($question) { $html=""; $query = "SELECT r.*,rl.libelle FROM `response` r LEFT JOIN `response_lang` rl ON r.id=rl.response WHERE r.question=".$question." AND rl.lang=".$this->language->getlangid()." ORDER BY `ordre` ASC"; $result = $this->bd->select_arrays($query); foreach($result as $reponse) { $html.='<li> <div> <strong>'.$reponse['libelle'].'</strong> '; if($reponse['ordre'] != 1) { $html.='<a href="admin/monter.php?table=response&id='.$reponse['id'].'&avant='.$avant.'&id_question='.$question.'">Monter</a>'; } $html.=' <a href="admin/modifier_reponse.php?id_response='.$reponse['id'].'&id='.$question.'">Modifier la réponse</a> <a href="admin/suppr_reponse.php?id_response='.$reponse['id'].'&id='.$question.'">Supprimer la réponse</a> </div> </li>'; $avant=$reponse['id']; } return $html; } // Liste des questions function liste_condition($edition) { $html=""; $query = "SELECT c.*,cl.libelle FROM `condition` c LEFT JOIN `condition_lang` cl ON c.id=cl.condition WHERE c.edition=".$edition." AND cl.lang=".$this->language->getlangid()." ORDER BY `profil` ASC,`ordre` ASC"; $result = $this->bd->select_arrays($query); foreach($result as $condition) { $couleur=$this->profil->getCouleur($condition['profil']); $html.='<li> <div style="background: #'.$couleur.';"> <strong>'.$condition['libelle'].'</strong> '; if($condition['ordre'] != 1) { $html.='<a href="admin/monter.php?table=condition&id='.$condition['id'].'&avant='.$avant.'&id_edition='.$edition.'">Monter</a>'; } $html.=' <a href="admin/modifier_condition.php?id='.$condition['id'].'&id_edition='.$edition.'">Modifier l\'engagement</a> <a href="admin/suppr_condition.php?id='.$condition['id'].'&id_edition='.$edition.'">Supprimer l\'engagement</a> </div> </li>'; $avant=$condition['id']; } return $html; } function getCritere($edition,$type,$lang,$template){ if($template=="admin"){ $html="<ul>"; $query ="SELECT c.*,clfr.libelle as titre_fr,clen.libelle as titre_en FROM `edition_condition` c LEFT JOIN `edition_condition_lang` clfr ON c.id=clfr.condition LEFT JOIN `edition_condition_lang` clen ON c.id=clen.condition WHERE clfr.lang=1 AND clen.lang=2 AND c.edition=".$edition." AND c.type=".$type; $result = $this->bd->q($query); while( $data = mysql_fetch_assoc($result)) { $html.='<li>'.$data['titre_fr'].' - '.$data['titre_en'].' <a class="confirm" href="admin/suppr_condition.php?id='.$data['id'].'&ret='.$edition.'">Supprimer</a></li>'; } return $html."</ul>"; } else{ $query ="SELECT c.*,cl.libelle FROM `edition_condition` c LEFT JOIN `edition_condition_lang` cl ON c.id=cl.condition WHERE cl.lang=".$lang." AND c.edition=".$edition." AND c.type=".$type; $html=""; $result = $this->bd->q($query); while( $data = mysql_fetch_assoc($result)) { $html.='<input type="checkbox" name="condition_'.$type.'" value="'.$data['id'].'" /> '.$data['libelle'].'<br />'; } return $html; } } // Liste des sections menu function liste_sections($template=false) { $query = "SELECT * FROM `categorie`"; if(!$template) { $template = "section"; } if($this->bd->isres($query)) { $result = $this->liste_categories(); foreach($result as $categorie) { // Toutes les categories if($this->section_seule($categorie['id'])) { $section = $this->section_cat_seule($categorie['id']); //Affichage de la catégorie avec un lien vers la section $idsec = $section['id']; $site = $section['site']; $id = $categorie['id']; $permalien = $categorie['permalien']; $titre = $categorie['titre']; $ptititre = $categorie['ptititre']; $lang = $this->language->getlang(); $couleur = $categorie['couleur']; $ordre = $categorie['ordre']; $type = 1; include('templates/'.$template.'/categorie.php'); $catavant = $categorie['id']; } else { //Affichage de la catégorie $id = $categorie['id']; $titre = $categorie['titre']; $ptititre = $categorie['ptititre']; $lang = $this->language->getlang(); $couleur = $categorie['couleur']; $ordre = $categorie['ordre']; $type = 2; include('templates/'.$template.'/categorie.php'); $catavant = $categorie['id']; $result2 = $this->liste_sections_cat($categorie['id']); if($result2 != null) { echo "<ul id=\"section".$categorie['id']."\" class=\"soussec\" style=\"background: #".$categorie['couleur'].";\">\n"; foreach($result2 as $section) { // Toutes les categories $id = $section['id']; $permalien = $section['permalien']; $seccat = $section['categorie']; $titre = $section['titre']; $ordre = $section['ordre']; $lang = $this->language->getlang(); include('templates/'.$template.'/liste.php'); $secavant = $section['id']; } echo "</ul>\n"; } } } } else { echo "<p>".$this->language->lg("noresults")."</p>"; } } function section_seule($categorie) { $query = "SELECT type FROM `categorie` WHERE id = ".$categorie; $data = $this->bd->select_array($query); return $data['type'] == 0; } function couleur_section($section) { if($section == 0) return "f4f4f4"; else { $query = "SELECT * FROM `section` WHERE id = ".$section; if($this->bd->isres($query)) { $data = $this->bd->select_array($query); $categorie = $data['categorie']; $query = "SELECT * FROM `categorie` WHERE id = ".$categorie; $data = $this->bd->select_array($query); return $data['couleur']; } else { return "fff"; } } } // Afficher une section function aff_section($section) { $query = "SELECT * FROM `section` WHERE id = ".$section; if( $this->bd->isres($query) ) { $data = $this->bd->select_array($query); $query = "SELECT * FROM `section_lang` WHERE section = ".$data['id']." AND lang = ".$this->language->getlangid(); $datalang = $this->bd->select_array($query); $res = array ( 'id' => $data['id'], 'categorie' => $data['categorie'], 'type' => $data['type'], 'ordre' => $data['ordre'], 'site' => $data['site'], 'email' => $data['email'], 'titre' => $datalang['titre'], 'permalien' => $datalang['permalien'] ); return $res; } else return null; } // Afficher une categorie function aff_categorie($categorie) { $query = "SELECT * FROM `categorie` WHERE id = ".$categorie; if( $this->bd->isres($query) ) { $data = $this->bd->select_array($query); $query = "SELECT * FROM `categorie_lang` WHERE categorie = ".$data['id']." AND lang = ".$this->language->getlangid(); $datalang = $this->bd->select_array($query); $res = array ( 'id' => $data['id'], 'type' => $data['type'], 'ordre' => $data['ordre'], 'couleur' => $data['couleur'], 'titre' => $datalang['titre'], 'ptititre' => $datalang['ptititre'], 'permalien' => $datalang['permalien'] ); return $res; } else return null; } function couleur_categorie($categorie) { $query = "SELECT * FROM `categorie` WHERE id = ".$categorie; $data = $this->bd->select_array($query); return $data['couleur']; } function titre_section($section) { $query = "SELECT `titre` FROM `section_lang` WHERE section = ".$section." AND lang = ".$this->language->getlangid(); $data = $this->bd->select_array($query); return $data['titre']; } function actu_sec($actu) { $query = "SELECT * FROM `actu` WHERE id = ".$actu; $data = $this->bd->select_array($query); return $data['section']; } function page_sec($page) { $query = "SELECT * FROM `page` WHERE id = ".$page; $data = $this->bd->select_array($query); return $data['section']; } function bloc_sec($bloc) { $query = "SELECT * FROM `bloc` WHERE id = ".$bloc; $data = $this->bd->select_array($query); return $this->page_sec($data['page']); } function sec_user($user) { $query = "SELECT * FROM `user` WHERE id = ".$user; $data = $this->bd->select_array($query); return $data['section']; } function url_section($section) { $query = "SELECT `permalien` FROM `section_lang` WHERE section = ".$section." AND lang = ".$this->language->getlangid(); $data = $this->bd->select_array($query); return $section."-".$data['permalien']; } function getQuestions($edition,$profil,$lang){ $html=""; $query = "SELECT q.*,ql.libelle FROM `question` q LEFT JOIN `question_lang` ql ON q.id=ql.question WHERE q.edition = ".$edition." AND q.profil=".$profil." AND ql.lang = ".$lang." ORDER BY ordre ASC"; $questions = $this->bd->select_arrays($query); foreach($questions as $question){ $html.="<div class='ligne2'><div class='label_full'>".$question['libelle']."</div></div><div class=\"bloctexte mb10\">"; $query = "SELECT r.*,rl.libelle FROM `response` r LEFT JOIN `response_lang` rl ON r.id=rl.response WHERE r.question = ".$question['id']." AND rl.lang = ".$lang." ORDER BY ordre ASC"; $responses = $this->bd->select_arrays($query); foreach($responses as $response){ if($question['type']=="radio"){ if($response['libre']){ $html.='<div class="ligne"><div class="check_full"><input type="radio" name="question_'.$question['id'].'" value="'.$response['id'].'" /> '.$response['libelle'].' <input type="text" class="questionlibre" name="response_'.$response['id'].'" /></div></div>'; } else{ $html.='<div class="ligne"><div class="check_full"><input type="radio" name="question_'.$question['id'].'" value="'.$response['id'].'" /> '.$response['libelle'].'</div></div>'; } } else{ if($response['libre']){ $html.='<div class="ligne"><div class="check_full"><input type="checkbox" name="question_'.$question['id'].'[]" value="'.$response['id'].'" /> '.$response['libelle'].' <input type="text" class="questionlibre" name="response_'.$response['id'].'" /></div></div>'; } else{ $html.='<div class="ligne"><div class="check_full"><input type="checkbox" name="question_'.$question['id'].'[]" value="'.$response['id'].'" /> '.$response['libelle'].'</div></div>'; } } } $html.='</div>'; } return $html; } function verifCondition($edition,$profil,$conditions_selected,$lang){ $query = "SELECT c.* FROM `condition` c WHERE c.edition = ".$edition." AND c.profil=".$profil; $conditions = $this->bd->select_arrays($query); $return="ok"; foreach ($conditions as $condition){ if(array_search ( $condition['id'] , $conditions_selected )===false){ $return=$this->admtext->getText("error_condition",$lang); } } return $return; } function getConditions($edition,$profil,$lang){ $html=""; $query = "SELECT c.*,cl.libelle FROM `condition` c LEFT JOIN `condition_lang` cl ON c.id=cl.`condition` WHERE c.edition = ".$edition." AND c.profil=".$profil." AND cl.lang = ".$lang." ORDER BY ordre ASC"; $conditions = $this->bd->select_arrays($query); $nbcond=$this->bd->count($query); if($nbcond>0){ foreach($conditions as $condition){ $html.='<div class="ligne"><div class="check_full"><input type="checkbox" class="condition_'.$profil.'" name="condition_'.$profil.'[]" value="'.$condition['id'].'" /> '.$condition['libelle'].'</div></div>'; } /*$html.='<script type="text/javascript"> function verifCondition'.$profil.'(){ if($(".condition_'.$profil.':checked").length!=$(".condition_'.$profil.'").length){ return false; } else{ return true; } } </script>';*/ } return $html; } } ?>