%PDF- %PDF-
Direktori : /home/alliance/domains/congress-intercultural.eu/public_html/inc/classes/ |
Current File : /home/alliance/domains/congress-intercultural.eu/public_html/inc/classes/Load.php |
<?php class Load { public $codelang; public $codelangid; public $bd; public $lang; function Load() { } function edit($post){ if(!isset($post[$this->clef_primaire])){ return false; } //update de la table de base $tab_edit=array(); foreach($this->table as $champ){ if(isset($post[$champ])){ $tab_edit[$champ]=$post[$champ]; } } if($tab_edit!=null){ $this->bd->update($this->nom_table,$tab_edit,$this->clef_primaire.'='.$post[$this->clef_primaire]); } if(isset($this->table_lang)){ $tablang=$this->lang->getLangs(); foreach($tablang as $unelang){ if($this->bd->count("SELECT * FROM ".$this->nom_table."_lang WHERE ".$this->clef_primaire."=".$post[$this->clef_primaire]." AND id_lang=".$unelang)==0){ $values=array(); $values['id_lang']=$unelang; $values[$this->clef_primaire]=$post[$this->clef_primaire]; foreach($this->table_lang as $champ){ $values[$champ]=$post[$champ.'_'.$unelang]; } $this->bd->insert($this->nom_table."_lang", $values); } else{ $tab_edit=array(); foreach($this->table_lang as $champ){ $tab_edit[$champ]=$post[$champ.'_'.$unelang]; } $this->bd->update($this->nom_table."_lang",$tab_edit,$this->clef_primaire."=".$post[$this->clef_primaire]." AND id_lang=".$unelang); } } return true; } } function add($post,$ordre_auto=false){ //ajout dans la table de base $tab_edit=array(); foreach($this->table as $champ){ if(isset($post[$champ])){ $tab_edit[$champ]=$post[$champ]; } } if($ordre_auto==true){ $query='SELECT max(ordre) as ordre FROM '.$this->nom_table; $ordre=$this->bd->select_array($query); $post['ordre']=$ordre['ordre']+1; } if($tab_edit!=null){ $this->bd->insert($this->nom_table,$tab_edit); $post[$this->clef_primaire]=$this->bd->lastId(); } if(isset($this->table_lang)){ $tablang=$this->lang->getLangs(); // ajout des traductions foreach($tablang as $unelang){ $values=array(); $values['id_lang']=$unelang; $values[$this->clef_primaire]=$post[$this->clef_primaire]; foreach($this->table_lang as $champ){ if(isset($post[$champ.'_'.$unelang])){ $values[$champ]=$post[$champ.'_'.$unelang]; } } $this->bd->insert($this->nom_table."_lang", $values); } } return $post[$this->clef_primaire]; } function getList($lang=false,$ordre=false,$where="",$orderby=""){ if(!$lang) { $lang = $this->lang->getlangid(); } $query="SELECT * FROM ".$this->nom_table." p LEFT JOIN ".$this->nom_table."_lang l ON l.".$this->clef_primaire."=p.".$this->clef_primaire." WHERE id_lang=".$lang; if($where!=""){ $query.=" ".$where; } if($ordre==true){ $query.=" ORDER BY ordre"; } elseif($orderby!=""){ $query.=" ORDER BY ".$orderby; } //echo $query; return $this->bd->select_arrays($query); } function verifTrad($id){ $tablang=$this->lang->getTabLang(); // ajout des traductions $trad_valid=array(); $html='<div class="info_flag_bloc">'; foreach($tablang as $unelang){ if($this->bd->count("SELECT * FROM ".$this->nom_table."_lang WHERE ".$this->clef_primaire."=".$id." AND id_lang=".$unelang['id'])==0){ $trad_valid[$unelang['id']]=0; $html.='<div class="info_flag invalide">'.$unelang['code'].'</div>'; } else{ $valide=$this->bd->select_array("SELECT valide FROM ".$this->nom_table."_lang WHERE ".$this->clef_primaire."=".$id." AND id_lang=".$unelang['id']); $trad_valid[$unelang['id']]=$valide['valide']; if($valide['valide']==1){ $html.='<div class="info_flag valide">'.$unelang['code'].'</div>'; } else{ $html.='<div class="info_flag invalide">'.$unelang['code'].'</div>'; } } } $html.='</div>'; return $html; } function get($id){ $query = "SELECT * FROM ".$this->nom_table." WHERE ".$this->clef_primaire." =".$id; $return=$this->bd->select_array($query); $query = "SELECT * FROM `".$this->nom_table."_lang` WHERE ".$this->clef_primaire."=".$id; $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[$lang_traduction['id_lang']][$unchamp]=$lang_traduction[$unchamp]; } } return $return; } function getWithLang($id,$id_lang){ $query = "SELECT * FROM ".$this->nom_table." p LEFT JOIN ".$this->nom_table."_lang l ON l.".$this->clef_primaire."=p.".$this->clef_primaire." WHERE id_lang=".$id_lang." AND p.".$this->clef_primaire." =".$id; $return=$this->bd->select_array($query); //echo $query; return $return; } } ?>