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

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

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

revision 11 by fraynaud, Mon Feb 28 20:15:19 2011 UTC revision 44 by fraynaud, Mon Jul 25 16:06:39 2011 UTC
# Line 2  Line 2 
2  //$Id$  //$Id$
3  //gen openMairie le 10/02/2011 20:39  //gen openMairie le 10/02/2011 20:39
4  require_once ("../gen/obj/dossier.class.php");  require_once ("../gen/obj/dossier.class.php");
5  require_once ("../sig/strategyDynmap.class.php"); //specific  //require_once ("../sig/strategyDynmap.class.php"); //specific
6    
7  class dossier extends dossier_gen {  class dossier extends dossier_gen {
8    
9      function dossier($id,&$db,$debug) {      var $maj;
         $this->constructeur($id,$db,$debug);  
     }// fin constructeur  
   
10    
11      function setvalF($val){      function setvalF($val){
12          parent::setvalF($val);          parent::setvalF($val);
13          if($val['instructeur']!="") // pgsql          
14              $this->valF['instructeur'] = $val['instructeur'];          // cles secondaires numerique (contrainte integrite  pgsql)
15          // *** architecte          if(!is_numeric($val['instructeur'])) $this->valF['instructeur']= null;
16          if($val['architecte']!="")          if(!is_numeric($val['architecte'])) $this->valF['architecte']= null;
17              $this->valF['architecte'] = $val['architecte'];          if(!is_numeric($val['travaux'])) $this->valF['travaux']= null;
18          if($val['terrain_surface']!="") // pgsql          if(!is_numeric($val['demandeur_categorie'])) $this->valF['demandeur_categorie']= null;
19              $this->valF['terrain_surface'] = $val['terrain_surface'];          
20          if($val['travaux']!="") // pgsql          // cle secondaire alpha vide (contrainte integrite pgsql)
21              $this->valF['travaux'] = $val['travaux'];          if($val['demandeur_civilite']=='') $this->valF['demandeur_civilite']= null;
22          if($val['demandeur_categorie']!="")  // pgsql          if($val['delegataire_civilite']=='') $this->valF['delegataire_civilite']= null;
23              $this->valF['demandeur_categorie'] = $val['demandeur_categorie'];                  
24          unset ($this->valF['geom']);          // zone numerique non valorisée a 0
25      }          if(!is_numeric($val['delai'])) unset ($this->valF['delai']);
26            if(!is_numeric($val['terrain_surface'])) unset ($this->valF['terrain_surface']);
27            if(!is_numeric($val['batiment_nombre'])) unset ($this->valF['batiment_nombre']);
28            if(!is_numeric($val['logement_nombre'])) unset ($this->valF['logement_nombre']);
29            if(!is_numeric($val['shon'])) unset ($this->valF['shon']);
30            if(!is_numeric($val['shob'])) unset ($this->valF['shob']);
31            if(!is_numeric($val['lot'])) unset ($this->valF['lot']);
32            if(!is_numeric($val['hauteur'])) unset ($this->valF['hauteur']);
33            if(!is_numeric($val['piece_nombre'])) unset ($this->valF['piece_nombre']);
34    
 /*  
     function setValFAjout($val){  
35    
36          if($val['demandeur_categorie']!="")  // pgsql         // enlever les valeurs a ne pas saisir -> recherche en trigger ajouter et modifier
37              $this->valF['demandeur_categorie'] = $val['demandeur_categorie'];         // $sig = 1
38          $this->valF['demandeur_civilite'] = $val['demandeur_civilite'];          unset ($this->valF['geom']);
39          $this->valF['demandeur_nom'] = $val['demandeur_nom'];          
40          $this->valF['demandeur_societe'] = $val['demandeur_societe'];          // valeurs hiddenstatic (calcule)
41          $this->valF['demandeur_adresse'] = $val['demandeur_adresse'];          if($this->maj==1){
42          $this->valF['demandeur_cp'] = $val['demandeur_cp'];              // par defaut
43          $this->valF['demandeur_ville'] = $val['demandeur_ville'];              unset ($this->valF['etat']);
44          $this->valF['demandeur_email'] = $val['demandeur_email'];              unset ($this->valF['delai']);
45          $this->valF['demandeur_pays'] = $val['demandeur_pays'];              unset ($this->valF['accord_tacite']);
46          $this->valF['demandeur_telephone'] = $val['demandeur_telephone'];              unset ($this->valF['types']);
47          //          }
48          $this->valF['delegataire_civilite'] = $val['delegataire_civilite'];          unset ($this->valF['avis']); // avis + libelle avis
49          $this->valF['delegataire_nom'] = $val['delegataire_nom'];          unset ($this->valF['terrain_surface_calcul']);
50          $this->valF['delegataire_societe'] = $val['delegataire_societe'];          unset ($this->valF['shon_calcul']);
51          $this->valF['delegataire_adresse'] = $val['delegataire_adresse'];          unset ($this->valF['parcelle_archive']);
52          $this->valF['delegataire_cp'] = $val['delegataire_cp'];          unset ($this->valF['date_notification_delai']);
53          $this->valF['delegataire_ville'] = $val['delegataire_ville'];          unset ($this->valF['date_decision']);
54          $this->valF['delegataire_email'] = $val['delegataire_email'];          unset ($this->valF['date_limite']);
55          $this->valF['delegataire_pays'] = $val['delegataire_pays'];          unset ($this->valF['date_validite']);
56          $this->valF['delegataire_telephone'] = $val['delegataire_telephone'];          unset ($this->valF['date_chantier']);
57            unset ($this->valF['date_achevement']);
58            unset ($this->valF['date_conformite']);  
59      }      }
 // initialisation valF pour la cle primaire  
 */  
60    
61        // specifique
62      function setId($db){      function setId($db){
63          // id automatique nextid          // id automatique nextid
64          // departement      13          // departement      13
# Line 62  class dossier extends dossier_gen { Line 66  class dossier extends dossier_gen {
66          // nature           2 caracteres          // nature           2 caracteres
67          // lettre           R arles F vitrolles          // lettre           R arles F vitrolles
68          // numero sur       6 caracteres          // numero sur       6 caracteres
69          include ("../dyn/var.inc");          if (file_exists ("../dyn/var.inc"))
70                include ("../dyn/var.inc");
71          if($numero_unique==1){          if($numero_unique==1){
72          // numero unique          // numero unique (voir dyn/var.inc)
73          $temp=$db->nextId($this->table);          $temp=$db->nextId($this->table);
74          }else{          }else{
75          // numero suivant nature          // numero suivant nature
# Line 75  class dossier extends dossier_gen { Line 80  class dossier extends dossier_gen {
80                                   $lettre.$temp;                                   $lettre.$temp;
81      }      }
82    
83  /*      // fonction a surcharger car utilisation d un nextID alpha
84      function verifierAjout(){      function verifierAjout(){
85      }      }
 */  
86    
87      function verifier($val,&$db,$DEBUG){      function verifier($val,&$db,$DEBUG){
88          $this->correct=True;          $this->correct=True;
# Line 212  class dossier extends dossier_gen { Line 216  class dossier extends dossier_gen {
216          }          }
217      }//verifier      }//verifier
218    
 /*  
     function retour($premier,$recherche){  
         if (!$this->correct){  
              echo "<a href=\"tab.php?obj=".$this->nature.  
              "&premier=".$premier."&recherche=".$recherche.  
              "\">";  
             echo"<img src='../img/retour.png' align='top' hspace='10' border='0'>";  
             echo "</a></center></td> </tr>";  
         }else{  
              echo "<tr><td> </td></tr><tr><td colspan=2><center><a href=\"tab.php?obj=".$this->nature.  
              "&premier=".$premier."&recherche=".$recherche.  
              "\">";  
              echo"<img src='../img/retour.png' align='top'  border='0'>";  
              echo "</a></center></td> </tr>";  
         }  
     }  
   
     function bouton($maj){  
         include("../dyn/var.inc");  
         if (!$this->correct){  
            if ($maj == 2) //supprimer  
                $bouton = _("Supprimer");  
            else  
                 if ($maj == 1) // modifier    
                     $bouton = _("Modifier");  
                 else // ajouter  
                     $bouton = _("Ajouter");  
            echo "<tr><td> </td></tr><tr><td colspan=2><center><input type='submit' value='".  
                 $bouton." ".ucwords($this->table)."' style=".$styleBouton.  
                 " >";  
         }  
     }  
 */  
219    
220      function setType(&$form,$maj) {      function setType(&$form,$maj) {
221            //parent::setType($form,$maj);
222          if ($maj < 2) { //ajouter et modifier          if ($maj < 2) { //ajouter et modifier
223                // cache
224                if($maj==0) $form->setType('dossier', 'hidden');
225              $form->setType('annee', 'hidden');              $form->setType('annee', 'hidden');
226              $form->setType('nature', 'hidden');              $form->setType('nature', 'hidden');
227                $form->setType('parcelle_archive','hidden');
228                $form->setType('objet_dossier','hidden'); // PC
229                $form->setType('amenagement','hidden'); // PC
230                            
231                // a voir a quoi cela peut servir
232                $form->setType('sig','hidden'); // PC
233                $form->setType('siglien','hidden'); // PC
234                
235                // date
236                $form->setType('date_depot','date');
237                $form->setType('date_demande','date');
238                
239              //select              //select
             $form->setType('etat','hiddenstatic');  
             $form->setType('avis','hiddenstatic');  
240              $form->setType('travaux','select');              $form->setType('travaux','select');
241              $form->setType('instructeur','select');              $form->setType('instructeur','select');
             $form->setType('accord_tacite','hiddenstatic');  
242              $form->setType('terrain_numero_complement','select');              $form->setType('terrain_numero_complement','select');
243                $form->setType('delegataire_civilite','select');
244                $form->setType('demandeur_civilite','select');
245                $form->setType('demandeur_categorie','select');
246    
247              // combo              // combo
248              $form->setType('rivoli','comboD');              $form->setType('rivoli','comboD');
249              $form->setType('terrain_adresse','comboG');              $form->setType('terrain_adresse','comboG');
250              $form->setType('architecte','comboD');              //$form->setType('architecte','comboD');
251                //$form->setType('architecte','textdisabled'); // ne valorise pas
252              $form->setType('architecte_nom','comboG');              $form->setType('architecte_nom','comboG');
253    
254              // hiddenstatic              // hiddenstatic
255                if($maj==1) $form->setType('dossier', 'hiddenstatic');
256                $form->setType('etat','hiddenstatic');
257                $form->setType('avis','hiddenstatic');
258              $form->setType('delai','hiddenstatic');              $form->setType('delai','hiddenstatic');
259              $form->setType('terrain_surface_calcul','hiddenstatic');              $form->setType('terrain_surface_calcul','hiddenstatic');
260              $form->setType('parcelle_archive','hiddenstatic');              $form->setType('shon_calcul','hiddenstatic');
261                            
262              //hidden              $form->setType('accord_tacite','hiddenstatic');
263              $form->setType('terrain_cp','hidden');              $form->setType('types', 'hiddenstatic'); // transfert modificatif
             $form->setType('terrain_ville','hidden');  
             $form->setType('batiment_nombre','hidden');  
             $form->setType('logement_nombre','hidden');  
             $form->setType('shob','hidden');  
             $form->setType('shon','hidden');  
             $form->setType('lot','hidden');  
             $form->setType('hauteur','hidden');  
             $form->setType('piece_nombre','hidden');  
             $form->setType('shon_calcul','hidden');  
             $form->setType('amenagement','hidden');  
264    
265              $form->setType('objet_dossier','hidden');              
266                          // hiddenstaticdate
267              $form->setType('sig','checkbox');              $form->setType('date_notification_delai','hiddenstaticdate');
268              $form->setType('siglien','http');              $form->setType('date_decision','hiddenstaticdate');
269              // delegataire              $form->setType('date_limite','hiddenstaticdate');
270                $form->setType('date_rejet','hiddenstaticdate');
271                $form->setType('date_complet','hiddenstaticdate');
272                $form->setType('date_limite','hiddenstaticdate');
273                $form->setType('date_validite','hiddenstaticdate');
274                $form->setType('date_chantier','hiddenstaticdate');
275                $form->setType('date_achevement','hiddenstaticdate');
276                $form->setType('date_conformite','hiddenstaticdate');
277              
278                // checkbox    
279                //$form->setType('sig','checkbox');
280              $form->setType('delegataire','checkbox');              $form->setType('delegataire','checkbox');
281                
282                // http
283                //$form->setType('siglien','http');
284              $form->setType('saisie_architecte', 'httpclick');              $form->setType('saisie_architecte', 'httpclick');
285                
286                // mail
287                $form->setType('delegataire_email','mail');
288                $form->setType('demandeur_email','mail');          
289                
290              // zones temp et strategysig              // zones temp et strategysig
291              include ("../dyn/var.inc");              include ("../dyn/var.inc");
292              if(!isset($sauvegardeDossier)) $sauvegardeDossier='';              if(!isset($sauvegardeDossier)) $sauvegardeDossier='';
# Line 302  class dossier extends dossier_gen { Line 300  class dossier extends dossier_gen {
300              $form->setType('temp3',$temp3_type);              $form->setType('temp3',$temp3_type);
301              $form->setType('temp4',$temp4_type);              $form->setType('temp4',$temp4_type);
302              $form->setType('temp5',$temp5_type);              $form->setType('temp5',$temp5_type);
           
           // maj ou ajout  
             if($maj==0){  
                 $form->setType('dossier', 'hidden');  
                 $form->setType('date_rejet','hidden');  
                 $form->setType('date_complet','hidden');  
                 $form->setType('date_notification_delai','hidden');  
                 $form->setType('delai','hidden');  
                 $form->setType('date_limite','hidden');  
                 $form->setType('accord_tacite','hidden');  
                 $form->setType('etat','hidden');  
                 $form->setType('date_decision','hidden');  
                 $form->setType('avis','hidden');  
                 $form->setType('date_validite','hidden');  
                 $form->setType('date_chantier','hidden');  
                 $form->setType('date_achevement','hidden');  
                 $form->setType('date_conformite','hidden');  
                 $form->setType('delegataire_email','mail');  
                 $form->setType('delegataire_civilite','select');  
                 // demandeur  
                 $form->setType('demandeur_civilite','select');  
                 $form->setType('demandeur_email','mail');  
                 $form->setType('demandeur_categorie','select');  
                 $form->setType('saisie_demandeur', 'hidden');  
                 $form->setType('saisie_delegataire', 'hidden');  
                 $form->setType('types', 'hidden');  
                // $form->setType('saisie_architecte', 'httpclick');  
             }else{  
                 $form->setType('dossier','hiddenstatic');  
                 $form->setType('saisie_demandeur', 'httpclick');  
                 $form->setType('saisie_delegataire', 'httpclick');  
                 $form->setType('types', 'hiddenstatic');  
           
                 $form->setType('date_notification_delai','hiddenstaticdate');  
                 $form->setType('date_decision','hiddenstaticdate');  
                 $form->setType('date_limite','hiddenstaticdate');  
                 $form->setType('date_rejet','hiddenstaticdate');  
                 $form->setType('date_complet','hiddenstaticdate');  
                 $form->setType('date_limite','hiddenstaticdate');  
                 $form->setType('date_validite','hiddenstaticdate');  
                 $form->setType('date_chantier','hiddenstaticdate');  
                 $form->setType('date_achevement','hiddenstaticdate');  
                 $form->setType('date_conformite','hiddenstaticdate');  
                 // demandeur  
                 $form->setType('demandeur_nom','textdisabled');  
                 $form->setType('demandeur_civilite','hidden');  
                 $form->setType('demandeur_societe','hidden');  
                 $form->setType('demandeur_adresse','hidden');  
                 $form->setType('demandeur_cp','hidden');  
                 $form->setType('demandeur_ville','hidden');  
                 $form->setType('demandeur_pays','hidden');  
                 $form->setType('demandeur_telephone','hidden');  
                 $form->setType('demandeur_email','hidden');  
                 $form->setType('demandeur_categorie','hidden');  
                 //delegataire  
                 $form->setType('delegataire_civilite','hidden');  
                 $form->setType('delegataire_nom','textdisabled');  
                 $form->setType('delegataire_societe','hidden');  
                 $form->setType('delegataire_adresse','hidden');  
                 $form->setType('delegataire_cp','hidden');  
                 $form->setType('delegataire_ville','hidden');  
                 $form->setType('delegataire_pays','hidden');  
                 $form->setType('delegataire_telephone','hidden');  
                 $form->setType('delegataire_email','hidden');  
             }  
303          }else{ // supprimer          }else{ // supprimer
304               $form->setType('dossier', 'hiddenstatic');               $form->setType('dossier', 'hiddenstatic');
305               $form->setType('sig', 'hiddenstatic');               $form->setType('sig', 'hiddenstatic');
306          }          }
307      }      }
308    
309    
310      function setMax(&$form,$maj){      function setMax(&$form,$maj){
311          $form->setMax('architecte_nom', 30);          $form->setMax('architecte_nom', 30);
312            
313          $form->setMax('demandeur_nom', 80);          $form->setMax('demandeur_nom', 80);
314          $form->setMax('demandeur_societe', 80);          $form->setMax('demandeur_societe', 80);
315          $form->setMax('demandeur_adresse', 40);          $form->setMax('demandeur_adresse', 40);
# Line 398  class dossier extends dossier_gen { Line 332  class dossier extends dossier_gen {
332          $form->setMax('terrain_numero', 4);          $form->setMax('terrain_numero', 4);
333          $form->setMax('terrain_adresse_complement', 80);          $form->setMax('terrain_adresse_complement', 80);
334          $form->setMax('rivoli', 4);          $form->setMax('rivoli', 4);
335            $form->setMax('terrain_cp', 5);
336            $form->setMax('terrain_ville', 30);
337            
338          $form->setMax('parcelle', 20);          $form->setMax('parcelle', 20);
339                    
340          $form->setMax('temp1', 100);          $form->setMax('temp1', 100);
# Line 415  class dossier extends dossier_gen { Line 352  class dossier extends dossier_gen {
352          $form->setTaille('date_limite', 12);          $form->setTaille('date_limite', 12);
353          $form->setTaille('date_depot', 12);          $form->setTaille('date_depot', 12);
354          // demandeur          // demandeur
355                    $form->setTaille('demandeur_nom', 20);
356          $form->setTaille('demandeur_nom', 30);          $form->setTaille('demandeur_societe', 20);
357          $form->setTaille('demandeur_societe', 30);          $form->setTaille('demandeur_adresse', 30);
         $form->setTaille('demandeur_adresse', 40);  
358          $form->setTaille('demandeur_cp', 5);          $form->setTaille('demandeur_cp', 5);
359          $form->setTaille('demandeur_ville', 30);          $form->setTaille('demandeur_ville', 20);
360          $form->setTaille('demandeur_pays', 40);          $form->setTaille('demandeur_pays', 20);
361          $form->setTaille('demandeur_telephone', 14);          $form->setTaille('demandeur_telephone', 14);
362          $form->setTaille('demandeur_email', 40);          $form->setTaille('demandeur_email', 20);
           
363          // delegataire          // delegataire
364          $form->setTaille('delegataire_societe', 40);          $form->setTaille('delegataire_societe', 20);
365          $form->setTaille('delegataire_nom', 30);          $form->setTaille('delegataire_nom', 20);
366          $form->setTaille('delegataire_adresse', 40);          $form->setTaille('delegataire_adresse', 30);
367          $form->setTaille('delegataire_pays', 20);          $form->setTaille('delegataire_pays', 20);
368          $form->setTaille('delegataire_cp', 5);          $form->setTaille('delegataire_cp', 5);
369          $form->setTaille('delegataire_ville', 30);          $form->setTaille('delegataire_ville', 20);
370          $form->setTaille('delegataire_telephone', 14);          $form->setTaille('delegataire_telephone', 14);
371          $form->setTaille('delegataire_email', 40);          $form->setTaille('delegataire_email', 20);
372          // terrain          // terrain
373          $form->setTaille('terrain_surface', 6);          $form->setTaille('terrain_surface', 6);
374          $form->setTaille('terrain_surface_calcul', 6);          $form->setTaille('terrain_surface_calcul', 6);
375          $form->setTaille('terrain_adresse', 25);          $form->setTaille('terrain_adresse', 20);
376          $form->setTaille('terrain_adresse_complement', 80);          $form->setTaille('terrain_adresse_complement', 20);
377          $form->setTaille('terrain_numero', 4);          $form->setTaille('terrain_numero', 4);
378            $form->setTaille('terrain_cp', 5);
379            $form->setTaille('terrain_ville', 20);
380          $form->setTaille('rivoli', 4);          $form->setTaille('rivoli', 4);
381          $form->setTaille('parcelle', 20);          $form->setTaille('parcelle', 20);
382          //          //
383          $form->setTaille('architecte_nom', 30);          $form->setTaille('architecte_nom', 30);
384          $form->setTaille('architecte', 3);          $form->setTaille('architecte', 3);
385            // description
386            $form->setTaille('hauteur','3');
387                    
388          $form->setTaille('temp1', 100);          $form->setTaille('temp1', 100);
389          $form->setTaille('temp2', 100);          $form->setTaille('temp2', 100);
# Line 454  class dossier extends dossier_gen { Line 393  class dossier extends dossier_gen {
393      }      }
394    
395      function setVal(&$form,$maj,$validation){      function setVal(&$form,$maj,$validation){
396            $this->maj=$maj;
397          if ($validation==0) {          if ($validation==0) {
398              if ($maj == 0){              if ($maj == 0){
399                  include ("../dyn/var.inc");                  include ("../dyn/var.inc");
# Line 475  class dossier extends dossier_gen { Line 415  class dossier extends dossier_gen {
415                  $form->setVal('accord_tacite', 'Non');                  $form->setVal('accord_tacite', 'Non');
416                  $form->setVal('etat', 'initialiser');                  $form->setVal('etat', 'initialiser');
417                  $form->setVal('types', 'Initial');                  $form->setVal('types', 'Initial');
418                  //$form->setVal('instructeur', $_SESSION['util']);                  $form->setVal("saisie_architecte","saisie3()");
                 
                  $form->setVal("saisie_architecte","saisie3()");  
 ?>  
 <script language="javascript">  
     var pfenetre;  
     var fenetreouverte=false;  
 function saisie3()  
 {  
 if(fenetreouverte==true)  
        pfenetre.close();  
 pfenetre=window.open("../scr/form_fenetre.php?obj=dossier_architecte","delegataire","width=780,height=430,top=120,left=10");  
 fenetreouverte=true;  
 }  
 </script>  
 <?php  
419              }else{              }else{
420                  $form->setVal("saisie_architecte","saisie3()");                  $form->setVal("saisie_architecte","saisie3()");
421                  $form->setVal("saisie_demandeur","saisie1()");             }
                 $form->setVal("saisie_delegataire","saisie2()");  
   
 ?><script language="javascript">  
     var pfenetre;  
     var fenetreouverte=false;  
 function saisie1()  
 {  
 if(fenetreouverte==true)  
        pfenetre.close();  
 var idx=document.f1.dossier.value;  
 pfenetre=window.open("../scr/form_fenetre.php?obj=dossier_demandeur"+"&idx="+idx,"demandeur","width=780,height=330,top=120,left=10");  
 fenetreouverte=true;  
 }  
 function saisie2()  
 {  
 if(fenetreouverte==true)  
        pfenetre.close();  
 var idx=document.f1.dossier.value;  
 pfenetre=window.open("../scr/form_fenetre.php?obj=dossier_delegataire"+"&idx="+idx,"delegataire","width=780,height=330,top=120,left=10");  
 fenetreouverte=true;  
 }  
 function saisie3()  
 {  
 if(fenetreouverte==true)  
        pfenetre.close();  
 pfenetre=window.open("../scr/form_fenetre.php?obj=dossier_architecte","delegataire","width=780,height=430,top=120,left=10");  
 fenetreouverte=true;  
 }  
 </script>  
 <?php  
             }  
422          }          }
423      }      }
424    
425      function setSelect(&$form, $maj,&$db,$debug) {      function setSelect(&$form, $maj,&$db,$debug) {
426          parent::setSelect($form, $maj,$db,$debug);          //optimisation sur table importante parcelle -> pas d appel methode parent
427          include ("../dyn/connexion.php");                  if(file_exists ("../sql/".$db->phptype."/".$this->table.".form.inc"))
428          include ("../sql/".$dsn['phptype']."/".$this->table.".form.inc");                          include ("../sql/".$db->phptype."/".$this->table.".form.inc");
429          if($maj<2){          if($maj<2){
430              // travaux              // travaux
431              $contenu=array();              $contenu=array();
432              if($maj==0) $sql_travaux = $sql_travaux." and solde = 'Non'";              // prise en compte du solde en ajout
433              $sql_travaux = $sql_travaux." order by libelle";              if($maj==0)
434                    $sql_travaux = $sql_travaux.
435                    " and solde = 'Non' order by libelle";
436                else
437                    $sql_travaux = $sql_travaux.
438                    " order by libelle";                
439              $res = $db->query($sql_travaux);              $res = $db->query($sql_travaux);
440              if (DB :: isError($res))              if (database::isError($res))
441                   die($res->getMessage().$sql_travaux);                  die($res->getMessage());
442              else{              else{
443                  if ($debug == 1)                  if ($debug == 1)
444                      echo " la requete ".$sql_travaux." est executee<br>";                      echo " la requete ".$sql_travaux." est executee<br>";
445                  $contenu[0][0]=0;                  $contenu[0][0]="";
446                  $contenu[1][0]=_('choisir')." "._('travaux');                  $contenu[1][0]=_('choisir')." "._('travaux');
447                  $k=1;                  $k=1;
448                  while ($row=& $res->fetchRow()){                  while ($row=& $res->fetchRow()){
# Line 553  fenetreouverte=true; Line 452  fenetreouverte=true;
452                  }                  }
453              $form->setSelect("travaux",$contenu);              $form->setSelect("travaux",$contenu);
454              }              }
455    
456                // instructeur
457                $contenu=array();
458                $res = $db->query($sql_instructeur);
459                if (DB :: isError($res))
460                     die($res->getMessage().$sql_instructeur);
461                else{
462                 if ($debug == 1)
463                   echo " la requete ".$sql_instructeur." est executee<br>";
464                   $contenu[0][0]="";
465                   $contenu[1][0]=$this->lang('choisir')." ".$this->lang('instructeur');
466                   $k=1;
467                   while ($row=& $res->fetchRow()){
468                    $contenu[0][$k]=$row[0];
469                    $contenu[1][$k]=$row[1];
470                    $k++;
471                   }
472                $form->setSelect("instructeur",$contenu);
473                }
474                // demandeur et delegataire civilite
475                $contenu=array();
476                $res = $db->query($sql_civilite);
477                            if (database::isError($res))
478                                    die($res->getMessage().$sql_travaux);
479                else{
480                 if ($debug == 1)
481                   echo " la requete ".$sql_civilite." est execute<br>";
482                   $contenu[0][0]="";
483                   $contenu[1][0]=_('choisir')." "._('civilite');
484                   $k=1;
485                   while ($row=& $res->fetchRow()){
486                    $contenu[0][$k]=$row[0];
487                    $contenu[1][$k]=$row[1];
488                    $k++;
489                   }
490                $form->setSelect("demandeur_civilite",$contenu);
491                $form->setSelect("delegataire_civilite",$contenu);
492                }
493                // demandeur categorie
494                $contenu=array();
495                $res = $db->query($sql_categorie_demandeur);
496                            if (database::isError($res))
497                                    die($res->getMessage().$sql_categorie_demandeur);
498                else{
499                 if ($debug == 1)
500                   echo " la requete ".$sql_categorie_demandeur." est execute<br>";
501                   $contenu[0][0]="";
502                   $contenu[1][0]=_('choisir')." "._('categorie');
503                   $k=1;
504                   while ($row=& $res->fetchRow()){
505                    $contenu[0][$k]=$row[0];
506                    $contenu[1][$k]=$row[1];
507                    $k++;
508                   }
509                $form->setSelect("demandeur_categorie",$contenu);
510                }
511                // pos
512                $contenu=array();
513                $res = $db->query($sql_pos);
514                            if (database::isError($res))
515                                    die($res->getMessage().$sql_pos);
516                else{
517                 if ($debug == 1)
518                   echo " la requete ".$sql_architecte." est execute<br>";
519                   $contenu[0][0]="";
520                   $contenu[1][0]=$this->lang('choisir')." ".$this->lang('pos');
521                   $k=1;
522                   while ($row=& $res->fetchRow()){
523                    $contenu[0][$k]=$row[0];
524                    $contenu[1][$k]=$row[1];
525                    $k++;
526                   }
527                $form->setSelect("pos",$contenu);
528                }
529              // lien sig              // lien sig
530              include ("../dyn/var.inc");              include ("../dyn/var.inc");
531              $contenu=array();              $contenu=array();
# Line 615  fenetreouverte=true; Line 588  fenetreouverte=true;
588              $form->setGroupe('date_demande','D');              $form->setGroupe('date_demande','D');
589              $form->setGroupe('date_depot','G');              $form->setGroupe('date_depot','G');
590              $form->setGroupe('instructeur','F');              $form->setGroupe('instructeur','F');
           
             $form->setGroupe('demandeur_categorie','D');  
             $form->setGroupe('demandeur_civilite','G');  
             $form->setGroupe('demandeur_nom','G');  
             $form->setGroupe('demandeur_societe','F');  
             
             $form->setGroupe('demandeur_adresse','D');  
             $form->setGroupe('demandeur_cp','G');  
             $form->setGroupe('demandeur_ville','G');  
             $form->setGroupe('demandeur_pays','F');  
             
             $form->setGroupe('demandeur_email','D');  
             $form->setGroupe('demandeur_telephone','G');  
             $form->setGroupe('delegataire','F');  
             
             $form->setGroupe('delegataire_civilite','D');  
             $form->setGroupe('delegataire_nom','G');  
             $form->setGroupe('delegataire_societe','F');  
             
             $form->setGroupe('delegataire_adresse','D');  
             $form->setGroupe('delegataire_cp','G');  
             $form->setGroupe('delegataire_ville','G');  
             $form->setGroupe('delegataire_pays','F');  
             
             $form->setGroupe('delegataire_email','D');  
             $form->setGroupe('delegataire_telephone','F');  
591          }else{          }else{
592              $form->setGroupe('dossier','D');              $form->setGroupe('dossier','D');
593                $form->setGroupe('nature','G');
594                $form->setGroupe('annee','G');
595              $form->setGroupe('date_demande','G');              $form->setGroupe('date_demande','G');
596              $form->setGroupe('date_depot','G');              $form->setGroupe('date_depot','G');
597              $form->setGroupe('instructeur','F');              $form->setGroupe('instructeur','F');
             
             $form->setGroupe('date_complet','D');  
             $form->setGroupe('date_rejet','G');  
             $form->setGroupe('date_notification_delai','F');  
             
             $form->setGroupe('demandeur_nom','D');  
             $form->setGroupe('delegataire','G');  
             $form->setGroupe('saisie_demandeur','G');  
             $form->setGroupe('delegataire_nom','G');  
             $form->setGroupe('saisie_delegataire','F');  
598          }          }
599            $form->setGroupe('demandeur_categorie','D');
600            $form->setGroupe('demandeur_civilite','G');
601            $form->setGroupe('demandeur_nom','G');
602            $form->setGroupe('demandeur_societe','F');
603          
604            $form->setGroupe('demandeur_adresse','D');
605            $form->setGroupe('demandeur_cp','G');
606            $form->setGroupe('demandeur_ville','G');
607            $form->setGroupe('demandeur_pays','F');
608          
609            $form->setGroupe('demandeur_email','D');
610            $form->setGroupe('demandeur_telephone','F');
611            
612            $form->setGroupe('delegataire','D');
613            $form->setGroupe('delegataire_civilite','G');
614            $form->setGroupe('delegataire_nom','G');
615            $form->setGroupe('delegataire_societe','F');
616          
617            $form->setGroupe('delegataire_adresse','D');
618            $form->setGroupe('delegataire_cp','G');
619            $form->setGroupe('delegataire_ville','G');
620            $form->setGroupe('delegataire_pays','F');
621          
622            $form->setGroupe('delegataire_email','D');
623            $form->setGroupe('delegataire_telephone','F');
624                  
625            $form->setGroupe('architecte','D');
626            $form->setGroupe('architecte_nom','G');
627            $form->setGroupe('saisie_architecte','G');
628            $form->setGroupe('travaux','F');  
629            
630          // terrain          // terrain
631          $form->setGroupe('terrain_numero','D');          $form->setGroupe('terrain_numero','D');
632          $form->setGroupe('terrain_numero_complement','G');          $form->setGroupe('terrain_numero_complement','G');
633          $form->setGroupe('rivoli','G');          $form->setGroupe('rivoli','G');
634          $form->setGroupe('terrain_adresse','G');          $form->setGroupe('terrain_adresse','G');
635          $form->setGroupe('terrain_adresse_complement','G');          $form->setGroupe('terrain_adresse_complement','F');
636          $form->setGroupe('terrain_surface','G');  
637            $form->setGroupe('terrain_cp','D');
638            $form->setGroupe('terrain_ville','F');        
639            
640            // surface
641            $form->setGroupe('terrain_surface','D');
642          $form->setGroupe('terrain_surface_calcul','F');          $form->setGroupe('terrain_surface_calcul','F');
643                    
644            // instruction
645          $form->setGroupe('date_complet','D');          $form->setGroupe('date_complet','D');
646          $form->setGroupe('date_rejet','G');          $form->setGroupe('date_rejet','G');
647          $form->setGroupe('rejet','G');          $form->setGroupe('rejet','G');
# Line 681  fenetreouverte=true; Line 657  fenetreouverte=true;
657          $form->setGroupe('date_validite','G');          $form->setGroupe('date_validite','G');
658          $form->setGroupe('types','F');          $form->setGroupe('types','F');
659                    
660          $form->setGroupe('date_achevement','D');          $form->setGroupe('date_chantier','D');
661          $form->setGroupe('date_chantier','G');          $form->setGroupe('date_achevement','G');
662          $form->setGroupe('date_conformite','F');          $form->setGroupe('date_conformite','F');
663                // localisation
664          $form->setGroupe('parcelle','D');          $form->setGroupe('parcelle','D');
665          $form->setGroupe('pos','G');          $form->setGroupe('pos','F');
666          $form->setGroupe('sig','G');          //$form->setGroupe('sig','G');
667          $form->setGroupe('siglien','F');          //$form->setGroupe('siglien','F');
668        
669            // description
670            $form->setGroupe('batiment_nombre','D');
671            $form->setGroupe('logement_nombre','G');
672            $form->setGroupe('hauteur','G');
673            $form->setGroupe('piece_nombre','F');
674            
675            $form->setGroupe('shon','D');
676            $form->setGroupe('shon_calcul','G');
677            $form->setGroupe('shob','G');
678            $form->setGroupe('lot','F');
679      }      }
680    
681    
682    
683      function setLib(&$form,$maj) {          function setLib(&$form,$maj) {
684          $form->setLib('date_demande',' '._('date_demande').' ');          $col = "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
685          $form->setLib('date_depot'," "._('date_depot')."  ");          $form->setLib('dossier','');
686          $form->setLib('instructeur'," "._('instructeur')."  ");                $form->setLib('date_demande',$col._('demande le').' : ');
687          $form->setLib('date_complet',_('date_complet').' ');          $form->setLib('date_depot',$col._('depose le ')." : ");
688          $form->setLib('date_rejet',_('date_rejet').' ');          $form->setLib('instructeur',$col._('instructeur')."  ");      
689          $form->setLib('date_notification_delai',' '._('date_notification_delai').' ');          $form->setLib('date_complet',_('complet le').' : ');
690          $form->setLib('delai',' '._('delai').' ');          $form->setLib('date_rejet',_('rejette le').' : ');
691            $form->setLib('date_notification_delai',$col._('date notification').' : ');
692            $form->setLib('delai',$col._('delai (mois)').' : ');
693          $form->setLib('siglien','  ');          $form->setLib('siglien','  ');
694          If ($maj==0){  
695              $form->setLib('demandeur_categorie',_('demandeur_categorie'));          $form->setLib('demandeur_categorie','');
696              $form->setLib('demandeur_civilite','');          $form->setLib('demandeur_civilite','');
697              $form->setLib('demandeur_nom','');          $form->setLib('demandeur_nom','');
698              $form->setLib('demandeur_societe',_('demandeur_societe').' ');          $form->setLib('demandeur_societe',_('societe').' ');
699              $form->setLib('demandeur_adresse','');          $form->setLib('demandeur_adresse','');
700              $form->setLib('demandeur_cp','');          $form->setLib('demandeur_cp',_('cp'));
701              $form->setLib('demandeur_ville','');          $form->setLib('demandeur_ville',_('ville'));
702              $form->setLib('demandeur_pays',' '._('demandeur_pays').' ');          $form->setLib('demandeur_pays',' '._('pays').' ');
703              $form->setLib('demandeur_telephone',' '._('demandeur_telephone').' ');          $form->setLib('demandeur_telephone',' '._('tel').' ');
704              $form->setLib('demandeur_email','');          $form->setLib('demandeur_email','');
705              $form->setLib('delegataire_civilite',_('delegataire_civilite'));              
706              $form->setLib('delegataire_nom','');          $form->setLib('delegataire','');
707              $form->setLib('delegataire_societe',_('delegataire_societe').': ');          $form->setLib('delegataire_civilite','');
708              $form->setLib('delegataire_adresse','');          $form->setLib('delegataire_nom','');
709              $form->setLib('delegataire_cp','');          $form->setLib('delegataire_societe',_('societe').': ');
710              $form->setLib('delegataire_ville','');          $form->setLib('delegataire_adresse','');
711              $form->setLib('delegataire_pays',' '._('delegataire_pays').': ');          $form->setLib('delegataire_cp',_('cp'));
712              $form->setLib('delegataire_telephone',' '._('delegataire_telephone').': ');          $form->setLib('delegataire_ville',_('ville'));
713              $form->setLib('delegataire_email','');          $form->setLib('delegataire_pays',' '._('pays').': ');
714          }else{          $form->setLib('delegataire_telephone',' '._('tel').': ');
715              $form->setLib('demandeur_nom',_('demandeur_nom'));          $form->setLib('delegataire_email','');
716              $form->setLib('delegataire_nom','');              
717              $form->setLib('types','');          $form->setLib('types','');
718          }              
719          $form->setLib('terrain_numero',_('terrain_numero').' : ');          $form->setLib('terrain_numero',_('adresse'));
720          $form->setLib('terrain_numero_complement','');          $form->setLib('terrain_numero_complement','');
721          $form->setLib('terrain_adresse','');          $form->setLib('terrain_adresse','');
722          $form->setLib('terrain_adresse_complement','');          $form->setLib('terrain_adresse_complement','');
723          $form->setLib('rivoli','');          $form->setLib('rivoli','');
724          $form->setLib('terrain_surface',' '._('terrain_surface').' : ');          $form->setLib('terrain_cp','cp');
725          $form->setLib('terrain_surface_calcul',' '._('terrain_surface_calcul').' : ');          $form->setLib('terrain_ville','ville');
726          $form->setLib('parcelle',' '._('parcelle').' : ');              
727          $form->setLib('date_decision',' '._('date_decision').' : ');          $form->setLib('terrain_surface',' '._('surface').' : ');
728          $form->setLib('date_validite',' '._('date_validite').' : ');          $form->setLib('terrain_surface_calcul',' '._('calcul').' : ');
729          $form->setLib('date_achevement',' '._('date_achevement').' : ');          $form->setLib('parcelle',' '._('parcelle').' : ');
730          $form->setLib('avis','');          
731          $form->setLib('date_limite',' '._('date_limite').' : ');          $form->setLib('date_decision',' '._('decide le').' : ');
732          $form->setLib('date_chantier',' '._('date_chantier').' : ');          $form->setLib('date_validite',$col._('valide jusqu au').' : ');
733          $form->setLib('date_conformite',' '._('date_conformite').' : ');          $form->setLib('date_achevement',$col._('acheve le').' : ');
734          $form->setLib('etat',' '._('etat').' : ');          $form->setLib('avis',$col._('avec avis').' : ');
735          $form->setLib('accord_tacite',' '._('accord_tacite').' : ');          $form->setLib('date_limite',''._('limite le').' : ');
736          $form->setLib('date_rejet',' DPC : ');          $form->setLib('date_chantier',''._('chantier le').' : ');
737            $form->setLib('date_conformite',$col._('conforme le').' : ');
738            $form->setLib('etat',$col._('etat').' : ');
739            $form->setLib('accord_tacite',$col._('accord tacite').' : ');
740            $form->setLib('date_rejet',$col._("DPC")." : ");
741            
742                    
743            // travaux
744          $form->setLib('objet_dossier','');          $form->setLib('objet_dossier','');
745          $form->setLib('travaux','');          $form->setLib('travaux','');
746          $form->setLib('saisie_demandeur',"");          $form->setLib('saisie_architecte',""); // ***
         $form->setLib('saisie_delegataire',"");  
         $form->setLib('saisie_architecte',"");  
747          $form->setLib('architecte_nom',"");          $form->setLib('architecte_nom',"");
748          $form->setLib('architecte'," ");          $form->setLib('architecte','');
749            
750            // description
751            $form->setLib('batiment_nombre',' '._('nombre de batiment').' : ');
752            $form->setLib('logement_nombre',' '._('nombre de logement').' : ');
753            $form->setLib('hauteur',' '._('hauteur').' : ');
754            $form->setLib('piece_nombre',' '._('nombre de piece(s)').' : ');
755            $form->setLib('shon',' '._('shon').' : ');
756            $form->setLib('shon_calcul',' '._('calcul shon').' : ');
757            $form->setLib('shob',' '._('shob').' : ');
758            $form->setLib('amenagement',' '._('amenagement').' : ');
759            
760          // zones temp          // zones temp
761          include ("../dyn/var.inc");          include ("../dyn/var.inc");
762          $form->setLib('temp1',$temp1_lib);          $form->setLib('temp1',$temp1_lib);
# Line 769  fenetreouverte=true; Line 773  fenetreouverte=true;
773          $form->setOnchange("demandeur_societe","this.value=this.value.toUpperCase()");          $form->setOnchange("demandeur_societe","this.value=this.value.toUpperCase()");
774          $form->setOnchange("delegataire_nom","this.value=this.value.toUpperCase()");          $form->setOnchange("delegataire_nom","this.value=this.value.toUpperCase()");
775          $form->setOnchange("delegataire_societe","this.value=this.value.toUpperCase()");          $form->setOnchange("delegataire_societe","this.value=this.value.toUpperCase()");
776            $form->setOnchange("architecte_nom","this.value=this.value.toUpperCase()");
777    
778      }      }
779    
780      function setRegroupe(&$form,$maj){      function setRegroupe(&$form,$maj){
781            // depot
782            If ($maj==0){
783                $form->setRegroupe('date_demande','D',_(Depot),$this->aff_depot );
784            }
785          If ($maj==1){          If ($maj==1){
786              $form->setRegroupe('date_complet','D','Instruction ');              $form->setRegroupe('dossier','D',_(Depot), $this->aff_depot);
787              $form->setRegroupe('date_rejet','G','');              $form->setRegroupe('date_demande','G','');
             $form->setRegroupe('date_notification_delai','G','');  
             $form->setRegroupe('delai','G','');  
             $form->setRegroupe('date_limite','G','Decision ');  
             $form->setRegroupe('accord_tacite','G','');  
             $form->setRegroupe('etat','G','');  
             $form->setRegroupe('date_decision','G','');  
             $form->setRegroupe('avis','G','');  
             $form->setRegroupe('date_validite','G','');  
             $form->setRegroupe('types','G','');  
             $form->setRegroupe('date_chantier','G','');  
             $form->setRegroupe('date_achevement','G','');  
             $form->setRegroupe('date_conformite','F','');  
788          }          }
789            $form->setRegroupe('date_depot','G','');
790            $form->setRegroupe('instructeur','F','');
791            
792            // travaux
793            $form->setRegroupe('architecte','D',_('Architecte')." / "._("Travaux"), $this->aff_travaux);
794            $form->setRegroupe('architecte_nom','G','');
795            $form->setRegroupe('saisie_architecte','G','');
796            $form->setRegroupe('travaux','F','');
797            
798            // instruction
799            $form->setRegroupe('date_complet','D',_('Instruction'), $this->aff_instruction);
800            $form->setRegroupe('date_rejet','G','');
801            $form->setRegroupe('date_notification_delai','G','');
802            $form->setRegroupe('delai','G','');
803            $form->setRegroupe('date_limite','G','Decision ');
804            $form->setRegroupe('accord_tacite','G','');
805            $form->setRegroupe('etat','G','');
806            $form->setRegroupe('date_decision','G','');
807            $form->setRegroupe('avis','G','');
808            $form->setRegroupe('date_validite','G','');
809            $form->setRegroupe('types','G','');
810            $form->setRegroupe('date_chantier','G','');
811            $form->setRegroupe('date_achevement','G','');
812            $form->setRegroupe('date_conformite','F','');
813            
814            // demandeur
815            $form->setRegroupe('demandeur_categorie','D',_('Demandeur'), $this->aff_demandeur);
816            $form->setRegroupe('demandeur_civilite','G','');
817            $form->setRegroupe('demandeur_nom','G','');
818            $form->setRegroupe('demandeur_societe','G','');
819            $form->setRegroupe('demandeur_adresse','G','Decision ');
820            $form->setRegroupe('demandeur_cp','G','');
821            $form->setRegroupe('demandeur_ville','G','');
822            $form->setRegroupe('demandeur_pays','G','');
823            $form->setRegroupe('demandeur_email','G','');
824            $form->setRegroupe('demandeur_telephone','F','');
825            
826            
827            // delegataire
828            $form->setRegroupe('delegataire','D',_('delegataire'), $this->aff_delegataire);
829            $form->setRegroupe('delegataire_civilite','G','');
830            $form->setRegroupe('delegataire_nom','G','');
831            $form->setRegroupe('delegataire_societe','G','');
832            $form->setRegroupe('delegataire_adresse','G','Decision ');
833            $form->setRegroupe('delegataire_cp','G','');
834            $form->setRegroupe('delegataire_ville','G','');
835            $form->setRegroupe('delegataire_pays','G','');
836            $form->setRegroupe('delegataire_email','G','');
837            $form->setRegroupe('delegataire_telephone','F','');
838    
839            // terrain
840            $form->setRegroupe('terrain_numero','D',_('terrain'), $this->aff_terrain);
841            $form->setRegroupe('terrain_numero_complement','G','');
842            $form->setRegroupe('rivoli','G','');
843            $form->setRegroupe('terrain_adresse','G','');
844            $form->setRegroupe('terrain_adresse_complement','G','');
845            $form->setRegroupe('terrain_cp','G','');
846            $form->setRegroupe('terrain_ville','G','');      
847            $form->setRegroupe('terrain_surface','G',_('surface'),'');// $this->aff_surface);
848            $form->setRegroupe('terrain_surface_calcul','F','');
849            
850            // localisation
851            $form->setRegroupe('parcelle','D',_('localisation'), $this->aff_localisation);
852            $form->setRegroupe('pos','F','');
853            //$form->setRegroupe('sig','G','');
854            //$form->setRegroupe('siglien','F','');
855            
856            // description
857            $form->setRegroupe('batiment_nombre','D',_('description'), $this->aff_description);
858            $form->setRegroupe('logement_nombre','G','');
859            $form->setRegroupe('hauteur','G','');
860            $form->setRegroupe('piece_nombre','G','');        
861            $form->setRegroupe('shon','G','');
862            $form->setRegroupe('shon_calcul','G','');
863            $form->setRegroupe('shob','G','');
864            $form->setRegroupe('lot','F','');
865            // temp
866      }      }
867    
868    
869    
870  /* =============================================================      /* =============================================================
871  * fonction trigger relative a la connexion SIG      * fonction trigger relative a la connexion SIG
872  * mise a jour de service web SIG via SOAP      * $sig = 1 dans dyn/var.inc
873  * voir /sig      * ===============================================================
874  * -> si le traitement est fait correctement sig = 'Oui'      */
875  *    sinon SIG = 'Non'  
 * dans var.inc il y a la strategie de sauvegarde SIG  
 * pour deconnecter un objet dossier  
 * mettre var acces_sig = 'Non' dans les classes PC, PA, DP et PD ??? a voir  
 * ===============================================================  
 */  
   
   
 function triggerajouter($id,&$db,$val,$DEBUG) {  
 // uniquement les dossiers PC et PA  
 //if($this->acces_sig=='Oui'){  
     if (file_exists ("../dyn/var.inc"))  
         include ("../dyn/var.inc");  
     if(!isset($sauvegardeDossier)) $sauvegardeDossier='';  
     if($sauvegardeDossier != '' and $this->valF['parcelle']!=''){  
      $this->strategySig=new $sauvegardeDossier($this);        
      if($this->strategySig->correct){ // strategie  
        $pos=$this->strategySig->ajouterDossier($this->valF['parcelle'],$this->valF['dossier']);  
        $this->msg = $this->msg."".$this->strategySig->dmsg."<br>";  
        // si c'est correct  
        if ($this->strategySig->correct){  
           $this->valF['sig']='Oui';  
           $this->valF['pos']=$pos[0];  
        }else  
           $this->valF['sig']='Non';  
      }else{  
        $this->msg = $this->msg."<br> serveur non accessible pour ".  
        $sauvegardeDossier."<br>".$this->strategySig->dmsg."<br>";  
        $this->valF['sig']='Non';      
      }      
     }else // pas de strategie  
         $this->msg = $this->msg."<br>SIG pas de strategie externe active dans var.inc ou parcelle vide<br>";  
 }  
876    
877      function triggerajouterapres($id,&$db,$val,$DEBUG) {      function triggerajouterapres($id,&$db,$val,$DEBUG) {
878          if (file_exists ("../dyn/var.inc"))          if (file_exists ("../dyn/var.inc"))
879              include ("../dyn/var.inc");              include ("../dyn/var.inc");
880          if(!isset($sig)) $sig=0;          if(!isset($sig)) $sig=0;
881          if($sig==1){          if(!isset($auto_pos)) $auto_pos=0;
882              $this->sig_interne($id,&$db,$val,$DEBUG);          $id=$this->valF['dossier']; // id n est pas valorise en ajout
883            if($sig==1 ){
884                if($val['parcelle']!='')
885                    $this->sig_interne($id,&$db,$val,$DEBUG,$auto_pos);
886                else
887                    $this->msg = $this->msg."<br>"._("Parcelle non renseignee dans dossier")." ".$id." <br>";    
888          }          }
889      }      }
890    
891      function triggermodifier($id,&$db,$val,$DEBUG) {      function triggermodifierapres($id,&$db,$val,$DEBUG) {
         // parametre sig dans var.inc  
892          if (file_exists ("../dyn/var.inc"))          if (file_exists ("../dyn/var.inc"))
893                  include ("../dyn/var.inc");                  include ("../dyn/var.inc");
         if(!isset($sauvegardeDossier)) $sauvegardeDossier='';  
894          if(!isset($sig)) $sig=0;          if(!isset($sig)) $sig=0;
895                    if(!isset($auto_pos)) $auto_pos=0;
896          // strategy externe dans var.inc          // si la parcelle est changée
897          if($sauvegardeDossier != ''){          if($sig==1 and $val['parcelle']!=$val['parcelle_archive']){
898            if($val['sig']== 'Oui'){ // modification SIG              if($val['parcelle']!='')
899              if($val["parcelle_archive"]!=$this->valF['parcelle']){ // la parcelle doit etre modifie                  $this->sig_interne($this->valF['dossier'],&$db,$val,$DEBUG,$auto_pos);
                 $this->strategySig=new $sauvegardeDossier($this);  
               if($this->strategySig->correct){ // connexion correct  
                 $pos=$this->strategySig->modifierDossier($this->valF['parcelle'],$this->valF['dossier']);  
                 $this->msg = $this->msg."".$this->strategySig->dmsg."<br>";  
                 $this->valF['sig']='Oui';  
                 $this->valF['pos']=$pos[0];  
               }else{ // connexion incorrecte  
                $this->msg = $this->msg."<br> serveur non accessible pour ".  
                $sauvegardeDossier."<br>".$this->strategySig->dmsg."<br>";  
                $this->valF['sig']='Non';  
               }  
             }else // parcelle inchangee  
                $this->msg = $this->msg." SIG aucune modification SIG car meme parcelle et saisie sig ok";  
           }else{ // ajout SIG = Non  
               if($this->valF['parcelle']!=''){ // la parcelle ne doit pas etre vide    
                  $this->strategySig=new $sauvegardeDossier($this);        
                  if($this->strategySig->correct){ // connexion correcte  
                      $pos= $this->strategySig->ajouterDossier($this->valF['parcelle'],$this->valF['dossier']);  
                      $this->msg = $this->msg."".$this->strategySig->dmsg."<br>";  
                      // sig transaction correcte  
                      if ($this->strategySig->correct){  
                         $this->valF['sig']='Oui';  
                     $this->valF['pos']=$pos[0];  
                      }else  
                      $this->valF['sig']='Non';  
                  }else{ // connexion incorrecte  
                      $this->msg = $this->msg."<br> serveur non accessible pour ".  
                      $sauvegardeDossier."<br>".$this->strategySig->dmsg."<br>";  
                      $this->valF['sig']='Non';      
                  }  
               }else  
              $this->msg = $this->msg."<br> parcelle vide, pas d'ajout SIG <br>";          
           }  
         }else // autres dossier ou pas de lien  
             $this->msg = $this->msg." SIG pas de strategie externe active dans var.inc";  
           
       
         if($sig==1){  
             $this->sig_interne($this->valF['dossier'],&$db,$val,$DEBUG);  
900          }          }
901      }      }
902    
903      function triggersupprimer($id,&$db,$val,$DEBUG) {      function sig_interne($id,&$db,$val,$DEBUG,$auto_pos){
904      //if($this->acces_sig=='Oui'){          // Strategy interne dans var.inc
905                // si la parcelle existe, il est cree un point au milieu de la parcelle
906      // Parametres var.inc sig          // de maniere automatique
907      if (file_exists ("../dyn/var.inc"))          $projection = $db -> getOne("select srid from geometry_columns where f_table_name='dossier'");
908          include ("../dyn/var.inc");          $sql= "select astext(centroid(geom)) from parcelle where parcelle ='".$val["parcelle"]."'";
909      if(!isset($sauvegardeDossier)) $sauvegardeDossier='';          $geom = $db -> getOne($sql);
910                if($geom!=''){ // la parcelle est exitante dans la table / vue parcelle
911      // strategy externe -> si le dossier a ete creer dans le sig (val(sig)= Oui)              $sql ="update dossier set geom =geometryfromtext('".$geom."', ".$projection." ) where dossier ='".$id."'";
     if($val['sig']== 'Oui'){  
         if($sauvegardeDossier != '')  
           { // strategie  
             $this->strategySig=new $sauvegardeDossier($this);  
             if($this->strategySig->correct){ // SIG connexion  
                $this->strategySig->supprimerDossier($id);  
                $this->msg = $this->msg."".$this->strategySig->dmsg."<br><br>";  
             }else // SIG pas de connexion  
                $this->msg = $this->msg."<br> serveur non accessible pour ".  
                $sauvegardeDossier."<br>".$this->strategySig->dmsg."<br>";  
           }else // pas de strategie  
             $this->msg = $this->msg." SIG pas de strategie active dans var.inc";  
     }else // SIG pas de dossier  
         $this->msg = $this->msg."<br>"."SIG pas de dossier ".  
                      $id." [sig = ".$val['sig']." ]<br>";  
     }  
   
   
     function sig_interne($id,&$db,$val,$DEBUG){  
     // Strategy interne dans var.inc  
     // si la parcelle existe, il est cree un point au milieu de la parcelle  
     // de maniere automatique  
     // a voir si $this->valF['sig'] = oui -> parametrage manuel  
         $this->msg = $this->msg."<br> SIG  strategie interne active dans var.inc";  
         if($this->valF['parcelle']!=''){ //si la parcelle est renseignée  
             $projection = $db -> getOne("select srid from geometry_columns where f_table_name='dossier'");  
             $sql= "select astext(centroid(geom)) from parcelle where parcelle ='".$val["parcelle"]."'";  
             $geom = $db -> getOne($sql);  
             if($geom!=''){ // parcelle exitante  
                 // pb des guillemets a voir  
                 //$this->valF['geom']= "geometryfromtext('".$geom."', ".$projection.") ";  
                 $sql ="update dossier set geom =geometryfromtext('".$geom."', ".$projection." ) where dossier ='".$id."'";  
                 $res = $db -> query($sql);  
                 if (DB :: isError($res)){  
                     die($res->getMessage()."erreur ".$sql);  
                 }else{  
                     $this->msg = $this->msg."<br> geom = centroid de parcelle ".$val["parcelle"]." dans dossier ".$id;  
                 }  
                   
             }else  
                 $this->msg = $this->msg."<br> parcelle ".$val["parcelle"]." inexistante -> saisie manuelle ".$id;  
         }else{  
             $sql ="update dossier set geom = null where dossier ='".$id."'";  
912              $res = $db -> query($sql);              $res = $db -> query($sql);
913              if (DB :: isError($res)){              if (database :: isError($res)){
914                  die($res->getMessage()."erreur ".$sql);                  die($res->getMessage()."erreur ".$sql);
915              }else{              }else{
916                  $this->msg = $this->msg."<br> geom=vide car parcelle non renseignee dans dossier ".$id." <br>";                  $this->msg = $this->msg."<br>"._("centroid de parcelle calculé")." ".$val["parcelle"].
917              }                                  " "._("dossier")." ".$id."<br>";
918                }
919                if($auto_pos==1) // recherche du pos
920                    $this->auto_pos($id,$db,$geom,$projection);
921            }else{ // parcelle inexistante
922                if($this->maj ==1){ // en maj mettre a null la geometrie si parcelle changée inexistante
923                    $sql ="update dossier set geom = null where dossier ='".$id."'";
924                    $res = $db -> query($sql);
925                    if (database :: isError($res))
926                        die($res->getMessage()."erreur ".$sql);
927                }
928                $this->msg = $this->msg."<br> parcelle ".$val["parcelle"]." "._("inexistante")." ".$id."<br>";
929          }          }
930      }      }
931    
932        function auto_pos($id,&$db,$geom,$projection){
933            // recherche du pos automatique dans le geom de la table / vue pos
934            $sql="select pos from pos  WHERE ST_contains(geom,  geometryfromtext('".$geom."', ".$projection."))";
935            $pos = $db -> getOne($sql);
936            if($pos!=''){
937                $sql1 ="update dossier set pos = '".$pos."' where dossier = '".$id."'";
938                $res1 = $db -> query($sql1);
939                if (database:: isError($res1)){ // ok
940                    die($res1->getMessage()."erreur ".$sql1);
941                }else{
942                        $this->msg = $this->msg."<br>"._("POS/PLU renseignee automatiquement dans dossier")." ".$id." -> ".$pos."<br>";
943                }
944            }else{
945                $this->msg = $this->msg."<br>"._("POS/PLU non trouvé pour dossier")." ".$id."<br>";
946            }
947        }
948    
949    
950  }// fin classe  }// fin classe
951  ?>  ?>

Legend:
Removed from v.11  
changed lines
  Added in v.44

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26