/[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 2783 by vpihour, Tue Mar 4 10:14:13 2014 UTC revision 3277 by vpihour, Thu Feb 5 16:41:31 2015 UTC
# Line 27  class dossier extends dossier_gen { Line 27  class dossier extends dossier_gen {
27      var $aff_description = "startClosed";      var $aff_description = "startClosed";
28      var $aff_amenagement = "startClosed";      var $aff_amenagement = "startClosed";
29      var $dossier_instruction_type;      var $dossier_instruction_type;
30        var $is_incomplet_notifie = null;
31      var $valIdDemandeur = array("petitionnaire_principal" => "",      var $valIdDemandeur = array("petitionnaire_principal" => "",
32                                  "delegataire" => "",                                  "delegataire" => "",
33                                  "petitionnaire" => array());                                  "petitionnaire" => array());
# Line 78  class dossier extends dossier_gen { Line 79  class dossier extends dossier_gen {
79          }          }
80                            
81          //Si l'utilisateur est un instructeur et le dossier d'instruction est clôturé,          //Si l'utilisateur est un instructeur et le dossier d'instruction est clôturé,
82                  //il n'est plus possible de le modifier, on affiche pas le lien de modification du          //il n'est plus possible de le modifier, on affiche pas le lien de modification du
83          //portlet          //portlet
84          if ( $this->f->isUserInstructeur() && $this->getStatut() == "cloture" ){          if ( $this->f->isUserInstructeur() && $this->getStatut() == "cloture" ){
85    
# Line 91  class dossier extends dossier_gen { Line 92  class dossier extends dossier_gen {
92                                    
93                  $this->actions_sup['rapport_instruction'] = NULL;                  $this->actions_sup['rapport_instruction'] = NULL;
94              }              }
95                        }
96              //Cache le lien des données techniques, si aucun n'est lié  
97              if ( $this->getDonneesTechniques() == '' ){          //Cache le lien des données techniques, si aucun n'est lié
98                            if ( $this->getDonneesTechniques() == '' && !$this->f->isUserAdministrateur() ){
99                  $this->actions_sup['donnees_techniques'] = NULL;  
100              }              $this->actions_sup['donnees_techniques'] = NULL;
101          }          }
102    
103          // Si l'option sig n'est pas réglé sur 'sig_externe',          // Si l'option sig n'est pas réglé sur 'sig_externe',
# Line 461  class dossier extends dossier_gen { Line 462  class dossier extends dossier_gen {
462              $this->addToMessage(_("La saisie d'un petitionnaire principal est obligatoire."));              $this->addToMessage(_("La saisie d'un petitionnaire principal est obligatoire."));
463          }          }
464          if($val['parcelle']!="" and $val['sig']!='Oui'){          if($val['parcelle']!="" and $val['sig']!='Oui'){
465              if  (!preg_match('/^[0-9]{3} [A-Z]{1,3} [0-9]{1,5}$/', $val['parcelle']) && !preg_match('/^[0-9]{3}[A-Z]{1,3}[0-9]{1,5}$/', $val['parcelle'])){                  if  (!preg_match('/^[0-9]{3} [A-Z]{1,3} [0-9]{1,5}$/', $val['parcelle']) && !preg_match('/^[0-9]{3}[A-Z]{1,3}[0-9]{1,5}$/', $val['parcelle'])){
466                  $this->correct=false;                  $this->correct=false;
467                  $this->addToMessage("<br>format parcelle incorrect");                  $this->addToMessage("<br>format parcelle incorrect");
468              }              }
# Line 477  class dossier extends dossier_gen { Line 478  class dossier extends dossier_gen {
478          $form->setType('parcelle_lot_lotissement','hidden'); // PC          $form->setType('parcelle_lot_lotissement','hidden'); // PC
479          $form->setType('version','hidden'); // PC          $form->setType('version','hidden'); // PC
480          $form->setType('incompletude','hidden');          $form->setType('incompletude','hidden');
481          $form->setType('evenement_suivant_tacite','hidden');          $form->setType('incomplet_notifie','hidden');
         $form->setType('evenement_suivant_tacite_incompletude','hidden');  
482          $form->setType('etat_pendant_incompletude','hidden');          $form->setType('etat_pendant_incompletude','hidden');
483          $form->setType('duree_validite','hidden');          $form->setType('duree_validite','hidden');
484          $form->setType('description','hidden');          $form->setType('description','hidden');
485            $form->setType('quartier', 'hidden');
486          // XXX          // XXX
487          $form->setType('servitude', 'hidden');            $form->setType('servitude', 'hidden');  
488          if ($maj < 2) { //ajouter et modifier          if ($maj < 2) { //ajouter et modifier
489              // cache              // cache
490              if($maj==0) $form->setType('dossier_libelle', 'hidden');              if($maj==0) $form->setType('dossier_libelle', 'hidden');
491                if($maj==0) $form->setType('dossier_demandeur','hidden');
492                if($maj==0) $form->setType('description_projet','hidden');
493                $form->setType('description_projet','hiddenstatic');
494              $form->setType('annee', 'hidden');              $form->setType('annee', 'hidden');
495              $form->setType('parcelle_archive','hidden');              $form->setType('parcelle_archive','hidden');
496              $form->setType('parcelle_lot_archive','hidden');              $form->setType('parcelle_lot_archive','hidden');
               
497              $form->setType('geom1', 'hidden');              $form->setType('geom1', 'hidden');
498              $form->setType('geom', 'hiddenstatic');              $form->setType('geom', 'hiddenstatic');
499              // $form->setType('servitude', 'hiddenstatic');                    // $form->setType('servitude', 'hiddenstatic');
500                $form->setType('autorite_competente', 'selecthiddenstatic');
501                
502                // Si l'état du dossier est incomplet
503                if ($this->is_incomplet_notifie()) {
504                    // On cache les dates de complétude et de limite d'instruction
505                    $form->setType('date_complet', 'hiddendate');
506                    $form->setType('date_limite', 'hiddendate');
507                    $form->setType('evenement_suivant_tacite_incompletude','selecthiddenstatic');
508                    $form->setType('evenement_suivant_tacite','hidden');
509                    $form->setType('date_limite_incompletude', 'hiddenstaticdate');
510    
511              $form->setType('autorite_competente', 'selectstatic');              } else {
512                    // Sinon on cache la date de limite d'incomplétude
513                    $form->setType('date_limite_incompletude', 'hiddendate');
514                    $form->setType('evenement_suivant_tacite_incompletude','hidden');
515                    $form->setType('evenement_suivant_tacite','selecthiddenstatic');
516                    $form->setType('date_complet', 'hiddenstaticdate');
517                    $form->setType('date_limite', 'hiddenstaticdate');
518                }
519    
520              // hiddenstatic              // hiddenstatic
521              if($maj==1) $form->setType('dossier_libelle', 'hiddenstatic');              if($maj==1) $form->setType('dossier_libelle', 'hiddenstatic');
522                if($maj==1) $form->setType('dossier_demandeur','hiddenstatic');
523                $form->setType('terrain','hiddenstatic');
524              $form->setType('etat','hiddenstatic');              $form->setType('etat','hiddenstatic');
525              $form->setType('avis_decision','hiddenstatic');              $form->setType('avis_decision','hiddenstatic');
526              $form->setType('delai_incompletude','hiddenstatic');              $form->setType('delai_incompletude','hidden');
527              $form->setType('delai','hiddenstatic');              $form->setType('delai','hiddenstatic');
528              $form->setType('terrain_surface_calcul','hiddenstatic');              $form->setType('terrain_surface_calcul','hiddenstatic');
529              $form->setType('shon_calcul','hiddenstatic');              $form->setType('shon_calcul','hiddenstatic');
# Line 512  class dossier extends dossier_gen { Line 534  class dossier extends dossier_gen {
534              // hiddenstaticdate              // hiddenstaticdate
535              $form->setType('date_notification_delai','hiddenstaticdate');              $form->setType('date_notification_delai','hiddenstaticdate');
536              $form->setType('date_decision','hiddenstaticdate');              $form->setType('date_decision','hiddenstaticdate');
537              $form->setType('date_limite','hiddenstaticdate');              //$form->setType('date_limite','hiddenstaticdate');
538              $form->setType('date_rejet','hiddenstaticdate');              $form->setType('date_rejet','hiddenstaticdate');
539              $form->setType('date_complet','hiddenstaticdate');              //$form->setType('date_complet','hiddenstaticdate');
540              $form->setType('date_limite','hiddenstaticdate');              //$form->setType('date_limite','hiddenstaticdate');
541              $form->setType('date_validite','hiddenstaticdate');              $form->setType('date_validite','hiddenstaticdate');
542              $form->setType('date_chantier','hiddenstaticdate');              $form->setType('date_chantier','hiddenstaticdate');
543              $form->setType('date_achevement','hiddenstaticdate');              $form->setType('date_achevement','hiddenstaticdate');
544              $form->setType('date_conformite','hiddenstaticdate');              $form->setType('date_conformite','hiddenstaticdate');
545              $form->setType('date_limite_incompletude','hiddenstaticdate');              //$form->setType('date_limite_incompletude','hiddenstaticdate');
546    
547              $form->setType('date_depot','hiddenstaticdate');              $form->setType('date_depot','hiddenstaticdate');
548              $form->setType('date_dernier_depot','hiddenstaticdate');              $form->setType('date_dernier_depot','hiddenstaticdate');
# Line 602  class dossier extends dossier_gen { Line 624  class dossier extends dossier_gen {
624              $form->setType('shon_calcul', 'hidden');              $form->setType('shon_calcul', 'hidden');
625              $form->setType('shob', 'hidden');              $form->setType('shob', 'hidden');
626              $form->setType('lot', 'hidden');              $form->setType('lot', 'hidden');
627                $form->setType('delai_incompletude','hidden');
628                // Si l'état du dossier est incomplet
629                if ($this->is_incomplet_notifie()) {
630                    // On cache les dates de complétude et de limite d'instruction
631                    $form->setType('date_complet', 'hiddendate');
632                    $form->setType('date_limite', 'hiddendate');
633                    $form->setType('evenement_suivant_tacite_incompletude','selecthiddenstatic');
634                    $form->setType('evenement_suivant_tacite','hidden');
635    
636                } else {
637                    // Sinon on cache la date de limite d'incomplétude
638                    $form->setType('date_limite_incompletude', 'hiddendate');
639                    $form->setType('evenement_suivant_tacite_incompletude','hidden');
640                    $form->setType('evenement_suivant_tacite','selecthiddenstatic');
641                }
642          }          }
643    
644          // Le profil Qualificateur ne peut modifier seulement les champs          // Le profil Qualificateur ne peut modifier seulement les champs
645                  // autorite_competente, a_qualifier et erp          // autorite_competente, a_qualifier et erp
646          if ($this->f->isUserQualificateur()) {          if ($this->f->isUserQualificateur()) {
647    
648              // En modification              // En modification
# Line 614  class dossier extends dossier_gen { Line 651  class dossier extends dossier_gen {
651                  $form->setType('numero_versement_archive', 'static');                  $form->setType('numero_versement_archive', 'static');
652                  $form->setType('enjeu_urba', 'checkboxstatic');                  $form->setType('enjeu_urba', 'checkboxstatic');
653                  $form->setType('enjeu_erp', 'checkboxstatic');                  $form->setType('enjeu_erp', 'checkboxstatic');
                 $form->setType('terrain_references_cadastrales','referencescadastralesstatic');  
                 $form->setType('terrain_adresse_voie_numero','static');  
                 $form->setType('terrain_adresse_voie','static');  
                 $form->setType('terrain_adresse_lieu_dit','static');  
                 $form->setType('terrain_adresse_localite','static');  
                 $form->setType('terrain_adresse_code_postal','static');  
                 $form->setType('terrain_adresse_bp','static');  
                 $form->setType('terrain_adresse_cedex','static');  
                 $form->setType('terrain_superficie','static');  
654              }              }
655          }          }
656    
# Line 631  class dossier extends dossier_gen { Line 659  class dossier extends dossier_gen {
659              $form->setType('division', 'hidden');              $form->setType('division', 'hidden');
660          }          }
661          $form->setType('dossier_autorisation', 'hidden');          $form->setType('dossier_autorisation', 'hidden');
662          $form->setType('dossier_autorisation_libelle', 'hiddenstatic');          $form->setType('dossier_autorisation_libelle', 'hidden');
663          $form->setType('dossier_instruction_type', 'selecthiddenstatic');          $form->setType('dossier_instruction_type', 'selecthiddenstatic');
664          //          //
665          if ($maj == 0) {          if ($maj == 0) {
666              $form->setType('dossier_autorisation', 'select');              $form->setType('dossier_autorisation', 'select');
667          }          }
         // On cache enjeu_ERP si l'option n'est pas activée  
         if($this->f->getParameter('option_erp') != 'true') {  
             $form->setType('erp', 'hidden');  
             $form->setType('enjeu_erp', 'hidden');  
         }  
668    
669          // En mode modifier, supprimer et consulter          // En mode modifier, supprimer et consulter
670          if ($maj != 0) {          if ($maj != 0) {
671              // Cache la date de la demande              // Cache la date de la demande
672              $form->setType('date_demande', 'hidden');              $form->setType('date_demande', 'hiddendate');
673            }
674    
675            // XXX Champs cachés
676            $form->setType('accord_tacite', 'hidden');
677            $form->setType('date_rejet', 'hiddendate');
678            $form->setType('date_notification_delai', 'hiddendate');
679            $form->setType('date_chantier', 'hiddendate');
680            $form->setType('date_achevement', 'hiddendate');
681            $form->setType('date_conformite', 'hiddendate');
682            
683            // On cache les champs geom si aucun SIG n'est configuré
684            if($this->f->getParameter('option_sig') == ''
685                || $this->f->getParameter('option_sig') == 'aucun'){
686                $form->setType('geom', 'hidden');
687                $form->setType('geom1', 'hidden');
688          }          }
689      }      }
690    
# Line 688  class dossier extends dossier_gen { Line 726  class dossier extends dossier_gen {
726      }      }
727    
728      function setSelect(&$form, $maj,&$db,$debug) {      function setSelect(&$form, $maj,&$db,$debug) {
729            // XXX Commenté pour patcher le problème de montée en charge de la base
730            // de données en cas de reprise de données d'un gros volume de dossier
731            // d'instruction
732            //parent::setSelect($form, $maj, $db, $debug);
733    
734          //optimisation sur table importante parcelle -> pas d appel methode parent          //optimisation sur table importante parcelle -> pas d appel methode parent
735          if(file_exists ("../sql/".$db->phptype."/".$this->table.".form.inc.php"))          if(file_exists ("../sql/".OM_DB_PHPTYPE."/".$this->table.".form.inc.php"))
736                  include ("../sql/".$db->phptype."/".$this->table.".form.inc.php");                  include ("../sql/".OM_DB_PHPTYPE."/".$this->table.".form.inc.php");
737    
738            /*
739             *  Pour chaque init_select d'un select non modifiable on teste
740             *  si l'on est en mode modifier : si c'est le cas alors on initialise le
741             *  select en mode consulter (qui n'affiche rien s'il n'y a aucune valeur).
742             */
743    
744          // instructeur          // instructeur
745          $this->init_select($form, $db, $maj, $debug, "instructeur",          $this->init_select($form, $db, $maj, $debug, "instructeur",
746                             $sql_instructeur, $sql_instructeur_by_id, true);                                 $sql_instructeur, $sql_instructeur_by_id, false);
747    
748          // etat          // etat
749          $this->init_select($form, $db, $maj, $debug, "etat",          if ($maj == 1) {
750                $this->init_select($form, $db, 3, $debug, "etat",
751                             $sql_etat, $sql_etat_by_id, false);                             $sql_etat, $sql_etat_by_id, false);
752            } else {
753                $this->init_select($form, $db, $maj, $debug, "etat",
754                                   $sql_etat, $sql_etat_by_id, false);
755            }
756    
757          // dossier_instruction_type          // dossier_instruction_type
758          $this->init_select($form, $db, $maj, $debug, "dossier_instruction_type",          if ($maj == 1) {
759                $this->init_select($form, $db, 3, $debug, "dossier_instruction_type",
760                             $sql_dossier_instruction_type, $sql_dossier_instruction_type_by_id, false);                             $sql_dossier_instruction_type, $sql_dossier_instruction_type_by_id, false);
761            } else {
762                $this->init_select($form, $db, $maj, $debug, "dossier_instruction_type",
763                                   $sql_dossier_instruction_type, $sql_dossier_instruction_type_by_id, false);
764            }
765    
766          // division          // division
767          $this->init_select($form, $db, $maj, $debug, "division",          $this->init_select($form, $db, $maj, $debug, "division",
768                             $sql_division, $sql_division_by_id, true);                                 $sql_division, $sql_division_by_id, false);
769    
770          // autorite_competente          // autorite_competente
771          $this->init_select($form, $db, $maj, $debug, "autorite_competente",          if ($maj == 1) {
772                $this->init_select($form, $db, 3, $debug, "autorite_competente",
773                             $sql_autorite_competente, $sql_autorite_competente_by_id, false);                             $sql_autorite_competente, $sql_autorite_competente_by_id, false);
774            } else {
775                $this->init_select($form, $db, $maj, $debug, "autorite_competente",
776                                   $sql_autorite_competente, $sql_autorite_competente_by_id, false);
777            }
778    
779          // avis_decision          // avis_decision
780          $this->init_select($form, $db, $maj, $debug, "avis_decision",          if ($maj == 1) {
781                $this->init_select($form, $db, 3, $debug, "avis_decision",
782                             $sql_avis_decision, $sql_avis_decision_by_id, false);                             $sql_avis_decision, $sql_avis_decision_by_id, false);
783            } else {
784                $this->init_select($form, $db, $maj, $debug, "avis_decision",
785                                   $sql_avis_decision, $sql_avis_decision_by_id, false);
786            }
787    
788            // evenement_suivant_tacite
789            if ($maj == 1) {
790                $this->init_select($form, $db, 3, $debug, "evenement_suivant_tacite",
791                               $sql_evenement_suivant_tacite, $sql_evenement_suivant_tacite_by_id, false);
792            } else {
793                $this->init_select($form, $db, $maj, $debug, "evenement_suivant_tacite",
794                                   $sql_evenement_suivant_tacite, $sql_evenement_suivant_tacite_by_id, false);
795            }
796    
797            // evenement_suivant_tacite_incompletude
798            if ($maj == 1) {
799                $this->init_select($form, $db, 3, $debug, "evenement_suivant_tacite_incompletude",
800                               $sql_evenement_suivant_tacite_incompletude, $sql_evenement_suivant_tacite_incompletude_by_id, false);
801            } else {
802                $this->init_select($form, $db, $maj, $debug, "evenement_suivant_tacite_incompletude",
803                                   $sql_evenement_suivant_tacite_incompletude, $sql_evenement_suivant_tacite_incompletude_by_id, false);
804            }
805    
806          if($maj<2){          if($maj<2){
807              // parcelle_lot              // parcelle_lot
# Line 778  class dossier extends dossier_gen { Line 864  class dossier extends dossier_gen {
864      function setLib(&$form,$maj) {      function setLib(&$form,$maj) {
865          parent::setLib($form,$maj);          parent::setLib($form,$maj);
866          $form->setLib('dossier_autorisation_libelle',_('dossier_autorisation_libelle'));          $form->setLib('dossier_autorisation_libelle',_('dossier_autorisation_libelle'));
867            $form->setLib('dossier_instruction_type',_('type de dossier'));
868          $form->setLib('servitude',_('contraintes'));          $form->setLib('servitude',_('contraintes'));
869          $form->setLib('geom',_('centroide'));          $form->setLib('dossier_demandeur',_('demandeur'));
870            $form->setLib('description_projet',_('description du projet'));        
871            $form->setLib('autorite_competente',_('competence'));
872            $form->setLib('geom',_('geolocalisaion'));
873          $form->setLib('date_limite',_("date limite d'instruction"));          $form->setLib('date_limite',_("date limite d'instruction"));
874          $form->setLib('delai',_("delai d'instruction"));          $form->setLib('delai',_("delai d'instruction"));
875          $form->setLib('accord_tacite',_("decision tacite"));          $form->setLib('accord_tacite',_("decision tacite"));
876            $form->setLib('enjeu_urba', _("urbanisme"));
877            $form->setLib('enjeu_erp', _("ERP"));
878            $form->setLib('numero_versement_archive', _("numero"));
879            $form->setLib('erp', _("ERP"));
880            $form->setLib('date_depot', _("depot"));
881            $form->setLib('date_dernier_depot', _("dernier depot"));
882            $form->setLib('date_limite', _("limite d'instruction"));
883            $form->setLib('delai', _("delai (mois)"));
884            $form->setLib('date_complet', _("completude"));
885            $form->setLib('date_limite_incompletude', _("limite d'incompletude"));
886            $form->setLib('date_decision', _("date de la decision"));
887            $form->setLib('date_validite', _("fin de validite le"));
888      }          }    
889    
890      function setOnchange(&$form,$maj){      function setOnchange(&$form,$maj){
# Line 801  class dossier extends dossier_gen { Line 903  class dossier extends dossier_gen {
903      }      }
904    
905      function setLayout(&$form, $maj) {      function setLayout(&$form, $maj) {
906          //          
907             // En-tête
908          $form->setBloc('dossier_libelle', 'D', '', ($maj == 3 ? 'col_9':'col_12'));          $form->setBloc('dossier_libelle', 'D', '', ($maj == 3 ? 'col_9':'col_12'));
909    
910                    // Col1 : Fieldset "Dossier d'Instruction"
911              $form->setBloc('dossier_libelle', 'D', '', 'col_9');              $form->setBloc('dossier_libelle', 'D', '', 'col_9');
912    
913                  $form->setFieldset('dossier_libelle', 'D', _("Dossier d'instruction"));                  $form->setFieldset('dossier_libelle', 'D', _("Dossier d'instruction"));
914                  $form->setFieldset('numero_versement_archive', 'F');                  $form->setFieldset('geom', 'F');
915                  //Fieldset "Localisation du terrain"                  
                 //  
                 $form->setBloc('terrain_adresse_voie_numero','D');  
                     $form->setFieldset('terrain_adresse_voie_numero','D',_('Localisation du terrain'));  
   
                         $form->setBloc('terrain_adresse_voie_numero','D',"","col_6");  
                         $form->setBloc('terrain_references_cadastrales','F');  
   
                         $form->setBloc('terrain_adresse_voie','D',"","col_6");  
                         $form->setBloc('geom','F');  
   
                     $form->setFieldset('geom','F','');  
                 $form->setBloc('geom','F');  
916    
917              $form->setBloc('geom', 'F');              $form->setBloc('geom', 'F');
918                    
919              $form->setBloc('date_demande', 'D', '', 'col_3');                  // Col2 : 3 fieldsets
920                $form->setBloc('enjeu_urba', 'D', '', 'col_3');
921    
922                  $form->setFieldset('date_demande', 'D', _("Depot"));                  // Fieldset "Enjeu"
                 $form->setFieldset('date_dernier_depot', 'F');  
                   
923                  $form->setFieldset('enjeu_urba', 'D', _("Enjeu"));                  $form->setFieldset('enjeu_urba', 'D', _("Enjeu"));
924                  $form->setFieldset('enjeu_erp', 'F');                  $form->setFieldset('enjeu_erp', 'F');
925                                    // Fieldset "Qualification"
926                  $form->setFieldset('erp', 'D', _("Qualification"));                  $form->setFieldset('erp', 'D', _("Qualification"));
927                  $form->setFieldset('a_qualifier', 'F');                  $form->setFieldset('a_qualifier', 'F');
928                    // Fieldset "Archive"
929                    $form->setFieldset('numero_versement_archive', 'D', _("Archive"));
930                    $form->setFieldset('date_demande', 'F');
931    
932                $form->setBloc('date_demande', 'F');
933            $form->setBloc('date_demande', 'F');
934    
935            // Fieldset "Instruction"
936            $form->setBloc('date_depot', 'D', '', 'col_12');
937            $form->setFieldset('date_depot', 'D', _('Instruction'), 'col_12');
938    
939            // Fieldset "Suivi"
940            $form->setBloc('date_depot', 'D', '', 'col_12');
941            
942                $form->setFieldset('date_depot', 'D', _('Suivi'), 'col_12');
943                // Col 1
944                $form->setBloc('date_depot', 'D', '', 'col_6');
945                    $form->setBloc('date_depot', 'D');
946                    $form->setBloc('date_dernier_depot', 'F');
947                    $form->setBloc('date_limite', 'D', '', 'interligne');
948                    $form->setBloc('date_limite_incompletude', 'F');
949                $form->setBloc('date_limite_incompletude', 'F');
950                // Col 2
951                $form->setBloc('etat', 'D', '', 'col_6');
952                    $form->setBloc('etat', 'D');
953                    $form->setBloc('etat', 'F');
954                    $form->setBloc('evenement_suivant_tacite', 'D', '', 'evmt_suivant_tacite_di');
955                    $form->setBloc('evenement_suivant_tacite_incompletude', 'F');
956                $form->setBloc('evenement_suivant_tacite_incompletude', 'F');
957                $form->setFieldset('evenement_suivant_tacite_incompletude','F','');
958            
959            $form->setBloc('evenement_suivant_tacite_incompletude', 'F'); // Fin Suivi
960    
961              $form->setBloc('a_qualifier', 'F');          // Bloc 2 fieldsets
962          $form->setBloc('a_qualifier', 'F');          $form->setBloc('date_decision', 'D', '', 'col_12');
963    
964          //          // Col 1 Fieldset "Décision"
965          $form->setBloc('date_complet', 'D', '', 'col_12');          $form->setFieldset('date_decision', 'D', _('Decision'), 'col_6');
966                    $form->setFieldset('avis_decision','F','');
967              $form->setFieldset('date_complet', 'D', _('Instruction'), 'col_12');          // Col 2 Fieldset "Validité de l'autorisation"
968            $form->setFieldset('date_validite', 'D', _("Validite de l'autorisation"), 'col_6');
969            $form->setFieldset('date_validite','F','');
970    
971                  $form->setBloc('date_complet', 'D', '', 'col_4');          $form->setBloc('date_validite', 'F'); // Fin bloc 2 fieldsets
                 $form->setBloc('date_limite_incompletude', 'F');  
972    
973                  $form->setBloc('date_rejet', 'D', '', 'col_4');          // XXX Champs cachés
974                  $form->setBloc('delai_incompletude', 'F');          // // Fieldset "Autre"
975            // $form->setBloc('accord_tacite', 'D', '', 'col_12');        
976            //     $form->setFieldset('accord_tacite', 'D', _('Autre'), 'col_12');
977    
978                  $form->setBloc('etat', 'D', '', 'col_4');          //         $form->setBloc('accord_tacite', 'D', '', 'col_4');
979                  $form->setBloc('date_conformite', 'F');          //         $form->setBloc('accord_tacite', 'F');
980    
981              $form->setFieldset('date_conformite','F','');          //         $form->setBloc('date_rejet', 'D', '', 'col_4');
982                    //         $form->setBloc('date_achevement', 'F');
983          $form->setBloc('date_conformite', 'F');  
984                    //         $form->setBloc('date_conformite', 'D', '', 'col_4');
985          $form->setBloc('parcelle','D',"", "col_12");          //         $form->setBloc('date_conformite', 'F');
986          $form->setBloc('geom1','F');  
987            //     $form->setFieldset('date_conformite','F','');        
988            // $form->setBloc('date_conformite', 'F'); // Fin Autre
989    
990            $form->setFieldset('date_conformite','F','');
991            $form->setBloc('date_conformite', 'F'); // Fin Instruction
992    
993            // Fieldset "Localisation du terrain"
994            $form->setBloc('terrain_adresse_voie_numero', 'D', '', 'col_12');
995    
996                $form->setFieldset('terrain_adresse_voie_numero', 'D', _('Localisation du terrain'), 'startClosed');
997                    // Col 1
998                    $form->setBloc('terrain_adresse_voie_numero', 'D', "", "col_6");
999                    $form->setBloc('terrain_references_cadastrales', 'F');
1000                    // Col 2
1001                    $form->setBloc('terrain_adresse_voie', 'D', "", "col_6");
1002                    $form->setBloc('terrain_superficie', 'F');
1003    
1004                $form->setFieldset('terrain_superficie', 'F', '');
1005    
1006            $form->setBloc('terrain_superficie', 'F');
1007        }
1008    
1009        /**
1010         * Permet de retourner si le dossier est incomplet notifié
1011         *
1012         * @return boolean true si incomplet notifié
1013         */
1014        function is_incomplet_notifie() {
1015            // Si le dossier est défini en tant qu'incomplet notifie
1016            if($this->getVal('incomplet_notifie') == 't' AND
1017                $this->getVal('incompletude') == 't') {
1018                return true;
1019            }
1020            return false;
1021      }      }
1022    
1023      /* =============================================================      /* =============================================================
# Line 882  class dossier extends dossier_gen { Line 1041  class dossier extends dossier_gen {
1041          }          }
1042                    
1043                    
1044          if ($this->f->getParameter('option_erp') != "") {          if ($this->f->getParameter('option_erp') === 'true') {
1045              // envoi du message a ERP en cas d'un depot du dossier dat              // envoi du message a ERP en cas d'un depot du dossier dat
1046              if ($this->f->getDATDCode($this->valF['dossier']) ==              if ($this->f->getDATDCode($this->valF['dossier']) ==
1047                      $this->f->getParameter('erp_depot_dossier_dat')) {                      $this->f->getParameter('erp_depot_dossier_dat')) {
1048                  $msgenque = new MessageEnqueuer();                  $msgenque = new MessageEnqueuer();
1049                  $msgenque->setDossierInstructionIdentifier($this->valF['dossier']);                  $msgenque->setDossierInstructionIdentifier($this->valF['dossier']);
1050                  $msgenque->enqueueMessage($msgenque::$ERP_DEPOT_DOSSIER_DAT);                  $return = $msgenque->enqueueMessage($msgenque::$ERP_DEPOT_DOSSIER_DAT);
1051                    //Si une erreur s'est produite on arrête le traitement et on
1052                    //retourne une erreur
1053                    if ($return !== 0){
1054                        
1055                        $this->addToMessage(_("Une erreur s'est produite lors de ".
1056                            "l'envoi du message au referentiel ERP. Merci de ".
1057                            "contacter votre administrateur"));
1058                        //On ne valide pas le formulaire
1059                        $this->addToMessage("<br/>"._("SAISIE NON ENREGISTREE")."<br/>");
1060                        $this->correct = false;
1061                        return false;
1062                    }
1063                    else {
1064                        $this->addToMessage(_("Le message a ete transmis au ".
1065                            "referentiel ERP."));
1066                    }
1067              }              }
1068                            
1069              // envoi du message a ERP en cas d'une demande d'ouverture DAT              // envoi du message a ERP en cas d'une demande d'ouverture DAT
# Line 896  class dossier extends dossier_gen { Line 1071  class dossier extends dossier_gen {
1071                      $this->f->getParameter('erp_demande_ouverture_dat')) {                      $this->f->getParameter('erp_demande_ouverture_dat')) {
1072                  $msgenque = new MessageEnqueuer();                  $msgenque = new MessageEnqueuer();
1073                  $msgenque->setDossierInstructionIdentifier($this->valF['dossier']);                  $msgenque->setDossierInstructionIdentifier($this->valF['dossier']);
1074                  $msgenque->enqueueMessage($msgenque::$ERP_DEMANDE_OUVERTURE_DAT);                  $return = $msgenque->enqueueMessage($msgenque::$ERP_DEMANDE_OUVERTURE_DAT);
1075                    //Si une erreur s'est produite on arrête le traitement et on
1076                    //retourne une erreur
1077                    if ($return !== 0){
1078                        
1079                        $this->addToMessage(_("Une erreur s'est produite lors de ".
1080                            "l'envoi du message au referentiel ERP. Merci de ".
1081                            "contacter votre administrateur"));
1082                        //On ne valide pas le formulaire
1083                        $this->addToMessage("<br/>"._("SAISIE NON ENREGISTREE")."<br/>");
1084                        $this->correct = false;
1085                        return false;
1086                    }
1087                    else {
1088                        $this->addToMessage(_("Le message a ete transmis au ".
1089                            "referentiel ERP."));
1090                    }
1091              }              }
1092                            
1093              if ($this->valF['erp'] === true) {              if ($this->valF['erp'] === true) {
# Line 905  class dossier extends dossier_gen { Line 1096  class dossier extends dossier_gen {
1096                          $this->f->getParameter('erp_annulation_demande')) {                          $this->f->getParameter('erp_annulation_demande')) {
1097                      $msgenque = new MessageEnqueuer();                      $msgenque = new MessageEnqueuer();
1098                      $msgenque->setDossierInstructionIdentifier($this->valF['dossier']);                      $msgenque->setDossierInstructionIdentifier($this->valF['dossier']);
1099                      $msgenque->enqueueMessage($msgenque::$ERP_ANNULATION_DEMANDE);                      $return = $msgenque->enqueueMessage($msgenque::$ERP_ANNULATION_DEMANDE);
1100                        //Si une erreur s'est produite on arrête le traitement et on
1101                        //retourne une erreur
1102                        if ($return !== 0){
1103                            
1104                            $this->addToMessage(_("Une erreur s'est produite lors de ".
1105                                "l'envoi du message au referentiel ERP. Merci de ".
1106                                "contacter votre administrateur"));
1107                            //On ne valide pas le formulaire
1108                            $this->addToMessage("<br/>"._("SAISIE NON ENREGISTREE")."<br/>");
1109                            $this->correct = false;
1110                            return false;
1111                        }
1112                        else {
1113                            $this->addToMessage(_("Le message a ete transmis au ".
1114                                "referentiel ERP."));
1115                        }
1116                  }                  }
1117                                    
1118                  // envoi du message a ERP en cas d'ouverture d'un dossier PC "rattache"                  // envoi du message a ERP en cas d'ouverture d'un dossier PC "rattache"
# Line 914  class dossier extends dossier_gen { Line 1121  class dossier extends dossier_gen {
1121                          $this->f->getParameter('erp_demande_ouverture_pc_daact')) {                          $this->f->getParameter('erp_demande_ouverture_pc_daact')) {
1122                      $msgenque = new MessageEnqueuer();                      $msgenque = new MessageEnqueuer();
1123                      $msgenque->setDossierInstructionIdentifier($this->valF['dossier']);                      $msgenque->setDossierInstructionIdentifier($this->valF['dossier']);
1124                      $msgenque->enqueueMessage($msgenque::$ERP_DEMANDE_OUVERTURE_PC);                      $return = $msgenque->enqueueMessage($msgenque::$ERP_DEMANDE_OUVERTURE_PC);
1125                        //Si une erreur s'est produite on arrête le traitement et on
1126                        //retourne une erreur
1127                        if ($return !== 0){
1128                            
1129                            $this->addToMessage(_("Une erreur s'est produite lors de ".
1130                                "l'envoi du message au referentiel ERP. Merci de ".
1131                                "contacter votre administrateur"));
1132                            //On ne valide pas le formulaire
1133                            $this->addToMessage("<br/>"._("SAISIE NON ENREGISTREE")."<br/>");
1134                            $this->correct = false;
1135                            return false;
1136                        }
1137                        else {
1138                            $this->addToMessage(_("Le message a ete transmis au ".
1139                                "referentiel ERP."));
1140                        }
1141                  }                  }
1142              }              }
1143          } // fin de if ($this->f->getParameter('option_erp') != "")            } // fin de if ($this->f->getParameter('option_erp') === 'true')
1144            
1145            //On ajoute les données techniques
1146            if($this->ajoutDonneesTechniquesDI($id, $db, $val, $DEBUG) === false){
1147                //
1148                $this -> addToMessage(
1149                    _("Erreur lors de l'enregistrement du dossier.")." ".
1150                    _("Contactez votre  administrateur.")
1151                );
1152                $this->correct = false;
1153                return false;
1154            }
1155            
1156          // Mise à jour des données du dossier d'autorisation          // Mise à jour des données du dossier d'autorisation
1157          require_once "../obj/dossier_autorisation.class.php";          require_once "../obj/dossier_autorisation.class.php";
1158          $da = new dossier_autorisation($this->valF["dossier_autorisation"], $this->db, DEBUG);          $da = new dossier_autorisation($this->valF["dossier_autorisation"], $this->db, DEBUG);
# Line 1194  class dossier extends dossier_gen { Line 1428  class dossier extends dossier_gen {
1428          }          }
1429                                    
1430          // verification si envoi vers ERP est active          // verification si envoi vers ERP est active
1431          if ($this->f->getParameter('option_erp') != "") {          if ($this->f->getParameter('option_erp') === 'true') {
1432              if ($this->val[array_search('a_qualifier', $this->champs)] == 't'              if ($this->val[array_search('a_qualifier', $this->champs)] == 't'
1433                  && $this->valF['a_qualifier'] === false) {                  && $this->valF['a_qualifier'] === false) {
1434                                                                    
# Line 1209  class dossier extends dossier_gen { Line 1443  class dossier extends dossier_gen {
1443                      $msgenque->setContraintePlu($this->valF['servitude']);                      $msgenque->setContraintePlu($this->valF['servitude']);
1444                      $msgenque->setReferenceCadastrale(                      $msgenque->setReferenceCadastrale(
1445                              $this->getReferenceCadastrale($this->valF['dossier']));                              $this->getReferenceCadastrale($this->valF['dossier']));
1446                      $msgenque->enqueueMessage($msgenque::$ERP_QUALIFIE);                                                  $return = $msgenque->enqueueMessage($msgenque::$ERP_QUALIFIE);
1447                        //Si une erreur s'est produite on arrête le traitement et on
1448                        //retourne une erreur
1449                        if ($return !== 0){
1450                            
1451                            $this->addToMessage(_("Une erreur s'est produite lors de ".
1452                                "l'envoi du message au referentiel ERP. Merci de ".
1453                                "contacter votre administrateur"));
1454                            //On ne valide pas le formulaire
1455                            $this->addToMessage("<br/>"._("SAISIE NON ENREGISTREE")."<br/>");
1456                            $this->correct = false;
1457                            return false;
1458                        }
1459                        else {
1460                            $this->addToMessage(_("Le message a ete transmis au ".
1461                                "referentiel ERP."));
1462                        }                            
1463                  }                  }
1464                                    
1465                  // envoi des messages a ERP en cas du dossier PC traite par URBA, et                  // envoi des messages a ERP en cas du dossier PC traite par URBA, et
# Line 1219  class dossier extends dossier_gen { Line 1469  class dossier extends dossier_gen {
1469                      && $this->valF['erp'] == true) {                      && $this->valF['erp'] == true) {
1470                      $msgenque = new MessageEnqueuer();                      $msgenque = new MessageEnqueuer();
1471                      $msgenque->setDossierInstructionIdentifier($this->valF['dossier']);                      $msgenque->setDossierInstructionIdentifier($this->valF['dossier']);
1472                      $msgenque->enqueueMessage($msgenque::$ERP_DEMANDE_COMPLETUDE_PC);                      $return = $msgenque->enqueueMessage($msgenque::$ERP_DEMANDE_COMPLETUDE_PC);
1473                      $msgenque->enqueueMessage($msgenque::$ERP_DEMANDE_QUALIFICATION_PC);                      //Si une erreur s'est produite on arrête le traitement et on
1474                        //retourne une erreur
1475                        if ($return !== 0){
1476                            
1477                            $this->addToMessage(_("Une erreur s'est produite lors de ".
1478                                "l'envoi du message au referentiel ERP. Merci de ".
1479                                "contacter votre administrateur"));
1480                            //On ne valide pas le formulaire
1481                            $this->addToMessage("<br/>"._("SAISIE NON ENREGISTREE")."<br/>");
1482                            $this->correct = false;
1483                            return false;
1484                        }
1485                        else {
1486                            $this->addToMessage(_("Le message a ete transmis au ".
1487                                "referentiel ERP."));
1488                        }
1489                    
1490                        $return = $msgenque->enqueueMessage($msgenque::$ERP_DEMANDE_QUALIFICATION_PC);
1491                        //Si une erreur s'est produite on arrête le traitement et on
1492                        //retourne une erreur
1493                        if ($return !== 0){
1494                            
1495                            $this->addToMessage(_("Une erreur s'est produite lors de ".
1496                                "l'envoi du message au referentiel ERP. Merci de ".
1497                                "contacter votre administrateur"));
1498                            //Si c'est un problème de connexion vers rabbitMQ et AMQP
1499                            //On ne valide pas le formulaire
1500                            if ( $return === -3 ){
1501                                $this->addToMessage("<br/>"._("SAISIE NON ENREGISTREE")."<br/>");
1502                                $this->correct = false;
1503                                return false;
1504                            }
1505                        }
1506                        else {
1507                            $this->addToMessage(_("Le message a ete transmis au ".
1508                                "referentiel ERP."));
1509                        }
1510                  }                  }
1511              }              }
1512          } // fin de if($this->f->getParameter('option_erp'))            } // fin de if($this->f->getParameter('option_erp') === 'true')  
1513    
1514          // Ajout ou modification des demandeurs          // Ajout ou modification des demandeurs
1515          $this->insertLinkDemandeDemandeur($db, $DEBUG);          $this->insertLinkDemandeDemandeur($db, $DEBUG);
# Line 1506  class dossier extends dossier_gen { Line 1792  class dossier extends dossier_gen {
1792       **/       **/
1793      function getPostedValues() {      function getPostedValues() {
1794          // Récupération des demandeurs dans POST          // Récupération des demandeurs dans POST
1795          if (isset($_POST['petitionnaire_principal']) OR          if ($this->f->get_submitted_post_value('petitionnaire_principal') !== null OR
1796                  isset($_POST['delegataire']) OR                  $this->f->get_submitted_post_value('delegataire') !== null OR
1797                      isset($_POST['petitionnaire'])) {                      $this->f->get_submitted_post_value('petitionnaire') !== null) {
1798              if( isset($_POST['petitionnaire_principal']) AND              if($this->f->get_submitted_post_value('petitionnaire_principal') !== null AND
1799                      !empty($_POST['petitionnaire_principal'])) {                      $this->f->get_submitted_post_value('petitionnaire_principal') != '') {
1800                  $this->postedIdDemandeur['petitionnaire_principal'] = $_POST['petitionnaire_principal'];                  $this->postedIdDemandeur['petitionnaire_principal'] = $this->f->get_submitted_post_value('petitionnaire_principal');
1801              }              }
1802              if( isset($_POST['delegataire']) AND              if($this->f->get_submitted_post_value('delegataire') !== null AND
1803                      !empty($_POST['delegataire'])) {                      $this->f->get_submitted_post_value('delegataire') != '') {
1804                  $this->postedIdDemandeur['delegataire'] = $_POST['delegataire'];                  $this->postedIdDemandeur['delegataire'] = $this->f->get_submitted_post_value('delegataire');
1805              }              }
1806              if( isset($_POST['petitionnaire']) AND              if($this->f->get_submitted_post_value('petitionnaire') !== null AND
1807                      !empty($_POST['petitionnaire'])) {                      $this->f->get_submitted_post_value('petitionnaire') != '') {
1808                  $this->postedIdDemandeur['petitionnaire'] = $_POST['petitionnaire'];                  $this->postedIdDemandeur['petitionnaire'] = $this->f->get_submitted_post_value('petitionnaire');
1809              }              }
1810          }          }
1811      }      }
# Line 1594  class dossier extends dossier_gen { Line 1880  class dossier extends dossier_gen {
1880          }          }
1881    
1882          // Tri          // Tri
1883          $tri = " ORDER BY contrainte_groupe, contrainte_sousgroupe,          $tri = " ORDER BY contrainte_groupe DESC, contrainte_sousgroupe,
1884                      contrainte.no_ordre, contrainte.libelle ";                      contrainte.no_ordre, contrainte.libelle ";
1885    
1886          // Requête SQL          // Requête SQL
# Line 1622  class dossier extends dossier_gen { Line 1908  class dossier extends dossier_gen {
1908          if ($listContrainte->numRows() != 0) {          if ($listContrainte->numRows() != 0) {
1909    
1910              // Affiche du fieldset              // Affiche du fieldset
1911              printf("<div id=\"liste_contrainte\" class=\"demande_hidden_bloc col_12\">");              printf("<div id=\"liste_contrainte\" class=\"demande_hidden_bloc\">");
1912              printf("<fieldset class=\"cadre ui-corner-all ui-widget-content\">");              printf("<fieldset class=\"cadre ui-corner-all ui-widget-content col_12 startClosed\">");
1913              printf("  <legend class=\"ui-corner-all ui-widget-content ui-state-active\">"              printf("  <legend class=\"ui-corner-all ui-widget-content ui-state-active\"
1914                        id =\"fieldset_contraintes_liees\">"
1915                      ._("dossier_contrainte")."</legend>");                      ._("dossier_contrainte")."</legend>");
1916                printf("<div class=\"fieldsetContent\" style=\"display: none;\">");
1917    
1918              // Entête pour le groupe              // Entête pour le groupe
1919              $groupeHeader = "              $groupeHeader = "
# Line 1651  class dossier extends dossier_gen { Line 1939  class dossier extends dossier_gen {
1939              $tableHeader = "              $tableHeader = "
1940              <thead>              <thead>
1941                  <tr class='ui-tabs-nav ui-accordion ui-state-default tab-title'>                  <tr class='ui-tabs-nav ui-accordion ui-state-default tab-title'>
1942                      <th class='title col-0 firstcol'>                      <th class='title col-0 firstcol contrainte_th_texte_complete'>
1943                          <span class='name'>                          <span class='name'>
1944                              "._('texte_complete')."                              "._('texte_complete')."
1945                          </span>                          </span>
1946                      </th>                      </th>
1947                      <th class='title col-1'>                      <th class='title col-1 contrainte_th_reference'>
1948                          <span class='name'>                          <span class='name'>
1949                              "._('reference')."                              "._('reference')."
1950                          </span>                          </span>
1951                      </th>                      </th>
1952                      <th class='title col-2'>                      <th class='title col-2 contrainte_th_nature'>
1953                          <span class='name'>                          <span class='name'>
1954                              "._('nature')."                              "._('nature')."
1955                          </span>                          </span>
# Line 1673  class dossier extends dossier_gen { Line 1961  class dossier extends dossier_gen {
1961              // Ligne de données              // Ligne de données
1962              $line = "              $line = "
1963              <tr class='tab-data %s'>              <tr class='tab-data %s'>
1964                  <td class='col-0 firstcol'>                  <td class='col-0 firstcol contrainte_th_texte_complete'>
1965                      %s                      %s
1966                  </td>                  </td>
1967                  <td class='col-1'>                  <td class='col-1 contrainte_th_reference'>
1968                      %s                      %s
1969                  </td>                  </td>
1970                  <td class='col-2'>                  <td class='col-2 contrainte_th_nature'>
1971                      %s                      %s
1972                  </td>                  </td>
1973              ";              ";
1974    
1975              // Sauvegarde des données pour les comparer              // Sauvegarde des données pour les comparer
1976              $lastRow = array();              $lastRow = array();
1977              $lastRow['contrainte_groupe'] = '';              $lastRow['contrainte_groupe'] = 'empty';
1978              $lastRow['contrainte_sousgroupe'] = '';              $lastRow['contrainte_sousgroupe'] = 'empty';
1979    
1980              // Tant qu'il y a des résultats              // Tant qu'il y a des résultats
1981              while($row = &$listContrainte->fetchRow(DB_FETCHMODE_ASSOC)) {              while($row = &$listContrainte->fetchRow(DB_FETCHMODE_ASSOC)) {
# Line 1696  class dossier extends dossier_gen { Line 1984  class dossier extends dossier_gen {
1984                  if ($row['contrainte_groupe'] != $lastRow['contrainte_groupe']) {                  if ($row['contrainte_groupe'] != $lastRow['contrainte_groupe']) {
1985    
1986                      // Si l'identifiant du groupe d'avant est vide                      // Si l'identifiant du groupe d'avant est vide
1987                      if ($lastRow['contrainte_groupe'] != '') {                      if ($lastRow['contrainte_groupe'] != 'empty') {
1988                          // Ferme le tableau                          // Ferme le tableau
1989                          printf("</table>");                          printf("</table>");
1990                          // Ferme le div                          // Ferme le div
# Line 1711  class dossier extends dossier_gen { Line 1999  class dossier extends dossier_gen {
1999    
2000                  // Si l'identifiant du sous-groupe de la contrainte présente et                  // Si l'identifiant du sous-groupe de la contrainte présente et
2001                  // celle d'avant est différent                  // celle d'avant est différent
2002                  if ($row['contrainte_sousgroupe'] != $lastRow['contrainte_sousgroupe']) {                  // Ou qu'ils soient identique mais n'appartiennent pas au même groupe
2003                    if ($row['contrainte_sousgroupe'] != $lastRow['contrainte_sousgroupe']
2004                        || ($row['contrainte_sousgroupe'] == $lastRow['contrainte_sousgroupe']
2005                            && $row['contrainte_groupe'] != $lastRow['contrainte_groupe'])) {
2006    
2007                      //                      //
2008                      if($row['contrainte_groupe'] == $lastRow['contrainte_groupe']) {                      if($row['contrainte_groupe'] == $lastRow['contrainte_groupe']) {
2009                          // Si l'identifiant de la sous-groupe d'avant est vide                          // Si l'identifiant de la sous-groupe d'avant est vide
2010                          if ($lastRow['contrainte_sousgroupe'] != '') {                          if ($lastRow['contrainte_sousgroupe'] != 'empty') {
2011                              // Ferme le tableau                              // Ferme le tableau
2012                              printf("</table>");                              printf("</table>");
2013                              // Ferme le div                              // Ferme le div
# Line 1776  class dossier extends dossier_gen { Line 2067  class dossier extends dossier_gen {
2067              printf("</div>");              printf("</div>");
2068    
2069              printf("</div>");              printf("</div>");
2070    
2071                printf("<div class=\"visualClear\"></div>");            
2072                // Ferme le fieldset content
2073                printf("</div>");
2074              printf("</fieldset>");              printf("</fieldset>");
2075          }          }
2076          /**          /**
# Line 1787  class dossier extends dossier_gen { Line 2082  class dossier extends dossier_gen {
2082           */           */
2083          $this->listeDemandeur("dossier", $this->getVal('dossier'));          $this->listeDemandeur("dossier", $this->getVal('dossier'));
2084    
2085          if($maj < 2 AND !$this->correct AND !$this->f->isUserQualificateur()) {          if($maj < 2 AND !$this->correct) {
2086              $linkable = true;              $linkable = true;
2087          } else {          } else {
2088              $linkable = false;              $linkable = false;
# Line 1795  class dossier extends dossier_gen { Line 2090  class dossier extends dossier_gen {
2090    
2091          // Conteneur de la listes des demandeurs          // Conteneur de la listes des demandeurs
2092          echo "<div id=\"liste_demandeur\" class=\"demande_hidden_bloc col_12\">";          echo "<div id=\"liste_demandeur\" class=\"demande_hidden_bloc col_12\">";
2093          echo "<fieldset class=\"cadre ui-corner-all ui-widget-content\">";          echo "<fieldset class=\"cadre ui-corner-all ui-widget-content startClosed\">";
2094          echo "  <legend class=\"ui-corner-all ui-widget-content ui-state-active\">"          echo "  <legend class=\"ui-corner-all ui-widget-content ui-state-active\">"
2095                  ._("Petitionnaire")."</legend>";                  ._("Petitionnaire")."</legend>";
2096          // Si des demandeurs sont liés à la demande          // Si des demandeurs sont liés à la demande
# Line 1850  class dossier extends dossier_gen { Line 2145  class dossier extends dossier_gen {
2145          if($maj < 2 AND $linkable) {          if($maj < 2 AND $linkable) {
2146              echo "<span id=\"add_delegataire\"              echo "<span id=\"add_delegataire\"
2147                      class=\"om-form-button add-16\">".                      class=\"om-form-button add-16\">".
2148                      _("Saisir le delegataire").                      _("Saisir un autre correspondant").
2149                  "</span>";                  "</span>";
2150          }          }
2151          echo "</div>";          echo "</div>";
# Line 1978  class dossier extends dossier_gen { Line 2273  class dossier extends dossier_gen {
2273              } else {              } else {
2274                  echo "tab.php?";                  echo "tab.php?";
2275              }              }
2276                          // Permet de retourner sur la bonne page              // Permet de retourner sur la bonne page
2277              if (isset($_GET['retourformulaire']) && $_GET['retourformulaire'] != '') {              if ($this->f->get_submitted_get_value('retourformulaire') !== null && $this->f->get_submitted_get_value('retourformulaire') != '') {
2278                  echo "obj=".$_GET['retourformulaire'];                  echo "obj=".$this->f->get_submitted_get_value('retourformulaire');
2279              } else {              } else {
2280                  echo "obj=".get_class($this);                  echo "obj=".get_class($this);
2281              }              }
2282              if (isset($_GET['retourformulaire2']) && $_GET['retourformulaire2'] != '') {              if ($this->f->get_submitted_get_value('retourformulaire2') !== null && $this->f->get_submitted_get_value('retourformulaire2') != '') {
2283                  echo "&retourformulaire=".$_GET['retourformulaire2'];                  echo "&retourformulaire=".$this->f->get_submitted_get_value('retourformulaire2');
2284              }              }
2285              if($this->getParameter("retour")=="form") {              if($this->getParameter("retour")=="form") {
2286                  echo "&amp;idx=".$this->getParameter("idx");                  echo "&amp;idx=".$this->getParameter("idx");
# Line 2117  class dossier extends dossier_gen { Line 2412  class dossier extends dossier_gen {
2412      }      }
2413    
2414      /**      /**
2415       * Ajoute les parcelles du dossier passé en paramètre       * Ajoute les parcelles du dossier passé en paramètre et met à jour le
2416       * @param  string $dossier                        Identifiant du dossier       * quartier du dossier.
2417       * @param  string $terrain_references_cadastrales Références cadastrales du       * @param string $dossier                        Identifiant du dossier
2418         * @param string $terrain_references_cadastrales Références cadastrales du
2419       *                                                dossier       *                                                dossier
2420       */       */
2421      function ajouter_dossier_parcelle($dossier, $terrain_references_cadastrales) {      function ajouter_dossier_parcelle($dossier, $terrain_references_cadastrales) {
# Line 2151  class dossier extends dossier_gen { Line 2447  class dossier extends dossier_gen {
2447              $dossier_parcelle->ajouter($value, $this->db, DEBUG);              $dossier_parcelle->ajouter($value, $this->db, DEBUG);
2448          }          }
2449    
2450            // Si la liste des parcelles n'est pas vide
2451            if (count($list_parcelles) > 0) {
2452    
2453                // Récupère le code impôt de la première référence cadastrale
2454                $quartier_code_impots = $list_parcelles[0]['quartier'];
2455                // Récupère l'identifiant du quartier
2456                $quartier = $this->get_quartier_by_code_impot($quartier_code_impots);
2457    
2458                // Ajoute le quartier au dossier
2459                $this->modifier_quartier_dossier($dossier, $quartier);
2460            }
2461      }      }
2462    
2463      /**      /**
2464       * Supprime les parcelles du dossier passé en paramètre       * Supprime les parcelles du dossier passé en paramètre et met à jour le
2465       * @param  string $dossier Identifiant du dossier       * quartier du dossier.
2466         * @param string $dossier Identifiant du dossier
2467       */       */
2468      function supprimer_dossier_parcelle($dossier) {      function supprimer_dossier_parcelle($dossier) {
2469    
# Line 2163  class dossier extends dossier_gen { Line 2471  class dossier extends dossier_gen {
2471          $sql = "DELETE FROM ".DB_PREFIXE."dossier_parcelle          $sql = "DELETE FROM ".DB_PREFIXE."dossier_parcelle
2472                  WHERE dossier='".$dossier."'";                  WHERE dossier='".$dossier."'";
2473          $res = $this->db->query($sql);          $res = $this->db->query($sql);
2474          $this->addToLog("supprimer_dossier_parcelle() db->query(\"".$sql."\");", VERBOSE_MODE);          $this->addToLog("supprimer_dossier_parcelle() db->query(\"".$sql."\");",
2475                VERBOSE_MODE);
2476          database::isError($res);          database::isError($res);
2477    
2478            // Supprime le quartier dans dossier
2479            $this->modifier_quartier_dossier($dossier);
2480        }
2481    
2482        /**
2483         * Modifie le quartier au dossier.
2484         * @param string  $dossier  Numéro du dossier
2485         * @param integer $quartier Identifiant du quartier
2486         */
2487        function modifier_quartier_dossier($dossier, $quartier = null) {
2488    
2489            // Valeurs à mettre à jour
2490            $valF = array();
2491            $valF['quartier'] = $quartier;
2492    
2493            // Met à jour le quartier du dossier
2494            $cle = " dossier='".$dossier."'";
2495            $res = $this->db->autoExecute(
2496                DB_PREFIXE.'dossier', $valF, DB_AUTOQUERY_UPDATE, $cle);
2497            $this->addToLog("ajouter_quartier_dossier(): db->autoexecute(\""
2498                .DB_PREFIXE."dossier\", ".print_r($valF, true)
2499                .", DB_AUTOQUERY_UPDATE, \"".$cle."\");", VERBOSE_MODE);
2500            $this->f->isDatabaseError($res);
2501        }
2502    
2503        /**
2504         * Récupère le quartier par rapport au code impôts.
2505         * @param string $code_impots Code impôts du quartier
2506         *
2507         * @return integer            Identifiant du quartier
2508         */
2509        function get_quartier_by_code_impot($code_impots) {
2510    
2511            // Initialisation résultat
2512            $quartier = null;
2513    
2514            // Si la condition n'est pas vide
2515            if ($code_impots != ""
2516                && $code_impots != null) {
2517    
2518                // Requête SQL
2519                $sql = "SELECT quartier
2520                        FROM ".DB_PREFIXE."quartier
2521                        WHERE code_impots = '".$code_impots."'";
2522                $this->f->addToLog(
2523                    "get_quartier_by_code_impots() : db->getOne(\"".$sql."\")",
2524                    VERBOSE_MODE);
2525                $quartier = $this->db->getOne($sql);
2526                $this->f->isDatabaseError($quartier);
2527            }
2528    
2529            // Retourne résultat
2530            return $quartier;
2531        }
2532        
2533        /**
2534         * Méthode permettant d'ajouter les données techniques d'un DI.
2535         *
2536         * @param integer  $id    identifiant de la demande
2537         * @param database &$db   handler de la base de donnée
2538         * @param array    $val   tableau de valeurs postées via le formulaire
2539         * @param boolean  $DEBUG debug
2540         *
2541         * @return boolean false si erreur
2542         */
2543        function ajoutDonneesTechniquesDI($id, &$db, $val, $DEBUG) {
2544    
2545            //On vérifie que le dossier d'autorisation a des données techniques
2546            $sql = "SELECT * "
2547                ."FROM ".DB_PREFIXE."donnees_techniques "
2548                ."WHERE dossier_autorisation = '".$this->valF["dossier_autorisation"]."'";
2549            $dtda = $this->db->query($sql);
2550            $this->addToLog(__METHOD__."(): db->query(\"".$sql."\")", VERBOSE_MODE);
2551            if($this->f->isDatabaseError($dtda, true)){
2552                $this->f->addToLog(__METHOD__."() : ERROR - Erreur de base de données. Impossible d'ajouter les données techniques du dossier d'instruction.", DEBUG_MODE);
2553                return false;
2554            }
2555            
2556            //Si le dossier d'autorisation a des données techniques
2557            if ( $dtda->numrows() == 1 ){
2558                //
2559                require_once '../obj/donnees_techniques.class.php';
2560                $dtdi = new donnees_techniques(']', $db, $DEBUG);
2561                //Préparation des données
2562                $valF = $dtda->fetchRow(DB_FETCHMODE_ASSOC);
2563                //Suppression de l'identifiant
2564                $valF["donnees_techniques"] = null;
2565                // Ajout du numéro de dossier d'instruction
2566                $valF['dossier_instruction'] = $this->valF['dossier'];
2567                // Suppression du numéro de dossier d'autorisation
2568                $valF['dossier_autorisation'] = null;
2569                // Ajout des données techniques
2570                if($dtdi->ajouter($valF, $db, $DEBUG) === false) {
2571                    $this->f->addToLog(__METHOD__."() : ERROR - Impossible d'ajouter les données techniques du dossier d'instruction.", DEBUG_MODE);
2572                    return false;
2573                }
2574            }
2575            else {
2576                //Le dossier d'autorisation n'a pas de données techniques
2577                $this->f->addToLog(__METHOD__."() : ERROR - le DA n'a pas de données techniques.", DEBUG_MODE);
2578                return -1;
2579            }
2580    
2581            //
2582            return true;
2583      }      }
2584            
2585  }// fin classe  }// fin classe

Legend:
Removed from v.2783  
changed lines
  Added in v.3277

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26