<?php
//$Id$ 
//gen openMairie le 03/01/2014 16:53

require_once ("../gen/obj/contrainte.class.php");

class contrainte extends contrainte_gen {

    /** @var boolean Les nouvelles actions sont activées sur cet objet */
    var $activate_class_action;

    /**
     * Constructeur de la classe.
     * @param integer $id       Identifiant de l'objet
     * @param object  &$db      Objet de la base de données
     * @param boolean $debug    Mode DEBUG
     */
    function __construct($id, &$db, $debug) {
        //On active les nouvelles actions
        $this->activate_class_action = true;
        $this->constructeur($id, $db, $debug);
    }// fin constructeur

    /**
     * Permet de définir le type des champs.
     * @param object  &$form Objet du formulaire
     * @param integer $maj   Mode du formulaire
     */
    function setType(&$form, $maj) {
        parent::setType($form, $maj);

        // Champs cachés
        $form->setType('contrainte', 'hidden');
        $form->setType('numero', 'hidden');

        // En mode ajouter et modifier
        if ($maj < 2) {
            $form->setType('nature', 'select');
            $form->setType('reference', 'hidden');
        }
    }

    /**
     * Méthode qui effectue les requêtes de configuration des champs.
     * @param object  &$form Objet du formulaire
     * @param integer $maj   Mode du formulaire
     * @param object  $db    Objet de la base de données
     * @param boolean $debug Mode DEBUG
     */
    function setSelect(&$form, $maj, $db, $debug) {
        //
        parent::setSelect($form, $maj, $db, $debug);

        //
        if(file_exists ("../sql/".OM_DB_PHPTYPE."/".$this->table.".form.inc.php")) {
            include ("../sql/".OM_DB_PHPTYPE."/".$this->table.".form.inc.php");
        }
        elseif(file_exists ("../sql/".OM_DB_PHPTYPE."/".$this->table.".form.inc")) {
            include ("../sql/".OM_DB_PHPTYPE."/".$this->table.".form.inc");
        }

        // nature
        $form->setSelect("nature", $nature);
    }

    /**
     * Méthode de mise en page.
     * @param object  &$form Objet du formulaire
     * @param integer $maj   Mode du formulaire
     */
    function setLayout(&$form, $maj) {

        //
        $form->setFieldset("libelle", "D", _("Contrainte"));
        $form->setFieldset("no_ordre", "F");
        //
        $form->setFieldset("groupe", "D", _("Categorie"));
        $form->setFieldset("sousgroupe", "F");
        //
        $form->setFieldset("texte", "D", _("Detail"));
        $form->setFieldset("om_validite_fin", "F");
        
    }

    function verifier($val = array(), &$db = NULL, $DEBUG = false) {
        // On appelle la methode de la classe parent
        parent::verifier($val, $db, $DEBUG);

        // S'il y a une erreur
        if ($this->correct == false) {
            // Ajoute l'erreur au log
            $this->addToLog("verifier() : ".$this->msg, DEBUG_MODE);
        }
    }

}// fin classe
?>
