/[openfoncier]/trunk/obj/blocnote.class.php
ViewVC logotype

Annotation of /trunk/obj/blocnote.class.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2316 - (hide annotations)
Thu Sep 19 12:26:53 2013 UTC (11 years, 4 months ago) by nhaye
File size: 8124 byte(s)
Modification de l'ordre de tri des listes déroulantes dans l'application

1 fraynaud 3 <?php
2     //$Id$
3     //gen openMairie le 10/02/2011 20:31
4     require_once ("../gen/obj/blocnote.class.php");
5    
6     class blocnote extends blocnote_gen {
7    
8 fraynaud 20 function blocnote($id,&$db,$debug) {
9     $this->constructeur($id,$db,$debug);
10     }// fin constructeur
11 fraynaud 3
12 fmichon 1908 // {{{ Gestion de la confidentialité des données spécifiques
13    
14     /**
15     * Surcharge pour gérer les actions disponibles dans le portlet
16     */
17     function checkAccessibility() {
18     //
19     parent::checkAccessibility();
20     // Si l'utilisateur est un intructeur qui en correspond pas à la
21     // division du dossier
22     if ($this->f->isUserInstructeur()
23     && isset($this->f->om_utilisateur["division"])
24     && $this->f->om_utilisateur["division"] != $this->getDivisionFromDossier()) {
25     //
26     $this->actions_sup = array();
27     $this->setParameter("actions", array());
28     }
29 vpihour 1978
30     $idxformulaire = $this->getParameter("idxformulaire");
31     $retourformulaire = $this->getParameter("retourformulaire");
32     //Si le dossier d'instruction auquel est rattachée la consultation est
33     //cloturée, on affiche pas le lien de modification du portlet
34     if ( $idxformulaire != '' &&
35     (
36     $retourformulaire == 'dossier' ||
37     $retourformulaire == 'dossier_instruction' ||
38     $retourformulaire == 'dossier_instruction_mes_encours' ||
39     $retourformulaire == 'dossier_instruction_tous_encours' ||
40     $retourformulaire == 'dossier_instruction_mes_clotures' ||
41     $retourformulaire == 'dossier_instruction_tous_clotures'
42     )){
43    
44     //On récuppère le statut du dossier d'instruction
45 vpihour 2039 $statut = $this->f->getStatutDossier($idxformulaire);
46 vpihour 1978 if ( $this->f->isUserInstructeur() && $statut == "cloture" ){
47    
48     //On cache le lien de modification
49     $this->parameters["actions"]["modifier"] = NULL;
50     $this->parameters["actions"]["supprimer"] = NULL;
51     }
52     }
53 fmichon 1908 }
54    
55     /**
56     * Cette variable permet de stocker le résultat de la méthode
57     * getDivisionFromDossier() afin de ne pas effectuer le recalcul à chacun de
58     * ces appels.
59     * @var string Code de la division du dossier en cours
60     */
61     var $_division_from_dossier = NULL;
62    
63     /**
64     * Cette méthode permet de récupérer le code de division correspondant
65     * au dossier sur lequel on se trouve.
66     *
67     * @return string Code de la division du dossier en cours
68     */
69     function getDivisionFromDossier() {
70    
71     // Cette méthode peut être appelée plusieurs fois lors d'une requête.
72     // Pour éviter de refaire le traitement de recherche de la division
73     // alors on vérifie si nous ne l'avons pas déjà calculé.
74     if ($this->_division_from_dossier != NULL) {
75     // Logger
76     $this->addToLog("getDivisionFromDossier(): retour de la valeur déjà calculée - '".$this->_division_from_dossier."'", EXTRA_VERBOSE_MODE);
77     // On retourne la valeur déjà calculée
78     return $this->_division_from_dossier;
79     }
80    
81     // Par défaut, on définit la valeur du dossier à NULL
82     $dossier = NULL;
83     // Test sur le mode et le contexte du formulaire
84     if ($this->getParameter("maj") == 0
85     && ($this->getParameter("retourformulaire") == "dossier"
86     || $this->getParameter("retourformulaire") == "dossier_instruction"
87     || $this->getParameter("retourformulaire") == "dossier_instruction_mes_encours"
88     || $this->getParameter("retourformulaire") == "dossier_instruction_tous_encours"
89     || $this->getParameter("retourformulaire") == "dossier_instruction_mes_clotures"
90     || $this->getParameter("retourformulaire") == "dossier_instruction_tous_clotures")) {
91     // Si on se trouve en mode AJOUT (seul mode où l'enregistrement
92     // n'existe pas en base de données) ET que nous nous trouvons
93     // dans le contexte d'un dossier d'instruction alors on récupère
94     // le numéro de dossier depuis le paramètre 'idxformulaire'
95     $dossier = $this->getParameter("idxformulaire");
96     } else {
97     // Sinon on récupère le numéro de dossier dans le champs dossier de
98     // l'enregistrement (en base de données)
99     $dossier = $this->getVal("dossier");
100     }
101    
102     // On appelle la méthode de la classe utils qui renvoi le code de la
103     // division d'un dossier, on la stocke pour ne pas refaire le calcul au
104     // prochain appel de cette méthode
105     $this->_division_from_dossier = $this->f->getDivisionFromDossier($dossier);
106     // Logger
107     $this->addToLog("getDivisionFromDossier(): retour de la valeur nouvellement calculée - '".$this->_division_from_dossier."'", EXTRA_VERBOSE_MODE);
108     // On retourne la valeur retournée
109     return $this->_division_from_dossier;
110    
111     }
112    
113     // }}}
114    
115 fraynaud 20 function setValsousformulaire(&$form,$maj,$validation,$idxformulaire,$retourformulaire,$typeformulaire){
116     if ($validation==0) {
117     if ($maj == 0){
118     $form->setVal("dossier", $idxformulaire);
119     }
120     }
121     }
122 fmichon 1761
123     function setLib(&$form, $maj) {
124     //
125     parent::setLib($form, $maj);
126     //
127     $form->setLib($this->clePrimaire, _("id"));
128     }
129    
130     function setType(&$form, $maj) {
131     //
132     parent::setType($form, $maj);
133     //
134 fraynaud 20 if ($maj < 2) {
135     $form->setType('categorie', 'select');
136     $form->setType('dossier', 'hiddenstatic');
137     }else{
138     $form->setType('blocnote', 'hiddenstatic');
139     $form->setType('destination', 'hiddenstatic');
140     $form->setType('dossier', 'hiddenstatic');
141     }
142 fmichon 1761
143     //
144     if ($this->getParameter("retourformulaire") == "dossier"
145     || $this->getParameter("retourformulaire") == "dossier_instruction"
146     || $this->getParameter("retourformulaire") == "dossier_instruction_mes_encours"
147     || $this->getParameter("retourformulaire") == "dossier_instruction_tous_encours"
148     || $this->getParameter("retourformulaire") == "dossier_instruction_mes_clotures"
149     || $this->getParameter("retourformulaire") == "dossier_instruction_tous_clotures") {
150     //
151     $form->setType('dossier', 'hidden');
152     }
153 fraynaud 20 }
154    
155    
156    
157     function setSelect(&$form, $maj,$db,$debug) {
158     $contenu=array();
159 nhaye 2316 $contenu[0]=array(
160     _('amenagement'),
161     _('construction'),
162     _('contentieux'),
163     _('demolition'),
164     _('divers'),
165     );
166     $contenu[1]=array(
167     _('amenagement'),
168     _('construction'),
169     _('contentieux'),
170     _('demolition'),
171     _('divers'),
172     );
173 fraynaud 20 $form->setSelect("categorie",$contenu);
174     }
175 vpihour 1978
176     /**
177     * Cette methode est à surcharger elle permet de tester dans chaque classe
178     * des droits spécifiques en fonction des données
179     */
180     function canAccess() {
181    
182     $retourformulaire = $this->getParameter("retourformulaire");
183     // Si l'utilisateur est un instructeur et que le dossier est cloturé
184     if ( $this->f->isUserInstructeur() &&
185 vpihour 2039 $this->f->getStatutDossier($this->getVal("dossier")) == "cloture" &&
186 vpihour 1978 (
187     $retourformulaire == 'dossier' ||
188     $retourformulaire == 'dossier_instruction' ||
189     $retourformulaire == 'dossier_instruction_mes_encours' ||
190     $retourformulaire == 'dossier_instruction_tous_encours' ||
191     $retourformulaire == 'dossier_instruction_mes_clotures' ||
192     $retourformulaire == 'dossier_instruction_tous_clotures'
193     ) && $this->getParameter("maj") != 3) {
194    
195     return false;
196     }
197     //
198     return true;
199     }
200 fmichon 1761 }
201    
202 fraynaud 273 ?>

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26