sauv_lieu_id = $sauv_lieu_id; $this -> sauv_lieu_nom = $sauv_lieu_nom; $this -> sauv_lieu_url = $sauv_lieu_url; $this -> sauv_lieu_protocol = $sauv_lieu_protocol; $this -> sauv_lieu_host = $sauv_lieu_host; $this -> sauv_lieu_login = $sauv_lieu_login; $this -> sauv_lieu_password = $sauv_lieu_password; $this -> act = $act; } public function verifName() { global $msg; // we must avoid duplication also when changing a pre-existents destination //$requete="select sauv_lieu_id from sauv_lieux where sauv_lieu_nom='".$this->sauv_lieu_nom."'"; $requete="select sauv_lieu_id from sauv_lieux where (sauv_lieu_nom='".$this->sauv_lieu_nom."' and sauv_lieu_id !='".$this -> sauv_lieu_id."')"; $resultat=pmb_mysql_query($requete) or die(pmb_mysql_error()); if (pmb_mysql_num_rows($resultat)!=0) { echo ""; exit(); } } //Traitement de l'action reçue du formulaire (à appeller juste après l'instanciation de la classe) //Renvoie le formulaire à afficher public function proceed() { global $first; switch ($this -> act) { //Enregistrer case "update" : //Si sauv_lieu_id vide alors création if ($this -> sauv_lieu_id == "") { $this->verifName(); $requete = "insert into sauv_lieux (sauv_lieu_nom,sauv_lieu_url) values('','')"; pmb_mysql_query($requete) or die(pmb_mysql_error()); $this -> sauv_lieu_id = pmb_mysql_insert_id(); $first=""; } //Update avec les données rfeçues $this->verifName(); $requete = "update sauv_lieux set sauv_lieu_nom='".$this -> sauv_lieu_nom."', sauv_lieu_url='".$this -> sauv_lieu_url."', sauv_lieu_protocol='".$this -> sauv_lieu_protocol."',sauv_lieu_host='".$this -> sauv_lieu_host."',sauv_lieu_login='".$this -> sauv_lieu_login."', sauv_lieu_password='".$this -> sauv_lieu_password."' where sauv_lieu_id=".$this -> sauv_lieu_id; pmb_mysql_query($requete) or die(pmb_mysql_error()); $first=""; break; //Supprimer case "delete" : $requete = "delete from sauv_lieux where sauv_lieu_id=".$this -> sauv_lieu_id; pmb_mysql_query($requete) or die(pmb_mysql_error()); $this -> sauv_lieu_id = ""; $first = 0; break; //Annuler case "cancel" : echo ""; exit(); break; //Visualiser default : //Ne rien faire, le numéro de la fiche est déjà dans $this->sauv_lieu_id } return $this -> showForm(); } //Préaparation du formulaire pour affiochage public function showForm() { global $form; global $first; global $msg; //Si première connexion if (!$first) { $form = "

".$msg["sauv_lieux_sel_or_add"]."

"; } else { //Si identifiant non vide if ($this -> sauv_lieu_id) { //Récupération des données de la fiche $requete = "select sauv_lieu_nom,sauv_lieu_url,sauv_lieu_protocol, sauv_lieu_host, sauv_lieu_login, sauv_lieu_password from sauv_lieux where sauv_lieu_id=".$this -> sauv_lieu_id; $resultat = pmb_mysql_query($requete); if (pmb_mysql_num_rows($resultat) != 0) list ($this -> sauv_lieu_nom, $this -> sauv_lieu_url, $this -> sauv_lieu_protocol, $this->sauv_lieu_host, $this -> sauv_lieu_login, $this -> sauv_lieu_password) = pmb_mysql_fetch_row($resultat); $form = str_replace("!!quel_lieu!!", $this -> sauv_lieu_nom, $form); $form = str_replace("!!delete!!", "", $form); } else { //Sinon : Nouvelle fiche $form = str_replace("!!quel_lieu!!", $msg["sauv_lieu_new"], $form); $form = str_replace("!!delete!!", "", $form); } $form = str_replace("!!sauv_lieu_id!!", $this -> sauv_lieu_id, $form); $form = str_replace("!!sauv_lieu_nom!!", $this -> sauv_lieu_nom, $form); $form = str_replace("!!sauv_lieu_url!!", $this -> sauv_lieu_url, $form); $form = str_replace("!!protocol_list!!", $this -> showSelectProtocol(), $form); $login = "".$msg["sauv_lieu_form_param_cnx"]."\n"; $login.= "".$msg["sauv_lieux_host"]." sauv_lieu_host."\" class=\"saisie-simple\">\n"; $login.= "".$msg["sauv_lieux_user"]." sauv_lieu_login."\" class=\"saisie-simple\">\n"; $login.= "".$msg["sauv_lieux_password"]." sauv_lieu_password."\" class=\"saisie-simple\">\n"; $login.= "".$msg["sauv_lieux_test_cnx"].""; $form = str_replace("!!login!!", $login, $form); } return $form; } //Affichage de la liste des lieux existants dans la base //linkToForm : true = rend la liste interactive avec le formulaire public function showTree($linkToForm = true) { global $dbh; global $msg; $tree = "
\n"; $tree.= ""; //Récupération de la liste $requete = "select sauv_lieu_id, sauv_lieu_nom, sauv_lieu_protocol from sauv_lieux order by sauv_lieu_nom"; $resultat = pmb_mysql_query($requete, $dbh) or die(pmb_mysql_error()); while ($res = pmb_mysql_fetch_object($resultat)) { $tree.= "\n"; } $tree.= "
".$msg["sauv_lieux_tree_title"]."
"; switch ($res -> sauv_lieu_protocol) { case "ftp" : $tree.= " "; break; case "file" : $tree.= " "; break; } if ($linkToForm == true) { $tree.= " sauv_lieu_id."&first=1\">"; } $tree.= $res -> sauv_lieu_nom; if ($linkToForm == true) { $tree.= ""; } $tree.= "
"; //Nouveau lieu if ($linkToForm) { //$tree.= "".$msg["sauv_lieux_tree_add"].""; $tree.="
"; } return $tree; } //Liste des protocols avec sélection par défaut public function showSelectProtocol() { global $msg; $values = array("file", "ftp"); $toshow = array($msg["sauv_lieux_pro_list_file"],$msg["sauv_lieux_pro_list_ftp"]); $select = ""; return $select; } } ?>