%PDF- %PDF-
Direktori : /home/alliance/domains/congress-eldw.eu/public_html/inc/classes/ |
Current File : /home/alliance/domains/congress-eldw.eu/public_html/inc/classes/Section.php |
<?php class Section extends Load { var $bd; var $language; var $lang; var $nom_table='section'; var $clef_primaire='id_section'; var $table=array('ordre','couleur','photo','taillephoto'); var $table_lang=array('titre','permalien','texte','texte2'); function Section() { //constructor parent::Load(); $this->bd = new BaseOps; $this->language = new Lang; $this->lang = new Lang; } // Liste des catégories function liste_categories($amicale = false) { if($amicale) $query = "SELECT * FROM `categorie` ORDER BY ordre"; else $query = "SELECT * FROM `categorie` WHERE id != 11 ORDER BY ordre"; $result = $this->bd->q($query); $nb = 0; while( $data = mysql_fetch_assoc($result)) { $query = "SELECT * FROM `categorie_lang` WHERE categorie = ".$data['id']." AND lang = ".$this->language->getlangid(); $datalang = $this->bd->select_array($query); $res[$nb] = array ( 'id' => $data['id'], 'ordre' => $data['ordre'], 'type' => $data['type'], 'couleur' => $data['couleur'], 'titre' => $datalang['titre'], 'ptititre' => $datalang['ptititre'], 'permalien' => $datalang['permalien'] ); $nb++; } return $res; } // Liste des catégories non uniques function liste_categories_norm() { $query = "SELECT * FROM `categorie` WHERE type = 1 ORDER BY ordre"; $result = $this->bd->q($query); $nb = 0; while( $data = mysql_fetch_assoc($result)) { $query = "SELECT * FROM `categorie_lang` WHERE categorie = ".$data['id']." AND lang = ".$this->language->getlangid(); $datalang = $this->bd->select_array($query); $res[$nb] = array ( 'id' => $data['id'], 'ordre' => $data['ordre'], 'type' => $data['type'], 'couleur' => $data['couleur'], 'titre' => $datalang['titre'], 'ptititre' => $datalang['ptititre'], 'permalien' => $datalang['permalien'] ); $nb++; } return $res; } // Liste des sections d'une catégorie function liste_sections_cat($categorie) { $query = "SELECT * FROM `section` WHERE categorie = ".$categorie." ORDER BY ordre"; 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; } // La section d'une catégorie seule function section_cat_seule($categorie) { $query = "SELECT * FROM `section` WHERE categorie = ".$categorie; 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; } function liste_sections_all() { $query = "SELECT DISTINCT a.* FROM `section` a, `section_lang` b WHERE b.id_section = a.id_section ORDER BY ordre"; if( $this->bd->isres($query) ) { $result = $this->bd->q($query); $nb = 0; while( $data = mysql_fetch_assoc($result)) { $query = "SELECT * FROM `section_lang` WHERE id_section = ".$data['id_section']." AND id_lang = ".$this->language->getlangid(); $datalang = $this->bd->select_array($query); $res[$nb] = array ( 'id_section' => $data['id_section'], 'categorie' => $data['categorie'], 'type' => $data['type'], 'ordre' => $data['ordre'], 'site' => $data['site'], 'email' => $data['email'], 'titre' => $datalang['titre'], 'couleur' => $data['couleur'], 'permalien' => $datalang['permalien'] ); $nb++; } return $res; } else return null; } // 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 tab_liste($lang) { $query = "SELECT * FROM `section` s LEFT JOIN `section_lang` l ON l.`id_section` = s.`id_section` WHERE `id_lang`=".$lang; $data = $this->bd->select_arrays($query); return $data; } 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 = ".$section; if($this->bd->isres($query)) { $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 = ".$section; if( $this->bd->isres($query) ) { $data = $this->bd->select_array($query); $query = "SELECT * FROM `section_lang` WHERE id_section = ".$data['id_section']." AND id_lang = ".$this->language->getlangid(); $datalang = $this->bd->select_array($query); $res = array ( 'id' => $data['id_section'], '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 id_section = ".$section." AND id_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 = ".$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 get_liste_sections($id_lang){ $query="SELECT * FROM section ORDER BY ordre"; $sections=$this->bd->select_arrays($query); $return=array(); foreach($sections as $section){ $return[]=$this->getSection($section['id_section'],$id_lang); } return $return; } function getSection($id_section,$id_lang=null){ $query = "SELECT * FROM `section` WHERE id_section =".$id_section; $return=$this->bd->select_array($query); if($id_lang!=null){ $query = "SELECT * FROM `section_lang` WHERE `id_section`=".$id_section." AND id_lang=".$id_lang; $lang_traductions=$this->bd->select_array($query); if(($lang_traductions==null || $lang_traductions['titre']=="") && $id_lang!=2){ $query = "SELECT * FROM `section_lang` WHERE `id_section`=".$id_section." AND id_lang=2"; $lang_traductions=$this->bd->select_array($query); } $return=array_merge ($return,$lang_traductions); } else{ $query = "SELECT * FROM `section_lang` WHERE `id_section`=".$id_section; $lang_traductions=$this->bd->select_arrays($query); foreach($lang_traductions as $lang_traduction){ foreach($this->table_lang as $unchamp){ $return[$unchamp.'_'.$lang_traduction['id_lang']]=$lang_traduction[$unchamp]; } } } return $return; } } ?>