<?php
/**
 * Ce script définit la classe 'plans'.
 *
 * @package opencimetiere
 * @version SVN : $Id$
 */

require_once "../gen/obj/plans.class.php";

/**
 * Définition de la classe 'plans' (om_dbform).
 */
class plans extends plans_gen {

    /**
     * SETTER_FORM - setType.
     *
     * @return void
     */
    function setType(&$form, $maj) {
        parent::setType($form, $maj);
        //
        if ($maj == 0 || $maj == 1) {
            $form->setType('fichier', 'upload');
        } elseif ($maj == 3) {
            $form->setType('fichier', 'file');
        } else {
            $form->setType('fichier', 'filestatic');
        }
        
        // Gestion de l'affichage du champ om_collectivite selon le niveau de l'utilisateur
        if ($_SESSION["niveau"] == "1") {
            $form->setType('om_collectivite', 'hidden');
        }
    }

    /**
     * SETTER_FORM - setOnchange.
     *
     * @return void
     */
    function setOnchange(&$form, $maj) {
        parent::setOnchange($form, $maj);
        //
        $form->setOnchange('planslib','this.value=this.value.toUpperCase()');
    }

    /**
     * SETTER_FORM - setvalF.
     *
     * @return void
     */
    function setvalF($val = array()) {
        parent::setValF($val);
        
        // Force la collectivité de l'utilisateur pour les collectivités de niveau 1
        if ($_SESSION['niveau'] == 1) {
            $this->valF['om_collectivite'] = $_SESSION['collectivite'];
        }
    }

    /**
     * SETTER_FORM - setVal.
     *
     * @return void
     */
    function setVal(&$form, $maj, $validation, &$dnu1 = null, $dnu2 = null) {
        parent::setVal($form, $maj, $validation);
        
        // Force la collectivité de l'utilisateur pour les collectivités de niveau 1 lors de l'ajout
        if ($validation == 0 && $maj == 0 && $_SESSION['niveau'] == 1) {
            $form->setVal('om_collectivite', $_SESSION['collectivite']);
        }
    }
}
