/[openfoncier]/branches/3.14.x-lettrerar/app/geolocalisation.view.php
ViewVC logotype

Diff of /branches/3.14.x-lettrerar/app/geolocalisation.view.php

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

trunk/app/geolocalisation.view.php revision 2170 by softime, Tue Aug 27 11:03:59 2013 UTC branches/3.14.x/app/geolocalisation.view.php revision 3343 by vpihour, Thu Mar 19 17:34:18 2015 UTC
# Line 1  Line 1 
1  <?php  <?php
2  /**  /**
3     * Affichage des boutons d'actions et des données liés à la géolocalisation
4   *   *
5   *   * @package openfoncier
6   * @package openads   * @version SVN : $Id$
  * @version SVN : $Id:  
7   */   */
8    
9  // Fichiers requis  // Fichiers requis
10  require_once "../obj/utils.class.php";  require_once "../obj/utils.class.php";
11  require_once '../obj/om_formulaire.class.php';  require_once '../obj/om_formulaire.class.php';
12    
13  $idx = (isset($_GET['idx'])) ? $_GET['idx'] : "";  // Instance de la class utils
14    $f = new utils("nohtml", "geolocalisation_consulter", _("Geolocalisation"));
15    
16    $idx = ($f->get_submitted_get_value("idx") != null) ? $f->get_submitted_get_value("idx") : "";
17    
18  //Si l'identifiant du dossier d'autorisation a été fourni  //Si l'identifiant du dossier d'instruction a été fourni
19  if (!is_null($idx)){  if (!is_null($idx)){
     // Instance de la class utils  
     $f = new utils("nohtml", "geolocalisation_consulter", _("Geolocalisation"));  
20    
21      // Récupération des données de sig_elyx      // Récupération des données de sig_elyx
22      $sqlDonneesSIG = "SELECT *      $sqlDonneesSIG = "SELECT *
# Line 26  if (!is_null($idx)){ Line 27  if (!is_null($idx)){
27      $f->isDatabaseError($resDonneesSIG);      $f->isDatabaseError($resDonneesSIG);
28      $rowDonneesSIG = &$resDonneesSIG->fetchRow(DB_FETCHMODE_ASSOC);      $rowDonneesSIG = &$resDonneesSIG->fetchRow(DB_FETCHMODE_ASSOC);
29    
30      // Récupération des données du dossier d'autorisation      // Récupération des données du dossier d'instruction
31      $sqlDonneesDI = "SELECT *      $sqlDonneesDI = "SELECT dossier, geom, dossier_libelle,
32                terrain_references_cadastrales, terrain_adresse_voie_numero,
33                terrain_adresse_voie, terrain_adresse_lieu_dit, terrain_adresse_localite,
34                terrain_adresse_code_postal, terrain_adresse_bp, terrain_adresse_cedex
35              FROM ".DB_PREFIXE."dossier              FROM ".DB_PREFIXE."dossier
36              WHERE dossier = '$idx'";              WHERE dossier = '$idx'";
37      $resDonneesDI = $f->db->query($sqlDonneesDI);      $resDonneesDI = $f->db->query($sqlDonneesDI);
# Line 35  if (!is_null($idx)){ Line 39  if (!is_null($idx)){
39      $f->isDatabaseError($resDonneesDI);      $f->isDatabaseError($resDonneesDI);
40      $rowDonneesDI = &$resDonneesDI->fetchRow(DB_FETCHMODE_ASSOC);      $rowDonneesDI = &$resDonneesDI->fetchRow(DB_FETCHMODE_ASSOC);
41    
42        // Récupération des contraintes liées au DI
43        $sqlDossierContrainte = "SELECT dossier_contrainte, reference
44                FROM ".DB_PREFIXE." dossier_contrainte
45                WHERE dossier = '".$idx."'";
46        $resDossierContrainte = $f->db->query($sqlDossierContrainte);
47        $f->addToLog("app/geolocalisation.view.php : db->query(\"".$sqlDossierContrainte."\")", VERBOSE_MODE);
48        $f->isDatabaseError($resDossierContrainte);
49    
50        //
51        $geom = "";
52        //
53        if (isset($rowDonneesDI) && $rowDonneesDI['geom'] != '') {
54            //
55            $sqlGEOM = "SELECT public.ST_AsText('".$rowDonneesDI['geom']."'::geometry)";
56            $geom = $f->db->getOne($sqlGEOM);
57            $f->addToLog("app/geolocalisation.view.php : db->getOne(\"".$sqlGEOM."\")", VERBOSE_MODE);
58        }
59    
60        // Compteurs de contrainte manuelle et automatique
61        $nb_conrainte_man = 0;
62        $nb_conrainte_sig = 0;
63        // Nombre de contrainte du DI
64        while ($rowDossierContrainte = &$resDossierContrainte->fetchRow(DB_FETCHMODE_ASSOC)) {
65            //
66            if ($rowDossierContrainte['reference'] == 'f') {
67                $nb_conrainte_man++;
68            } else {
69                $nb_conrainte_sig++;
70            }
71        }
72        // Modifie les messages en fonction du nombre de contrainte
73        if ($nb_conrainte_man == 0) {
74            $msg_contrainte_man = _("Aucune contraintes ajoutees depuis l'application");
75        } else {
76            $msg_contrainte_man = $nb_conrainte_man." "._("contrainte(s) ajoutee(s) depuis l'application");
77        }
78        if ($nb_conrainte_sig == 0) {
79            $msg_contrainte_sig = _("Aucune contraintes ajoutees depuis le SIG");
80        } else {
81            $msg_contrainte_sig = $nb_conrainte_sig." "._("contrainte(s) ajoutee(s) depuis le SIG");
82        }
83        $contrainte_val = "<span id='msg_contrainte_man'>".$msg_contrainte_man."</span>"."<br />".
84            "<span id='msg_contrainte_sig'>".$msg_contrainte_sig."</span>";
85    
86      // Affichage du fil d'Ariane      // Affichage du fil d'Ariane
87      $f->displaySubTitle(_("Geolocalisation") . "->" . $rowDonneesDI["dossier_libelle"]);      $f->displaySubTitle(_("Geolocalisation") . "->" . $rowDonneesDI["dossier_libelle"]);
88      $f->display();      $f->display();
89    
90      // Message affiché      // Message affiché
91      $message_field = '<div class="message ui-widget ui-corner-all ui-state-highlight ui-state-%s">      $message_field = '<div class="message ui-widget ui-corner-all ui-state-highlight ui-state-%s" id="%s">
92          <p>          <p>
93              <span class="ui-icon ui-icon-info"></span>              <span class="ui-icon ui-icon-info"></span>
94              <span class="text">%s<br></span>              <span class="text">%s<br></span>
95          </p>          </p>
96      </div>';      </div>';
97    
98      // Message d'erreur si les références cadastrales ont été modifiés      // Message d'erreur si les références cadastrales ont été modifiées
99      // dans le dossier d'instruction      // dans le dossier d'instruction
100      if (isset($rowDonneesSIG["terrain_references_cadastrales_archive"]) && $rowDonneesSIG["terrain_references_cadastrales_archive"] != $rowDonneesDI["terrain_references_cadastrales"]) {      if (isset($rowDonneesSIG["terrain_references_cadastrales_archive"]) &&
101          printf($message_field, "error", _("Les references cadastrales ont ete modifiees dans le dossier d'instruction :")." ".$rowDonneesSIG["terrain_references_cadastrales_archive"]);          $rowDonneesSIG["terrain_references_cadastrales_archive"] != $rowDonneesDI["terrain_references_cadastrales"]) {
102            
103            $messageRefCadUtilisees = (is_null($rowDonneesSIG["terrain_references_cadastrales_archive"])&&
104                $rowDonneesSIG["terrain_references_cadastrales_archive"]!="")?
105                    _("Les references cadastrales utilisees par le SIG")." : ".
106                    $rowDonneesSIG["terrain_references_cadastrales_archive"] :
107                    _("Aucune reference cadastrale n'est renseignee pour le SIG");
108            
109            printf($message_field, "error", "geolocalisation-message",
110                "<p>"._("Les references cadastrales ont ete modifiees dans le dossier d'instruction.")."</p>".
111                "<p>".$messageRefCadUtilisees."</p>");
112      }      }
113    
114      // Bouton retour      // Bouton retour
115      $button_return = '<div class="formControls">      $button_return = '<div class="formControls">
116          <a onclick="redirectPortletAction(1,\'main\');" href="#" class="retour">Retour</a>          <a id="retour-button" onclick="redirectPortletAction(1,\'main\'); refresh_page_return();" href="#" class="retour">Retour</a>
117      </div>';      </div>';
118    
119      // Affiche le bouton de retour      // Affiche le bouton de retour
120      printf($button_return);      printf($button_return);
121    
122      // Début du formulaire      // Début du formulaire
123      echo "\n<!-- ########## START FORMULAIRE ########## -->\n";      printf("\n<!-- ########## START FORMULAIRE ########## -->\n");
124      echo "<div class=\"formEntete ui-corner-all\">\n";      printf("<div class=\"formEntete ui-corner-all\">\n");
125    
126      // Champ pour le bouton      // Champ pour le bouton
127      $button_field = '<div class="field field-type-static">      $button_field = '<div class="field field-type-static">
# Line 80  if (!is_null($idx)){ Line 138  if (!is_null($idx)){
138      </div>';      </div>';
139    
140      // Boutons d'action sur la géolocalisation      // Boutons d'action sur la géolocalisation
141      $button = "<input type=\"submit\" class=\"om-button ui-button ui-widget ui-state-default ui-corner-all\" value=\"%s\" onclick=\"%s\" role=\"button\" aria-disabled=\"false\">";      $button = '<input type="submit" class="om-button ui-button ui-widget ui-state-default ui-corner-all" id="%s-button" value="%s" onclick="%s" role="button" aria-disabled="false">';
142    
143      // Affiche le bouton permettant de lancer tous les traitements      // Affiche le bouton permettant de lancer tous les traitements
144      echo '<div class="alignBtnCenter">';      printf('<div class="alignBtnCenter">');
145          printf($button, "J'ai de la chance", "btn()");      printf($button, "chance", "J'ai de la chance", "all_geolocalisation_treatments('$idx', '"._("Etes vous sur de vouloir recuperer les contraintes ?")."')");
146      echo '</div>';      printf('</div>');
147    
148      /**      /**
149       * Compose le message affiché à l'utilisateur       * Compose le message affiché à l'utilisateur
# Line 102  if (!is_null($idx)){ Line 160  if (!is_null($idx)){
160          $etat = (isset($rowDonneesSIG["etat_".$field_name])) ? $rowDonneesSIG["etat_".$field_name] : "";;          $etat = (isset($rowDonneesSIG["etat_".$field_name])) ? $rowDonneesSIG["etat_".$field_name] : "";;
161          $text = (isset($rowDonneesSIG["message_".$field_name])) ? $rowDonneesSIG["message_".$field_name] : "";;          $text = (isset($rowDonneesSIG["message_".$field_name])) ? $rowDonneesSIG["message_".$field_name] : "";;
162    
163            // id du message
164            $id_message = $field_name."-message";
165    
166          // Définit le type du message "empty", "valid" ou "error"          // Définit le type du message "empty", "valid" ou "error"
167          // empty : message grisé          // empty : message grisé
168          // valid : message de validation          // valid : message de validation
# Line 130  if (!is_null($idx)){ Line 191  if (!is_null($idx)){
191          }          }
192    
193          // Compose le message          // Compose le message
194          $message = sprintf($message_field, $type_message, $date." ".$text);          $message = sprintf($message_field, $type_message, $id_message, $date." ".$text);
195    
196          // retour          // retour
197          return $message;          return $message;
198      }      }
199    
200      //Affichage des boutons      // Tableau pour afficher l'interface sur deux colonnes
201      printf($button_field, 'verif_parcelle', sprintf($button, "Vérifier les parcelles", "btn()"), build_message('verif_parcelle', $message_field, $rowDonneesSIG, $f));      printf("<div class='sousform-geolocalisation'><div class='list-buttons-geolocalisation'>");
202    
203      printf($button_field, 'calcul_emprise', sprintf($button, "Calculer l'emprise", "btn()"), build_message('calcul_emprise', $message_field, $rowDonneesSIG, $f));      //Affichage des boutons
204        printf($button_field, 'verif_parcelle', sprintf($button, 'verif_parcelle', "Vérifier les parcelles", "geolocalisation_treatment('$idx', 'verif_parcelle', set_geolocalisation_message)"), build_message('verif_parcelle', $message_field, $rowDonneesSIG, $f));
205    
206      printf($button_field, 'dessin_emprise', sprintf($button, "Dessiner l'emprise", "btn()"), build_message('dessin_emprise', $message_field, $rowDonneesSIG, $f));      printf($button_field, 'calcul_emprise', sprintf($button, 'calcul_emprise', "Calculer l'emprise", "geolocalisation_treatment('$idx', 'calcul_emprise', '')"), build_message('calcul_emprise', $message_field, $rowDonneesSIG, $f));
207    
208      printf($button_field, 'calcul_centroide', sprintf($button, "Calculer le centroïde", "geolocalisation_treatment('$idx', 'calcul_centroide', set_geolocalisation_centroide)"), build_message('calcul_centroide', $message_field, $rowDonneesSIG, $f));      printf($button_field, 'dessin_emprise', sprintf($button, 'dessin_emprise', "Dessiner l'emprise", "geolocalisation_treatment('$idx', 'dessin_emprise', redirection_elyxweb)"), build_message('dessin_emprise', $message_field, $rowDonneesSIG, $f));
209    
210      printf($button_field, 'recup_contrainte', sprintf($button, "Récupérer les contraintes", "btn()"), build_message('recup_contrainte', $message_field, $rowDonneesSIG, $f));      printf($button_field, 'calcul_centroide', sprintf($button, 'calcul_centroide', "Calculer le centroïde", "geolocalisation_treatment('$idx', 'calcul_centroide', set_geolocalisation_centroide)"), build_message('calcul_centroide', $message_field, $rowDonneesSIG, $f));
211    
212      printf("<br/>");      printf($button_field, 'recup_contrainte', sprintf($button, 'recup_contrainte', "Récupérer les contraintes", "geolocalisation_treatment('$idx', 'recup_contrainte', set_geolocalisation_contrainte, '"._("Etes vous sur de vouloir recuperer les contraintes ?")."')"), build_message('recup_contrainte', $message_field, $rowDonneesSIG, $f));
213        
214        //
215        printf("</div>");
216    
217      // Le formualaire n'a pas été validé      // Le formulaire n'a pas été validé
218      $validation = 1;      $validation = 1;
219      // Le formualaire est en mode consultation      // Le formulaire est en mode consultation
220      $maj = 3;      $maj = 3;
221    
222      // Champs du formulaire      // Champs du formulaire
223      $champs = array("references_cadastrales", "adresse", "centroide", "servitude");      $champs = array("centroide", "contrainte", "adresse", "references_cadastrales");
224            
225      // Création d'un nouvel objet de type formulaire      // Création d'un nouvel objet de type formulaire
226      $form = new formulaire(NULL, $validation, $maj, $champs);      $form = new formulaire(NULL, $validation, $maj, $champs);
# Line 170  if (!is_null($idx)){ Line 235  if (!is_null($idx)){
235      $form->setLib("references_cadastrales", _("terrain_references_cadastrales"));      $form->setLib("references_cadastrales", _("terrain_references_cadastrales"));
236      $form->setLib("adresse", _("adresse"));      $form->setLib("adresse", _("adresse"));
237      $form->setLib("centroide", _("centroide"));      $form->setLib("centroide", _("centroide"));
238      $form->setLib("servitude", _("servitude"));      $form->setLib("contrainte", _("contrainte"));
239    
240      // Configuration des données      // Configuration des données
241      $form->setVal("references_cadastrales", $rowDonneesDI["terrain_references_cadastrales"]);      $form->setVal("references_cadastrales", $rowDonneesDI["terrain_references_cadastrales"]);
242      $form->setVal("adresse", $rowDonneesDI["terrain_adresse_voie_numero"]." ".$rowDonneesDI["terrain_adresse_voie"]." ".$rowDonneesDI["terrain_adresse_lieu_dit"]." ".$rowDonneesDI["terrain_adresse_localite"]." ".$rowDonneesDI["terrain_adresse_code_postal"]." ".$rowDonneesDI["terrain_adresse_bp"]." ".$rowDonneesDI["terrain_adresse_cedex"]);      $form->setVal("adresse", $rowDonneesDI["terrain_adresse_voie_numero"]." ".$rowDonneesDI["terrain_adresse_voie"]." ".$rowDonneesDI["terrain_adresse_lieu_dit"]." ".$rowDonneesDI["terrain_adresse_code_postal"]." ".$rowDonneesDI["terrain_adresse_localite"]." ".$rowDonneesDI["terrain_adresse_bp"]." ".$rowDonneesDI["terrain_adresse_cedex"]);
243      $form->setVal("centroide", $rowDonneesDI["geom"]);      if($geom != "") {
244      $form->setVal("servitude", $rowDonneesDI["servitude"]);          $form->setVal('centroide',
245                "<a id='action-form-localiser'".
246                " target='_SIG' href='../app/redirect_plan_sig.php?idx=".$rowDonneesDI["dossier"]."'>".
247                "<span class='om-icon om-icon-16 om-icon-fix sig-16' title='Localiser'>Localiser</span> ".
248                $geom.
249                " </a>");
250        } else {
251            $form->setVal('centroide', $geom);
252        }
253        $form->setVal("contrainte", $contrainte_val);
254    
255      // Affichage des champs      // Affichage des champs
256      $form->setBloc("centroide", "D", _("Donnees du dossier d'instruction"), "alignForm col_12");      $form->setBloc("centroide", "D", _("Donnees du dossier d'instruction"), "alignForm col_12");
257          $form->setBloc("centroide", "DF", "", "alignForm col_12");          $form->setBloc("centroide", "DF", "", "geoloc_form alignForm col_12");
258          $form->afficher(array("centroide",), $validation, false, false);          $form->setBloc("contrainte", "DF", "", "geoloc_form alignForm col_12");
259          $form->setBloc("servitude", "DF", "", "alignForm col_12");          $form->setBloc("adresse", "DF", "", "geoloc_form alignForm col_12");
260          $form->afficher(array("servitude",), $validation, false, false);          $form->setBloc("references_cadastrales", "DF", "", "geoloc_form alignForm col_12");
261          $form->setBloc("references_cadastrales", "DF", "", "alignForm col_12");      $form->setBloc("references_cadastrales", "F");
262          $form->afficher(array("references_cadastrales",), $validation, false, false);  
263          $form->setBloc("adresse", "DF", "", "alignForm col_12");      $form->afficher($champs, $validation, false, false);
264          $form->afficher(array("adresse",), $validation, false, false);      // Ferme le tableau pour l'affichage sur deux colonnes
265      $form->setBloc("adresse", "F");      printf("</div></div>");
266    
267      printf("<br/>");      //Ajout d'un div vide pour éviter les superspositions des div
268        printf("<div class=\"both\"></div>");
269    
270      // Fin du formulaire      // Fin du formulaire
271      echo "</div>";      printf("</div></div>");
272    
273      // Affiche le bouton de retour      // Affiche le bouton de retour
274      printf($button_return);      printf($button_return);

Legend:
Removed from v.2170  
changed lines
  Added in v.3343

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26