21 |
* |
* |
22 |
*/ |
*/ |
23 |
class om_dbform extends dbForm { |
class om_dbform extends dbForm { |
24 |
|
|
25 |
/** |
/** |
26 |
* |
* Nom de la classe formulaire |
27 |
*/ |
*/ |
28 |
var $om_formulaire = "om_formulaire"; |
var $om_formulaire = "om_formulaire"; |
29 |
|
|
35 |
* @param boolean $DEBUG Mode debug (@deprecated) |
* @param boolean $DEBUG Mode debug (@deprecated) |
36 |
*/ |
*/ |
37 |
function constructeur($id, &$db, $DEBUG = false) { |
function constructeur($id, &$db, $DEBUG = false) { |
|
if (defined('REST_REQUEST')) { // $this->REST |
|
|
logger::instance()->display_log = false; |
|
|
} |
|
38 |
// |
// |
39 |
if (isset($GLOBALS["f"])) { |
if (isset($GLOBALS["f"])) { |
40 |
$this->f = $GLOBALS["f"]; |
$this->f = $GLOBALS["f"]; |
319 |
if ($this->correct) { |
if ($this->correct) { |
320 |
// Execution du trigger 'before' specifique au MODE 'delete' |
// Execution du trigger 'before' specifique au MODE 'delete' |
321 |
$this->triggersupprimer($id, $db, $val, $DEBUG); |
$this->triggersupprimer($id, $db, $val, $DEBUG); |
322 |
//Traitement des fichiers uploadé |
// Construction de la requete de suppression de l'objet dans |
323 |
$retTraitementFichier = $this->traitementFichierUpload(); |
// l'attribut table de l'objet |
324 |
if($retTraitementFichier === true) { |
$sql = "delete from ".DB_PREFIXE.$this->table." where ".$this->getCle($id); |
325 |
// Construction de la requete de suppression de l'objet dans |
// Execution de la requete de suppression de l'objet |
326 |
// l'attribut table de l'objet |
$res = $db->query($sql); |
327 |
$sql = "delete from ".DB_PREFIXE.$this->table." where ".$this->getCle($id); |
// Logger |
328 |
// Execution de la requete de suppression de l'objet |
$this->addToLog("supprimer(): db->query(\"".$sql."\");", VERBOSE_MODE); |
329 |
$res = $db->query($sql); |
// Si une erreur survient |
330 |
// Logger |
if (database::isError($res, true)) { |
331 |
$this->addToLog("supprimer(): db->query(\"".$sql."\");", VERBOSE_MODE); |
// Appel de la methode de recuperation des erreurs |
332 |
// Si une erreur survient |
$this->erreur_db($res->getDebugInfo(), $res->getMessage(), ''); |
|
if (database::isError($res, true)) { |
|
|
// Appel de la methode de recuperation des erreurs |
|
|
$this->erreur_db($res->getDebugInfo(), $res->getMessage(), ''); |
|
|
} else { |
|
|
// Log |
|
|
$message = _("Enregistrement")." ".$id." "; |
|
|
$message .= _("de la table")." \"".$this->table."\" "; |
|
|
$message .= "[ ".$db->affectedRows()." "; |
|
|
$message .= _("enregistrement(s) supprime(s)")." ]"; |
|
|
$this->addToLog($message, VERBOSE_MODE); |
|
|
// Message de validation |
|
|
$this->addToMessage(_("La suppression a ete correctement effectuee.")."<br/>"); |
|
|
// Mise en place du verrou pour ne pas valider plusieurs fois |
|
|
// le meme formulaire |
|
|
$this->verrouille(); |
|
|
// Execution du trigger 'after' specifique au MODE 'delete' |
|
|
$this->triggersupprimerapres($id, $db, $val, $DEBUG); |
|
|
} |
|
333 |
} else { |
} else { |
334 |
$this->correct = false; |
// Log |
335 |
$this->addToMessage($retTraitementFichier); |
$message = _("Enregistrement")." ".$id." "; |
336 |
$this->addToMessage(_("SAISIE NON ENREGISTREE")); |
$message .= _("de la table")." \"".$this->table."\" "; |
337 |
|
$message .= "[ ".$db->affectedRows()." "; |
338 |
|
$message .= _("enregistrement(s) supprime(s)")." ]"; |
339 |
|
$this->addToLog($message, VERBOSE_MODE); |
340 |
|
// Message de validation |
341 |
|
$this->addToMessage(_("La suppression a ete correctement effectuee.")."<br/>"); |
342 |
|
// Mise en place du verrou pour ne pas valider plusieurs fois |
343 |
|
// le meme formulaire |
344 |
|
$this->verrouille(); |
345 |
|
// Execution du trigger 'after' specifique au MODE 'delete' |
346 |
|
$this->triggersupprimerapres($id, $db, $val, $DEBUG); |
347 |
|
//Traitement des fichiers uploadé |
348 |
|
$retTraitementFichier = $this->traitementFichierUpload(); |
349 |
|
// |
350 |
|
if($retTraitementFichier !== true) { |
351 |
|
$this->correct = false; |
352 |
|
$this->addToMessage($retTraitementFichier); |
353 |
|
$this->addToMessage(_("SUPPRESSION NON EFFECTUEE")); |
354 |
|
die(); |
355 |
|
} |
356 |
} |
} |
357 |
} else { |
} else { |
358 |
// Message d'echec (saut d'une ligne supplementaire avant le |
// Message d'echec (saut d'une ligne supplementaire avant le |
583 |
} |
} |
584 |
} |
} |
585 |
|
|
|
|
|
|
/** |
|
|
* |
|
|
*/ |
|
|
function addToLog($message, $type = DEBUG_MODE) { |
|
|
if (defined('REST_REQUEST')) { // dans le cas d'utilisation du REST $this->REST |
|
|
logger::instance()->log("REST request class ".get_class($this)." - ".$message, $type); |
|
|
} else { |
|
|
logger::instance()->log("class ".get_class($this)." - ".$message, $type); |
|
|
} |
|
|
} |
|
|
|
|
586 |
// }}} |
// }}} |
587 |
|
|
588 |
/** |
/** |
|
* Cette methode vide les valeurs des erreurs du tableau errors. |
|
|
*/ |
|
|
function clearErrors() { |
|
|
foreach (array_keys($this->errors) as $key) { |
|
|
$this->errors[$key] = ''; |
|
|
} |
|
|
} |
|
|
|
|
|
/** |
|
589 |
* Méthode pour convertir une date Y-m-d en d/m/Y |
* Méthode pour convertir une date Y-m-d en d/m/Y |
590 |
*/ |
*/ |
591 |
function dateDBToForm($date) { |
function dateDBToForm($date) { |
767 |
|
|
768 |
} |
} |
769 |
// }}} |
// }}} |
770 |
|
|
771 |
|
// {{{ GESTION DES METADONNEES |
772 |
|
|
773 |
|
/** |
774 |
|
* Liste des métadonnées communes à l'ensemble des objets de l'application |
775 |
|
*/ |
776 |
|
var $metadata_global = array( |
777 |
|
"code_produit" => "getCodeProduit", |
778 |
|
"groupe" => "getGroupe", |
779 |
|
); |
780 |
|
|
781 |
|
/** |
782 |
|
* Retourne le code produit défini dans le paramétrage |
783 |
|
* @return string code produit (OpenADS) |
784 |
|
*/ |
785 |
|
protected function getCodeProduit() { |
786 |
|
return $this->f->getParameter("code_produit"); |
787 |
|
} |
788 |
|
|
789 |
|
/** |
790 |
|
* Retourne le groupe des dossiers d'instruction géré par l'application |
791 |
|
* @return string groupe (ADS) |
792 |
|
*/ |
793 |
|
protected function getGroupe() { |
794 |
|
return $this->f->getParameter("groupe_instruction"); |
795 |
|
} |
796 |
|
|
797 |
|
// }}} |
798 |
|
|
799 |
} |
} |
800 |
|
|
801 |
?> |
?> |