id = $id; } $this->fetch_data(); } // récupération des infos en base function fetch_data() { global $dbh; $this->docs_location_data=array(); if($this->id){ $requete="SELECT * FROM sur_location WHERE surloc_id='".$this->id."' LIMIT 1"; $res = mysql_query($requete, $dbh) or die(mysql_error()."
$requete"); if(mysql_num_rows($res)) { $row=mysql_fetch_object($res); } $this->libelle=$row->surloc_libelle; $this->pic=$row->surloc_pic; $this->visible_opac=$row->surloc_visible_opac; $this->name=$row->surloc_name; $this->adr1=$row->surloc_adr1; $this->adr2=$row->surloc_adr2; $this->cp=$row->surloc_cp; $this->town=$row->surloc_town; $this->state=$row->surloc_state; $this->country=$row->surloc_country; $this->phone=$row->surloc_phone; $this->email=$row->surloc_email; $this->website=$row->surloc_website; $this->logo=$row->surloc_logo; $this->comment=$row->surloc_comment; $this->num_infopage=$row->surloc_num_infopage; $this->css_style=$row->surloc_css_style; $requete = "SELECT * FROM docs_location where surloc_num='".$this->id."' or surloc_num=0 ORDER BY location_libelle"; }else{ $requete = "SELECT * FROM docs_location where surloc_num=0 ORDER BY location_libelle"; } $myQuery = mysql_query($requete, $dbh); while(($r=mysql_fetch_assoc($myQuery))) { $this->docs_location_data[]=$r; } $this->get_list(); } function get_info_surloc_from_location($id_docs_location=0){ global $dbh; if($id_docs_location){ $requete = "SELECT * FROM docs_location where idlocation='$id_docs_location'"; $res = mysql_query($requete, $dbh) or die(mysql_error()."
$requete"); if(mysql_num_rows($res)) { $row=mysql_fetch_object($res); if($row->surloc_num){ $sur_loc= new sur_location($row->surloc_num); return $sur_loc; } } } return $sur_loc= new sur_location(); } // fonction générant le tableau de la liste de sur-loc function do_list() { global $tpl_sur_location_tableau,$tpl_sur_location_tableau_ligne; $liste=""; for($i=0;$isur_location_list);$i++) { if ($i % 2) $pair_impair = "even"; else $pair_impair = "odd"; $td_javascript=" onmousedown=\"document.location='./admin.php?categ=docs&sub=sur_location&action=add&id=!!surloc_id!!'\" "; $tr_surbrillance = "onmouseover=\"this.className='surbrillance'\" onmouseout=\"this.className='".$pair_impair."'\" "; if($this->sur_location_list[$i]->visible_opac) $visible="X" ; else $visible=" " ; $line = str_replace('!!td_javascript!!',$td_javascript , $tpl_sur_location_tableau_ligne); $line = str_replace('!!tr_surbrillance!!',$tr_surbrillance , $line); $line = str_replace('!!pair_impair!!',$pair_impair , $line); $line =str_replace('!!visible_opac!!', $visible, $line); $line =str_replace('!!surloc_id!!', $this->sur_location_list[$i]->id, $line); $line = str_replace('!!name!!', $this->sur_location_list[$i]->libelle, $line); $line = str_replace('!!comment!!', $this->sur_location_list[$i]->comment, $line); $liste.=$line; } return $tpl = str_replace('!!lignes_tableau!!',$liste , $tpl_sur_location_tableau); } // fonction récupérant les infos pour la liste de sur-loc function get_list($name='form_sur_localisation', $value_selected=0,$no_sel=0) { global $dbh, $msg; $this->sur_location_list=array(); $selector = "'; $this->selector=$selector; return $selector; } // fonction de mise à jour ou de création function update() { global $dbh,$msg; global $form_libelle,$form_location_pic,$form_location_visible_opac,$form_locdoc_name,$form_locdoc_adr1,$form_locdoc_adr2, $form_locdoc_cp,$form_locdoc_town,$form_locdoc_state,$form_locdoc_country,$form_locdoc_phone,$form_locdoc_email, $form_locdoc_website,$form_locdoc_logo,$form_locdoc_commentaire,$form_num_infopage,$form_css_style; $set_values = "SET surloc_libelle='$form_libelle', surloc_pic='$form_location_pic', surloc_visible_opac='$form_location_visible_opac', surloc_name= '$form_locdoc_name', surloc_adr1= '$form_locdoc_adr1', surloc_adr2= '$form_locdoc_adr2', surloc_cp= '$form_locdoc_cp', surloc_town= '$form_locdoc_town', surloc_state= '$form_locdoc_state', surloc_country= '$form_locdoc_country', surloc_phone= '$form_locdoc_phone', surloc_email= '$form_locdoc_email', surloc_website= '$form_locdoc_website', surloc_logo= '$form_locdoc_logo', surloc_comment='$form_locdoc_commentaire', surloc_num_infopage='$form_num_infopage', surloc_css_style='$form_css_style' " ; if($this->id) { $requete = "UPDATE sur_location $set_values WHERE surloc_id='$this->id' "; $res = mysql_query($requete, $dbh); } else { $requete = "INSERT INTO sur_location $set_values "; $res = mysql_query($requete, $dbh); $this->id = mysql_insert_id($dbh); } $requete = "UPDATE docs_location SET surloc_num='0' WHERE surloc_num='$this->id' "; $res = mysql_query($requete, $dbh); // mémo des localisations associées foreach($this->docs_location_data as $docs_loc){ $selected=0; eval(" global \$form_location_selected_".$docs_loc["idlocation"]."; \$selected =\$form_location_selected_".$docs_loc["idlocation"]."; "); if($selected){ $requete = "UPDATE docs_location SET surloc_num='$this->id' WHERE idlocation=".$docs_loc["idlocation"]; $res = mysql_query($requete, $dbh); } } // rafraischissement des données $this->fetch_data(); } // fonction générant le form de saisie function do_form() { global $msg; global $tpl_sur_location_form,$tpl_docs_loc_table_line; global $charset; $tpl=$tpl_sur_location_form; $tpl = str_replace('!!id!!', $this->id, $tpl); if($this->id) $tpl = str_replace('!!form_title!!', $msg["sur_location_modifier_title"], $tpl); else $tpl = str_replace('!!form_title!!', $msg["sur_location_ajouter_title"], $tpl); $tpl = str_replace('!!libelle!!', htmlentities($this->libelle,ENT_QUOTES, $charset), $tpl); $tpl = str_replace('!!libelle_suppr!!', htmlentities(addslashes($this->libelle),ENT_QUOTES, $charset), $tpl); $tpl = str_replace('!!location_pic!!', htmlentities($this->pic,ENT_QUOTES, $charset), $tpl); if($this->visible_opac) $checkbox="checked"; else $checkbox=""; $tpl = str_replace('!!checkbox!!', $checkbox, $tpl); $lines=""; $pair="odd"; foreach($this->docs_location_data as $docs_loc){ $line=$tpl_docs_loc_table_line; if($pair!="odd")$pair="odd"; else $pair="even"; $style = "cursor: pointer;"; if($docs_loc["surloc_num"]==$this->id) $checked = " checked='checked' ";else $checked=""; if($docs_loc["location_visible_opac"]) $visible="X" ; else $visible=" " ; $line=str_replace('!!docs_loc_visible_opac!!', $visible, $line); $line=str_replace('!!odd_even!!', $pair, $line); $line = str_replace('!!docs_loc_id!!', $docs_loc["idlocation"] , $line); $line = str_replace('!!checkbox!!', $checked , $line); $line = str_replace('!!docs_loc_libelle!!', htmlentities($docs_loc["location_libelle"],ENT_QUOTES, $charset) , $line); $line = str_replace('!!docs_loc_comment!!', htmlentities($docs_loc["commentaire"],ENT_QUOTES, $charset) , $line); $lines.=$line; } $tpl = str_replace('!!docs_loc_lines!!', $lines , $tpl); $tpl = str_replace('!!loc_name!!', htmlentities($this->name,ENT_QUOTES, $charset) , $tpl); $tpl = str_replace('!!loc_adr1!!', htmlentities($this->adr1,ENT_QUOTES, $charset) , $tpl); $tpl = str_replace('!!loc_adr2!!', htmlentities($this->adr2,ENT_QUOTES, $charset) , $tpl); $tpl = str_replace('!!loc_cp!!', $this->cp , $tpl); $tpl = str_replace('!!loc_town!!', htmlentities($this->town,ENT_QUOTES, $charset) , $tpl); $tpl = str_replace('!!loc_state!!', htmlentities($this->state,ENT_QUOTES, $charset) , $tpl); $tpl = str_replace('!!loc_country!!',htmlentities($this->country,ENT_QUOTES, $charset) , $tpl); $tpl = str_replace('!!loc_phone!!', $this->phone , $tpl); $tpl = str_replace('!!loc_email!!', $this->email , $tpl); $tpl = str_replace('!!loc_website!!',$this->website , $tpl); $tpl = str_replace('!!loc_logo!!', $this->logo , $tpl); $tpl = str_replace('!!loc_commentaire!!', htmlentities($this->comment,ENT_QUOTES, $charset), $tpl); $requete = "SELECT id_infopage, title_infopage FROM infopages where valid_infopage=1 ORDER BY title_infopage "; $infopages = gen_liste ($requete, "id_infopage", "title_infopage", "form_num_infopage", "", $this->num_infopage, 0, $msg[location_no_infopage], 0,$msg[location_no_infopage], 0) ; $tpl = str_replace('!!loc_infopage!!', $infopages, $tpl); $tpl = str_replace('!!css_style!!', $this->css_style, $tpl); return confirmation_delete("./admin.php?categ=docs&sub=sur_location&action=del&id=").$tpl; } function delete() { global $dbh; if($this->id) { $requete = "UPDATE docs_location SET surloc_num='0' WHERE surloc_num='$this->id' "; $res = mysql_query($requete, $dbh); mysql_query("DELETE from sur_location WHERE surloc_id='".$this->id."' ", $dbh); } $this->id=0; $this->get_list(); } } // fin définition classe