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

Diff of /trunk/obj/demande.class.php

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2450 by vpihour, Thu Nov 7 18:56:52 2013 UTC revision 2503 by softime, Fri Nov 22 14:50:55 2013 UTC
# Line 92  class demande extends demande_gen { Line 92  class demande extends demande_gen {
92              include ("../sql/".$db->phptype."/".$this->table.".form.inc.php");              include ("../sql/".$db->phptype."/".$this->table.".form.inc.php");
93          elseif(file_exists ("../sql/".$db->phptype."/".$this->table.".form.inc"))          elseif(file_exists ("../sql/".$db->phptype."/".$this->table.".form.inc"))
94              include ("../sql/".$db->phptype."/".$this->table.".form.inc");              include ("../sql/".$db->phptype."/".$this->table.".form.inc");
95            
96            //
97            $form->setSelect('demande_type', $this->loadSelectDemandeType($form, $maj, $db, $debug, "dossier_autorisation_type_detaille"));
98            
99        }
100    
101          // Si en ajout      /**
102          if ($maj == 0) {       * Charge le select du champ type de demande
103              //Récupération de paramètre pour le rechargement ajax du select       * @param  object $form  Formulaire
104              $idx_dossier = $this->getParameter("idx_dossier");       * @param  int    $maj   Mode d'insertion
105              $datd = $this->getParameter("datd");       * @param  object $db    Database
106         * @param  bool   $debug Debug active ou pas
107              $contenu = array();       * @param  string $champ champ activant le filtre
108         * @return array         Contenu du select
109              $sql_demande_type = "SELECT demande_type.demande_type, demande_type.libelle FROM ".DB_PREFIXE."demande_type       */
110                          LEFT OUTER JOIN ".DB_PREFIXE."lien_demande_type_etat_dossier_autorisation      function loadSelectDemandeType(&$form, $maj, &$db, $debug, $champ) {
                             ON lien_demande_type_etat_dossier_autorisation.demande_type=demande_type.demande_type  
                         LEFT OUTER JOIN ".DB_PREFIXE."dossier_autorisation  
                             ON lien_demande_type_etat_dossier_autorisation.etat_dossier_autorisation=  
                                 dossier_autorisation.etat_dossier_autorisation  
                         LEFT OUTER JOIN ".DB_PREFIXE."dossier  
                             ON dossier.dossier_autorisation=dossier_autorisation.dossier_autorisation";  
   
   
             // Ajout de filtre sur la requête (initial)  
             if(isset($idx_dossier) AND $idx_dossier != "") {  
                 $sql_demande_type .= " WHERE demande_type.demande_nature = 2 ";  
   
                 // ajout du numéro de dossier existant pour tester l'état du DA  
                 $sql_demande_type .= "AND dossier.dossier = '".$idx_dossier."' ";  
             } else {  
                 $sql_demande_type .= " WHERE demande_type.demande_nature = 1 ";  
             }  
             if(isset($_POST["dossier_autorisation_type_detaille"]) AND $_POST["dossier_autorisation_type_detaille"] != "") {  
                 $datd = $_POST["dossier_autorisation_type_detaille"];  
             }  
             // Ajout de filtre sur la requête (dossier_autorisation_type_detaille)  
             if(isset($datd) AND $datd != "") {  
                 $sql_demande_type .= " AND demande_type.dossier_autorisation_type_detaille = ".$datd;  
             } else {  
                 $datd = $this->getVal("dossier_autorisation_type_detaille");  
                 if ($datd != "") {  
                     $sql_demande_type .= " AND demande_type.dossier_autorisation_type_detaille = ".$datd;  
                 }  
             }  
             $sql_demande_type .= " ORDER BY demande_type.libelle";  
             $res = $db->query($sql_demande_type);  
   
             // logger  
             $this->f->addToLog("setSelect(): db->query(\"".$sql_demande_type."\");",  
                             VERBOSE_MODE);  
             if ( database::isError($res)){  
                 die();  
             }  
111    
112              $contenu[0][0] = '';          //
113              $contenu[1][0] = _('choisir')." "._("demande_type");          if(file_exists ("../sql/".$db->phptype."/".$this->table.".form.inc.php"))
114                include ("../sql/".$db->phptype."/".$this->table.".form.inc.php");
115            elseif(file_exists ("../sql/".$db->phptype."/".$this->table.".form.inc"))
116                include ("../sql/".$db->phptype."/".$this->table.".form.inc");
117    
118              $k=1;          // Contenu de la liste à choix
119              while($row =& $res->fetchRow()){          $contenu=array();
120            $contenu[0][0]='';
121            $contenu[1][0]=_('choisir')." "._("demande_type");
122    
123            //Récupère l'id du type de dossier d'autorisation détaillé
124            $id_dossier_autorisation_type_detaille = "";
125            if (isset($_POST[$champ])) {
126                $id_dossier_autorisation_type_detaille = $_POST[$champ];
127            } elseif($this->getParameter($champ) != "") {
128                $id_dossier_autorisation_type_detaille = $this->getParameter($champ);
129            } elseif(isset($form->val[$champ])) {
130                $id_dossier_autorisation_type_detaille = $form->val[$champ];
131            }
132    
133                  $contenu[0][$k] = $row[0];          // Récupération de paramètre pour le rechargement ajax du select
134                  $contenu[1][$k] = $row[1];          $idx_dossier = $this->getParameter("idx_dossier");
                 $k++;  
             }  
135    
136              $form->setSelect("demande_type", $contenu);          // Récupère l'id de la nature de la demande
137            $id_demande_nature = "1";
138            if (isset($idx_dossier) AND $idx_dossier != "") {
139                $id_demande_nature = '2';
140          }          }
141            
142            // Ajout de condition pour la requête
143            $ajout_condition_requête = "";
144            if ($id_demande_nature == '2') {
145                $ajout_condition_requête = " AND dossier.dossier = '".$idx_dossier."'";
146            }
147    
148            //
149            if ($id_dossier_autorisation_type_detaille != "") {
150                //Si l'id du type de dossier d'autorisation détaillé est renseigné
151                $sql_demande_type_by_dossier_autorisation_type_detaille = str_replace('<idx_dossier_autorisation_type_detaille>', $id_dossier_autorisation_type_detaille, $sql_demande_type_by_dossier_autorisation_type_detaille);
152                // Ajoute une condition sur la nature de la demande
153                $sql_demande_type_by_dossier_autorisation_type_detaille = str_replace('<idx_demande_nature>', $id_demande_nature, $sql_demande_type_by_dossier_autorisation_type_detaille);
154                // Permet d'ajouter une condition
155                $sql_demande_type_by_dossier_autorisation_type_detaille = str_replace('<ajout_condition_requête>', $ajout_condition_requête, $sql_demande_type_by_dossier_autorisation_type_detaille);
156                $res = $this->db->query($sql_demande_type_by_dossier_autorisation_type_detaille);
157                $this->addToLog("db->query(\"".$sql_demande_type_by_dossier_autorisation_type_detaille."\");", VERBOSE_MODE);
158                $this->f->isDatabaseError($res);
159                //Les résultats de la requête sont stocké dans le tableau contenu
160                $k=1;
161                while ($row=& $res->fetchRow()){
162                    $contenu[0][$k]=$row[0];
163                    $contenu[1][$k]=$row[1];
164                    $k++;
165                }
166            }
167    
168            // Retourne le contenu de la liste
169            return $contenu;
170      }      }
171    
172      /*      /*
173      * Ajout du fielset      * Ajout du fielset
174      * Add fieldset      * Add fieldset

Legend:
Removed from v.2450  
changed lines
  Added in v.2503

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26