sauv_sauvegarde_id = $sauv_sauvegarde_id;
$this-> sauv_sauvegarde_nom = $sauv_sauvegarde_nom;
$this-> sauv_sauvegarde_file_prefix = $sauv_sauvegarde_file_prefix;
$this-> sauv_sauvegarde_tables = $sauv_sauvegarde_tables;
$this-> sauv_sauvegarde_lieux = $sauv_sauvegarde_lieux;
$this-> sauv_sauvegarde_users = $sauv_sauvegarde_users ;
$this-> sauv_sauvegarde_compress = $sauv_sauvegarde_compress;
$this-> sauv_sauvegarde_compress_method = $sauv_sauvegarde_compress_method;
$this-> sauv_sauvegarde_zip_command = $sauv_sauvegarde_zip_command;
$this-> sauv_sauvegarde_unzip_command = $sauv_sauvegarde_unzip_command;
$this-> sauv_sauvegarde_zip_ext = $sauv_sauvegarde_zip_ext;
$this-> sauv_sauvegarde_crypt = $sauv_sauvegarde_crypt;
$this-> sauv_sauvegarde_key1 = $sauv_sauvegarde_key1;
$this-> sauv_sauvegarde_key2 = $sauv_sauvegarde_key2;
$this-> sauv_sauvegarde_erase_keys = $sauv_sauvegarde_erase_keys;
$this-> act = $act;
}
public function verifName() {
global $msg;
$requete="select sauv_sauvegarde_id from sauv_sauvegardes where sauv_sauvegarde_nom='".$this->sauv_sauvegarde_nom."'";
$resultat=pmb_mysql_query($requete) or die(pmb_mysql_error());
if (pmb_mysql_num_rows($resultat)!=0) {
echo "";
exit();
}
}
public function verifGeneral() {
global $msg;
$msg_= "";
if (!is_array($this->sauv_sauvegarde_tables)) {
$msg_=$msg["sauv_sauvegardes_valid_form_error_one_group"];
} else {
if (!is_array($this->sauv_sauvegarde_users)) {
$msg_=$msg["sauv_sauvegardes_valid_form_error_one_user"];
}
}
if ($msg_!="") {
echo "";
exit();
}
}
public function makeUpdateQuery()
{
$r_tables=@implode(",",$this->sauv_sauvegarde_tables);
$r_lieux=@implode(",",$this->sauv_sauvegarde_lieux);
$r_users=@implode(",",$this->sauv_sauvegarde_users);
$r_compress_command=$this->sauv_sauvegarde_compress_method;
if ($this->sauv_sauvegarde_compress_method=="external") {
$r_compress_command.=":".$this->sauv_sauvegarde_zip_command.":".$this->sauv_sauvegarde_unzip_command.":".$this->sauv_sauvegarde_zip_ext;
} else {
$r_compress_command.="::";
}
if ($this->sauv_sauvegarde_key1!="") $r_key1=md5($this->sauv_sauvegarde_key1);
if ($this->sauv_sauvegarde_key2!="") $r_key2=md5($this->sauv_sauvegarde_key2);
$requete="update sauv_sauvegardes set ";
$requete.="sauv_sauvegarde_nom='".$this->sauv_sauvegarde_nom."'";
$requete.=",sauv_sauvegarde_file_prefix='".$this->sauv_sauvegarde_file_prefix."'";
$requete.=",sauv_sauvegarde_tables='".$r_tables."'";
$requete.=",sauv_sauvegarde_lieux='".$r_lieux."'";
$requete.=",sauv_sauvegarde_users='".$r_users."'";
$requete.=",sauv_sauvegarde_compress=".$this->sauv_sauvegarde_compress;
$requete.=",sauv_sauvegarde_compress_command='".$r_compress_command."'";
$requete.=",sauv_sauvegarde_crypt=".$this->sauv_sauvegarde_crypt;
if ($this->sauv_sauvegarde_erase_keys==1) $requete.=",sauv_sauvegarde_key1='".$r_key1."'";
if ($this->sauv_sauvegarde_erase_keys==1) $requete.=",sauv_sauvegarde_key2='".$r_key2."'";
$requete.=" where sauv_sauvegarde_id=".$this->sauv_sauvegarde_id;
return $requete;
}
//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" :
$this->verifGeneral();
//Si sauv_sauvegarde_id vide alors création
if ($this -> sauv_sauvegarde_id == "") {
$this->verifName();
$requete = "insert into sauv_sauvegardes (sauv_sauvegarde_nom) values('')";
pmb_mysql_query($requete) or die(pmb_mysql_error());
$this -> sauv_sauvegarde_id = pmb_mysql_insert_id();
$first="";
$this->sauv_sauvegarde_erase_keys=1;
}
//Update avec les données reçues
$requete = $this->makeUpdateQuery();
pmb_mysql_query($requete) or die(pmb_mysql_error());
$first="";
break;
//Supprimer
case "delete" :
$requete = "delete from sauv_sauvegardes where sauv_sauvegarde_id=".$this -> sauv_sauvegarde_id;
pmb_mysql_query($requete) or die(pmb_mysql_error());
$this -> sauv_sauvegarde_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();
}
public function showSelectList($values,$table,$id_field,$name_field,$select_name) {
$select="\n";
return $select;
}
//Préaparation du formulaire pour affichage
public function showForm() {
global $form;
global $first;
global $msg;
//Si première connexion
if (!$first) {
$form = "
".$msg["sauv_sauvegardes_sel_or_add"]."
";
} else {
//Si identifiant non vide
if ($this -> sauv_sauvegarde_id) {
//Récupération des données de la fiche
$requete="select sauv_sauvegarde_nom,sauv_sauvegarde_file_prefix,sauv_sauvegarde_tables,sauv_sauvegarde_lieux,sauv_sauvegarde_users,sauv_sauvegarde_compress,sauv_sauvegarde_compress_command,sauv_sauvegarde_crypt,sauv_sauvegarde_key1,sauv_sauvegarde_key2 from sauv_sauvegardes where sauv_sauvegarde_id=".$this -> sauv_sauvegarde_id;
$resultat = pmb_mysql_query($requete);
if (pmb_mysql_num_rows($resultat) != 0)
$r = pmb_mysql_fetch_object($resultat);
//$form = "
\n",$form);
$form = str_replace("!!crypt_msg!!",$msg["sauv_sauvegardes_erase_msg_keys_exists"],$form);
} else {
$form=str_replace("!!sauv_sauvegarde_erase_keys!!","",$form);
$form = str_replace("!!crypt_msg!!",$msg["sauv_sauvegardes_erase_msg_keys_not_exists"],$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 = "";
}
return $tree;
}
}
?>