1 |
mbroquet |
3730 |
/** |
2 |
|
|
* Script JS spécifique à l'applicatif, ce script est destiné à être |
3 |
|
|
* appelé en dernier dans la pile des fichiers JS. |
4 |
|
|
* |
5 |
|
|
* @package openfoncier |
6 |
|
|
* @version SVN : $Id: script.js 6066 2016-03-01 11:11:26Z nhaye $ |
7 |
|
|
*/ |
8 |
|
|
|
9 |
softime |
6565 |
/** |
10 |
softime |
8989 |
* UUID utilisé pour détecter si ce fichier a été chargé. |
11 |
|
|
* |
12 |
|
|
* Utilisé actuellement par le détecteur de bloqueur de pub. |
13 |
|
|
*/ |
14 |
|
|
var app_script_t4Fv4a59uSU7MwpJ59Qp = true; |
15 |
|
|
|
16 |
|
|
/** |
17 |
softime |
16749 |
* Variable utilisé pour stocker le numero de dossier complet lors de la création d'un nouveau |
18 |
|
|
* dossier en cas de case de numero de dossier complet decoché |
19 |
|
|
*/ |
20 |
|
|
var get_num_dossier_complet = null; |
21 |
|
|
|
22 |
|
|
/** |
23 |
|
|
* |
24 |
|
|
* |
25 |
|
|
*/ |
26 |
|
|
var getting_num_dossier_seq = false; |
27 |
|
|
|
28 |
|
|
/** |
29 |
softime |
6565 |
* Méthode exécutée au chargement de la page. |
30 |
|
|
* Permet, au rafraichissement de la page, d'avoir le focus des champs à saisir |
31 |
|
|
* et le bind des actions direct du portlet. |
32 |
|
|
* |
33 |
|
|
* @return {[type]} [description] |
34 |
|
|
*/ |
35 |
|
|
function initBindFocus(){ |
36 |
mbroquet |
3730 |
|
37 |
|
|
/** |
38 |
|
|
* Ajout du focus sur le champ login au chargement de la page. |
39 |
|
|
*/ |
40 |
|
|
$('#login_form #login').focus(); |
41 |
|
|
|
42 |
|
|
/** |
43 |
|
|
* Spécifique à l'action affichage_reglementaire_attestation de la classe |
44 |
|
|
* demande pour donner le focus sur le champ de recherche au chargement de |
45 |
|
|
* la page. |
46 |
|
|
*/ |
47 |
|
|
$('#affichage_reglementaire_attestation_form #dossier').focus(); |
48 |
|
|
|
49 |
|
|
/** |
50 |
|
|
* WIDGET DASHBOARD - widget_recherche_dossier. |
51 |
|
|
* |
52 |
|
|
* Spécifique app/widget_recherche_dossier.php pour donner le |
53 |
|
|
* focus sur le champ de recherche au chargement de la page. |
54 |
|
|
*/ |
55 |
|
|
$('#widget_recherche_dossier_form #dossier').focus(); |
56 |
|
|
|
57 |
softime |
6565 |
/** |
58 |
|
|
* WIDGET DASHBOARD - widget_recherche_dossier_par_type. |
59 |
|
|
* |
60 |
|
|
* Spécifique app/widget_recherche_dossier_par_type.php pour donner le |
61 |
|
|
* focus sur le champ de recherche au chargement de la page. |
62 |
|
|
*/ |
63 |
|
|
$('#widget_recherche_dossier_par_type_form #dossier').focus(); |
64 |
|
|
|
65 |
mbroquet |
3730 |
/** |
66 |
|
|
* Spécifique app/suivi_retours_de_consultation.php pour donner le focus sur le champ de |
67 |
|
|
* recherche au chargement de la page. |
68 |
|
|
*/ |
69 |
|
|
$('#suivi_retours_de_consultation_form #code_barres').focus(); |
70 |
|
|
|
71 |
|
|
/** |
72 |
|
|
* Spécifique app/suivi_mise_a_jour_des_dates.php pour donner le focus sur le champ |
73 |
|
|
* instruction au chargement de la page si la date n'est pas vide. |
74 |
|
|
*/ |
75 |
|
|
if($('#suivi_mise_a_jour_des_dates_form #date').val()!="") { |
76 |
|
|
$('#suivi_mise_a_jour_des_dates_form #code_barres').focus(); |
77 |
|
|
} |
78 |
|
|
|
79 |
|
|
/** |
80 |
|
|
* Spécifique app/suivi_envoi_lettre_rar.php pour donner le focus sur le champ |
81 |
|
|
* liste des codes barres d'instructions scannés au chargement de la page. |
82 |
|
|
*/ |
83 |
|
|
$('#suivi_envoi_lettre_rar_form #liste_code_barres_instruction').focus(); |
84 |
|
|
|
85 |
|
|
/** |
86 |
|
|
* Spécifique app/suivi_mise_a_jour_des_dates.php pour donner le focus sur le champ |
87 |
|
|
* instruction au chargement de la page si la date n'est pas vide. |
88 |
|
|
*/ |
89 |
|
|
if($('#bordereau_envoi_maire #date').val()!="") { |
90 |
|
|
$('#bordereau_envoi_maire #code_barres').focus(); |
91 |
|
|
} |
92 |
|
|
|
93 |
|
|
/** |
94 |
|
|
* Sur les widgets du tableau de bord, si on détecte un bloc d'aide |
95 |
|
|
* alors on le déplace dans le titre du widget (i). |
96 |
|
|
*/ |
97 |
|
|
$("#dashboard .widget-content div.widget-help").each(function(){ |
98 |
|
|
widget = $(this).parent().parent().parent(); |
99 |
|
|
header = widget.find(".widget-header"); |
100 |
|
|
header.prepend($(this)); |
101 |
|
|
}); |
102 |
|
|
|
103 |
|
|
/** |
104 |
|
|
* Affichage d'un dialog pour les règles de calcul associés à l'action |
105 |
|
|
*/ |
106 |
|
|
$('.regle_action').dialog({ |
107 |
|
|
autoOpen: false, |
108 |
|
|
show: "fade", |
109 |
|
|
hide: "fade", |
110 |
|
|
dialogClass: "alert", |
111 |
|
|
minHeight: 30, |
112 |
softime |
15650 |
minWidth: 200 |
113 |
mbroquet |
3730 |
}); |
114 |
|
|
|
115 |
|
|
$('.wf_evenement_action').mouseover( |
116 |
|
|
function(){ |
117 |
|
|
var id = $(this).attr("id"); |
118 |
softime |
14542 |
// Ajout d'une classe permettant de sélectionner les dialog du workflow |
119 |
softime |
15650 |
if ($( "#regle_action"+ id ).length) { |
120 |
|
|
$(this).addClass("cursor-help") |
121 |
|
|
}; |
122 |
softime |
14542 |
$( "#regle_action"+ id ).parent().addClass("alert_regle_action"); |
123 |
softime |
15650 |
$( "#regle_action"+ id ).dialog({ position: { my: "left", at: "right", of: $(this) }, resizable: false }); |
124 |
mbroquet |
3730 |
$( "#regle_action"+ id ).dialog("open"); |
125 |
|
|
$(".ui-dialog-titlebar").hide(); |
126 |
|
|
} |
127 |
|
|
); |
128 |
|
|
|
129 |
|
|
$('.wf_evenement_action').mouseleave( |
130 |
|
|
function(){ |
131 |
|
|
var id = $(this).attr("id"); |
132 |
|
|
$( "#regle_action"+ id ).dialog( "close" ); |
133 |
|
|
} |
134 |
|
|
); |
135 |
|
|
|
136 |
|
|
/** |
137 |
|
|
* Plugin jquery qui bind les actions du formulaire dossier_instruction pour |
138 |
|
|
* ouvrir des overlay. |
139 |
|
|
* |
140 |
|
|
* @param string action Identifiant de l'action |
141 |
|
|
* @param string obj Formulaire ouvert en overlay |
142 |
|
|
* |
143 |
|
|
* @return void |
144 |
|
|
*/ |
145 |
|
|
(function($){ |
146 |
|
|
//Within this wrapper, $ is the jQuery namespace |
147 |
softime |
16749 |
$.fn.bind_action_for_overlay = function(obj, width, height, callback, callbackParams, position, resizable, insert_after) { |
148 |
mbroquet |
3730 |
if( typeof(width) == 'undefined' ){ |
149 |
|
|
width = 'auto'; |
150 |
|
|
} |
151 |
|
|
if( typeof(height) == 'undefined' ){ |
152 |
|
|
height = 'auto'; |
153 |
|
|
} |
154 |
|
|
if( typeof(callback) == 'undefined' ){ |
155 |
|
|
callback = ''; |
156 |
|
|
} |
157 |
|
|
if( typeof(callbackParams) == 'undefined' ){ |
158 |
|
|
callbackParams = ''; |
159 |
|
|
} |
160 |
softime |
9245 |
if( typeof(position) == 'undefined' ){ |
161 |
|
|
position = 'left top'; |
162 |
|
|
} |
163 |
mbroquet |
3730 |
|
164 |
|
|
// bind de la function passée en arg sur l'event click des actions portlet |
165 |
nhaye |
5254 |
$(this).off("click").on("click", function(event) { |
166 |
mbroquet |
3730 |
// |
167 |
|
|
elem_href = $(this).attr('href'); |
168 |
|
|
if (elem_href != '#') { |
169 |
|
|
$(this).attr('data-href', elem_href); |
170 |
|
|
$(this).attr('href', '#'); |
171 |
|
|
} |
172 |
|
|
// |
173 |
softime |
16749 |
popupIt(obj, $(this).attr('data-href'), width, height, callback, callbackParams, position, resizable, insert_after); |
174 |
mbroquet |
3730 |
}); |
175 |
|
|
return $(this); |
176 |
|
|
} |
177 |
|
|
})(jQuery); |
178 |
|
|
|
179 |
softime |
10808 |
// Bind actions formulaire de sélection des demandeurs à notifier depuis instruction |
180 |
|
|
$('a[id^=action-sousform-instruction][id$=-overlay_notification_manuelle]').each(function(){ |
181 |
|
|
$(this).bind_action_for_overlay("instruction_notification_manuelle"); |
182 |
|
|
}); |
183 |
softime |
11585 |
// Bind actions formulaire de sélection des services à notifier depuis instruction |
184 |
|
|
$('a[id^=action-sousform-instruction][id$=-overlay_notification_service_consulte]').each(function(){ |
185 |
|
|
$(this).bind_action_for_overlay("instruction_notification_manuelle"); |
186 |
|
|
}); |
187 |
|
|
// Bind actions formulaire de sélection des tiers à notifier depuis instruction |
188 |
|
|
$('a[id^=action-sousform-instruction][id$=-overlay_notification_tiers_consulte]').each(function(){ |
189 |
|
|
$(this).bind_action_for_overlay("instruction_notification_manuelle"); |
190 |
|
|
}); |
191 |
mbroquet |
3730 |
// Bind actions données techniques depuis dossier instruction |
192 |
|
|
$('a[id^=action-form-dossier_instruction][id$=-donnees_techniques]').each(function(){ |
193 |
softime |
13137 |
$(this).bind_action_for_overlay("donnees_techniques", "90%"); |
194 |
mbroquet |
3730 |
}); |
195 |
softime |
6565 |
// Bind actions données techniques depuis dossier contentieux |
196 |
|
|
$('a[id^=action-form-dossier_contentieux][id$=-donnees_techniques]').each(function(){ |
197 |
|
|
$(this).bind_action_for_overlay("donnees_techniques_contexte_ctx"); |
198 |
|
|
}); |
199 |
softime |
12847 |
// Bind actions données techniques depuis sous-dossier |
200 |
|
|
$('a[id^=action-form-sous_dossier][id$=-donnees_techniques]').each(function(){ |
201 |
|
|
$(this).bind_action_for_overlay("donnees_techniques"); |
202 |
|
|
}); |
203 |
mbroquet |
3730 |
// Bind actions rapport d'instruction depuis dossier instruction |
204 |
|
|
$('a[id^=action-form-dossier_instruction][id$=-rapport_instruction]').each(function(){ |
205 |
|
|
$(this).bind_action_for_overlay("rapport_instruction"); |
206 |
|
|
}); |
207 |
softime |
12847 |
// Bind actions rapport d'instruction depuis sous-dossier |
208 |
|
|
$('a[id^=action-form-sous_dossier][id$=-rapport_instruction]').each(function(){ |
209 |
|
|
$(this).bind_action_for_overlay("rapport_instruction"); |
210 |
|
|
}); |
211 |
mbroquet |
3730 |
// Bind actions geolocalisation depuis dossier instruction |
212 |
|
|
$('a[id^=action-form-dossier_instruction][id$=-geolocalisation]').each(function(){ |
213 |
|
|
$(this).bind_action_for_overlay("geolocalisation_sig"); |
214 |
|
|
}); |
215 |
softime |
6565 |
// Bind actions geolocalisation depuis dossier contentieux |
216 |
|
|
$('a[id^=action-form-dossier_contentieux][id$=-geolocalisation]').each(function(){ |
217 |
|
|
$(this).bind_action_for_overlay("geolocalisation_sig"); |
218 |
|
|
}); |
219 |
softime |
12847 |
// Bind actions geolocalisation depuis sous-dossier |
220 |
|
|
$('a[id^=action-form-sous_dossier][id$=-geolocalisation]').each(function(){ |
221 |
|
|
$(this).bind_action_for_overlay("geolocalisation_sig"); |
222 |
|
|
}); |
223 |
|
|
// Bind actions designation operateur depuis sous_dossier |
224 |
softime |
12433 |
$('a[id^=action-form-dossier_instruction][id$=-designation_operateur]').each(function(){ |
225 |
softime |
13528 |
$(this).bind_action_for_overlay("dossier_operateur", "90%", modal_height, '', '', modal_position); |
226 |
softime |
12433 |
}); |
227 |
softime |
12847 |
// Bind actions designation operateur depuis sous_dossier |
228 |
|
|
$('a[id^=action-form-sous_dossier][id$=-designation_operateur]').each(function(){ |
229 |
softime |
13528 |
$(this).bind_action_for_overlay("dossier_operateur", "90%", modal_height, '', '', modal_position); |
230 |
softime |
12847 |
}); |
231 |
mbroquet |
3730 |
// Bind actions geolocalisation depuis demande_avis |
232 |
|
|
$('#action-sousform-demande_avis_encours-rendre_avis').each(function(){ |
233 |
|
|
$(this).bind_action_for_overlay("demande_avis_encours", "auto", "auto", returnToTab, 'demande_avis_encours'); |
234 |
|
|
}); |
235 |
softime |
16749 |
// Bind action change_linked_users (utilisateurs liés) depuis le header |
236 |
|
|
$('a[class=action-change_linked_users]').each(function(){ |
237 |
|
|
$(this).bind_action_for_overlay("change_linked_users", "50%", modal_height, '', '', modal_position, false, '#header'); |
238 |
|
|
}); |
239 |
softime |
9245 |
// Bind actions prévisualisation document depuis document_numerise |
240 |
|
|
var modal_height = screen.availHeight * 0.90; |
241 |
softime |
12847 |
var modal_position = { my: "left top", at: "top", of: window }; |
242 |
softime |
9245 |
$('a[id^=action-form-document_numerise][id$=-preview_edition]').each(function(){ |
243 |
softime |
15650 |
$(this).bind_action_for_overlay("document_numerise_preview_edition", "50%", modal_height, '', '', modal_position, false); |
244 |
softime |
11418 |
// Récupération et affichage des miniatures lors du passage du curseur au dessus |
245 |
|
|
// de l'icône de prévisualisation et uniquement si l'option d'affichage des miniature |
246 |
|
|
// est active (visible via la classe tooltip) |
247 |
|
|
if ($(this).attr('class') == 'action action-self tooltip') { |
248 |
|
|
$(this).on('hover', function(){ |
249 |
|
|
if ($(this).find('img').attr('class') != 'thumbnailLoaded') { |
250 |
|
|
var idDossier = $(this).attr('id-dossier'); |
251 |
|
|
var img_src = ''; |
252 |
|
|
var objet = this; |
253 |
|
|
$.ajax({ |
254 |
|
|
type: "GET", |
255 |
|
|
url: "../app/index.php?module=form&obj=document_numerise&action=997&idx="+idDossier, |
256 |
|
|
data: "html", |
257 |
|
|
success: function(json){ |
258 |
|
|
img_src = json; |
259 |
|
|
$(objet).find('img').attr('class', 'thumbnailLoaded'); |
260 |
|
|
$(objet).find('img').attr('src', img_src); |
261 |
|
|
} |
262 |
|
|
}); |
263 |
|
|
} |
264 |
|
|
}); |
265 |
|
|
} |
266 |
softime |
9245 |
}); |
267 |
softime |
10573 |
// Bind actions prévisualisation document numerise depuis le sous onglet document |
268 |
|
|
$('a[id^=action-soustab-document_numerise-left-previsualiser]').each(function(){ |
269 |
|
|
$(this).bind_action_for_overlay("document_numerise_preview_edition", "70%", modal_height, '', '', modal_position); |
270 |
|
|
}); |
271 |
|
|
// Bind actions prévisualisation document de travail depuis le sous onglet document |
272 |
softime |
11418 |
$('div#sousform-document_travail a[id^=action-soustab-document_numerise-left-previsualiser]').each(function(){ |
273 |
|
|
$(this).bind_action_for_overlay("document_numerise_preview_edition", "70%", modal_height, '', '', modal_position); |
274 |
softime |
10573 |
}); |
275 |
|
|
// Bind actions prévisualisation instruction depuis document_numerise |
276 |
|
|
var modal_height = screen.availHeight * 0.90; |
277 |
softime |
12847 |
var modal_position = { my: "left top", at: "top", of: window }; |
278 |
softime |
10573 |
$('a[id^=action-form-instruction][id$=-preview_edition]').each(function(){ |
279 |
|
|
$(this).bind_action_for_overlay("instruction_preview_edition", "70%", modal_height, '', '', modal_position); |
280 |
|
|
}); |
281 |
|
|
// Bind actions prévisualisation document d'instruction depuis le sous onglet document |
282 |
|
|
$('a[id^=action-soustab-document_instruction-left-previsualiser]').each(function(){ |
283 |
|
|
$(this).bind_action_for_overlay("instruction_preview_edition", "70%", modal_height, '', '', modal_position); |
284 |
|
|
}); |
285 |
|
|
// Bind actions prévisualisation rapport instruction depuis document_numerise |
286 |
|
|
var modal_height = screen.availHeight * 0.90; |
287 |
softime |
12847 |
var modal_position = { my: "left top", at: "top", of: window }; |
288 |
softime |
10573 |
$('a[id^=action-form-rapport_instruction][id$=-preview_edition]').each(function(){ |
289 |
|
|
$(this).bind_action_for_overlay("rapport_instruction_preview_edition", "70%", modal_height, '', '', modal_position); |
290 |
|
|
}); |
291 |
|
|
// Bind actions prévisualisation rapport instruction historisé depuis document_numerise |
292 |
|
|
var modal_height = screen.availHeight * 0.90; |
293 |
softime |
12847 |
var modal_position = { my: "left top", at: "top", of: window }; |
294 |
softime |
10573 |
$('a[id^=action-form-storage][id$=-preview_edition]').each(function(){ |
295 |
|
|
$(this).bind_action_for_overlay("storage_preview_edition", "70%", modal_height, '', '', modal_position); |
296 |
|
|
}); |
297 |
|
|
// Bind actions prévisualisation document consultation depuis document_numerise |
298 |
|
|
var modal_height = screen.availHeight * 0.90; |
299 |
softime |
12847 |
var modal_position = { my: "left top", at: "top", of: window }; |
300 |
softime |
10573 |
$('a[id^=action-form-consultation][id$=-preview_edition]').each(function(){ |
301 |
|
|
$(this).bind_action_for_overlay("consultation_preview_edition", "70%", modal_height, '', '', modal_position); |
302 |
|
|
}); |
303 |
|
|
// Bind actions "normaliser l'adresse" depuis dossier instruction |
304 |
|
|
$('a[id^=action-form-dossier_instruction][id$=-normalize_address]').each(function(){ |
305 |
softime |
15835 |
$(this).bind_action_for_overlay("normalize_address", 'auto', 'auto', '', '', '', false); |
306 |
softime |
10573 |
}); |
307 |
|
|
// Bind actions "normaliser l'adresse" depuis dossier contentieux |
308 |
|
|
$('a[id^=action-form-dossier_contentieux][id$=-normalize_address]').each(function(){ |
309 |
|
|
$(this).bind_action_for_overlay("normalize_address"); |
310 |
|
|
}); |
311 |
softime |
12847 |
// Bind actions "normaliser l'adresse" depuis sous_dossier |
312 |
|
|
$('a[id^=action-form-sous_dossier][id$=-normalize_address]').each(function(){ |
313 |
|
|
$(this).bind_action_for_overlay("normalize_address"); |
314 |
|
|
}); |
315 |
softime |
10573 |
// Ajout de l'entete du tableau de l'onglet pièce -> document -> document d'instruction |
316 |
|
|
if (! $('#sousform-document_instruction .tab-tab .categorie').exists()) { |
317 |
|
|
$('#sousform-document_instruction .tab-tab thead').prepend( |
318 |
|
|
"\n<tr class=\"ui-tabs-nav ui-accordion ui-state-default tab-title\">\n" |
319 |
|
|
+"\t<th class=\"title categorie\" colspan=\"5\">Documents d'instruction</td>" |
320 |
|
|
+"</tr>\n" |
321 |
|
|
); |
322 |
|
|
} |
323 |
|
|
// Ajout de l'entete du tableau de l'onglet pièce -> document -> document de travail |
324 |
|
|
if (! $('#sousform-document_travail .tab-tab .categorie').exists()) { |
325 |
|
|
$('#sousform-document_travail .tab-tab thead').prepend( |
326 |
|
|
"\n<tr class=\"ui-tabs-nav ui-accordion ui-state-default tab-title\">\n" |
327 |
|
|
+"\t<th class=\"title categorie\" colspan=\"3\">Documents de travail</td>" |
328 |
|
|
+"</tr>\n" |
329 |
|
|
); |
330 |
|
|
} |
331 |
softime |
12847 |
// Bind actions remplacer document signé depuis instruction |
332 |
|
|
$('#action-sousform-instruction-modale_selection_document_signe').each(function(){ |
333 |
|
|
$(this).bind_action_for_overlay("instruction_modale"); |
334 |
|
|
}); |
335 |
softime |
19307 |
// Bind actions remplacer document signé depuis instruction |
336 |
|
|
$('#action-sousform-instruction_contexte_ctx_inf-modale_selection_document_signe').each(function(){ |
337 |
|
|
$(this).bind_action_for_overlay("instruction_modale"); |
338 |
|
|
}); |
339 |
softime |
12847 |
|
340 |
|
|
// Permet d'afficher un autre texte sur l'action "Consulter" des dossiers d'instruction dématérialisés |
341 |
softime |
13137 |
if ($('table.tab-tab tr.tab-data.consult-demat td.icons a span').exists()) { |
342 |
|
|
text_trad = ''; |
343 |
softime |
12847 |
$.ajax({ |
344 |
|
|
type: "GET", |
345 |
|
|
url: "../app/index.php?module=form&obj=dossier_instruction&action=230&idx=0", |
346 |
|
|
cache: false, |
347 |
|
|
async: false, |
348 |
|
|
dataType: "json", |
349 |
|
|
success: function(json){ |
350 |
softime |
13137 |
if ('consulter' in json) { |
351 |
|
|
text_trad = json['consulter']; |
352 |
|
|
} |
353 |
softime |
12847 |
} |
354 |
|
|
}); |
355 |
softime |
13137 |
$('table.tab-tab tr.tab-data.consult-demat td.icons a span').each(function(){ |
356 |
|
|
$(this).attr('title', text_trad); |
357 |
|
|
}); |
358 |
|
|
} |
359 |
softime |
18436 |
|
360 |
|
|
// Affiche la documentation des modules depuis le formulaire de modification |
361 |
|
|
$('div#sousform-lien_module input#module').each(function() { |
362 |
|
|
show_module_doc_link(this); |
363 |
|
|
}); |
364 |
softime |
6565 |
} |
365 |
mbroquet |
3730 |
|
366 |
softime |
6565 |
// Document is ready |
367 |
|
|
$(initBindFocus); |
368 |
|
|
|
369 |
softime |
17036 |
/** |
370 |
|
|
* Méthode exécutée au chargement de la page. |
371 |
|
|
* Permet, au chargement de la page de crée les loaders |
372 |
|
|
* et de charger les données en asynchrone. |
373 |
|
|
* |
374 |
|
|
*/ |
375 |
|
|
document.addEventListener("DOMContentLoaded", (event) => { |
376 |
|
|
// Commune dans les nouveaux dossiers |
377 |
|
|
var commune_loader_div = document.getElementsByClassName('commune---loader'); |
378 |
|
|
if ( |
379 |
|
|
typeof(commune_loader_div) !== 'undefined' |
380 |
|
|
&& typeof(commune_loader_div[0]) !== 'undefined' |
381 |
|
|
) { |
382 |
|
|
updateCommuneSelect(); |
383 |
|
|
} |
384 |
|
|
}); |
385 |
softime |
15218 |
|
386 |
softime |
17036 |
|
387 |
mbroquet |
3730 |
/** |
388 |
softime |
7996 |
* Si mode = server_side alors |
389 |
|
|
* Renvoi sur om_widget.class.php::init_class_actions() |
390 |
|
|
* Le DOM est construit dans la méthode view_widget_rss() de la classe om_widget |
391 |
|
|
* |
392 |
|
|
* Si mode = client_side alors |
393 |
|
|
* Le DOM est construit dans cette méthode Javascript |
394 |
|
|
* |
395 |
|
|
* @return void |
396 |
|
|
**/ |
397 |
|
|
function bind_widget_rss() { |
398 |
|
|
$(".widget_rss").each(function() { |
399 |
|
|
var bloc_html_cible = this.id; |
400 |
|
|
var mode = $("#"+bloc_html_cible+" .widget-rss-marker").data('mode'); |
401 |
|
|
var id_widget = $("#"+bloc_html_cible+" .widget-rss-marker").data('id_widget'); |
402 |
|
|
|
403 |
|
|
if (mode == 'server_side') { |
404 |
|
|
$.ajax({ |
405 |
|
|
type: "GET", |
406 |
|
|
url: "../app/index.php?module=form&obj=om_widget&action=4&idx="+id_widget, |
407 |
|
|
success: function(html){ |
408 |
|
|
$(html).appendTo($("#"+bloc_html_cible+" .widget-rss-marker")); |
409 |
|
|
} |
410 |
|
|
}); |
411 |
|
|
} |
412 |
|
|
|
413 |
|
|
if (mode == 'client_side') { |
414 |
|
|
var link = $("#"+bloc_html_cible+" .widget-rss-marker").data('urls'); |
415 |
|
|
var max_item = $("#"+bloc_html_cible+" .widget-rss-marker").data('max_item'); |
416 |
|
|
var real_max_item = max_item - 1; |
417 |
|
|
var urls = link.split(","); |
418 |
|
|
var element = []; |
419 |
|
|
|
420 |
|
|
// Création d'une variable id_url pour rendre unique un url dans le |
421 |
|
|
// cas de multiple url sur le widget |
422 |
|
|
var id_url = 0; |
423 |
|
|
|
424 |
|
|
urls.forEach(function(url) { |
425 |
|
|
$.ajax(url).done(function(data) { |
426 |
|
|
var channel_title = data.getElementsByTagName('channel').item(0).getElementsByTagName('title').item(0).childNodes.item(0).nodeValue; |
427 |
|
|
|
428 |
|
|
element = { |
429 |
|
|
"url" : url, |
430 |
|
|
"channel_title" : channel_title, |
431 |
|
|
}; |
432 |
|
|
|
433 |
|
|
id_url = id_url + 1; |
434 |
|
|
|
435 |
|
|
$("#"+bloc_html_cible+" .widget-rss-marker").append("<ul id='ul_"+id_url+"_"+bloc_html_cible+"'><h4>"+channel_title+"</h4>"); |
436 |
|
|
|
437 |
|
|
// Pour chaque item du flux |
438 |
|
|
var x = data.getElementsByTagName('item'); |
439 |
|
|
if (x.length != 0) { |
440 |
|
|
for (i=0; i<=real_max_item; i++) { |
441 |
|
|
var item_title = x.item(i).getElementsByTagName('title').item(0).childNodes.item(0).nodeValue; |
442 |
|
|
var item_link = x.item(i).getElementsByTagName('link').item(0).childNodes.item(0).nodeValue; |
443 |
|
|
var item_desc = x.item(i).getElementsByTagName('description').item(0).childNodes.item(0).nodeValue; |
444 |
|
|
|
445 |
|
|
element['items', i] = { |
446 |
|
|
"title" : item_title, |
447 |
|
|
"link" : item_link, |
448 |
|
|
"description" : item_desc, |
449 |
|
|
}; |
450 |
|
|
|
451 |
|
|
// Contenu |
452 |
|
|
$("#ul_"+id_url+"_"+bloc_html_cible).append("<li><a href="+item_link+" target=_blank><h5>"+item_title+"</h5></a><p>"+item_desc+"</p></li>") |
453 |
|
|
} |
454 |
|
|
} else { |
455 |
|
|
$("#ul_"+id_url+"_"+bloc_html_cible).append("Aucune donnée disponible") |
456 |
|
|
|
457 |
|
|
} |
458 |
|
|
}); |
459 |
|
|
|
460 |
|
|
}); |
461 |
|
|
} |
462 |
|
|
}); |
463 |
|
|
} |
464 |
|
|
|
465 |
|
|
|
466 |
|
|
/** |
467 |
mbroquet |
3730 |
* Surcharge de la fonction ajaxIt spécifique au formulaire ouvert en |
468 |
|
|
* overlay ayant des actions directs. |
469 |
|
|
* |
470 |
|
|
* @param string objsf Objet ouvert en sous-formulaire |
471 |
|
|
* @param string link Lien vers contenu à afficher |
472 |
|
|
* |
473 |
|
|
* @return void |
474 |
|
|
*/ |
475 |
|
|
function overlayIt(objsf, link) { |
476 |
|
|
// execution de la requete en POST |
477 |
|
|
$.ajax({ |
478 |
|
|
type: "GET", |
479 |
|
|
url: link, |
480 |
|
|
cache: false, |
481 |
|
|
success: function(html){ |
482 |
nhaye |
5254 |
$("#sousform-href").attr("id","sousform-href-disabled"); |
483 |
mbroquet |
3730 |
$("#sousform-"+objsf).empty(); |
484 |
|
|
$("#sousform-"+objsf).append(html); |
485 |
|
|
// Affiche la div necessaire aux actions directs |
486 |
|
|
var href = '<div id="sousform-href" ></div>' |
487 |
|
|
$("#sousform-"+objsf).append(href); |
488 |
|
|
if ($("#sousform-href").length) { |
489 |
|
|
$("#sousform-href").attr("data-href", link); |
490 |
|
|
} |
491 |
|
|
om_initialize_content(true); |
492 |
softime |
12433 |
// Si on est dans l'overlay de gestion des operateurs |
493 |
|
|
if ($("#operateur_amenagement_pers_publique").exists() || $("#message_consultation_amenageur").exists()) { |
494 |
|
|
// Au chargement de l'overlay on appelle les fonctions permettant |
495 |
|
|
// d'afficher/cacher les champs d'opérateur |
496 |
|
|
switch_operateur_amenagement_pers_public($("#operateur_amenagement_pers_publique").val()); |
497 |
|
|
if ($("#operateur_pers_publique_amenageur").exists()) { |
498 |
|
|
switch_operateur_pers_publique_amenageur($("#operateur_pers_publique_amenageur").val()); |
499 |
|
|
} |
500 |
|
|
} |
501 |
mbroquet |
3730 |
} |
502 |
|
|
}); |
503 |
|
|
} |
504 |
|
|
|
505 |
|
|
/** |
506 |
softime |
12433 |
* Fonction qui affiche ou cache des champs en fonction de la valeur |
507 |
|
|
* passée en paramètre |
508 |
|
|
* |
509 |
|
|
* @param string undefined|'t'|'f' valeur du select operateur_amenagement_pers_public |
510 |
|
|
* |
511 |
|
|
* @return void |
512 |
|
|
*/ |
513 |
|
|
function switch_operateur_amenagement_pers_public(field_select_value) { |
514 |
|
|
// On cache tous les champs |
515 |
|
|
$('#operateur_personne_publique').parent().parent().hide(); |
516 |
|
|
$('#operateur_pers_publique_amenageur').parent().parent().hide(); |
517 |
|
|
$('#operateur_personne_publique_avis').parent().parent().hide(); |
518 |
|
|
$('#message_consultation_amenageur').parent().parent().hide(); |
519 |
|
|
$('#message_consultation_tiers').parent().parent().hide(); |
520 |
|
|
$('#fieldset-sousform-dossier_operateur-consultation-de-l_amenageur').hide(); |
521 |
|
|
|
522 |
|
|
// Si la valeur n'est pas définie ou que la recherche d'opérateur |
523 |
|
|
// n'a pas été lancé (opérateur inrap obligatoire) |
524 |
|
|
if (field_select_value == undefined |
525 |
|
|
|| $('#operateur_detecte_inrap').val() == "") { |
526 |
|
|
return; |
527 |
|
|
} |
528 |
|
|
|
529 |
|
|
// Si le champ est à 'Oui' |
530 |
|
|
if (field_select_value == "t") { |
531 |
|
|
// On affiche le fieldset |
532 |
|
|
$('#fieldset-sousform-dossier_operateur-consultation-de-l_amenageur').show(); |
533 |
|
|
$('#operateur_pers_publique_amenageur').parent().parent().show(); |
534 |
|
|
// La valeur '' permet d'éviter un problème au chargement de l'overlay |
535 |
|
|
if ($('select#operateur_pers_publique_amenageur').val() == '') { |
536 |
|
|
// Enlève l'option '' du select qui doit compoter seulement Oui ou Non |
537 |
|
|
$('select#operateur_pers_publique_amenageur option[value=""]').prop('hidden', true); |
538 |
|
|
$('select#operateur_pers_publique_amenageur').val('t'); |
539 |
|
|
} |
540 |
|
|
$("select#operateur_pers_publique_amenageur").change(function() { |
541 |
|
|
switch_operateur_pers_publique_amenageur($(this)); |
542 |
|
|
}); |
543 |
|
|
$('#message_consultation_amenageur').parent().parent().show(); |
544 |
|
|
$('#operateur_personne_publique_avis').parent().parent().show(); |
545 |
|
|
} |
546 |
|
|
|
547 |
|
|
if (field_select_value == "f") { |
548 |
|
|
$('#fieldset-sousform-dossier_operateur-consultation-de-l_amenageur').hide(); |
549 |
|
|
$('#operateur_pers_publique_amenageur').parent().parent().hide(); |
550 |
|
|
$('#operateur_pers_publique_amenageur').val(''); |
551 |
|
|
$('#operateur_personne_publique').parent().parent().hide(); |
552 |
|
|
$('#operateur_personne_publique').val(''); |
553 |
|
|
$('#operateur_personne_publique_avis').parent().parent().hide(); |
554 |
|
|
$('#operateur_personne_publique_avis').val(''); |
555 |
|
|
} |
556 |
|
|
} |
557 |
|
|
|
558 |
|
|
/** |
559 |
|
|
* Fonction qui affiche ou cache des champs en fonction de la valeur |
560 |
|
|
* passée en paramètre |
561 |
|
|
* |
562 |
|
|
* @param string undefined|'t'|'f' valeur du select operateur_pers_publique_amenageur |
563 |
|
|
* |
564 |
|
|
* @return void |
565 |
|
|
*/ |
566 |
|
|
function switch_operateur_pers_publique_amenageur(field_select_value) { |
567 |
|
|
|
568 |
|
|
if (field_select_value == undefined) { |
569 |
|
|
return; |
570 |
|
|
} |
571 |
|
|
|
572 |
|
|
// Enlève l'option "" du select qui doit compoter seulement Oui ou Non |
573 |
|
|
$('select#operateur_pers_publique_amenageur option[value=""]').prop('hidden', true); |
574 |
|
|
|
575 |
|
|
if (field_select_value == "f") { |
576 |
|
|
$('#operateur_personne_publique').parent().parent().show(); |
577 |
|
|
$('#message_consultation_tiers').parent().parent().show(); |
578 |
|
|
} |
579 |
|
|
|
580 |
|
|
if (field_select_value == "t") { |
581 |
|
|
$('#operateur_personne_publique').parent().parent().hide(); |
582 |
|
|
$('#operateur_personne_publique').val(''); |
583 |
|
|
$('#message_consultation_tiers').parent().parent().hide(); |
584 |
|
|
} |
585 |
|
|
} |
586 |
|
|
|
587 |
|
|
|
588 |
|
|
/** |
589 |
softime |
10869 |
* ADVS_SEARCH - handle_highlight_advs_search. |
590 |
|
|
* |
591 |
|
|
* L'objectif ici est de mettre en valeur : |
592 |
|
|
* - les champs sélectionnés une fois le formulaire validé |
593 |
|
|
* - les champs en cours de modification avant validation du formulaire |
594 |
|
|
*/ |
595 |
|
|
function handle_highlight_advs_search() { |
596 |
|
|
$("#adv-search-adv-fields select, #adv-search-adv-fields input").each(function() { |
597 |
|
|
if ($(this).val() != "") { |
598 |
|
|
$(this).addClass('advs-active-field-search'); |
599 |
|
|
} |
600 |
|
|
}); |
601 |
|
|
$("#adv-search-adv-fields select, #adv-search-adv-fields input").each(function() { |
602 |
|
|
$(this).change(function() { |
603 |
|
|
$(this).addClass('advs-unvalidate-field-search'); |
604 |
|
|
$("#adv-search-submit").addClass('advs-unvalidate-field-search'); |
605 |
|
|
}); |
606 |
|
|
}); |
607 |
|
|
} |
608 |
|
|
|
609 |
|
|
|
610 |
|
|
/** |
611 |
|
|
* ADVS_SEARCH - clear_form. |
612 |
|
|
* |
613 |
|
|
* Override framework_openmairie |
614 |
|
|
*/ |
615 |
softime |
16749 |
function clear_form(form, without_id = false, not_params = []) { |
616 |
softime |
10869 |
if (form.selector == "#advanced-form") { |
617 |
|
|
$("#adv-search-adv-fields select, #adv-search-adv-fields input").each(function() { |
618 |
|
|
if ($(this).val() != "") { |
619 |
|
|
$(this).val('').trigger("change"); |
620 |
|
|
} |
621 |
|
|
}); |
622 |
|
|
} else { |
623 |
softime |
16749 |
var selector = 'form#'+form.attr('id'); |
624 |
|
|
// Si le formulaire passé ne possède pas d'identifiant |
625 |
|
|
if (without_id == true) { |
626 |
|
|
selector = form; |
627 |
|
|
} |
628 |
|
|
var not_clear = ''; |
629 |
|
|
not_params.forEach(function(item, index, array) { |
630 |
|
|
if (item !== '') { |
631 |
|
|
not_clear += ', ' + item; |
632 |
|
|
} |
633 |
|
|
}); |
634 |
softime |
10869 |
// On redéfinit la fonction du framework si on ne se trouve pas dans le contexte |
635 |
|
|
// de la recherche avancée. |
636 |
softime |
16749 |
$(":input", selector) |
637 |
|
|
.not(':button, :submit, :reset, :hidden' + not_clear) |
638 |
softime |
10869 |
.val('') |
639 |
|
|
.removeAttr('checked') |
640 |
|
|
.removeAttr('selected'); |
641 |
|
|
} |
642 |
|
|
} |
643 |
|
|
|
644 |
|
|
|
645 |
|
|
|
646 |
|
|
/** |
647 |
mbroquet |
3730 |
* WIDGET liés au formulaire et sousformulaire |
648 |
|
|
* |
649 |
|
|
* Ces fonctions javascript sont appelées depuis les méthodes setOnChange, |
650 |
|
|
* setOnClick, ... |
651 |
|
|
*/ |
652 |
|
|
// |
653 |
|
|
// Cette fonction permet de retourner les informations sur le fichier téléchargé |
654 |
|
|
// du formulaire d'upload vers le formulaire d'origine |
655 |
|
|
function bible_return(form, champ) { |
656 |
|
|
// Initialisation de la variable contenant les valeurs sélectionnées |
657 |
|
|
var listeElement = ''; |
658 |
|
|
// Récupération du contenu de chacun des éléments cochés |
659 |
|
|
$("span.content").each(function( index ) { |
660 |
|
|
if (document.getElementById('checkbox'+index).checked == true) { |
661 |
|
|
listeElement += $(this).attr('title').replace(/\r\n|\n|\r/g, '<br />')+'<br />'; |
662 |
|
|
} |
663 |
|
|
}); |
664 |
|
|
obj = tinyMCE.get(champ); |
665 |
|
|
// Remplissage du textarea et déclenchement du trigger autosize |
666 |
|
|
if(listeElement != '') { |
667 |
|
|
obj.setContent(obj.getContent()+"<br/>"+listeElement+"<br/>"); |
668 |
|
|
} |
669 |
|
|
// Fermeture de la boite de dialog |
670 |
|
|
$('#upload-container').dialog('close').remove(); |
671 |
|
|
} |
672 |
|
|
// |
673 |
|
|
function bible(numero) { |
674 |
|
|
// |
675 |
|
|
var ev = document.f2.evenement.value; |
676 |
|
|
// |
677 |
|
|
if (ev == "") { |
678 |
|
|
window.alert("Vous devez d'abord sélectionner un événement."); |
679 |
|
|
return false; |
680 |
|
|
} |
681 |
|
|
// |
682 |
|
|
var idx = document.f2.dossier.value; |
683 |
|
|
// |
684 |
softime |
7996 |
var link = "../app/index.php?module=form&obj=instruction&action=130&complement="+numero+"&ev="+ev+"&idx="+idx; |
685 |
mbroquet |
3730 |
load_form_in_modal(link); |
686 |
|
|
// |
687 |
|
|
return false; |
688 |
|
|
} |
689 |
|
|
// bible_auto - type httpclick |
690 |
|
|
function bible_auto(){ |
691 |
|
|
// Récupération de l'identifiant de l'événement |
692 |
|
|
var ev=document.f2.evenement.value; |
693 |
|
|
// Si pas d'événement on affiche un message d'erreur |
694 |
|
|
if (ev == "") { |
695 |
|
|
window.alert("Vous devez d'abord sélectionner un événement."); |
696 |
|
|
return false; |
697 |
|
|
} |
698 |
|
|
// Récupération de l'identifiant du dossier |
699 |
|
|
var idx=document.f2.dossier.value; |
700 |
|
|
// Récupération des retours de consultation et de la bible |
701 |
|
|
$.ajax({ |
702 |
|
|
type: "GET", |
703 |
softime |
7996 |
url: "../app/index.php?module=form&obj=instruction&action=140&idx="+idx+"&ev="+ev, |
704 |
mbroquet |
3730 |
cache: false, |
705 |
|
|
dataType: "json", |
706 |
|
|
success: function(data){ |
707 |
|
|
|
708 |
|
|
// Remplissage du textarea complement_om_html |
709 |
|
|
if(data.complement_om_html != '') { |
710 |
|
|
var obj = tinyMCE.get('complement_om_html'); |
711 |
|
|
obj.setContent(obj.getContent()+"<br/>"+data.complement_om_html+"<br/>"); |
712 |
|
|
} |
713 |
|
|
// Remplissage du textarea complement2_om_html |
714 |
|
|
if(data.complement2_om_html != '') { |
715 |
|
|
var obj2 = tinyMCE.get('complement2_om_html'); |
716 |
|
|
obj2.setContent(obj2.getContent()+"<br/>"+data.complement2_om_html+"<br/>"); |
717 |
|
|
} |
718 |
|
|
// Remplissage du textarea complement2_om_html |
719 |
|
|
if(data.complement3_om_html != '') { |
720 |
|
|
var obj3 = tinyMCE.get('complement3_om_html'); |
721 |
|
|
obj3.setContent(obj3.getContent()+"<br/>"+data.complement3_om_html+"<br/>"); |
722 |
|
|
} |
723 |
|
|
// Remplissage du textarea complement4_om_html |
724 |
|
|
if(data.complement4_om_html != '') { |
725 |
|
|
var obj4 = tinyMCE.get('complement4_om_html'); |
726 |
|
|
obj4.setContent(obj4.getContent()+"<br/>"+data.complement4_om_html+"<br/>"); |
727 |
|
|
} |
728 |
|
|
} |
729 |
|
|
}); |
730 |
|
|
|
731 |
|
|
return false; |
732 |
|
|
} |
733 |
softime |
10808 |
|
734 |
mbroquet |
3730 |
|
735 |
|
|
/** |
736 |
|
|
* Cette fonction permet de compléter le champ par des zéro par la gauche |
737 |
|
|
* @param string champ Champ concerné |
738 |
|
|
* @param integer length Taille du champ retourné |
739 |
|
|
*/ |
740 |
softime |
17036 |
function strPadJs(champ, length) { |
741 |
mbroquet |
3730 |
|
742 |
|
|
// Initialisation de la variable str |
743 |
|
|
var str = '' + champ.value; |
744 |
|
|
|
745 |
softime |
10573 |
// Si le champ n'est pas vide et que c'est un chiffre |
746 |
|
|
if (str != '' && /^[0-9]+$/.test(str) === true) { |
747 |
mbroquet |
3730 |
// Tant que la taille n'est pas atteint, |
748 |
|
|
// on ajoute des 0 |
749 |
|
|
while (str.length < length) { |
750 |
|
|
str = '0' + str; |
751 |
|
|
} |
752 |
|
|
// Modifie le champ |
753 |
|
|
champ.value = str; |
754 |
|
|
} |
755 |
|
|
} |
756 |
|
|
|
757 |
|
|
|
758 |
|
|
/** |
759 |
|
|
* Fonction de récupération des paramètres GET de la page |
760 |
|
|
* @return Array Tableau associatif contenant les paramètres GET |
761 |
|
|
*/ |
762 |
|
|
function extractUrlParams(){ |
763 |
|
|
var t = location.search.substring(1).split('&'); |
764 |
|
|
var f = []; |
765 |
|
|
for (var i=0; i<t.length; i++){ |
766 |
|
|
var x = t[ i ].split('='); |
767 |
|
|
f[x[0]]=x[1]; |
768 |
|
|
} |
769 |
|
|
return f; |
770 |
|
|
} |
771 |
|
|
|
772 |
|
|
// Cette fonction permet de gérer la validation de l'action |
773 |
|
|
// affichage_reglementaire_registre de la classe demande |
774 |
softime |
17036 |
/* |
775 |
mbroquet |
3730 |
function affichage_reglementaire_registre(button) { |
776 |
|
|
// Popup de confirmation du traitement par l'utilisateur |
777 |
|
|
if (trt_confirm() == false) { |
778 |
|
|
return false; |
779 |
|
|
} |
780 |
|
|
// Suppression du bouton pour que l'utilisateur ne puisse pas cliquer une |
781 |
|
|
// deuxième fois |
782 |
|
|
$(button).remove(); |
783 |
|
|
// Affichage du spinner |
784 |
|
|
$("#msg").html(msg_loading); |
785 |
|
|
// Requête AJAX vers le fichier l'action affichage_reglementaire_registre |
786 |
|
|
// pour mettre à jour les dossiers |
787 |
|
|
// XXX layout |
788 |
|
|
$.ajax({ |
789 |
|
|
type: "GET", |
790 |
softime |
7996 |
url: "../app/index.php?module=form&obj=demande_affichage_reglementaire_registre&action=110&idx=0&update", |
791 |
mbroquet |
3730 |
cache: false, |
792 |
|
|
success: function(html){ |
793 |
|
|
// Ajout d'un bloc de message vide |
794 |
|
|
$('#msg').html( |
795 |
|
|
'<div class="message ui-widget ui-corner-all ui-state-highlight">'+ |
796 |
|
|
'<p>'+ |
797 |
|
|
'<span class="ui-icon ui-icon-info"></span>'+ |
798 |
|
|
'<span class="text">'+ |
799 |
|
|
'</span>'+ |
800 |
|
|
'</p>'+ |
801 |
|
|
'</div>' |
802 |
|
|
); |
803 |
|
|
// Si le retour de l'appel Ajax n'est pas vide, alors il y a eu une |
804 |
|
|
// lors du traitement |
805 |
|
|
if ( html.length > 2 ) { |
806 |
|
|
$("#msg .message").addClass("ui-state-error"); |
807 |
|
|
$("#msg .text").html(html); |
808 |
|
|
} else { |
809 |
|
|
// Sinon message de succès et appel de l'édition |
810 |
|
|
$("#msg .message").addClass("ui-state-valid"); |
811 |
|
|
$("#msg .text").html("Traitement terminé. Le registre a été téléchargé."); |
812 |
softime |
7996 |
window.open("../app/index.php?module=form&obj=demande_affichage_reglementaire_registre&action=111&idx=0"); |
813 |
mbroquet |
3730 |
} |
814 |
|
|
}, |
815 |
|
|
async: false |
816 |
|
|
}); |
817 |
|
|
// |
818 |
|
|
return false; |
819 |
|
|
} |
820 |
softime |
17036 |
*/ |
821 |
mbroquet |
3730 |
|
822 |
|
|
/** |
823 |
softime |
8989 |
* Copie modifiée des fonctions form_confirmation_action() et |
824 |
|
|
* form_execute_action_direct() afin de ne pas modifier les fonctions du 'core' |
825 |
|
|
* (framework openMairie). |
826 |
|
|
* |
827 |
|
|
* Fenêtre modale de confirmation spécifique à l'action de déclenchement du |
828 |
|
|
* traitement du registre d'affichage réglementaire. |
829 |
|
|
*/ |
830 |
softime |
17542 |
function registreFormConfirmationAction(elem, action) { |
831 |
|
|
$('#'+elem+'-message').html(msg_loading); |
832 |
|
|
// Suppression du bouton pour que l'utilisateur ne |
833 |
|
|
// puisse pas cliquer une deuxième fois |
834 |
|
|
$(action).remove(); |
835 |
softime |
8989 |
// |
836 |
softime |
17542 |
$.ajax({ |
837 |
|
|
type: "POST", |
838 |
|
|
url: $(action).attr('data-href')+"&validation=1&contentonly=true", |
839 |
|
|
cache: false, |
840 |
|
|
dataType: "html", |
841 |
|
|
data: "submit=true", |
842 |
|
|
success: function(html){ |
843 |
|
|
// XXX Il semble nécessaire afin de récupérer la portion de code |
844 |
|
|
// div.message d'ajouter un container qui contient l'intégralité |
845 |
|
|
// du code html représentant le contenu du formulaire. Si on ajoute |
846 |
|
|
// pas ce bloc la récupération du bloc ne se fait pas. |
847 |
|
|
container_specific_js = '<div id="container-specific-js">'+html+'</div>'; |
848 |
|
|
message = $(container_specific_js).find('div.message').get(0); |
849 |
|
|
if (message == undefined) { |
850 |
|
|
message = -1; |
851 |
softime |
8989 |
} |
852 |
softime |
17542 |
// Ajout du contenu récupéré (uniquement le bloc message) |
853 |
|
|
$('#'+elem+'-message').html(message); |
854 |
|
|
// Rafraichissement du bloc de formulaire |
855 |
|
|
form_container_refresh(elem); |
856 |
|
|
// Initialisation JS du nouveau contenu de la page |
857 |
|
|
om_initialize_content(); |
858 |
|
|
} |
859 |
softime |
8989 |
}); |
860 |
|
|
} |
861 |
|
|
|
862 |
|
|
/** |
863 |
mbroquet |
3730 |
* WIDGET DASHBOARD - widget_recherche_dossier. |
864 |
|
|
* |
865 |
|
|
* Fonction de redirection pour le widget de recherche de dossier |
866 |
|
|
*/ |
867 |
softime |
6565 |
function widget_recherche_dossier(data, nbRes, obj) { |
868 |
mbroquet |
3730 |
// S'il n'y a qu'un seul résultat, afficher un résumé |
869 |
softime |
6565 |
if (nbRes == 1) { |
870 |
softime |
7996 |
window.location = "../app/index.php?module=form&obj=" + obj + "&action=3&" + |
871 |
|
|
"idx=" + data + "&premier=0&advs_id=&tricol=&" + |
872 |
|
|
"valide=&retour=tab"; |
873 |
mbroquet |
3730 |
} |
874 |
|
|
// S'il y a une liste de dossier, redirection vers le tableau |
875 |
|
|
else { |
876 |
softime |
6565 |
window.location = "../app/web_entry.php?obj=" + obj + "&field=dossier&value=" + data; |
877 |
mbroquet |
3730 |
} |
878 |
|
|
} |
879 |
|
|
|
880 |
|
|
/** |
881 |
|
|
* Retour spécifique de l'écran de consultation multiple - surcharge de ajaxIt |
882 |
|
|
* @todo XXX voir les différences avec ajaxIt et si il n'est pas possible |
883 |
|
|
* d'effectuer la modification dans le core |
884 |
|
|
*/ |
885 |
|
|
function messageIt(objsf, link, empty) { |
886 |
|
|
// execution de la requete en GET |
887 |
|
|
$.ajax({ |
888 |
|
|
type: "GET", |
889 |
|
|
url: link, |
890 |
|
|
cache: false, |
891 |
|
|
success: function(html){ |
892 |
|
|
(empty == true )?$("#sousform-"+objsf).empty():''; |
893 |
|
|
$("#sousform-"+objsf).append(html); |
894 |
|
|
om_initialize_content(); |
895 |
|
|
}, |
896 |
|
|
async: false |
897 |
|
|
}); |
898 |
|
|
} |
899 |
|
|
|
900 |
|
|
/** |
901 |
|
|
* TTélécharegement de fichier pdf en ajax |
902 |
|
|
* spécifique de l'écran de consultation multiple |
903 |
|
|
*/ |
904 |
|
|
/* Plugin jQuery qui lance un espèce d'appel AJAX vers un script PHP de téléchargement de fichier*/ |
905 |
|
|
jQuery.download = function(url, data, method){ |
906 |
|
|
//url and data options required |
907 |
|
|
if( url && data ){ |
908 |
|
|
//data can be string of parameters or array/object |
909 |
|
|
data = typeof data == 'string' ? data : jQuery.param(data); |
910 |
|
|
//split params into form inputs |
911 |
|
|
var inputs = ''; |
912 |
|
|
jQuery.each(data.split('&'), function(){ |
913 |
|
|
var pair = this.split('='); |
914 |
|
|
inputs+='<input type="hidden" name="'+ pair[0] +'" value="'+ pair[1] +'" />'; |
915 |
|
|
}); |
916 |
|
|
//send request |
917 |
|
|
jQuery('<form action="'+ url +'" method="'+ (method||'post') +'">'+inputs+'</form>') |
918 |
|
|
.prependTo('body').submit().remove(); |
919 |
|
|
}; |
920 |
|
|
}; |
921 |
|
|
|
922 |
|
|
/** |
923 |
|
|
* Cette fonction permet de charger dans un dialog jqueryui un formulaire tel |
924 |
softime |
16749 |
* qu'il aurait été chargé avec ajaxIt. |
925 |
mbroquet |
3730 |
* |
926 |
softime |
16749 |
* @param {string} objsf Objet en sousformulaire. |
927 |
|
|
* @param {string} link Lien vers le sousformulaire. |
928 |
|
|
* @param {integer} width Largeur du dialog en px. |
929 |
|
|
* @param {integer} height Hauteur du dialog en px. |
930 |
|
|
* @param {function} callback Méthode à appeler à la fermeture du dialog. |
931 |
|
|
* @param {mixed} callbackParams Paramètres à traiter dans le callback. |
932 |
|
|
* @param {string} position Position du dialog sur l'écran. |
933 |
|
|
* @param {boolean} resizable Permettre le redimensionnement du dialog. |
934 |
|
|
* @param {string} insert_after Après quel html le dialog est inséré. |
935 |
|
|
* |
936 |
|
|
* @return void ou false. |
937 |
|
|
*/ |
938 |
|
|
function popupIt(objsf, link, width, height, callback, callbackParams, position, resizable = true, insert_after = '#tabs-1 .formControls-bottom') { |
939 |
mbroquet |
3730 |
// Insertion du conteneur du dialog |
940 |
softime |
16749 |
var dialog = $('<div id=\"sousform-'+objsf+'\"></div>').insertAfter(insert_after); |
941 |
softime |
9245 |
if( typeof(position) == 'undefined' ){ |
942 |
|
|
position = 'left top'; |
943 |
|
|
} |
944 |
mbroquet |
3730 |
// execution de la requete passee en parametre |
945 |
|
|
// (idem ajaxIt + callback) |
946 |
|
|
$.ajax({ |
947 |
|
|
type: "GET", |
948 |
|
|
url: link, |
949 |
|
|
cache: false, |
950 |
|
|
success: function(html){ |
951 |
|
|
//Suppression d'un precedent dialog |
952 |
|
|
dialog.empty(); |
953 |
|
|
//Ajout du contenu recupere |
954 |
|
|
dialog.append(html); |
955 |
|
|
//Initialisation du theme OM |
956 |
|
|
om_initialize_content(); |
957 |
|
|
//Creation du dialog |
958 |
|
|
$(dialog).dialog({ |
959 |
softime |
9245 |
//OnClose suppression du contenu |
960 |
|
|
close: function(ev, ui) { |
961 |
|
|
// Si le formulaire est submit et valide on execute la méthode |
962 |
|
|
// passée en paramètre |
963 |
|
|
if (typeof(callback) === "function") { |
964 |
|
|
callback(callbackParams); |
965 |
|
|
} |
966 |
|
|
$(this).remove(); |
967 |
|
|
}, |
968 |
softime |
15650 |
resizable: resizable, |
969 |
softime |
9245 |
modal: true, |
970 |
|
|
width: width, |
971 |
|
|
height: height, |
972 |
|
|
position: position, |
973 |
|
|
}); |
974 |
mbroquet |
3730 |
}, |
975 |
|
|
async : false |
976 |
|
|
}); |
977 |
softime |
10573 |
|
978 |
mbroquet |
3730 |
//Fermeture du dialog lors d'un clic sur le bouton retour |
979 |
softime |
6565 |
$('#sousform-'+objsf).off("click").on("click",'a.retour',function() { |
980 |
mbroquet |
3730 |
$(dialog).dialog('close').remove(); |
981 |
|
|
return false; |
982 |
|
|
}); |
983 |
|
|
} |
984 |
|
|
|
985 |
|
|
/*** |
986 |
|
|
* Fonction getter des paramètres de l'url courante |
987 |
|
|
*/ |
988 |
|
|
// Parse URL Queries Method |
989 |
|
|
(function($){ |
990 |
|
|
$.getQuery = function( query ) { |
991 |
|
|
query = query.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]"); |
992 |
|
|
var expr = "[\\?&]"+query+"=([^&#]*)"; |
993 |
|
|
var regex = new RegExp( expr ); |
994 |
|
|
var results = regex.exec( window.location.href ); |
995 |
|
|
if( results !== null ) { |
996 |
|
|
return results[1]; |
997 |
|
|
} else { |
998 |
|
|
return false; |
999 |
|
|
} |
1000 |
|
|
}; |
1001 |
|
|
})(jQuery); |
1002 |
|
|
|
1003 |
|
|
|
1004 |
|
|
/* |
1005 |
|
|
* Javascript concernant la demande d'avis |
1006 |
|
|
* |
1007 |
|
|
* |
1008 |
|
|
*/ |
1009 |
|
|
|
1010 |
|
|
/** |
1011 |
softime |
7521 |
* Fonction de callback appelée lors de la fermeture du dialog (popupit) |
1012 |
mbroquet |
3730 |
* du retour d'avis d'un service |
1013 |
|
|
**/ |
1014 |
|
|
function returnToTab(objsf) { |
1015 |
|
|
var valid=$('#sousform-'+objsf+' div.ui-state-valid'); |
1016 |
|
|
if(valid.length > 0) { |
1017 |
softime |
7996 |
document.location.href="../app/index.php?module=tab&obj="+$.getQuery('obj')+"&premier="+$.getQuery('premier') |
1018 |
|
|
+"&advs_id="+$.getQuery('advs_id')+"&tricol="+$.getQuery('tricol'); |
1019 |
mbroquet |
3730 |
} |
1020 |
|
|
}; |
1021 |
|
|
|
1022 |
|
|
|
1023 |
|
|
/* |
1024 |
|
|
* Javascript concernant la demande |
1025 |
|
|
* |
1026 |
|
|
* |
1027 |
|
|
*/ |
1028 |
|
|
|
1029 |
softime |
16749 |
/** |
1030 |
|
|
* Traitement à appliquer lors de la validation des demandeurs en sous-formulaire. |
1031 |
|
|
* |
1032 |
|
|
* @param {string} obj Objet |
1033 |
|
|
* @param {string} link Lien du formulaire à afficher |
1034 |
|
|
* @param {string} formulaire formulaire |
1035 |
|
|
* @param {string} type Type du pétitionnaire |
1036 |
|
|
* @param {integer} id Identifiant du demandeur |
1037 |
|
|
* |
1038 |
|
|
* @return false pour qu'il n'y ait pas d'autres traitement ensuite. |
1039 |
|
|
*/ |
1040 |
softime |
17036 |
function validateSformDemandeur(obj, link, formulaire, type, id) { |
1041 |
softime |
16749 |
affichersform(obj, link, formulaire, false); |
1042 |
|
|
if (typeof(id) == 'undefined') { |
1043 |
|
|
getDemandeurId(type); |
1044 |
|
|
} else { |
1045 |
|
|
replaceDemandeur({ |
1046 |
|
|
'type': type, |
1047 |
|
|
'id': id, |
1048 |
|
|
'id_css': '#'+type+'_'+id |
1049 |
|
|
}); |
1050 |
|
|
} |
1051 |
|
|
if($.isNumeric($('#id_retour').val())) { |
1052 |
|
|
$('#sousform-'+obj).remove(); |
1053 |
|
|
} |
1054 |
|
|
return false; |
1055 |
|
|
} |
1056 |
|
|
|
1057 |
mbroquet |
3730 |
/** |
1058 |
|
|
* Fonction permettant de mettre à jour les infos du demandeur |
1059 |
|
|
**/ |
1060 |
|
|
function getDemandeurId(type) { |
1061 |
|
|
var id_demandeur=$('#id_retour').val(); |
1062 |
|
|
if($.isNumeric(id_demandeur)) { |
1063 |
|
|
afficherDemandeur(id_demandeur,type); |
1064 |
|
|
om_initialize_content(); |
1065 |
|
|
} |
1066 |
|
|
} |
1067 |
|
|
|
1068 |
|
|
/** |
1069 |
|
|
* Fonction permettant d'afficher la synthèse d'un demandeur |
1070 |
|
|
*/ |
1071 |
|
|
function afficherDemandeur(id,type) { |
1072 |
|
|
$.ajax({ |
1073 |
|
|
type: "GET", |
1074 |
|
|
url: '../app/afficher_synthese_demandeur.view.php?iddemandeur='+id+'&type='+type, |
1075 |
|
|
cache: false, |
1076 |
|
|
success: function(html){ |
1077 |
softime |
16749 |
$(html).insertBefore('#hidden_'+type).fadeIn(500); |
1078 |
mbroquet |
3730 |
}, |
1079 |
|
|
async:false |
1080 |
|
|
}); |
1081 |
|
|
affichageBoutonsDemandeurs(); |
1082 |
|
|
} |
1083 |
|
|
|
1084 |
|
|
/** |
1085 |
|
|
* Fonction permettant de modifier un demandeur |
1086 |
|
|
*/ |
1087 |
|
|
function editDemandeur(obj,id,type,id_css) { |
1088 |
softime |
10573 |
id_dossier = ''; |
1089 |
|
|
|
1090 |
|
|
if ($("#dossier").size() !== 0) { |
1091 |
|
|
id_dossier=$("#dossier").val(); |
1092 |
|
|
} |
1093 |
softime |
16749 |
var principal = ''; |
1094 |
|
|
if (id_css.indexOf('principal') != -1) { |
1095 |
|
|
principal = '&principal=true'; |
1096 |
|
|
} |
1097 |
|
|
var url = '../app/index.php?module=sousform&obj='+obj+'&retourformulaire=demande&action=1&idx='+id+'&idx_dossier='+id_dossier+principal; |
1098 |
|
|
popupIt(obj, url, 860, 'auto', replaceDemandeur, {'type': type, 'id': id, 'id_css': '#'+id_css}); |
1099 |
mbroquet |
3730 |
affichageBoutonsDemandeurs(); |
1100 |
|
|
} |
1101 |
|
|
|
1102 |
|
|
/** |
1103 |
|
|
* Function permettant de remplacer un contenu déjà existant |
1104 |
|
|
**/ |
1105 |
|
|
function replaceDemandeur(obj) { |
1106 |
|
|
var new_demandeur=$('#id_retour').val(); |
1107 |
|
|
if($.isNumeric(new_demandeur)) { |
1108 |
|
|
$.ajax({ |
1109 |
|
|
type: "GET", |
1110 |
|
|
url: '../app/afficher_synthese_demandeur.view.php?iddemandeur='+new_demandeur+'&type='+obj.type, |
1111 |
|
|
cache: false, |
1112 |
softime |
16749 |
async: false, |
1113 |
mbroquet |
3730 |
success: function(html){ |
1114 |
|
|
$(obj.id_css).replaceWith(html); |
1115 |
|
|
} |
1116 |
|
|
}); |
1117 |
|
|
} |
1118 |
|
|
} |
1119 |
|
|
/** |
1120 |
|
|
* Function permettant de remplacer un contenu déjà existant |
1121 |
|
|
**/ |
1122 |
|
|
function removeDemandeur(id) { |
1123 |
|
|
var div_class=$('#'+id).attr("class"); |
1124 |
|
|
$('#'+id).remove(); |
1125 |
|
|
if(div_class == "delegataire") { |
1126 |
|
|
$('#add_delegataire').fadeIn(500); |
1127 |
|
|
} |
1128 |
softime |
10573 |
if(div_class == "proprietaire") { |
1129 |
|
|
$('#add_proprietaire').fadeIn(500); |
1130 |
|
|
} |
1131 |
|
|
if(div_class == "architecte_lc") { |
1132 |
|
|
$('#add_architecte_lc').fadeIn(500); |
1133 |
|
|
} |
1134 |
|
|
if(div_class == "paysagiste") { |
1135 |
|
|
$('#add_paysagiste').fadeIn(500); |
1136 |
|
|
} |
1137 |
mbroquet |
3730 |
affichageBoutonsDemandeurs(); |
1138 |
|
|
} |
1139 |
|
|
|
1140 |
|
|
/** |
1141 |
|
|
* Fonction permettant d'afficher et cacher les boutons d'ajout de demandeurs |
1142 |
|
|
*/ |
1143 |
|
|
function affichageBoutonsDemandeurs(){ |
1144 |
softime |
6565 |
// Si le fieldset Demandeurs n'est pas présent, on sort de la fonction |
1145 |
|
|
if($('#liste_demandeur').size() === 0) { |
1146 |
|
|
return false; |
1147 |
|
|
} |
1148 |
|
|
// Affichage des blocs en fonction du type de demande |
1149 |
|
|
type_aff_form = getDemandeInfo('type_aff_form'); |
1150 |
|
|
switch (type_aff_form) { |
1151 |
softime |
13528 |
case 'CONSULTATION ENTRANTE': |
1152 |
softime |
6565 |
case 'ADS': |
1153 |
|
|
// Suppression des types de demandeurs d'autres type de DA |
1154 |
|
|
$('.plaignant_principal').each(function() { |
1155 |
|
|
$(this).remove(); |
1156 |
|
|
}); |
1157 |
|
|
$('.plaignant').each(function() { |
1158 |
|
|
$(this).remove(); |
1159 |
|
|
}); |
1160 |
|
|
$('.contrevenant_principal').each(function() { |
1161 |
|
|
$(this).remove(); |
1162 |
|
|
}); |
1163 |
|
|
$('.contrevenant').each(function() { |
1164 |
|
|
$(this).remove(); |
1165 |
|
|
}); |
1166 |
|
|
$('.requerant').each(function() { |
1167 |
|
|
$(this).remove(); |
1168 |
|
|
}); |
1169 |
|
|
$('.avocat').each(function() { |
1170 |
|
|
$(this).remove(); |
1171 |
|
|
}); |
1172 |
softime |
7067 |
$('.bailleur_principal').each(function() { |
1173 |
|
|
$(this).remove(); |
1174 |
|
|
}); |
1175 |
|
|
$('.bailleur').each(function() { |
1176 |
|
|
$(this).remove(); |
1177 |
|
|
}); |
1178 |
softime |
6565 |
// Affichage ou non des blocs |
1179 |
|
|
$('#plaignant_contrevenant').hide(); |
1180 |
|
|
$('#requerant_avocat').hide(); |
1181 |
softime |
7067 |
$('#petitionnaire_principal_delegataire_bailleur').hide(); |
1182 |
softime |
16749 |
$('#btn_plaignant_contrevenant').hide(); |
1183 |
|
|
$('#btn_requerant_avocat').hide(); |
1184 |
|
|
$('#btn_petitionnaire_principal_delegataire_bailleur').hide(); |
1185 |
|
|
$('#petitionnaire_principal_delegataire').fadeIn(0); |
1186 |
|
|
$('#btn_petitionnaire_principal_delegataire').fadeIn(0); |
1187 |
softime |
6565 |
break; |
1188 |
|
|
|
1189 |
|
|
case 'CTX RE': |
1190 |
|
|
// Suppression des types de demandeurs d'autres type de DA |
1191 |
|
|
$('.plaignant_principal').each(function() { |
1192 |
|
|
$(this).remove(); |
1193 |
|
|
}); |
1194 |
|
|
$('.plaignant').each(function() { |
1195 |
|
|
$(this).remove(); |
1196 |
|
|
}); |
1197 |
|
|
$('.contrevenant_principal').each(function() { |
1198 |
|
|
$(this).remove(); |
1199 |
|
|
}); |
1200 |
|
|
$('.contrevenant').each(function() { |
1201 |
|
|
$(this).remove(); |
1202 |
|
|
}); |
1203 |
softime |
7067 |
$('.bailleur_principal').each(function() { |
1204 |
|
|
$(this).remove(); |
1205 |
|
|
}); |
1206 |
|
|
$('.bailleur').each(function() { |
1207 |
|
|
$(this).remove(); |
1208 |
|
|
}); |
1209 |
softime |
6565 |
// Affichage ou non des blocs |
1210 |
|
|
$('#plaignant_contrevenant').hide(); |
1211 |
|
|
$('#requerant_avocat').hide(); |
1212 |
softime |
7067 |
$('#petitionnaire_principal_delegataire_bailleur').hide(); |
1213 |
softime |
16749 |
$('#btn_plaignant_contrevenant').hide(); |
1214 |
|
|
$('#btn_requerant_avocat').hide(); |
1215 |
|
|
$('#btn_petitionnaire_principal_delegataire_bailleur').hide(); |
1216 |
|
|
$('#petitionnaire_principal_delegataire').fadeIn(0); |
1217 |
|
|
$('#btn_petitionnaire_principal_delegataire').fadeIn(0); |
1218 |
softime |
6565 |
// Affichage du bloc requerant/avocat |
1219 |
|
|
if ($('input[name^=petitionnaire_principal]').size() > 0) { |
1220 |
softime |
16749 |
$('#requerant_avocat').fadeIn(0); |
1221 |
|
|
$('#btn_requerant_avocat').fadeIn(0); |
1222 |
softime |
6565 |
} else { |
1223 |
|
|
$('#requerant_avocat').hide(); |
1224 |
softime |
16749 |
$('#btn_requerant_avocat').hide(); |
1225 |
softime |
6565 |
} |
1226 |
|
|
break; |
1227 |
|
|
|
1228 |
|
|
case 'CTX IN': |
1229 |
|
|
$('.petitionnaire_principal').each(function() { |
1230 |
|
|
$(this).remove(); |
1231 |
|
|
}); |
1232 |
|
|
$('.delegataire').each(function() { |
1233 |
|
|
$(this).remove(); |
1234 |
|
|
}); |
1235 |
|
|
$('.petitionnaire').each(function() { |
1236 |
|
|
$(this).remove(); |
1237 |
|
|
}); |
1238 |
|
|
$('.requerant').each(function() { |
1239 |
|
|
$(this).remove(); |
1240 |
|
|
}); |
1241 |
|
|
$('.avocat').each(function() { |
1242 |
|
|
$(this).remove(); |
1243 |
|
|
}); |
1244 |
softime |
7067 |
$('.bailleur_principal').each(function() { |
1245 |
|
|
$(this).remove(); |
1246 |
|
|
}); |
1247 |
|
|
$('.bailleur').each(function() { |
1248 |
|
|
$(this).remove(); |
1249 |
|
|
}); |
1250 |
softime |
6565 |
$('#requerant_avocat').hide(); |
1251 |
|
|
$('#petitionnaire_principal_delegataire').hide(); |
1252 |
softime |
7067 |
$('#listePetitionnaires').hide(); |
1253 |
|
|
$('#petitionnaire_principal_delegataire_bailleur').hide(); |
1254 |
softime |
16749 |
$('#btn_requerant_avocat').hide(); |
1255 |
|
|
$('#btn_petitionnaire_principal_delegataire').hide(); |
1256 |
|
|
$('#btn_listePetitionnaires').hide(); |
1257 |
|
|
$('#btn_petitionnaire_principal_delegataire_bailleur').hide(); |
1258 |
|
|
$('#plaignant_contrevenant').fadeIn(0); |
1259 |
|
|
$('#listeContrevenants').fadeIn(0); |
1260 |
|
|
$('#btn_plaignant_contrevenant').fadeIn(0); |
1261 |
|
|
$('#btn_listeContrevenants').fadeIn(0); |
1262 |
softime |
7067 |
break; |
1263 |
|
|
|
1264 |
|
|
case 'DPC': |
1265 |
|
|
// Suppression des types de demandeurs d'autres type de DA |
1266 |
|
|
$('.plaignant_principal').each(function() { |
1267 |
|
|
$(this).remove(); |
1268 |
|
|
}); |
1269 |
|
|
$('.plaignant').each(function() { |
1270 |
|
|
$(this).remove(); |
1271 |
|
|
}); |
1272 |
|
|
$('.contrevenant_principal').each(function() { |
1273 |
|
|
$(this).remove(); |
1274 |
|
|
}); |
1275 |
|
|
$('.contrevenant').each(function() { |
1276 |
|
|
$(this).remove(); |
1277 |
|
|
}); |
1278 |
|
|
$('.requerant').each(function() { |
1279 |
|
|
$(this).remove(); |
1280 |
|
|
}); |
1281 |
|
|
$('.avocat').each(function() { |
1282 |
|
|
$(this).remove(); |
1283 |
|
|
}); |
1284 |
|
|
// Affichage ou non des blocs |
1285 |
|
|
$('#plaignant_contrevenant').hide(); |
1286 |
|
|
$('#requerant_avocat').hide(); |
1287 |
softime |
16749 |
$('#btn_plaignant_contrevenant').hide(); |
1288 |
|
|
$('#btn_requerant_avocat').hide(); |
1289 |
|
|
$('#petitionnaire_principal_delegataire').fadeIn(0); |
1290 |
|
|
$('#petitionnaire_principal_delegataire_bailleur').fadeIn(0); |
1291 |
|
|
$('#listeBailleurs').fadeIn(0); |
1292 |
|
|
$('#btn_petitionnaire_principal_delegataire').fadeIn(0); |
1293 |
|
|
$('#btn_petitionnaire_principal_delegataire_bailleur').fadeIn(0); |
1294 |
|
|
$('#btn_listeBailleurs').fadeIn(0); |
1295 |
softime |
7067 |
break; |
1296 |
softime |
6565 |
default: |
1297 |
|
|
|
1298 |
|
|
} |
1299 |
mbroquet |
3730 |
|
1300 |
|
|
// Si formulaire après validation on cache les boutons d'ajout de demandeurs |
1301 |
|
|
url = document.location + "" ; |
1302 |
softime |
6565 |
if ($('#liste_demandeur').size() > 0 |
1303 |
mbroquet |
3730 |
&& $("form[name=f1] .form-is-valid").size() > 0 ) { |
1304 |
|
|
|
1305 |
|
|
$('#add_petitionnaire_principal').hide(); |
1306 |
|
|
$('#add_delegataire').hide(); |
1307 |
|
|
if($('input[name=delegataire][type=hidden]').size() == 0) { |
1308 |
|
|
$('#delegataire').hide(); |
1309 |
softime |
16749 |
$('#btn_delegataire').hide(); |
1310 |
mbroquet |
3730 |
} |
1311 |
|
|
$('#add_petitionnaire').hide(); |
1312 |
softime |
6565 |
$('#add_plaignant').hide(); |
1313 |
|
|
$('#add_contrevenant_principal').hide(); |
1314 |
|
|
$('#add_contrevenant').hide(); |
1315 |
|
|
if($('input[name=contrevenant][type=hidden]').size() == 0) { |
1316 |
|
|
$('#contrevenant').hide(); |
1317 |
softime |
16749 |
$('#btn_contrevenant').hide(); |
1318 |
mbroquet |
3730 |
} |
1319 |
softime |
6565 |
$('#add_requerant').hide(); |
1320 |
|
|
$('#add_avocat').hide(); |
1321 |
softime |
7067 |
$('#add_bailleur_principal').hide(); |
1322 |
|
|
$('#add_bailleur').hide(); |
1323 |
|
|
if($('input[name=bailleur][type=hidden]').size() == 0) { |
1324 |
|
|
$('#bailleur').hide(); |
1325 |
softime |
16749 |
$('#btn_bailleur').hide(); |
1326 |
softime |
7067 |
} |
1327 |
softime |
10573 |
$('#add_proprietaire').hide(); |
1328 |
|
|
$('#add_architecte_lc').hide(); |
1329 |
|
|
$('#add_paysagiste').hide(); |
1330 |
softime |
16749 |
|
1331 |
softime |
6565 |
} else if ($('form[name=f1] #liste_demandeur').size() > 0) { |
1332 |
softime |
7067 |
// Affichage du bouton d'ajout du petitionnaire principal |
1333 |
|
|
if($('input[name^=petitionnaire_principal]').size() > 0) { |
1334 |
|
|
$('#add_petitionnaire_principal').hide(); |
1335 |
|
|
} else { |
1336 |
softime |
16749 |
$('#add_petitionnaire_principal').fadeIn(0); |
1337 |
softime |
7067 |
} |
1338 |
|
|
// Affichage du bloc delegataire |
1339 |
|
|
if($('input[name^=petitionnaire_principal]').size() == 0) { |
1340 |
|
|
$('#delegataire').hide(); |
1341 |
softime |
16749 |
$('#btn_delegataire').hide(); |
1342 |
softime |
7067 |
} else { |
1343 |
softime |
16749 |
$('#delegataire').fadeIn(0); |
1344 |
|
|
$('#btn_delegataire').fadeIn(0); |
1345 |
softime |
7067 |
} |
1346 |
|
|
// Affichage du bouton délégataire |
1347 |
|
|
if($('input[name^=petitionnaire_principal]').size() == 0 || |
1348 |
|
|
$('input[name^=delegataire]').size() > 0) { |
1349 |
|
|
$('#add_delegataire').hide(); |
1350 |
|
|
} else { |
1351 |
softime |
16749 |
$('#add_delegataire').fadeIn(0); |
1352 |
softime |
7067 |
} |
1353 |
softime |
10573 |
// Affichage du bloc proprietaire |
1354 |
|
|
if($('input[name^=petitionnaire_principal]').size() == 0) { |
1355 |
|
|
$('#proprietaire').hide(); |
1356 |
softime |
16749 |
$('#btn_proprietaire').hide(); |
1357 |
softime |
10573 |
} else { |
1358 |
softime |
16749 |
$('#proprietaire').fadeIn(0); |
1359 |
|
|
$('#btn_proprietaire').fadeIn(0); |
1360 |
softime |
10573 |
} |
1361 |
|
|
// Affichage du bouton proprietaire |
1362 |
|
|
if($('input[name^=petitionnaire_principal]').size() == 0 || |
1363 |
|
|
$('input[name^=proprietaire]').size() > 0) { |
1364 |
|
|
$('#add_proprietaire').hide(); |
1365 |
|
|
} else { |
1366 |
softime |
16749 |
$('#add_proprietaire').fadeIn(0); |
1367 |
softime |
10573 |
} |
1368 |
|
|
// Affichage du bloc architecte_lc |
1369 |
|
|
if($('input[name^=petitionnaire_principal]').size() == 0) { |
1370 |
|
|
$('#architecte_lc').hide(); |
1371 |
softime |
16749 |
$('#btn_architecte_lc').hide(); |
1372 |
softime |
10573 |
} else { |
1373 |
softime |
16749 |
$('#architecte_lc').fadeIn(0); |
1374 |
|
|
$('#btn_architecte_lc').fadeIn(0); |
1375 |
softime |
10573 |
} |
1376 |
|
|
// Affichage du bouton architecte_lc |
1377 |
|
|
if($('input[name^=petitionnaire_principal]').size() == 0 || |
1378 |
|
|
$('input[name^=architecte_lc]').size() > 0) { |
1379 |
|
|
$('#add_architecte_lc').hide(); |
1380 |
softime |
16749 |
$('#btn_add_architecte_lc').hide(); |
1381 |
softime |
10573 |
} else { |
1382 |
softime |
16749 |
$('#add_architecte_lc').fadeIn(0); |
1383 |
|
|
$('#btn_add_architecte_lc').fadeIn(0); |
1384 |
softime |
10573 |
} |
1385 |
|
|
// Affichage du bloc paysagiste |
1386 |
|
|
if($('input[name^=petitionnaire_principal]').size() == 0) { |
1387 |
|
|
$('#paysagiste').hide(); |
1388 |
softime |
16749 |
$('#btn_paysagiste').hide(); |
1389 |
softime |
10573 |
} else { |
1390 |
softime |
16749 |
$('#paysagiste').fadeIn(0); |
1391 |
|
|
$('#btn_paysagiste').fadeIn(0); |
1392 |
softime |
10573 |
} |
1393 |
|
|
// Affichage du bouton paysagiste |
1394 |
|
|
if($('input[name^=petitionnaire_principal]').size() == 0 || |
1395 |
|
|
$('input[name^=paysagiste]').size() > 0) { |
1396 |
|
|
$('#add_paysagiste').hide(); |
1397 |
|
|
} else { |
1398 |
softime |
16749 |
$('#add_paysagiste').fadeIn(0); |
1399 |
softime |
10573 |
} |
1400 |
softime |
7067 |
// Affichage du bloc petitionnaire |
1401 |
|
|
if($('input[name^=petitionnaire_principal]').size() == 0) { |
1402 |
|
|
$('#listePetitionnaires').hide(); |
1403 |
softime |
16749 |
$('#btn_listePetitionnaires').hide(); |
1404 |
softime |
7067 |
} else { |
1405 |
softime |
16749 |
$('#listePetitionnaires').fadeIn(0); |
1406 |
|
|
$('#btn_listePetitionnaires').fadeIn(0); |
1407 |
softime |
7067 |
} |
1408 |
|
|
// Affichage du bouton petitionnaire |
1409 |
|
|
if($('input[name^=petitionnaire_principal]').size() == 0) { |
1410 |
|
|
$('#add_petitionnaire').hide(); |
1411 |
|
|
} else { |
1412 |
softime |
16749 |
$('#add_petitionnaire').fadeIn(0); |
1413 |
softime |
7067 |
} |
1414 |
|
|
// Affichage du bloc petitionnaire |
1415 |
|
|
if($('input[name^=petitionnaire_principal]').size() == 0) { |
1416 |
|
|
$('#listePetitionnaires').hide(); |
1417 |
softime |
16749 |
$('#btn_listePetitionnaires').hide(); |
1418 |
softime |
7067 |
} else { |
1419 |
softime |
16749 |
$('#listePetitionnaires').fadeIn(0); |
1420 |
|
|
$('#btn_listePetitionnaires').fadeIn(0); |
1421 |
softime |
7067 |
} |
1422 |
|
|
if($('input[name^=requerant_principal]').size() == 0) { |
1423 |
|
|
$('#listeAutresRequerants').hide(); |
1424 |
softime |
16749 |
$('#btn_listeAutresRequerants').hide(); |
1425 |
softime |
7067 |
} else { |
1426 |
softime |
16749 |
$('#listeAutresRequerants').fadeIn(0); |
1427 |
|
|
$('#btn_listeAutresRequerants').fadeIn(0); |
1428 |
softime |
7067 |
} |
1429 |
|
|
if($('input[name^=avocat_principal]').size() == 0) { |
1430 |
|
|
$('#listeAutresAvocats').hide(); |
1431 |
softime |
16749 |
$('#btn_listeAutresAvocats').hide(); |
1432 |
softime |
7067 |
} else { |
1433 |
softime |
16749 |
$('#listeAutresAvocats').fadeIn(0); |
1434 |
|
|
$('#btn_listeAutresAvocats').fadeIn(0); |
1435 |
softime |
7067 |
} |
1436 |
softime |
6565 |
|
1437 |
softime |
7067 |
if ($('input[name^=petitionnaire_principal]').size() == 0 || |
1438 |
|
|
$('input[name^=requerant_principal]').size() > 0) { |
1439 |
|
|
$('#add_requerant_principal').hide(); |
1440 |
softime |
16749 |
$('#add_requerant').fadeIn(0); |
1441 |
softime |
7067 |
} else { |
1442 |
softime |
16749 |
$('#add_requerant_principal').fadeIn(0); |
1443 |
softime |
7067 |
$('#add_requerant').hide(); |
1444 |
|
|
} |
1445 |
|
|
|
1446 |
|
|
if ($('input[name^=petitionnaire_principal]').size() == 0 || |
1447 |
|
|
$('input[name^=avocat_principal]').size() > 0) { |
1448 |
|
|
$('#add_avocat_principal').hide(); |
1449 |
softime |
16749 |
$('#add_avocat').fadeIn(0); |
1450 |
softime |
7067 |
} else { |
1451 |
softime |
16749 |
$('#add_avocat_principal').fadeIn(0); |
1452 |
softime |
7067 |
$('#add_avocat').hide(); |
1453 |
|
|
} |
1454 |
softime |
6565 |
|
1455 |
|
|
// Formulaire CTX IN |
1456 |
|
|
// Affichage du bouton d'ajout du contrevenant principal |
1457 |
|
|
if($('input[name^=contrevenant_principal]').size() > 0) { |
1458 |
|
|
$('#add_contrevenant_principal').hide(); |
1459 |
mbroquet |
3730 |
} else { |
1460 |
softime |
16749 |
$('#add_contrevenant_principal').fadeIn(0); |
1461 |
mbroquet |
3730 |
} |
1462 |
softime |
6565 |
// Affichage du bouton contrevenant |
1463 |
|
|
if($('input[name^=contrevenant_principal]').size() == 0) { |
1464 |
|
|
$('#listeAutresContrevenants').hide(); |
1465 |
softime |
16749 |
$('#btn_listeAutresContrevenants').hide(); |
1466 |
softime |
6565 |
$('#add_contrevenant').hide(); |
1467 |
mbroquet |
3730 |
} else { |
1468 |
softime |
16749 |
$('#listeAutresContrevenants').fadeIn(0); |
1469 |
|
|
$('#btn_listeAutresContrevenants').fadeIn(0); |
1470 |
|
|
$('#add_contrevenant').fadeIn(0); |
1471 |
mbroquet |
3730 |
} |
1472 |
softime |
6565 |
// Affichage du bloc Plaignants |
1473 |
|
|
if($('input[name^=contrevenant_principal]').size() == 0) { |
1474 |
|
|
$('#listePlaignants').hide(); |
1475 |
softime |
16749 |
$('#btn_listePlaignants').hide(); |
1476 |
softime |
6565 |
} else { |
1477 |
softime |
16749 |
$('#listePlaignants').fadeIn(0); |
1478 |
|
|
$('#btn_listePlaignants').fadeIn(0); |
1479 |
softime |
6565 |
} |
1480 |
|
|
if($('input[name^=plaignant_principal]').size() == 0) { |
1481 |
|
|
$('#listeAutresPlaignants').hide(); |
1482 |
softime |
16749 |
$('#btn_listeAutresPlaignants').hide(); |
1483 |
softime |
6565 |
} else { |
1484 |
softime |
16749 |
$('#listeAutresPlaignants').fadeIn(0); |
1485 |
|
|
$('#btn_listeAutresPlaignants').fadeIn(0); |
1486 |
softime |
6565 |
} |
1487 |
|
|
if ($('input[name^=contrevenant_principal]').size() == 0 || |
1488 |
|
|
$('input[name^=plaignant_principal]').size() > 0) { |
1489 |
|
|
$('#add_plaignant_principal').hide(); |
1490 |
softime |
16749 |
$('#add_plaignant').fadeIn(0); |
1491 |
softime |
6565 |
} else { |
1492 |
softime |
16749 |
$('#add_plaignant_principal').fadeIn(0); |
1493 |
softime |
6565 |
$('#add_plaignant').hide(); |
1494 |
|
|
} |
1495 |
softime |
7067 |
|
1496 |
|
|
// Formulaire DPC |
1497 |
|
|
if($('input[name^=bailleur_principal]').size() > 0) { |
1498 |
|
|
$('#add_bailleur_principal').hide(); |
1499 |
|
|
} else { |
1500 |
softime |
16749 |
$('#add_bailleur_principal').fadeIn(0); |
1501 |
softime |
7067 |
} |
1502 |
|
|
if($('input[name^=bailleur_principal]').size() == 0) { |
1503 |
|
|
$('#listeAutresBailleurs').hide(); |
1504 |
softime |
16749 |
$('#btn_listeAutresBailleurs').hide(); |
1505 |
softime |
7067 |
$('#add_bailleur').hide(); |
1506 |
|
|
} else { |
1507 |
softime |
16749 |
$('#listeAutresBailleurs').fadeIn(0); |
1508 |
|
|
$('#btn_listeAutresBailleurs').fadeIn(0); |
1509 |
|
|
$('#add_bailleur').fadeIn(0); |
1510 |
softime |
7067 |
} |
1511 |
mbroquet |
3730 |
} |
1512 |
|
|
} |
1513 |
|
|
|
1514 |
|
|
/** |
1515 |
|
|
* Appel au chargement de la page |
1516 |
|
|
**/ |
1517 |
|
|
$(function() { |
1518 |
softime |
10869 |
/** |
1519 |
|
|
* Gère la mise en valeur des champs modifiés ou validés de la recherche avancée. |
1520 |
|
|
*/ |
1521 |
|
|
handle_highlight_advs_search(); |
1522 |
|
|
|
1523 |
softime |
6565 |
if ( $('#type_demandeur') == 'petitionnaire' || |
1524 |
softime |
7067 |
$('#type_demandeur') == 'avocat' || |
1525 |
|
|
$('#type_demandeur') == 'bailleur'){ |
1526 |
mbroquet |
3730 |
addSearchIcon(); |
1527 |
|
|
addDivDialog('.bloc_demandeur'); |
1528 |
|
|
} |
1529 |
|
|
affichageBoutonsDemandeurs(); |
1530 |
softime |
10573 |
id_dossier = ''; |
1531 |
|
|
|
1532 |
|
|
if ($("#dossier").size() !== 0) { |
1533 |
|
|
id_dossier=$("#dossier").val(); |
1534 |
|
|
} |
1535 |
mbroquet |
3730 |
// Bind de la fonction permettant l'ajout du pétitionnaire principal |
1536 |
|
|
$("#formulaire").on("click","#add_petitionnaire_principal", function() { |
1537 |
|
|
popupIt('petitionnaire', |
1538 |
softime |
7996 |
'../app/index.php?module=sousform&obj=petitionnaire&action=0'+ |
1539 |
softime |
10573 |
'&retourformulaire=demande&principal=true&idx_dossier='+id_dossier, 860, 'auto', |
1540 |
mbroquet |
3730 |
getDemandeurId, 'petitionnaire_principal'); |
1541 |
|
|
}); |
1542 |
softime |
6565 |
// Bind de la fonction permettant l'ajout du plaignant |
1543 |
|
|
$("#formulaire").on("click","#add_plaignant_principal", function() { |
1544 |
|
|
popupIt('plaignant', |
1545 |
softime |
7996 |
'../app/index.php?module=sousform&obj=plaignant&action=0'+ |
1546 |
softime |
16749 |
'&retourformulaire=demande&principal=true&idx_dossier='+id_dossier, 860, 'auto', |
1547 |
softime |
6565 |
getDemandeurId, 'plaignant_principal'); |
1548 |
|
|
}); |
1549 |
|
|
// Bind de la fonction permettant l'ajout du plaignant |
1550 |
|
|
$("#formulaire").on("click","#add_plaignant", function() { |
1551 |
|
|
popupIt('plaignant', |
1552 |
softime |
7996 |
'../app/index.php?module=sousform&obj=plaignant&action=0'+ |
1553 |
softime |
10573 |
'&retourformulaire=demande&idx_dossier='+id_dossier, 860, 'auto', |
1554 |
softime |
6565 |
getDemandeurId, 'plaignant'); |
1555 |
|
|
}); |
1556 |
|
|
// Bind de la fonction permettant l'ajout du contrevenant principal |
1557 |
|
|
$("#formulaire").on("click","#add_contrevenant_principal", function() { |
1558 |
|
|
popupIt('contrevenant', |
1559 |
softime |
7996 |
'../app/index.php?module=sousform&obj=contrevenant&action=0'+ |
1560 |
softime |
16749 |
'&retourformulaire=demande&principal=true&idx_dossier='+id_dossier, 860, 'auto', |
1561 |
softime |
6565 |
getDemandeurId, 'contrevenant_principal'); |
1562 |
|
|
}); |
1563 |
|
|
// Bind de la fonction permettant l'ajout du contrevenant |
1564 |
|
|
$("#formulaire").on("click","#add_contrevenant", function() { |
1565 |
|
|
popupIt('contrevenant', |
1566 |
softime |
7996 |
'../app/index.php?module=sousform&obj=contrevenant&action=0'+ |
1567 |
softime |
10573 |
'&retourformulaire=demande&idx_dossier='+id_dossier, 860, 'auto', |
1568 |
softime |
6565 |
getDemandeurId, 'contrevenant'); |
1569 |
|
|
}); |
1570 |
|
|
// Bind de la fonction permettant l'ajout du requerant |
1571 |
|
|
$("#formulaire").on("click","#add_requerant_principal", function() { |
1572 |
|
|
popupIt('requerant', |
1573 |
softime |
7996 |
'../app/index.php?module=sousform&obj=requerant&action=0'+ |
1574 |
softime |
16749 |
'&retourformulaire=demande&principal=true&idx_dossier='+id_dossier, 860, 'auto', |
1575 |
softime |
6565 |
getDemandeurId, 'requerant_principal'); |
1576 |
|
|
}); |
1577 |
|
|
// Bind de la fonction permettant l'ajout du requerant |
1578 |
|
|
$("#formulaire").on("click","#add_requerant", function() { |
1579 |
|
|
popupIt('requerant', |
1580 |
softime |
7996 |
'../app/index.php?module=sousform&obj=requerant&action=0'+ |
1581 |
softime |
10573 |
'&retourformulaire=demande&idx_dossier='+id_dossier, 860, 'auto', |
1582 |
softime |
6565 |
getDemandeurId, 'requerant'); |
1583 |
|
|
}); |
1584 |
|
|
// Bind de la fonction permettant l'ajout de l'avocat |
1585 |
|
|
$("#formulaire").on("click","#add_avocat_principal", function() { |
1586 |
|
|
popupIt('avocat', |
1587 |
softime |
7996 |
'../app/index.php?module=sousform&obj=avocat&action=0'+ |
1588 |
softime |
16749 |
'&retourformulaire=demande&principal=true&idx_dossier='+id_dossier, 860, 'auto', |
1589 |
softime |
6565 |
getDemandeurId, 'avocat_principal'); |
1590 |
|
|
}); |
1591 |
|
|
// Bind de la fonction permettant l'ajout de l'avocat |
1592 |
|
|
$("#formulaire").on("click","#add_avocat", function() { |
1593 |
|
|
popupIt('avocat', |
1594 |
softime |
7996 |
'../app/index.php?module=sousform&obj=avocat&action=0'+ |
1595 |
softime |
10573 |
'&retourformulaire=demande&idx_dossier='+id_dossier, 860, 'auto', |
1596 |
softime |
6565 |
getDemandeurId, 'avocat'); |
1597 |
|
|
}); |
1598 |
mbroquet |
3730 |
// Bind de la fonction permettant l'ajout du délégataire |
1599 |
|
|
$("#formulaire").on("click","#add_delegataire", function(event) { |
1600 |
|
|
popupIt('delegataire', |
1601 |
softime |
7996 |
'../app/index.php?module=sousform&obj=delegataire&action=0'+ |
1602 |
softime |
10573 |
'&retourformulaire=demande&idx_dossier='+id_dossier, 860, 'auto', |
1603 |
mbroquet |
3730 |
getDemandeurId, 'delegataire'); |
1604 |
|
|
}); |
1605 |
|
|
// Bind de la fonction permettant l'ajout des pétitionnaires |
1606 |
|
|
$("#formulaire").on("click","#add_petitionnaire", function(event) { |
1607 |
|
|
popupIt('petitionnaire', |
1608 |
softime |
7996 |
'../app/index.php?module=sousform&obj=petitionnaire&action=0'+ |
1609 |
softime |
10573 |
'&retourformulaire=demande&idx_dossier='+id_dossier, 860, 'auto', |
1610 |
mbroquet |
3730 |
getDemandeurId, 'petitionnaire'); |
1611 |
|
|
}); |
1612 |
softime |
7067 |
// Bind de la fonction permettant l'ajout du bailleur principal |
1613 |
|
|
$("#formulaire").on("click","#add_bailleur_principal", function() { |
1614 |
|
|
popupIt('bailleur', |
1615 |
softime |
7996 |
'../app/index.php?module=sousform&obj=bailleur&action=0'+ |
1616 |
softime |
16749 |
'&retourformulaire=demande&principal=true&idx_dossier='+id_dossier, 860, 'auto', |
1617 |
softime |
7067 |
getDemandeurId, 'bailleur_principal'); |
1618 |
|
|
}); |
1619 |
|
|
// Bind de la fonction permettant l'ajout des bailleurs |
1620 |
|
|
$("#formulaire").on("click","#add_bailleur", function() { |
1621 |
|
|
popupIt('bailleur', |
1622 |
softime |
7996 |
'../app/index.php?module=sousform&obj=bailleur&action=0'+ |
1623 |
softime |
10573 |
'&retourformulaire=demande&idx_dossier='+id_dossier, 860, 'auto', |
1624 |
softime |
7067 |
getDemandeurId, 'bailleur'); |
1625 |
|
|
}); |
1626 |
softime |
10573 |
// Bind de la fonction permettant l'ajout du délégataire |
1627 |
|
|
$("#formulaire").on("click","#add_proprietaire", function(event) { |
1628 |
|
|
popupIt('proprietaire', |
1629 |
|
|
'../app/index.php?module=sousform&obj=proprietaire&action=0'+ |
1630 |
|
|
'&retourformulaire=demande&idx_dossier='+id_dossier, 860, 'auto', |
1631 |
|
|
getDemandeurId, 'proprietaire'); |
1632 |
|
|
}); |
1633 |
|
|
// Bind de la fonction permettant l'ajout de l'architecte_lc |
1634 |
|
|
$("#formulaire").on("click","#add_architecte_lc", function(event) { |
1635 |
|
|
popupIt('architecte_lc', |
1636 |
|
|
'../app/index.php?module=sousform&obj=architecte_lc&action=0'+ |
1637 |
|
|
'&retourformulaire=demande&idx_dossier='+id_dossier, 860, 'auto', |
1638 |
|
|
getDemandeurId, 'architecte_lc'); |
1639 |
|
|
}); |
1640 |
|
|
// Bind de la fonction permettant l'ajout du paysagiste |
1641 |
|
|
$("#formulaire").on("click","#add_paysagiste", function(event) { |
1642 |
|
|
popupIt('paysagiste', |
1643 |
|
|
'../app/index.php?module=sousform&obj=paysagiste&action=0'+ |
1644 |
|
|
'&retourformulaire=demande&idx_dossier='+id_dossier, 860, 'auto', |
1645 |
|
|
getDemandeurId, 'paysagiste'); |
1646 |
|
|
}); |
1647 |
mbroquet |
3730 |
|
1648 |
|
|
url = document.location + "" ; |
1649 |
softime |
7996 |
if (url.indexOf("index.php?module=form&") != -1 && |
1650 |
softime |
7685 |
( |
1651 |
|
|
url.indexOf("obj=demande&") != -1 || |
1652 |
|
|
url.indexOf("obj=dossier&") != -1 || |
1653 |
|
|
url.indexOf("obj=dossier_instruction&") != -1 || |
1654 |
|
|
url.indexOf("obj=dossier_instruction_mes_encours&") != -1 || |
1655 |
|
|
url.indexOf("obj=dossier_instruction_tous_encours&") != -1 || |
1656 |
|
|
url.indexOf("obj=dossier_instruction_mes_clotures&") != -1 || |
1657 |
|
|
url.indexOf("obj=dossier_instruction_tous_clotures&") != -1 || |
1658 |
|
|
url.indexOf("obj=dossier_contentieux_mes_infractions&") != -1 || |
1659 |
|
|
url.indexOf("obj=dossier_contentieux_toutes_infractions&") != -1 || |
1660 |
|
|
url.indexOf("obj=dossier_contentieux_mes_recours&") != -1 || |
1661 |
softime |
12847 |
url.indexOf("obj=dossier_contentieux_tous_recours&") != -1 || |
1662 |
|
|
url.indexOf("obj=sous_dossier&") != -1 |
1663 |
mbroquet |
3730 |
) |
1664 |
softime |
7996 |
&& url.indexOf("&action=3") == -1 |
1665 |
softime |
8477 |
&& url.indexOf("&action=126") == -1 |
1666 |
softime |
10573 |
&& url.indexOf("&action=2") == -1 |
1667 |
|
|
&& url.indexOf("&action=160") == -1) { |
1668 |
mbroquet |
3730 |
|
1669 |
|
|
formatFieldReferenceCadastrale(); |
1670 |
|
|
} |
1671 |
|
|
|
1672 |
|
|
// S'il y a une erreur durant la validation lors de l'ajout |
1673 |
|
|
// d'une nouvelle demande |
1674 |
softime |
7996 |
if (url.indexOf("index.php?module=form") != -1 && |
1675 |
softime |
7685 |
(url.indexOf("obj=demande_nouveau_dossier&") != -1 |
1676 |
|
|
|| url.indexOf("obj=demande_nouveau_dossier_contentieux&") != -1) |
1677 |
mbroquet |
3730 |
&& (url.indexOf("&action=3") == -1 |
1678 |
|
|
&& url.indexOf("&action=2") == -1 |
1679 |
softime |
16749 |
&& url.indexOf("&validation") != -1)) { |
1680 |
mbroquet |
3730 |
|
1681 |
softime |
16749 |
add_button_copy_demandeur_address(); |
1682 |
mbroquet |
3730 |
addButtonCadastraleAdesse(); |
1683 |
|
|
formatFieldReferenceCadastrale(); |
1684 |
softime |
6565 |
manage_display_demande($('#dossier_autorisation_type_detaille').val()); |
1685 |
softime |
10573 |
//On affiche le select du type de la demande |
1686 |
|
|
if ($('#demande_type option').size() > 2) { |
1687 |
|
|
$('#demande_type').parent().parent().show(); |
1688 |
|
|
} |
1689 |
softime |
16749 |
verifier_numerotation_urbanisme($('#num_doss_complet')[0]); |
1690 |
mbroquet |
3730 |
} |
1691 |
softime |
7685 |
|
1692 |
softime |
7996 |
if (url.indexOf("index.php?module=form") != -1 |
1693 |
softime |
7685 |
&& (url.indexOf("obj=demande_nouveau_dossier&") != -1 |
1694 |
|
|
|| url.indexOf("obj=demande_nouveau_dossier_contentieux&") != -1) |
1695 |
mbroquet |
3730 |
&& (url.indexOf("&action=3") == -1 |
1696 |
|
|
&& url.indexOf("&action=2") == -1 |
1697 |
|
|
&& url.indexOf("&validation") == -1 |
1698 |
|
|
&& $(".form-is-valid").size() == 0)) { |
1699 |
|
|
|
1700 |
softime |
16749 |
add_button_copy_demandeur_address(); |
1701 |
mbroquet |
3730 |
addButtonCadastraleAdesse(); |
1702 |
|
|
changeDemandeType(); |
1703 |
|
|
} |
1704 |
|
|
|
1705 |
|
|
// Ajout de demande |
1706 |
softime |
7996 |
if (url.indexOf("index.php?module=form") != -1 |
1707 |
softime |
7685 |
&& (url.indexOf("obj=demande_nouveau_dossier&") != -1 |
1708 |
|
|
|| url.indexOf("obj=demande_nouveau_dossier_contentieux&") != -1 |
1709 |
|
|
|| url.indexOf("obj=demande_dossier_encours&") != -1 |
1710 |
|
|
|| url.indexOf("obj=demande_autre_dossier&") != -1) |
1711 |
softime |
7996 |
&& url.indexOf("&action=0") != -1 |
1712 |
|
|
&& url.indexOf("&validation") == -1){ |
1713 |
mbroquet |
3730 |
|
1714 |
|
|
/*Cache les champs avant que dossier_autorisation_type_detaille soit choisi*/ |
1715 |
|
|
hideFields(); |
1716 |
|
|
} |
1717 |
|
|
|
1718 |
|
|
// Ajout de demande sur dossier existant |
1719 |
softime |
7996 |
if (url.indexOf("index.php?module=form") != -1 |
1720 |
softime |
7685 |
&& (url.indexOf("obj=demande_dossier_encours&") != -1 |
1721 |
|
|
|| url.indexOf("obj=demande_autre_dossier&") != -1) |
1722 |
softime |
7996 |
&& url.indexOf("&action=0") != -1 |
1723 |
|
|
&& url.indexOf("&validation") == -1){ |
1724 |
mbroquet |
3730 |
|
1725 |
|
|
//Cache les champs avant que dossier_autorisation_type_detaille soit choisi |
1726 |
|
|
hideFields(); |
1727 |
|
|
//On affiche le select du type de la demande |
1728 |
|
|
$('#demande_type').parent().parent().show(); |
1729 |
|
|
} |
1730 |
|
|
|
1731 |
|
|
// Modification de demande |
1732 |
softime |
7996 |
if ( url.indexOf("index.php?module=form") != -1 |
1733 |
softime |
7685 |
&& ( |
1734 |
|
|
url.indexOf("obj=demande&") != -1 |
1735 |
|
|
|| url.indexOf("obj=demande_nouveau_dossier&") != -1 |
1736 |
|
|
|| url.indexOf("obj=demande_nouveau_dossier_contentieux&") != -1 |
1737 |
|
|
|| url.indexOf("obj=demande_dossier_encours&") != -1 |
1738 |
|
|
|| url.indexOf("obj=demande_autre_dossier&") != -1 |
1739 |
mbroquet |
3730 |
) |
1740 |
|
|
&& url.indexOf("&action") == -1 |
1741 |
|
|
){ |
1742 |
|
|
|
1743 |
|
|
formatFieldReferenceCadastrale(); |
1744 |
|
|
} |
1745 |
softime |
6702 |
|
1746 |
softime |
8989 |
// Sur le formulaire d'ajout d'une nouvelle demande au chargement de la page |
1747 |
|
|
// Si l'option pour saisir la nuérotation manuelle est activée |
1748 |
|
|
if ($("#formulaire div.bloc_numero_dossier").exists() === true) { |
1749 |
|
|
// Affiche ou cache le bloc de la numérotation manuelle en fonction de |
1750 |
|
|
// la case à cocher |
1751 |
softime |
17036 |
toggleNumDossierManuel($("#formulaire div.bloc_numero_dossier div.bloc_activ_num_manu input#num_doss_manuel")[0], true); |
1752 |
softime |
8989 |
} |
1753 |
softime |
7685 |
|
1754 |
softime |
10573 |
// Sur le formulaire d'ajout d'une nouvelle demande au chargement de la page |
1755 |
|
|
// Si l'option pour saisir la nuérotation manuelle est activée |
1756 |
|
|
if ($("#formulaire div.bloc_numero_complet_dossier").exists() === true) { |
1757 |
|
|
// Affiche ou cache le bloc de la numérotation manuelle en fonction de |
1758 |
|
|
// la case à cocher |
1759 |
softime |
17036 |
toggleNoNumDossComplet($("#formulaire div.bloc_numero_complet_dossier input#no_num_doss_complet")[0], true); |
1760 |
softime |
10573 |
} |
1761 |
|
|
|
1762 |
softime |
7996 |
if (url.indexOf("index.php?module=form&") != -1 |
1763 |
softime |
7685 |
&& url.indexOf("obj=commission&") != -1 |
1764 |
softime |
6702 |
&& (url.indexOf("&action=0") != -1 |
1765 |
|
|
|| url.indexOf("&action=1") != -1) |
1766 |
|
|
&& url.indexOf("&validation") == -1 |
1767 |
|
|
&& $(".form-is-valid").size() == 0) { |
1768 |
|
|
changeCommissionType(); |
1769 |
|
|
} |
1770 |
softime |
9245 |
|
1771 |
softime |
8989 |
// surcharge la fonction de sélection des onglets |
1772 |
|
|
// pour déclencher le (re)chargement de l'onglet DI |
1773 |
|
|
// à chaque futur clic provenant d'un autre onglet |
1774 |
|
|
var tabs_select_function = $("#formulaire").tabs('option', 'select'); |
1775 |
|
|
$("#formulaire").tabs('option', 'select', function(event, ui) { |
1776 |
softime |
9245 |
var clicked_on_di_from_another_tab = set_di_href_in_data_load_tabs(event, ui); |
1777 |
softime |
8989 |
tabs_select_function(event, ui); |
1778 |
softime |
9245 |
// cache la recherche dynamique si clique sur DI |
1779 |
|
|
if (clicked_on_di_from_another_tab) { |
1780 |
|
|
$('#recherche_onglet').hide(); |
1781 |
|
|
} |
1782 |
softime |
8989 |
}); |
1783 |
softime |
12124 |
|
1784 |
|
|
// Si on est dans le listing du widget suivi_tache on |
1785 |
|
|
// ajoute une infobulle sur la colonne du type de tache. |
1786 |
|
|
if (url.indexOf("index.php?module=tab&") != -1 |
1787 |
|
|
&& url.indexOf("obj=suivi_tache&") != -1) { |
1788 |
softime |
12433 |
|
1789 |
|
|
// On doit récupérer la valeur du paramètre widget_recherche_id pour la requête ajax |
1790 |
|
|
urlParams = extractUrlParams(); |
1791 |
|
|
typeTitleText = ''; |
1792 |
|
|
// Requête ajax de récupération des données |
1793 |
|
|
$.ajax({ |
1794 |
|
|
type: "GET", |
1795 |
|
|
url: "../app/index.php?module=form&obj=suivi_tache&action=998&idx=0&widget_recherche_id="+urlParams['widget_recherche_id'], |
1796 |
|
|
async: false, |
1797 |
|
|
success: function(data){ |
1798 |
|
|
typeTitleText = data; |
1799 |
|
|
} |
1800 |
|
|
}); |
1801 |
softime |
12124 |
// |
1802 |
softime |
12433 |
$('<span id="infobulle-type" class="ui-icon ui-icon-info" title="'+typeTitleText+'"></span>').insertAfter($("th.col-3 > span.ui-icon-search")); |
1803 |
softime |
12124 |
} |
1804 |
mbroquet |
3730 |
}); |
1805 |
|
|
|
1806 |
softime |
16749 |
|
1807 |
mbroquet |
3730 |
/* |
1808 |
softime |
16749 |
* Méthode permettant de switcher sur l'affichage ou non du message d'information |
1809 |
|
|
* sur l'existence d'un DI |
1810 |
|
|
*/ |
1811 |
softime |
17036 |
function toggleDisplayMessageDIExistOnDemandeNouveauDossier(){ |
1812 |
softime |
16749 |
|
1813 |
|
|
//Si le formulaire n'as pas été validée |
1814 |
|
|
if ($("form[name=f1] .form-is-valid").size() == 0 ) { |
1815 |
|
|
// |
1816 |
|
|
var om_collectivite_id = $('#om_collectivite').val(); |
1817 |
|
|
var datd = $('#dossier_autorisation_type_detaille').val() |
1818 |
|
|
var demande_type = $('#demande_type').val() |
1819 |
|
|
// Vérifie si la checkbox "saisir le numéro de dossier" est cochée |
1820 |
|
|
var checkbox = document.getElementById('no_num_doss_complet'); |
1821 |
|
|
var checkboxIsChecked = checkbox.checked; |
1822 |
|
|
|
1823 |
|
|
// Si la checkbox saisie du numéro de dossier est déselectionné |
1824 |
|
|
if (checkboxIsChecked === false |
1825 |
|
|
&& om_collectivite_id.length !== 0 |
1826 |
|
|
&& datd.length !== 0 |
1827 |
|
|
&& demande_type.length !== 0) { |
1828 |
|
|
// trigger true checkbox numéro de dossier |
1829 |
softime |
17036 |
displayMessageDIExistOnDemandeNouveauDossier(); |
1830 |
softime |
16749 |
} else { |
1831 |
|
|
// vider le message d'erreur |
1832 |
|
|
$('#complet_err_msg').remove(); |
1833 |
|
|
// On supprime le message car checkbox saisie du numéro de dossier à false |
1834 |
softime |
17036 |
undisplayPanelInformation('#display_message_di_exist'); |
1835 |
softime |
16749 |
} |
1836 |
|
|
} else { |
1837 |
|
|
// vider le message d'erreur |
1838 |
|
|
$('#complet_err_msg').remove(); |
1839 |
|
|
// On supprime le message car checkbox saisie du numéro de dossier à false |
1840 |
softime |
17036 |
undisplayPanelInformation('#display_message_di_exist'); |
1841 |
softime |
16749 |
} |
1842 |
|
|
} |
1843 |
|
|
|
1844 |
|
|
/* |
1845 |
|
|
* Méthode de récupération et d'affichage du message d'information sur l'existence |
1846 |
|
|
* d'un DI avec le même numéro de dossier et collectivié que ceux saisis |
1847 |
|
|
* par l'utilisateur |
1848 |
|
|
*/ |
1849 |
softime |
17036 |
function displayMessageDIExistOnDemandeNouveauDossier(){ |
1850 |
softime |
16749 |
|
1851 |
|
|
// Récupération des valeurs necessaire pour la recherche du DI |
1852 |
|
|
var om_collectivite_id = $('#om_collectivite').val(); |
1853 |
|
|
var num_doss_complet = $('#num_doss_complet').val(); |
1854 |
|
|
// Si la suite du formulaire s'est bien affiché (!= "none") |
1855 |
|
|
var ready_to_display = $('#liste_demandeur.demande_hidden_bloc')[0]; |
1856 |
|
|
|
1857 |
|
|
if (om_collectivite_id !== undefined && om_collectivite_id !== '' |
1858 |
|
|
&& (num_doss_complet !== undefined && num_doss_complet !== '') |
1859 |
|
|
&& $(ready_to_display).is(":visible")) { |
1860 |
|
|
|
1861 |
|
|
// récupère l'objet de l'url courante |
1862 |
|
|
// Permet le switch entre une nouvelle demande de dossier classique et de contentieux |
1863 |
|
|
var obj = getUrlParamValue('obj', window.location.search); |
1864 |
|
|
|
1865 |
|
|
// Lien vers l'action permettant de récupérer certaines valeurs du DI |
1866 |
|
|
var url = '../app/index.php?module=form&obj=' + obj + '&action=180&numero_dossier=' + num_doss_complet + |
1867 |
|
|
'&om_collectivite_id=' + om_collectivite_id; |
1868 |
|
|
|
1869 |
|
|
// Récupération du message avec son contenu réactualisé |
1870 |
|
|
$.ajax({ |
1871 |
|
|
type: 'GET', |
1872 |
|
|
url: url, |
1873 |
|
|
dataType: 'text', |
1874 |
|
|
async: true, |
1875 |
|
|
success: function(data) { |
1876 |
|
|
// On supprime le message au cas où il existerait déjà (par exemple lors de deux |
1877 |
|
|
// recherches successives sur deux DI différent existant) |
1878 |
softime |
17036 |
undisplayPanelInformation('#display_message_di_exist'); |
1879 |
softime |
16749 |
// On affiche le message (ré)actualisé avec les nouvelles données du DI |
1880 |
|
|
$('#fieldset-form-' + obj + '-type-de-dossier').parent().after(data) |
1881 |
|
|
}}); |
1882 |
|
|
} else { |
1883 |
softime |
17036 |
undisplayPanelInformation('#display_message_di_exist'); |
1884 |
softime |
16749 |
} |
1885 |
|
|
|
1886 |
|
|
} |
1887 |
|
|
|
1888 |
|
|
/* |
1889 |
|
|
* Méthode de suppression du message d'information |
1890 |
|
|
* Params selecteur string de précisions pour le selecteur commencent par # pour un ID ou . pour une classe. |
1891 |
|
|
*/ |
1892 |
softime |
17036 |
function undisplayPanelInformation(selecteur = null){ |
1893 |
softime |
16749 |
string_selecteur = '.panel_information'; |
1894 |
|
|
if (selecteur !== null) string_selecteur = selecteur; |
1895 |
|
|
$(string_selecteur).remove(); |
1896 |
|
|
} |
1897 |
|
|
|
1898 |
|
|
/* |
1899 |
mbroquet |
3730 |
* Action sur les champs pour les références cadastrales |
1900 |
|
|
*/ |
1901 |
|
|
function formatFieldReferenceCadastrale(){ |
1902 |
|
|
|
1903 |
|
|
addNewFieldReferencesCadastrales(); |
1904 |
|
|
$('#terrain_references_cadastrales').parent().parent().hide(); |
1905 |
|
|
|
1906 |
|
|
url = document.location + ""; |
1907 |
|
|
|
1908 |
|
|
reference_cadastrale = $('#terrain_references_cadastrales').val(); |
1909 |
|
|
/*Formatage de la reference cadastrale*/ |
1910 |
|
|
if ( reference_cadastrale != '' ){ |
1911 |
|
|
/* Récupère la référence cadastrale non formatée */ |
1912 |
|
|
references_cadastrales = reference_cadastrale.split(';'); |
1913 |
|
|
donnees = new Array(); |
1914 |
|
|
|
1915 |
|
|
i = 0 ; |
1916 |
|
|
/* Boucle sur les références, elles étaient séparées par un ; */ |
1917 |
softime |
7521 |
for ( idx_line = 0 ; idx_line < references_cadastrales.length - 1 ; idx_line ++ ) { |
1918 |
mbroquet |
3730 |
|
1919 |
softime |
7521 |
/*Récupère le code impôts du quartier [CHIFFRES]*/ |
1920 |
mbroquet |
3730 |
k = 0; |
1921 |
|
|
donnees[i] = ''; |
1922 |
softime |
7521 |
for ( j = k ; j < references_cadastrales[idx_line].length ; j++ ) { |
1923 |
mbroquet |
3730 |
|
1924 |
softime |
10573 |
if ( k <= 2 ) { |
1925 |
mbroquet |
3730 |
|
1926 |
softime |
7521 |
donnees[i] += references_cadastrales[idx_line].charAt(j); |
1927 |
mbroquet |
3730 |
k++; |
1928 |
|
|
|
1929 |
|
|
} else { |
1930 |
|
|
|
1931 |
|
|
i++; |
1932 |
|
|
break; |
1933 |
|
|
} |
1934 |
|
|
} |
1935 |
softime |
10573 |
|
1936 |
|
|
var only_one_letter = true; |
1937 |
|
|
|
1938 |
|
|
// Le dernier chiffre de la parcelle est soit au caractère 9 soit au caractère 8 |
1939 |
|
|
if (references_cadastrales[idx_line].charAt(8).length == 0 |
1940 |
|
|
|| references_cadastrales[idx_line].charAt(8) == "A" || references_cadastrales[idx_line].charAt(8) == "/" ) { |
1941 |
|
|
|
1942 |
|
|
only_one_letter = true; |
1943 |
|
|
|
1944 |
|
|
} else if ( /^[0-9]+$/.test(references_cadastrales[idx_line].charAt(8)) === true ) { |
1945 |
mbroquet |
3730 |
|
1946 |
softime |
10573 |
only_one_letter = false; |
1947 |
|
|
} |
1948 |
|
|
|
1949 |
|
|
/* Récupère la section [LETTRES / CHIFFRES] */ |
1950 |
mbroquet |
3730 |
donnees[i] = ''; |
1951 |
softime |
7521 |
for ( j = k ; j < references_cadastrales[idx_line].length ; j++ ) |
1952 |
softime |
10573 |
if ( (k == 3 || k == 4) && only_one_letter === false |
1953 |
|
|
|| k == 3 && only_one_letter === true) { |
1954 |
mbroquet |
3730 |
|
1955 |
softime |
7521 |
donnees[i] += references_cadastrales[idx_line].charAt(j); |
1956 |
mbroquet |
3730 |
k++; |
1957 |
|
|
|
1958 |
|
|
} else { |
1959 |
|
|
|
1960 |
|
|
i++; |
1961 |
|
|
break; |
1962 |
|
|
} |
1963 |
|
|
|
1964 |
|
|
/* Récupère la parcelle [CHIFFRES] */ |
1965 |
|
|
donnees[i] = ''; |
1966 |
softime |
7521 |
for ( j = k ; j < references_cadastrales[idx_line].length ; j++ ) |
1967 |
softime |
10573 |
if ( (k>=5 && k<9) && only_one_letter === false |
1968 |
|
|
|| (k>=4 && k<8) && only_one_letter === true){ |
1969 |
mbroquet |
3730 |
|
1970 |
softime |
7521 |
donnees[i] += references_cadastrales[idx_line].charAt(j); |
1971 |
mbroquet |
3730 |
k++; |
1972 |
|
|
|
1973 |
|
|
} else { |
1974 |
|
|
|
1975 |
|
|
break; |
1976 |
|
|
} |
1977 |
|
|
|
1978 |
softime |
10573 |
/* Récupère les séparateurs [ A / ] */ |
1979 |
softime |
7521 |
nb_suffixes = 0; // chaque paire de champs additionnels sur une ligne |
1980 |
|
|
if ( k < references_cadastrales[idx_line].length ) { |
1981 |
mbroquet |
3730 |
|
1982 |
softime |
7521 |
for ( j = k ; j < references_cadastrales[idx_line].length ; j++ ) |
1983 |
|
|
if ( isAlpha(references_cadastrales[idx_line].charAt(j)) ){ |
1984 |
mbroquet |
3730 |
|
1985 |
softime |
7521 |
nb_suffixes++; |
1986 |
|
|
donnees[++i] = references_cadastrales[idx_line].charAt(j); |
1987 |
mbroquet |
3730 |
donnees[++i] = ''; |
1988 |
|
|
} |
1989 |
|
|
else { |
1990 |
|
|
|
1991 |
softime |
7521 |
donnees[i] += references_cadastrales[idx_line].charAt(j); |
1992 |
mbroquet |
3730 |
} |
1993 |
|
|
} |
1994 |
|
|
|
1995 |
|
|
/*Créé autant de champs de que de référence */ |
1996 |
|
|
donnees[++i] = ';'; |
1997 |
|
|
i++; |
1998 |
|
|
|
1999 |
softime |
7521 |
if ( idx_line > 0 ) { |
2000 |
softime |
16749 |
$('.reference_cadastrale_custom_fields').append(fieldReferenceCadastraleBase()); |
2001 |
mbroquet |
3730 |
} |
2002 |
|
|
|
2003 |
|
|
actionFormReferenceCadastrale(); |
2004 |
|
|
|
2005 |
softime |
7521 |
if ( nb_suffixes > 0 ) { |
2006 |
mbroquet |
3730 |
|
2007 |
softime |
7521 |
for ( j = 0 ; j < nb_suffixes ; j++ ){ |
2008 |
mbroquet |
3730 |
|
2009 |
softime |
7521 |
var idx_last_line = $('.moreFieldReferenceCadastrale').length - 1; |
2010 |
|
|
var selector = '#moreFieldReferenceCadastrale' + idx_last_line; |
2011 |
|
|
/*Boutton "ajouter d'autres champs" (le dernier à ce moment là de l'exécution)*/ |
2012 |
|
|
var more_fields_button = $(selector); |
2013 |
|
|
if (more_fields_button.length === 0) { |
2014 |
|
|
console.error('Boutton "ajouter d\'autres champs" non trouvé. selecteur: ' + selector); |
2015 |
|
|
continue; // TODO meilleure gestion de cette erreur. Elle n'est pas |
2016 |
|
|
// censée arriver et est critique ça va causer un corruption |
2017 |
|
|
// du formulaire. (bouton inactifs, ) |
2018 |
|
|
} |
2019 |
|
|
more_fields_button. |
2020 |
mbroquet |
3730 |
before( |
2021 |
|
|
newInputReferenceCadastrale() |
2022 |
|
|
); |
2023 |
|
|
} |
2024 |
|
|
} |
2025 |
|
|
} |
2026 |
|
|
/* Action sur les boutons [+ ajouter d'autres champs] et [+ ajouter |
2027 |
|
|
* d'autres lignes] */ |
2028 |
|
|
actionLineFormReferenceCadastrale(); |
2029 |
|
|
|
2030 |
|
|
/* Ajoute les données dans les champs nouvellement créés */ |
2031 |
|
|
$('.reference_cadastrale_custom_field').each( |
2032 |
|
|
function(index) { |
2033 |
|
|
|
2034 |
|
|
$(this).val(donnees[index]) |
2035 |
|
|
} |
2036 |
|
|
); |
2037 |
|
|
} |
2038 |
|
|
else{ |
2039 |
|
|
actionFormReferenceCadastrale(); |
2040 |
|
|
actionLineFormReferenceCadastrale(); |
2041 |
|
|
} |
2042 |
|
|
} |
2043 |
|
|
|
2044 |
|
|
/** |
2045 |
|
|
* Ajoute les icônes pour la recherche de pétitionnaire fréquent. |
2046 |
|
|
*/ |
2047 |
|
|
function addSearchIcon(){ |
2048 |
|
|
|
2049 |
|
|
$("#form-content:not(.form-is-valid) .search_fields").each( |
2050 |
|
|
function() { |
2051 |
|
|
|
2052 |
|
|
// N'ajoute pas l'icône de recherche sur la collectivité |
2053 |
|
|
if ($(this).find("#om_collectivite").length <= 0) { |
2054 |
|
|
|
2055 |
|
|
//Ajout de l'icône après le champs dénomination et nom de la personne morale*/ |
2056 |
|
|
$(this).append( |
2057 |
|
|
'<span '+ |
2058 |
|
|
'class="om-icon om-icon-16 om-icon-fix search-frequent-16" '+ |
2059 |
|
|
'title="Chercher un frequent"> '+ |
2060 |
|
|
'</span>' |
2061 |
|
|
); |
2062 |
|
|
} |
2063 |
|
|
} |
2064 |
|
|
); |
2065 |
|
|
|
2066 |
|
|
/*Ajout des actions sur les boutons*/ |
2067 |
|
|
addActionSearchIcon(); |
2068 |
|
|
addActionRemove(); |
2069 |
|
|
|
2070 |
|
|
} |
2071 |
|
|
|
2072 |
|
|
/** |
2073 |
|
|
* Fonction permettant de revenir sur le formulaire d'ajout de demandeur |
2074 |
|
|
**/ |
2075 |
softime |
16749 |
function addActionRemove() { |
2076 |
|
|
$('.erase-demandeur').click( |
2077 |
|
|
function(){ |
2078 |
|
|
clear_form($('#sousform-demandeur form'), true, ['#qualite']); |
2079 |
|
|
}); |
2080 |
mbroquet |
3730 |
$('.erase-petitionnaire').click( |
2081 |
|
|
function(){ |
2082 |
softime |
16749 |
clear_form($('#sousform-petitionnaire form'), true, ['#qualite']); |
2083 |
mbroquet |
3730 |
}); |
2084 |
softime |
6565 |
$('.erase-avocat').click( |
2085 |
|
|
function(){ |
2086 |
softime |
16749 |
clear_form($('#sousform-avocat form'), true, ['#qualite']); |
2087 |
softime |
6565 |
}); |
2088 |
softime |
7067 |
$('.erase-bailleur').click( |
2089 |
|
|
function(){ |
2090 |
softime |
16749 |
clear_form($('#sousform-bailleur form'), true, ['#qualite']); |
2091 |
softime |
7067 |
}); |
2092 |
softime |
16749 |
$('.erase-proprietaire').click( |
2093 |
|
|
function(){ |
2094 |
|
|
clear_form($('#sousform-proprietaire form'), true, ['#qualite']); |
2095 |
|
|
}); |
2096 |
|
|
$('.erase-plaignant').click( |
2097 |
|
|
function(){ |
2098 |
|
|
clear_form($('#sousform-plaignant form'), true, ['#qualite']); |
2099 |
|
|
}); |
2100 |
|
|
$('.erase-delegataire').click( |
2101 |
|
|
function(){ |
2102 |
|
|
clear_form($('#sousform-delegataire form'), true, ['#qualite']); |
2103 |
|
|
}); |
2104 |
|
|
$('.erase-requerant').click( |
2105 |
|
|
function(){ |
2106 |
|
|
clear_form($('#sousform-requerant form'), true, ['#qualite']); |
2107 |
|
|
}); |
2108 |
|
|
$('.erase-contrevenant').click( |
2109 |
|
|
function(){ |
2110 |
|
|
clear_form($('#sousform-contrevenant form'), true, ['#qualite']); |
2111 |
|
|
}); |
2112 |
|
|
$('.erase-architecte_lc').click( |
2113 |
|
|
function(){ |
2114 |
|
|
clear_form($('#sousform-architecte_lc form'), true, ['#qualite']); |
2115 |
|
|
}); |
2116 |
|
|
$('.erase-paysagiste').click( |
2117 |
|
|
function(){ |
2118 |
|
|
clear_form($('#sousform-paysagiste form'), true, ['#qualite']); |
2119 |
|
|
}); |
2120 |
mbroquet |
3730 |
} |
2121 |
|
|
|
2122 |
|
|
/** |
2123 |
|
|
* Vérifie que les champs necessaires sont remplis et retourne les données necessaires |
2124 |
|
|
* sous forme de tableau JSOn |
2125 |
|
|
*/ |
2126 |
|
|
function getDataSearch(){ |
2127 |
|
|
|
2128 |
|
|
// Récupèration de la valeur de la collectivité du dossier... |
2129 |
|
|
var om_collectivite_value = $('#om_collectivite').val(); |
2130 |
|
|
// ... écrasée éventuellement par celle du demandeur |
2131 |
|
|
if ($('#sousform-petitionnaire #om_collectivite').length) { |
2132 |
|
|
om_collectivite_value = $('#sousform-petitionnaire #om_collectivite').val(); |
2133 |
|
|
} |
2134 |
softime |
7685 |
else if ($('#sousform-bailleur #om_collectivite').length) { |
2135 |
|
|
om_collectivite_value = $('#sousform-bailleur #om_collectivite').val(); |
2136 |
|
|
} |
2137 |
|
|
else if ($('#sousform-avocat #om_collectivite').length) { |
2138 |
|
|
om_collectivite_value = $('#sousform-avocat #om_collectivite').val(); |
2139 |
|
|
} |
2140 |
mbroquet |
3730 |
// Il faut un minimum de trois lettres pour lancer la recherche |
2141 |
|
|
var minChar = false; |
2142 |
|
|
// Récupération des données |
2143 |
|
|
var dataJson = "{"; |
2144 |
|
|
$('.search_fields .champFormulaire').each( |
2145 |
|
|
function(){ |
2146 |
|
|
if ( $(this).val().length >= 3 ){ |
2147 |
|
|
minChar = true; |
2148 |
|
|
} |
2149 |
|
|
|
2150 |
|
|
var idInput = $(this).attr("id"); |
2151 |
|
|
var valInput = $(this).val(); |
2152 |
|
|
dataJson += "\"" + idInput + "\":\"" + valInput + "\","; |
2153 |
|
|
} |
2154 |
|
|
); |
2155 |
|
|
|
2156 |
|
|
// Si aucune collectivité est sélectionné |
2157 |
|
|
if (om_collectivite_value == "") { |
2158 |
|
|
// |
2159 |
|
|
alert('Veuillez sélectionner une collectivité.'); |
2160 |
|
|
return ""; |
2161 |
|
|
} |
2162 |
|
|
|
2163 |
|
|
if (!minChar){ |
2164 |
|
|
alert('Saisissez au moins trois lettres pour la recherche'); |
2165 |
|
|
return ""; |
2166 |
|
|
} |
2167 |
|
|
// Transformation de la chaîne de caractères en tableau |
2168 |
|
|
dataJson = $.parseJSON(dataJson.substring(0,dataJson.length-1)+"}"); |
2169 |
|
|
// Mono : on définit la collectivité |
2170 |
|
|
// Multi : on écrase la collectivité |
2171 |
|
|
dataJson.om_collectivite = om_collectivite_value; |
2172 |
|
|
// Retour des champs avec leur valeur |
2173 |
|
|
return dataJson; |
2174 |
|
|
} |
2175 |
|
|
|
2176 |
|
|
/* |
2177 |
|
|
* Ajoute les actions sur les icônes de recherche |
2178 |
|
|
*/ |
2179 |
|
|
function addActionSearchIcon(){ |
2180 |
|
|
|
2181 |
|
|
//Selon l'objet dans lequel on se trouve |
2182 |
|
|
var objName = ''; |
2183 |
|
|
var objReturn = ''; |
2184 |
softime |
6565 |
if ( $('#sousform-petitionnaire').length == 1 ){ |
2185 |
mbroquet |
3730 |
objName = 'petitionnaire'; |
2186 |
|
|
objReturn = 'demande'; |
2187 |
|
|
} |
2188 |
|
|
else if($('#architecte').length == 1){ |
2189 |
|
|
objName = 'architecte'; |
2190 |
|
|
objReturn = 'donnees_techniques'; |
2191 |
|
|
} |
2192 |
softime |
6565 |
else if($('#sousform-avocat').length == 1){ |
2193 |
|
|
objName = 'avocat'; |
2194 |
|
|
objReturn = 'demande'; |
2195 |
|
|
} |
2196 |
softime |
7067 |
else if($('#sousform-bailleur').length == 1){ |
2197 |
|
|
objName = 'bailleur'; |
2198 |
|
|
objReturn = 'demande'; |
2199 |
|
|
} |
2200 |
mbroquet |
3730 |
$('.search-frequent-16').click( |
2201 |
|
|
function(){ |
2202 |
|
|
//Récupération des données |
2203 |
|
|
dataJson = getDataSearch(); |
2204 |
|
|
//Si ce n'est pas un tableau JSON on n'exécute pas le reste du code |
2205 |
|
|
if ( typeof dataJson !== 'object' ){ |
2206 |
|
|
return; |
2207 |
|
|
} |
2208 |
|
|
|
2209 |
|
|
//Requête qui va récupérer les données du addSearchIcon(es) |
2210 |
|
|
//pétitionnaire(s) correspondant(s) à la recherche |
2211 |
|
|
$.ajax({ |
2212 |
|
|
type: "POST", |
2213 |
|
|
dataType: "json", |
2214 |
|
|
data: dataJson, |
2215 |
|
|
url: "../app/find" + objName.charAt(0).toUpperCase() + objName.substring(1) + ".php" , |
2216 |
|
|
cache: false, |
2217 |
|
|
success: function(obj){ |
2218 |
|
|
var freq = obj; |
2219 |
|
|
var res=''; |
2220 |
|
|
/*Si la recherche a donné des résultats*/ |
2221 |
|
|
if ( freq.length > 0 ){ |
2222 |
|
|
/*Limitation des résultats à 50 */ |
2223 |
|
|
if ( freq.length > 50 ){ |
2224 |
|
|
|
2225 |
|
|
nbRes = 50; |
2226 |
|
|
res += 'Votre recherche a donné ' + freq.length |
2227 |
|
|
+ ' résultats. Seul les cinquantes premiers ' + |
2228 |
|
|
'seront affichés.<br/>'; |
2229 |
|
|
} else { |
2230 |
|
|
nbRes = freq.length; |
2231 |
|
|
} |
2232 |
|
|
|
2233 |
|
|
res += '<select id="select-'+objName+'">' ; |
2234 |
|
|
|
2235 |
|
|
/* Met les résultats de la recherche dans un select */ |
2236 |
|
|
for ( i = 0 ; i < nbRes ; i++ ){ |
2237 |
|
|
res += '<option value="' + freq[i].value + '">' + |
2238 |
|
|
freq[i].content + |
2239 |
|
|
'</option>'; |
2240 |
|
|
} |
2241 |
|
|
|
2242 |
|
|
res += '</select>'; |
2243 |
|
|
} else { |
2244 |
|
|
res += 'Aucune correspondance trouvée.'; |
2245 |
|
|
} |
2246 |
|
|
|
2247 |
|
|
addDivDialog('#sousform-' + objName); |
2248 |
|
|
/* Affichage de l'overlay */ |
2249 |
|
|
$('#dialog').html(res); |
2250 |
|
|
|
2251 |
|
|
$( "#dialog" ).dialog({ |
2252 |
|
|
dialogClass: "dialog-search-frequent-"+objName, |
2253 |
|
|
modal: true, |
2254 |
|
|
buttons : { |
2255 |
|
|
Valider: function(){ |
2256 |
|
|
if ( res != 'Aucune correspondance trouvée.'){ |
2257 |
|
|
var id = $('#select-'+objName+' option:selected').val(); |
2258 |
|
|
if($.isNumeric(id)) { |
2259 |
|
|
ajaxIt(objName, |
2260 |
softime |
7996 |
'../app/index.php?module=sousform&obj=' + objName + |
2261 |
mbroquet |
3730 |
'&action=110&retourformulaire=' + objReturn + |
2262 |
|
|
'&idx='+id |
2263 |
|
|
); |
2264 |
|
|
} |
2265 |
|
|
} |
2266 |
|
|
// Fermeture de l'overlay |
2267 |
|
|
$(this).dialog( "close" ); |
2268 |
|
|
$(this).remove(); |
2269 |
|
|
} |
2270 |
|
|
}, |
2271 |
|
|
close: function(){ |
2272 |
|
|
$(this).remove(); |
2273 |
|
|
} |
2274 |
|
|
}); |
2275 |
|
|
}, |
2276 |
|
|
}); |
2277 |
|
|
} |
2278 |
|
|
); |
2279 |
|
|
} |
2280 |
|
|
|
2281 |
|
|
/* |
2282 |
|
|
* Ajoute un div pour l'overlay dialog de jQuery |
2283 |
|
|
*/ |
2284 |
|
|
function addDivDialog(id){ |
2285 |
|
|
|
2286 |
|
|
$(id).prepend('<div id="dialog"></div>'); |
2287 |
nhaye |
5254 |
|
2288 |
mbroquet |
3730 |
} |
2289 |
|
|
|
2290 |
|
|
/* |
2291 |
|
|
Action au changement du select de la qualite du demandeur |
2292 |
|
|
* */ |
2293 |
|
|
function changeDemandeurType(id){ |
2294 |
|
|
|
2295 |
|
|
/*Réinitialise les champs et cache les champs inutiles selon la qualité du demandeur*/ |
2296 |
|
|
/*Si la qualite du demandeur est particulier */ |
2297 |
|
|
if ( $('#' + id ).val() == 'particulier' ) { |
2298 |
|
|
|
2299 |
|
|
$('.personne_morale_fields input').each( |
2300 |
|
|
function(){ |
2301 |
|
|
$(this).val(''); |
2302 |
|
|
} |
2303 |
|
|
); |
2304 |
|
|
$('.personne_morale_fields select option[value=""]').each( |
2305 |
|
|
function(){ |
2306 |
|
|
$(this).attr('selected', 'selected'); |
2307 |
|
|
} |
2308 |
|
|
); |
2309 |
|
|
|
2310 |
|
|
$('.personne_morale_fields').hide(); |
2311 |
|
|
$('.particulier_fields').show(); |
2312 |
|
|
} |
2313 |
|
|
/*Si c'est une personne morale*/ |
2314 |
|
|
else if ( $('#' + id ).val() == 'personne_morale' ) { |
2315 |
|
|
|
2316 |
|
|
$('.particulier_fields input').each( |
2317 |
|
|
function(){ |
2318 |
|
|
$(this).val(''); |
2319 |
|
|
} |
2320 |
|
|
); |
2321 |
|
|
$('.particulier_fields select option[value=""]').each( |
2322 |
|
|
function(){ |
2323 |
|
|
$(this).attr('selected', 'selected'); |
2324 |
|
|
} |
2325 |
|
|
); |
2326 |
|
|
|
2327 |
|
|
$('.particulier_fields').hide(); |
2328 |
|
|
$('.personne_morale_fields').show(); |
2329 |
|
|
} |
2330 |
|
|
} |
2331 |
|
|
|
2332 |
|
|
/* |
2333 |
|
|
Fonction de test des champs |
2334 |
|
|
* */ |
2335 |
softime |
17036 |
|
2336 |
mbroquet |
3730 |
function isAlpha(str) { |
2337 |
|
|
return /^[a-zA-Z\/]+$/.test(str); |
2338 |
|
|
} |
2339 |
|
|
|
2340 |
softime |
17036 |
function isAlphaNum(str) { |
2341 |
softime |
8989 |
return /^[a-zA-Z0-9\/]+$/.test(str); |
2342 |
|
|
} |
2343 |
|
|
|
2344 |
softime |
17036 |
// verifNumDec - type text |
2345 |
|
|
function verifNumDec(champ) { |
2346 |
|
|
champ.value = champ.value.replace(",", "."); // remplacement de la virgule |
2347 |
|
|
//if (champ.value.lastIndexOf(".") == -1){ // champ decimal |
2348 |
|
|
if (isNaN(champ.value)) { |
2349 |
|
|
alert(msg_alert_error_verifnum); |
2350 |
|
|
champ.value = ""; |
2351 |
|
|
return; |
2352 |
|
|
} |
2353 |
|
|
//} |
2354 |
|
|
|
2355 |
mbroquet |
3730 |
} |
2356 |
|
|
|
2357 |
softime |
8989 |
/** |
2358 |
|
|
* Permet de vérifier que la valeur saisie dans un champ input est une chaîne de |
2359 |
|
|
* caractères alphanumérique. |
2360 |
|
|
* Le cas échéant, affiche un message d'erreur et supprime la valeur du champ. |
2361 |
|
|
* |
2362 |
|
|
* @return void |
2363 |
|
|
*/ |
2364 |
softime |
17036 |
function checkInputIsAlphaNum(input, error_msg) { |
2365 |
softime |
8989 |
if (typeof(error_msg) == 'undefined') { |
2366 |
|
|
error_msg = "Il ne s'agit pas d'une chaîne alphanumérique."; |
2367 |
|
|
} |
2368 |
softime |
17036 |
if (input.value !== '' && isAlphaNum(input.value) === false) { |
2369 |
softime |
8989 |
alert(error_msg); |
2370 |
|
|
input.value = ''; |
2371 |
|
|
} |
2372 |
|
|
} |
2373 |
mbroquet |
3730 |
|
2374 |
softime |
16749 |
/** |
2375 |
|
|
* Permet de vérifier que la valeur saisie dans un champ input est une chaîne de |
2376 |
|
|
* caractères alphanumérique. |
2377 |
|
|
* Elle ne remonte aucune alerte et n'est pas bloquant |
2378 |
|
|
* On supprime tout caractère qui n'est pas alphanumérique |
2379 |
|
|
* |
2380 |
|
|
* @return void |
2381 |
|
|
*/ |
2382 |
|
|
function checkInputNumDossierComplet(input) { |
2383 |
|
|
// Si la valeur n'est pas vide |
2384 |
softime |
17036 |
if (input.value !== '' && isAlphaNum(input.value) === false) { |
2385 |
softime |
16749 |
// On nettoye la valeur et on ne conserve que les caractères alphanumériques |
2386 |
|
|
input.value = input.value.replace(/[^0-9A-Za-z]/gi, ""); |
2387 |
|
|
} |
2388 |
|
|
} |
2389 |
|
|
|
2390 |
mbroquet |
3730 |
/* |
2391 |
softime |
7521 |
* Ajoute les actions spécifiques pour le formulaire personnalisé d'ajout de |
2392 |
|
|
* référence cadastrale. (boutons "ajouter d'autres champs") |
2393 |
|
|
* Est appelée une fois par ligne de référence cadastrale et bind l'action sur |
2394 |
|
|
* le dernier boutton existant. |
2395 |
mbroquet |
3730 |
*/ |
2396 |
|
|
function actionFormReferenceCadastrale(){ |
2397 |
|
|
|
2398 |
|
|
if( $("form[name=f1] .form-is-valid").size() == 0) { |
2399 |
|
|
|
2400 |
softime |
7521 |
var idx_last_line = $('.moreFieldReferenceCadastrale').length - 1; |
2401 |
|
|
var selector = '#moreFieldReferenceCadastrale' + idx_last_line; |
2402 |
|
|
/*Boutton "ajouter d'autres champs" (le dernier à ce moment là de l'exécution)*/ |
2403 |
|
|
var more_fields_button = $(selector); |
2404 |
|
|
if (more_fields_button.length === 0) { |
2405 |
|
|
console.error('Boutton "ajouter d\'autres champs" non trouvé. selecteur: ' + selector); |
2406 |
|
|
return; // TODO meilleure gestion de cette erreur. Elle n'est pas |
2407 |
|
|
// censée arriver et est critique ça va causer un corruption |
2408 |
|
|
// du formulaire. (bouton inactifs, ) |
2409 |
|
|
} |
2410 |
|
|
more_fields_button. |
2411 |
mbroquet |
3730 |
on("click", function() { |
2412 |
|
|
|
2413 |
|
|
$(this).before(newInputReferenceCadastrale()); |
2414 |
|
|
}); |
2415 |
|
|
} |
2416 |
|
|
|
2417 |
|
|
} |
2418 |
|
|
|
2419 |
|
|
/* |
2420 |
|
|
* Récupère les données saisies dans les champs de références cadastrales |
2421 |
|
|
*/ |
2422 |
|
|
function getDataFieldReferenceCadastrale(){ |
2423 |
|
|
|
2424 |
softime |
16749 |
let reference_cadastrale = ''; |
2425 |
|
|
let reference_cadastrale_temp = ''; |
2426 |
|
|
let error = false; |
2427 |
mbroquet |
3730 |
|
2428 |
|
|
/*Pour chacun des champs du formulaire de saisie de référence cadastrale*/ |
2429 |
|
|
$('.reference_cadastrale_custom_field').each( |
2430 |
|
|
function(){ |
2431 |
softime |
16749 |
|
2432 |
mbroquet |
3730 |
/*Si on est à la fin d'une ligne de champs*/ |
2433 |
|
|
if ( $(this).val() == ';' ){ |
2434 |
softime |
16749 |
reference_cadastrale_bis = reference_cadastrale_temp ; |
2435 |
mbroquet |
3730 |
/* Vérifie que les données sont correctement formatées avant de |
2436 |
|
|
* les ajouter au résultat*/ |
2437 |
softime |
16749 |
if ( reference_cadastrale_bis !== ''){ |
2438 |
|
|
// On vérifie que le formatage correct, ainsi que la présence éventuelle d'opérateurs en fin de référence |
2439 |
|
|
if ( /^([0-9]{1,4}[0-9a-zA-Z]{1,2}[0-9]{1,5}([A\/]{1}[0-9]{1,4})*)*[A\/]*$/.test(reference_cadastrale_bis) ){ |
2440 |
|
|
// On supprime les opérateurs finaux indésirables |
2441 |
|
|
reference_cadastrale_bis = reference_cadastrale_bis.replace(/[A\/]*$/, ''); |
2442 |
|
|
reference_cadastrale += reference_cadastrale_bis + (reference_cadastrale_bis ? ";" : "") ; |
2443 |
mbroquet |
3730 |
} |
2444 |
|
|
else{ |
2445 |
|
|
alert("Les références cadastrales saisies sont incorrectes. Veuillez les corriger."); |
2446 |
|
|
error = true; |
2447 |
|
|
return false; |
2448 |
softime |
16749 |
} |
2449 |
mbroquet |
3730 |
} |
2450 |
|
|
reference_cadastrale_temp = ''; |
2451 |
|
|
} |
2452 |
|
|
else { |
2453 |
|
|
/*Sinon, on récupère la valeur du champ*/ |
2454 |
|
|
reference_cadastrale_temp += $(this).val(); |
2455 |
|
|
} |
2456 |
|
|
} |
2457 |
|
|
); |
2458 |
|
|
|
2459 |
|
|
if(error) return false; |
2460 |
|
|
/*Met la valeur du résultat dans le champs généré par le framework*/ |
2461 |
|
|
$('#terrain_references_cadastrales').val(reference_cadastrale); |
2462 |
|
|
return true; |
2463 |
|
|
} |
2464 |
|
|
|
2465 |
|
|
/* |
2466 |
|
|
Action pour l'ajout de nouvelle ligne dans le formulaire d'ajout |
2467 |
|
|
de référence cadastrale |
2468 |
|
|
* */ |
2469 |
|
|
function actionLineFormReferenceCadastrale(){ |
2470 |
softime |
10573 |
|
2471 |
mbroquet |
3730 |
if( $("form[name=f1] .form-is-valid").size() == 0) { |
2472 |
|
|
|
2473 |
|
|
$('#morelineReferenceCadastrale').click( |
2474 |
|
|
function(){ |
2475 |
|
|
|
2476 |
|
|
/*Ajout des trois champs de base*/ |
2477 |
|
|
$('.reference_cadastrale_custom_fields'). |
2478 |
softime |
16749 |
append(fieldReferenceCadastraleBase()); |
2479 |
mbroquet |
3730 |
|
2480 |
|
|
/*Ajout du bind pour l'ajout de nouveaux champs*/ |
2481 |
softime |
7521 |
var idx_last_line = $('.moreFieldReferenceCadastrale').length - 1; |
2482 |
|
|
var selector = '#moreFieldReferenceCadastrale' + idx_last_line; |
2483 |
|
|
/*Boutton "ajouter d'autres champs" (le dernier à ce moment là de l'exécution)*/ |
2484 |
|
|
var more_fields_button = $(selector); |
2485 |
|
|
if (more_fields_button.length === 0) { |
2486 |
|
|
console.error('Boutton "ajouter d\'autres champs" non trouvé. selecteur: ' + selector); |
2487 |
|
|
return; // TODO meilleure gestion de cette erreur. Elle n'est pas |
2488 |
|
|
// censée arriver et est critique ça va causer un corruption |
2489 |
|
|
// du formulaire. (bouton inactifs, ) |
2490 |
|
|
} |
2491 |
|
|
more_fields_button. |
2492 |
mbroquet |
3730 |
on("click", function() { |
2493 |
|
|
$(this).before(newInputReferenceCadastrale()); |
2494 |
|
|
}); |
2495 |
|
|
} |
2496 |
|
|
); |
2497 |
|
|
} |
2498 |
|
|
} |
2499 |
|
|
|
2500 |
softime |
6702 |
|
2501 |
softime |
6565 |
/** |
2502 |
softime |
6702 |
* Gestion du type de commission et de l'affichage des champs du formulaire |
2503 |
|
|
* lors de la sélection de la collectivité. |
2504 |
|
|
* |
2505 |
|
|
* @return void |
2506 |
|
|
*/ |
2507 |
|
|
function changeCommissionType(){ |
2508 |
|
|
|
2509 |
|
|
var idCollectivite = $("#om_collectivite").val(); |
2510 |
|
|
|
2511 |
|
|
// Si l'identifiant fourni est valide |
2512 |
|
|
if ($.isNumeric(idCollectivite)){ |
2513 |
|
|
|
2514 |
|
|
// Met à jour la liste déroulante des type de commission |
2515 |
|
|
// avec les données correspondantes |
2516 |
|
|
filterSelect(idCollectivite, 'commission_type', 'om_collectivite', 'commission'); |
2517 |
|
|
} |
2518 |
|
|
} |
2519 |
|
|
|
2520 |
softime |
7366 |
|
2521 |
softime |
6702 |
/** |
2522 |
softime |
10573 |
* Gestion du type de la demande |
2523 |
softime |
6565 |
* lors de la sélection du type de DA détaillé. |
2524 |
|
|
* |
2525 |
|
|
* @return void |
2526 |
|
|
*/ |
2527 |
softime |
10573 |
function changeDemandeType(tab_datd_dossier_platau){ |
2528 |
mbroquet |
3730 |
|
2529 |
|
|
var idDossierAutorisationTypeDetaille = |
2530 |
|
|
$("#dossier_autorisation_type_detaille").val(); |
2531 |
softime |
10573 |
|
2532 |
softime |
6565 |
// Récupère les données saisies dans les champs pour la référence cadastrale |
2533 |
mbroquet |
3730 |
getDataFieldReferenceCadastrale(); |
2534 |
softime |
6565 |
|
2535 |
|
|
// Si l'identifiant fourni est valide |
2536 |
mbroquet |
3730 |
if ( $.isNumeric(idDossierAutorisationTypeDetaille) ){ |
2537 |
softime |
6565 |
|
2538 |
softime |
10573 |
// Si le champ 'demande_type' existe |
2539 |
|
|
var demande_type_node = document.getElementById('demande_type'); |
2540 |
|
|
if (demande_type_node) { |
2541 |
|
|
|
2542 |
|
|
// Met à jour la liste déroulante du type de demande |
2543 |
|
|
// avec les données correspondantes |
2544 |
|
|
filterSelect(idDossierAutorisationTypeDetaille, 'demande_type', 'dossier_autorisation_type_detaille', 'demande'); |
2545 |
|
|
|
2546 |
|
|
// récupère l'élément jQuery correspondant |
2547 |
|
|
var demande_type_jq = $(demande_type_node); |
2548 |
|
|
|
2549 |
|
|
// Affiche la liste déroulante du type de demande |
2550 |
|
|
demande_type_jq.parent().parent().show(); |
2551 |
|
|
|
2552 |
|
|
// S'il n'y a qu'un seul type de demande |
2553 |
|
|
// on le sélectionne et on le masque |
2554 |
|
|
if ($('#demande_type option').size() === 2) { |
2555 |
|
|
var idx_type_demande = $('#demande_type option').eq(1).val(); |
2556 |
|
|
demande_type_jq.val(idx_type_demande); |
2557 |
|
|
//demande_type_jq.trigger('change'); |
2558 |
|
|
demande_type_jq.parent().parent().hide(); |
2559 |
|
|
} |
2560 |
mbroquet |
3730 |
} |
2561 |
softime |
10573 |
} |
2562 |
|
|
} |
2563 |
|
|
|
2564 |
|
|
/* |
2565 |
|
|
* Renvoi 'true' si le formulaire de la dmande est déjà affiché en entier, 'false' sinon. |
2566 |
|
|
* |
2567 |
|
|
*/ |
2568 |
|
|
function isNouvelleDemandeFormDisplayed() { |
2569 |
|
|
var date_demande_node = document.getElementById('date_demande'); |
2570 |
|
|
var type_of_date_demande_node = typeof(date_demande_node); |
2571 |
|
|
if (type_of_date_demande_node != 'undefined' && type_of_date_demande_node != null) { |
2572 |
|
|
return $(date_demande_node).is(":visible"); |
2573 |
|
|
} |
2574 |
|
|
return false; |
2575 |
|
|
} |
2576 |
|
|
|
2577 |
|
|
/* |
2578 |
|
|
* Affiche le formulaire de demande, en fonction du DAtd et de la demande type |
2579 |
|
|
* |
2580 |
|
|
* @return void |
2581 |
|
|
*/ |
2582 |
|
|
function afficheFormDemandeDAtd(hideWhenAlreadyAForm = 0) { |
2583 |
|
|
|
2584 |
|
|
var idDossierAutorisationTypeDetaille = |
2585 |
|
|
$("#dossier_autorisation_type_detaille").val(); |
2586 |
|
|
|
2587 |
|
|
// Si l'identifiant fourni est valide |
2588 |
|
|
if ($.isNumeric(idDossierAutorisationTypeDetaille)) { |
2589 |
|
|
|
2590 |
|
|
// si on a demandé à masquer les champs d'abord (avant de les ré-afficher) |
2591 |
|
|
var hideSec = 0; |
2592 |
|
|
if (isNouvelleDemandeFormDisplayed()) { |
2593 |
|
|
hideFields(); |
2594 |
|
|
hideSec = hideWhenAlreadyAForm; |
2595 |
softime |
6565 |
} |
2596 |
softime |
10573 |
setTimeout(function () { |
2597 |
softime |
16749 |
manage_display_demande(idDossierAutorisationTypeDetaille); |
2598 |
softime |
6565 |
|
2599 |
softime |
10573 |
// S'il n'y a qu'un seul type de demande on affiche les champs d'après |
2600 |
softime |
16749 |
// et on remplis la liste à choix de la nature des travaux |
2601 |
softime |
10573 |
if ($('#demande_type option').size() === 2) { |
2602 |
softime |
16749 |
filterSelect($('#demande_type').val(), 'nature_travaux', 'demande_type', 'demande_nouveau_dossier'); |
2603 |
softime |
10573 |
} |
2604 |
|
|
|
2605 |
|
|
// S'il n'y a pas de type de demande |
2606 |
|
|
// on affiche directement les champs d'après |
2607 |
|
|
else if ($('#demande_type option').size() < 2) { |
2608 |
|
|
showFormDemande(); |
2609 |
|
|
} |
2610 |
|
|
|
2611 |
|
|
// sinon on affiche le champ |
2612 |
|
|
else { |
2613 |
|
|
$('#demande_type').parent().parent().show(); |
2614 |
|
|
} |
2615 |
|
|
|
2616 |
|
|
// Si aucune option n'est sélectionnée on masque les champs d'après |
2617 |
|
|
if($('#demande_type').val() == '' ) { |
2618 |
|
|
hideFields(false); // masquer les champs mais pas 'demande_type' |
2619 |
|
|
$('input[type=submit]').hide(); |
2620 |
|
|
} |
2621 |
|
|
}, hideSec); |
2622 |
mbroquet |
3730 |
} |
2623 |
softime |
10573 |
|
2624 |
softime |
6565 |
// Sinon on cache tous les champs du formulaire |
2625 |
mbroquet |
3730 |
else { |
2626 |
|
|
hideFields(); |
2627 |
|
|
} |
2628 |
|
|
} |
2629 |
|
|
|
2630 |
softime |
10573 |
/* |
2631 |
|
|
* Affiche le formulaire de demande, en fonction de la demande type |
2632 |
|
|
* |
2633 |
|
|
* @return void |
2634 |
|
|
*/ |
2635 |
|
|
function afficheFormDemandeDT(hideWhenAlreadyAForm = 0) { |
2636 |
|
|
// si on a demandé à masquer les champs d'abord (avant de les ré-afficher) |
2637 |
|
|
var hideSec = 0; |
2638 |
|
|
if (isNouvelleDemandeFormDisplayed()) { |
2639 |
|
|
hideFields(false); // ne pas masquer le champ 'type de demande' |
2640 |
|
|
hideSec = hideWhenAlreadyAForm; |
2641 |
|
|
} |
2642 |
|
|
setTimeout(function () { |
2643 |
|
|
|
2644 |
|
|
// appelle de la "vraie" fonction d'affichage du formulaire |
2645 |
|
|
showFormDemande(); |
2646 |
|
|
}, hideSec); |
2647 |
|
|
} |
2648 |
|
|
|
2649 |
softime |
8593 |
/** |
2650 |
|
|
* Méthode permettant d'afficher ou de cacher les champs signaiter et type de rédaction |
2651 |
|
|
* lors de l'ajout d'une instruction. |
2652 |
|
|
* |
2653 |
|
|
* @param {evenement_id} integer Identifiant de l'événement sélectionné |
2654 |
|
|
* @param {idxformulaire} string Identifiant du DI de l'instruction en cours d'ajout |
2655 |
|
|
* |
2656 |
|
|
* @return void |
2657 |
|
|
*/ |
2658 |
|
|
function manage_instruction_evenement_lettretype(evenement_id, idxformulaire) { |
2659 |
|
|
// Lien |
2660 |
|
|
link = "../app/index.php?module=form&obj=instruction&action=300&idx=0&idxformulaire=" + idxformulaire + "&evenement_id=" + evenement_id; |
2661 |
|
|
// Traitement |
2662 |
|
|
$.ajax({ |
2663 |
|
|
type: "GET", |
2664 |
|
|
url: link, |
2665 |
|
|
cache: false, |
2666 |
|
|
dataType: "json", |
2667 |
|
|
success: function(data) { |
2668 |
|
|
if (data.lettretype === true) { |
2669 |
|
|
$('#signataire_arrete').parent().parent().show(); |
2670 |
|
|
if (data.option_redaction_libre_enabled === true) { |
2671 |
|
|
$('#flag_edition_integrale').parent().parent().show(); |
2672 |
|
|
} |
2673 |
softime |
12847 |
|
2674 |
|
|
// Si on a une lettre type qui est associé au dossier |
2675 |
|
|
// Récupération de la valeur du onsubmit pour la modifier et la faire passer à retour=form au lieu de retour=tab |
2676 |
|
|
var new_link_onsubmit = $('div#sousform-container form')[0].getAttribute("onsubmit").replace('retour=tab', 'retour=form'); |
2677 |
|
|
// On réinjecte le contenu du "onsubmit" modifié dans la balise concernée |
2678 |
|
|
$('div#sousform-container form').attr("onsubmit", new_link_onsubmit) |
2679 |
|
|
|
2680 |
|
|
// Récupération de la valeur du data-href pour la modifier et la faire passer à retour=form au lieu de retour=tab |
2681 |
|
|
var new_data_href_link = document.getElementById("sousform-href").getAttribute('data-href').replace('retour=tab', 'retour=form') |
2682 |
|
|
$('div#sousform-href').attr("data-href", new_data_href_link) |
2683 |
|
|
|
2684 |
softime |
8593 |
} else { |
2685 |
|
|
$('#signataire_arrete').parent().parent().hide(); |
2686 |
|
|
$('#flag_edition_integrale').parent().parent().hide(); |
2687 |
softime |
12847 |
|
2688 |
|
|
// Modification/simplification du parcours utilisateur lors de l'ajout d'une instruction et si aucune lettre type n'est associé au dossier |
2689 |
|
|
// Récupération de la valeur du onsubmit pour la modifier et la faire passer à retour=tab au lieu de retour=form |
2690 |
|
|
var new_link_onsubmit = $('div#sousform-container form')[0].getAttribute("onsubmit").replace('retour=form', 'retour=tab'); |
2691 |
|
|
// On réinjecte le contenu du "onsubmit" modifié dans la balise concernée |
2692 |
|
|
$('div#sousform-container form').attr("onsubmit", new_link_onsubmit) |
2693 |
|
|
|
2694 |
|
|
// Récupération de la valeur du data-href pour la modifier et la faire passer à retour=tab au lieu de retour=form |
2695 |
|
|
var new_data_href_link = document.getElementById("sousform-href").getAttribute('data-href').replace('retour=form', 'retour=tab') |
2696 |
|
|
$('div#sousform-href').attr("data-href", new_data_href_link) |
2697 |
softime |
8593 |
} |
2698 |
|
|
}, |
2699 |
|
|
async: false, |
2700 |
|
|
}); |
2701 |
|
|
} |
2702 |
|
|
|
2703 |
softime |
10573 |
/** |
2704 |
softime |
19592 |
* Méthode permettant d'afficher ou de cacher le champ destinataire |
2705 |
|
|
* lors de l'ajout d'une instruction. |
2706 |
|
|
* |
2707 |
|
|
* @param {evenement_id} integer Identifiant de l'événement sélectionné |
2708 |
|
|
* @param {idxformulaire} string Identifiant du DI de l'instruction en cours d'ajout |
2709 |
|
|
* @param {service_consultant} string Service consultant éventuel |
2710 |
|
|
* |
2711 |
|
|
* @return void |
2712 |
|
|
*/ |
2713 |
|
|
function manage_instruction_evenement_destinataire(evenement_id, idxformulaire, service_consultant) { |
2714 |
|
|
// Lien |
2715 |
|
|
link = "../app/index.php?module=form&obj=instruction&action=302&idx=0&idxformulaire=" + idxformulaire + "&evenement_id=" + evenement_id; |
2716 |
|
|
// Traitement |
2717 |
|
|
$.ajax({ |
2718 |
|
|
type: "GET", |
2719 |
|
|
url: link, |
2720 |
|
|
cache: false, |
2721 |
|
|
dataType: "json", |
2722 |
|
|
success: function(data) { |
2723 |
|
|
if (data.tiers_destinataire === "acteur" || data.tiers_destinataire === "acteur_service_consultant") { |
2724 |
|
|
$('#tiers_destinataire').parent().parent().show(); |
2725 |
|
|
$("#tiers_destinataire").val(0).trigger("chosen:updated"); |
2726 |
|
|
if (data.tiers_destinataire === "acteur_service_consultant" && service_consultant) { |
2727 |
|
|
$("#tiers_destinataire").val(service_consultant).trigger("chosen:updated"); |
2728 |
|
|
} |
2729 |
|
|
} else { |
2730 |
|
|
$('#tiers_destinataire').parent().parent().hide(); |
2731 |
|
|
} |
2732 |
|
|
}, |
2733 |
|
|
async: false, |
2734 |
|
|
}); |
2735 |
|
|
} |
2736 |
|
|
|
2737 |
|
|
/** |
2738 |
softime |
10573 |
* Méthode permettant d'afficher ou de cacher le champs commentaire lors de l'ajout d'une instruction. |
2739 |
|
|
* |
2740 |
|
|
* @param {evenement_id} integer Identifiant de l'événement sélectionné |
2741 |
|
|
* @param {idxformulaire} string Identifiant du DI de l'instruction en cours d'ajout |
2742 |
|
|
* |
2743 |
|
|
* @return void |
2744 |
|
|
*/ |
2745 |
|
|
function manage_instruction_evenement_commentaire(evenement_id, idxformulaire) { |
2746 |
|
|
// Lien |
2747 |
|
|
link = "../app/index.php?module=form&obj=instruction&action=301&idx=0&idxformulaire=" + idxformulaire + "&evenement_id=" + evenement_id; |
2748 |
|
|
// Traitement |
2749 |
|
|
$.ajax({ |
2750 |
|
|
type: "GET", |
2751 |
|
|
url: link, |
2752 |
|
|
cache: false, |
2753 |
|
|
dataType: "json", |
2754 |
|
|
success: function(data) { |
2755 |
|
|
if (data.commentaire === true) { |
2756 |
|
|
$('#commentaire').parent().parent().show(); |
2757 |
|
|
// Permet de correctement possitionner le champ |
2758 |
softime |
18769 |
$('#commentaire').parent().parent().attr('style', 'display: grid'); |
2759 |
|
|
// modifie la classe du parent du parent |
2760 |
|
|
if (! $('#commentaire').parent().parent().hasClass('field-type-textarea') && $('#commentaire').parent().parent().hasClass('field-type-textareahidden')) { |
2761 |
|
|
$('#commentaire').parent().parent().removeClass('field-type-textareahidden'); |
2762 |
|
|
$('#commentaire').parent().parent().addClass('field-type-textarea'); |
2763 |
|
|
} |
2764 |
softime |
10573 |
} else { |
2765 |
softime |
18769 |
// modifie la classe du parent du parent |
2766 |
|
|
if (! $('#commentaire').parent().parent().hasClass('field-type-textareahidden') && $('#commentaire').parent().parent().hasClass('field-type-textarea')) { |
2767 |
|
|
$('#commentaire').parent().parent().removeClass('field-type-textarea'); |
2768 |
|
|
$('#commentaire').parent().parent().addClass('field-type-textareahidden'); |
2769 |
|
|
} |
2770 |
softime |
10573 |
$('#commentaire').parent().parent().hide(); |
2771 |
|
|
$('#commentaire').val(""); |
2772 |
|
|
} |
2773 |
|
|
}, |
2774 |
|
|
async: false, |
2775 |
|
|
}); |
2776 |
|
|
} |
2777 |
mbroquet |
3730 |
/* |
2778 |
|
|
Ajoute le code HTML des champs pour les références cadastrales |
2779 |
|
|
* */ |
2780 |
|
|
function addNewFieldReferencesCadastrales(){ |
2781 |
|
|
|
2782 |
softime |
7521 |
// Nettoyage des bouttons "ajouter d'autres champs" car dans |
2783 |
|
|
// fieldReferenceCadastraleBase() appelée ci-après, on compte le nombre de |
2784 |
|
|
// bouttons. Et si on les supprimes après, on aura pas exemple le nouveau |
2785 |
|
|
// bouton en position 0 mais avec l'id 2. Ce qui va causer des bugs. |
2786 |
|
|
$('.moreFieldReferenceCadastrale').remove(); |
2787 |
|
|
|
2788 |
mbroquet |
3730 |
var html = '<div class="field field-type-text references_cadastrales_new_field" >'+ |
2789 |
|
|
'<div class="form-libelle">' + |
2790 |
|
|
'<label '+ |
2791 |
|
|
'class="libelle-terrain_references_cadastrales" '+ |
2792 |
|
|
'for="terrain_references_cadastrales">'+ |
2793 |
|
|
' Références cadastrales '+ |
2794 |
|
|
'</label>' + |
2795 |
|
|
'</div>' + |
2796 |
|
|
'<div class="form-content reference_cadastrale_custom_fields">' + |
2797 |
|
|
fieldReferenceCadastraleBase() + |
2798 |
|
|
'</div>' + |
2799 |
|
|
'</div>'; |
2800 |
|
|
|
2801 |
|
|
url = document.location + ""; |
2802 |
softime |
6565 |
demandeInfo = getDemandeInfo('nature'); |
2803 |
|
|
if((demandeInfo == 'NOUV' || demandeInfo == 'NONE' ) && $(".form-is-valid").size() == 0 && url.indexOf('action=3') == -1 ) { |
2804 |
softime |
16749 |
html += ` <button type="button" id="morelineReferenceCadastrale" class="om-form-button button-secondary" title="Ajouter"> |
2805 |
|
|
<i class="ri-map-pin-add-line"></i> Ajouter d'autres sections |
2806 |
|
|
</button>` ; |
2807 |
mbroquet |
3730 |
} |
2808 |
|
|
|
2809 |
|
|
$('.references_cadastrales_new_field').remove(); |
2810 |
|
|
$('#morelineReferenceCadastrale').remove(); |
2811 |
|
|
$('#terrain_references_cadastrales').parent().parent().before( |
2812 |
|
|
html |
2813 |
|
|
); |
2814 |
|
|
} |
2815 |
|
|
|
2816 |
softime |
16749 |
/** |
2817 |
|
|
* Fonction d'ajout du nouveau bouton permettant |
2818 |
|
|
* la copie de l'adresse du demandeur |
2819 |
|
|
*/ |
2820 |
|
|
function add_button_copy_demandeur_address(){ |
2821 |
|
|
// |
2822 |
|
|
if($(".form-is-valid").size() == 0) { |
2823 |
|
|
$('.demande__localisation--adresse .bloc-titre').after( |
2824 |
|
|
'<div class="demande__localisation--copy-address">' + |
2825 |
|
|
'<button id="dem-adr-them" '+ |
2826 |
|
|
'class="om-form-button button-secondary" '+ |
2827 |
|
|
'type="button" '+ |
2828 |
|
|
'onclick="copy_demandeur_address();" '+ |
2829 |
softime |
18436 |
'><i class="ri-file-copy-2-line"></i>recopier adresse du demandeur</button>' + |
2830 |
softime |
16749 |
'</div>' ); |
2831 |
|
|
} |
2832 |
|
|
|
2833 |
|
|
} |
2834 |
|
|
|
2835 |
mbroquet |
3730 |
function addButtonCadastraleAdesse(){ |
2836 |
|
|
|
2837 |
|
|
// Permet d'ajouter le bouton de récupération d'adresse si sig activé |
2838 |
softime |
16749 |
if ($('#option_sig').val() == 'sig_externe' |
2839 |
|
|
&& $(".form-is-valid").size() == 0 ){ |
2840 |
mbroquet |
3730 |
|
2841 |
softime |
16749 |
$('.demande__localisation--adresse #dem-adr-them').after( |
2842 |
|
|
'<button id="cad-adr-them" '+ |
2843 |
|
|
'class="om-form-button button-secondary" '+ |
2844 |
|
|
'type="button" '+ |
2845 |
|
|
'onclick="getAdressFromCadastrale();" '+ |
2846 |
|
|
'><i class="ri-map-pin-line"></i>adresse de la parcelle</button>' |
2847 |
|
|
); |
2848 |
mbroquet |
3730 |
} |
2849 |
|
|
} |
2850 |
|
|
|
2851 |
softime |
16749 |
/** |
2852 |
|
|
* Fonction permettant la copie de l'adresse du demandeur |
2853 |
|
|
* pour insérer les données dans les champs correspondant |
2854 |
|
|
* de l'adresse du terrain |
2855 |
|
|
*/ |
2856 |
|
|
function copy_demandeur_address(){ |
2857 |
|
|
var demandeur_id = $(".demandeur_id").val() |
2858 |
|
|
// |
2859 |
|
|
if(demandeur_id !== undefined){ |
2860 |
|
|
// Lien vers l'action permettant de récupérer les valeurs de l'adresse |
2861 |
|
|
// postale du demandeur |
2862 |
|
|
var url = '../app/index.php?module=form&obj=demandeur&action=11&demandeur_id=' + demandeur_id; |
2863 |
|
|
// Remplissage des champs de l'adresse du terrain |
2864 |
|
|
$.ajax({ |
2865 |
|
|
type: 'GET', |
2866 |
|
|
url: url, |
2867 |
|
|
dataType: 'json', |
2868 |
|
|
async: true, |
2869 |
|
|
success: function(data) { |
2870 |
|
|
$('#terrain_adresse_voie_numero').val(data.numero); |
2871 |
|
|
$('#terrain_adresse_voie').val(data.voie); |
2872 |
|
|
$('#terrain_adresse_lieu_dit').val(data.lieu_dit); |
2873 |
|
|
$('#terrain_adresse_localite').val(data.localite); |
2874 |
|
|
$('#terrain_adresse_code_postal').val(data.code_postal); |
2875 |
|
|
$('#terrain_adresse_bp').val(data.bp); |
2876 |
|
|
$('#terrain_adresse_cedex').val(data.cedex); |
2877 |
|
|
} |
2878 |
|
|
}); |
2879 |
|
|
} |
2880 |
|
|
} |
2881 |
|
|
|
2882 |
softime |
17542 |
/** |
2883 |
|
|
* Fonction permettant la copie du contenu d'un modèle |
2884 |
|
|
* dans le champs analyse réglementaire d'un rapport d'instruction. |
2885 |
|
|
*/ |
2886 |
|
|
function copy_modele_rapport_instruction(){ |
2887 |
|
|
var modele_id = $("#modele").val() |
2888 |
|
|
// |
2889 |
|
|
if(modele_id !== undefined){ |
2890 |
|
|
// Lien vers l'action permettant de récupérer les valeurs de l'adresse |
2891 |
|
|
// postale du demandeur |
2892 |
|
|
var url = '../app/index.php?module=form&obj=rapport_instruction&action=130&modele_id=' + modele_id; |
2893 |
|
|
// Remplissage des champs de l'adresse du terrain |
2894 |
|
|
$.ajax({ |
2895 |
|
|
type: 'GET', |
2896 |
|
|
url: url, |
2897 |
|
|
dataType: 'json', |
2898 |
|
|
async: true, |
2899 |
|
|
success: function(data) { |
2900 |
|
|
// Remplissage du textarea complement_om_html |
2901 |
|
|
var obj = tinyMCE.get('analyse_reglementaire_om_html'); |
2902 |
|
|
obj.setContent(data.analyse_reglementaire_om_html); |
2903 |
|
|
} |
2904 |
|
|
}); |
2905 |
|
|
} |
2906 |
|
|
} |
2907 |
|
|
|
2908 |
mbroquet |
3730 |
/* |
2909 |
|
|
Séparateur caché ; pour marqué la fin d'une ligne de référence cadastrale |
2910 |
|
|
* */ |
2911 |
|
|
function hiddenSeparatorField(){ |
2912 |
|
|
|
2913 |
|
|
return '<input ' + |
2914 |
|
|
'class="reference_cadastrale_custom_field" ' + |
2915 |
|
|
'type="hidden" ' + |
2916 |
|
|
'maxlength="2" ' + |
2917 |
|
|
'size="2" ' + |
2918 |
|
|
'value=";" />'; |
2919 |
|
|
} |
2920 |
|
|
|
2921 |
|
|
/** |
2922 |
softime |
7366 |
* Retourne l'info passée en paramètre parmi trois possibilités: |
2923 |
|
|
* - la nature de la demande |
2924 |
|
|
* - le type de demande est à avec_recup (de petitionnaire) |
2925 |
|
|
* - le type d'affichage |
2926 |
mbroquet |
3730 |
**/ |
2927 |
|
|
function getDemandeInfo(info) { |
2928 |
|
|
var id_demande_type = $('#demande_type').val(); |
2929 |
|
|
var res = ""; |
2930 |
softime |
6565 |
if ( typeof id_demande_type !== "undefined" && id_demande_type !== ''){ |
2931 |
mbroquet |
3730 |
$.ajax({ |
2932 |
|
|
type: "GET", |
2933 |
|
|
url: "../app/getDemandeInfo.php?iddemandetype=" + id_demande_type |
2934 |
|
|
+ "&info=" + info, |
2935 |
|
|
cache: false, |
2936 |
|
|
async: false, |
2937 |
|
|
success: function(val){ |
2938 |
|
|
res = val; |
2939 |
|
|
} |
2940 |
|
|
}); |
2941 |
|
|
} |
2942 |
|
|
else { |
2943 |
|
|
|
2944 |
|
|
res = "NONE" |
2945 |
|
|
} |
2946 |
|
|
return res; |
2947 |
|
|
} |
2948 |
|
|
/* |
2949 |
|
|
Ajout d'une nouvelle ligne de champ de référence cadastrale |
2950 |
|
|
Retourne le code HTML |
2951 |
|
|
* */ |
2952 |
|
|
function fieldReferenceCadastraleBase(){ |
2953 |
|
|
|
2954 |
softime |
16749 |
let url = document.location + ""; |
2955 |
mbroquet |
3730 |
|
2956 |
|
|
var type = getDemandeInfo('nature'); |
2957 |
softime |
16749 |
|
2958 |
mbroquet |
3730 |
// désactivation des champs de référence cadastrale |
2959 |
softime |
16749 |
// si on est sur l'objet correspondant à une nouvelle demande |
2960 |
softime |
10573 |
var urlParams = extractUrlParams(); |
2961 |
|
|
var obj = 'obj' in urlParams ? urlParams['obj'] : null; |
2962 |
mbroquet |
3730 |
|
2963 |
softime |
16749 |
let prefixeDisabled = () => { |
2964 |
|
|
if((obj !== 'demande_nouveau_dossier' |
2965 |
|
|
&& obj !== 'demande_nouveau_dossier_contentieux' |
2966 |
|
|
&& type != 'NOUV' |
2967 |
|
|
&& type != 'NONE') |
2968 |
softime |
10573 |
|| $(".form-is-valid").size() > 0 |
2969 |
|
|
|| url.indexOf('action=3') != -1 ) { |
2970 |
softime |
16749 |
return 'disabled="disabled" '; |
2971 |
|
|
} |
2972 |
mbroquet |
3730 |
} |
2973 |
|
|
|
2974 |
softime |
16749 |
let reference_cadastrale = |
2975 |
|
|
// Champ "Préfixe" |
2976 |
|
|
`<div class="champ--ref-cadastrales__section"> |
2977 |
|
|
<div class="champ--ref-cadastrales"> |
2978 |
|
|
<label for="references-cadastrales--prefixe">Préfixe</label> |
2979 |
|
|
<input class="champFormulaire reference_cadastrale_custom_field" |
2980 |
|
|
type="text" |
2981 |
|
|
id="references-cadastrales--prefixe" |
2982 |
softime |
17036 |
onchange="VerifNum(this);strPadJs(this, 3);" |
2983 |
softime |
16749 |
maxlength="3" |
2984 |
|
|
size="3" placeholder="_ _ _" |
2985 |
|
|
${prefixeDisabled()} |
2986 |
|
|
value="" /> |
2987 |
|
|
</div>` |
2988 |
|
|
+ |
2989 |
|
|
// Champ "Section" |
2990 |
|
|
`<div class="champ--ref-cadastrales"> |
2991 |
|
|
<label for="references-cadastrales--section">Section</label> |
2992 |
|
|
<input class="champFormulaire reference_cadastrale_custom_field" |
2993 |
|
|
type="text" |
2994 |
|
|
id="references-cadastrales--section" |
2995 |
|
|
maxlength="2" |
2996 |
|
|
size="2" |
2997 |
|
|
placeholder="_ _" |
2998 |
|
|
${prefixeDisabled()} |
2999 |
|
|
value="" |
3000 |
softime |
17036 |
onchange="this.value=this.value.toUpperCase();checkInputIsAlphaNum(this);strPadJs(this, 2);"/> |
3001 |
softime |
16749 |
</div>` |
3002 |
|
|
+ |
3003 |
|
|
// Champ "Numéro" |
3004 |
|
|
`<div class="champ--ref-cadastrales"> |
3005 |
|
|
<label for="references-cadastrales--numero">Numéro</label> |
3006 |
|
|
<input class="champFormulaire reference_cadastrale_custom_field" references-cadastrales--numero |
3007 |
|
|
type="text" |
3008 |
|
|
id="references-cadastrales--numero" |
3009 |
|
|
maxlength="4" |
3010 |
|
|
size="4" |
3011 |
|
|
placeholder="_ _ _ _" |
3012 |
|
|
${prefixeDisabled()} |
3013 |
|
|
value="" |
3014 |
softime |
17036 |
onchange="VerifNum(this);strPadJs(this, 4);"/> |
3015 |
softime |
16749 |
</div>` |
3016 |
|
|
+ |
3017 |
|
|
// Section pour l'ajout de séparateur et autres numéros |
3018 |
|
|
`<div id="moreFieldReferenceCadastrale${$('.moreFieldReferenceCadastrale').length}" |
3019 |
|
|
class="moreFieldReferenceCadastrale">` + hiddenSeparatorField(); |
3020 |
mbroquet |
3730 |
|
3021 |
softime |
16749 |
// Si form validé pas de bouton |
3022 |
|
|
if(!((obj !== 'demande_nouveau_dossier' |
3023 |
|
|
&& obj !== 'demande_nouveau_dossier_contentieux' |
3024 |
|
|
&& type != 'NOUV' |
3025 |
|
|
&& type != 'NONE') |
3026 |
|
|
|| $(".form-is-valid").size() > 0 |
3027 |
|
|
|| url.indexOf('action=3') != -1)) { |
3028 |
|
|
|
3029 |
mbroquet |
3730 |
reference_cadastrale += |
3030 |
softime |
16749 |
`<button type="button" class="om-form-button button-primary" title="Ajouter d'autres numéros à des parcelles ayant les mêmes préfixes et section"> |
3031 |
|
|
<i class="ri-add-line"></i> Ajouter d'autres numéros |
3032 |
|
|
</button></div>`; |
3033 |
|
|
} |
3034 |
|
|
reference_cadastrale += '</div>'; |
3035 |
mbroquet |
3730 |
|
3036 |
|
|
return reference_cadastrale; |
3037 |
|
|
} |
3038 |
|
|
|
3039 |
|
|
/** |
3040 |
|
|
* Cache les champs inutules [formulaire de demande] |
3041 |
|
|
**/ |
3042 |
softime |
10573 |
function hideFields(hideDemandeType = true){ |
3043 |
mbroquet |
3730 |
$('.demande_hidden_bloc').each( |
3044 |
|
|
function(){ |
3045 |
|
|
$(this).hide(); |
3046 |
|
|
} |
3047 |
|
|
); |
3048 |
|
|
$('input[type=submit]').hide(); |
3049 |
softime |
10573 |
if (hideDemandeType) { |
3050 |
|
|
$('#demande_type').parent().parent().hide(); |
3051 |
|
|
} |
3052 |
mbroquet |
3730 |
} |
3053 |
|
|
|
3054 |
|
|
/** |
3055 |
|
|
* Gestion de la checklist des documents obligatoires, fonction appelée onchange |
3056 |
|
|
* du champ demande_type. |
3057 |
|
|
* |
3058 |
|
|
* @param node demande_type champ demande_type |
3059 |
|
|
*/ |
3060 |
|
|
function manage_document_checklist(demande_type) { |
3061 |
|
|
// Appel de la vue correspondante à l'action 100 de l'objet demande_type |
3062 |
softime |
7996 |
$.getJSON( "../app/index.php?module=form&obj=demande_type&action=100&idx="+$(demande_type).val(), function( data ) { |
3063 |
mbroquet |
3730 |
if(data != false) { |
3064 |
|
|
// Si l'action retourne une autre valeur que false on affiche la checklist |
3065 |
|
|
show_document_checklist(data); |
3066 |
|
|
} |
3067 |
|
|
}); |
3068 |
|
|
} |
3069 |
|
|
|
3070 |
|
|
/** |
3071 |
|
|
* Affichage et gestion du comportement de la checklist des documents obligatoires. |
3072 |
|
|
* |
3073 |
|
|
* @param {obj} data Objet correspondant au json retourné par l'action 100 de demande_type |
3074 |
|
|
*/ |
3075 |
|
|
function show_document_checklist(data) { |
3076 |
|
|
|
3077 |
|
|
// Préparation du contenu du dialog |
3078 |
|
|
var html_list = "<div id='liste_doc'><form><ul>"; |
3079 |
|
|
// Une checkbox par document obligatoire |
3080 |
|
|
$.each(data.documents, function( key, value) { |
3081 |
|
|
html_list += "<li><input type='checkbox' name='"+key+"'/> "+value+"</li>" |
3082 |
|
|
}); |
3083 |
|
|
html_list += "</ul></form></div>"; |
3084 |
|
|
|
3085 |
|
|
// Création de la fonction de vérification des checkbox cochées appelée lors |
3086 |
|
|
// de la fermeture du dialog |
3087 |
|
|
var check_doc = function(){ |
3088 |
|
|
// Si le nombre de checkbox cochées ne correspond pas au nombre de doc |
3089 |
|
|
// fournis par l'action 100 de demande_type on affiche un message d'erreur |
3090 |
|
|
// et bloque la fermeture du dialog |
3091 |
|
|
if(data.documents.length != $("#liste_doc form input:checked").length) { |
3092 |
|
|
alert(data.message_ko); |
3093 |
|
|
return false; |
3094 |
|
|
} |
3095 |
|
|
} |
3096 |
|
|
// Définition des boutons du dialog |
3097 |
|
|
var dialog_buttons = {}; |
3098 |
|
|
dialog_buttons[data.libelle_cancel] = function(){ |
3099 |
|
|
// Si Rejet de la demande, affichage d'un message de confirmation et rechargement |
3100 |
|
|
if(window.confirm(data.message_rejet)) { |
3101 |
|
|
location.reload(); |
3102 |
|
|
} |
3103 |
|
|
} |
3104 |
|
|
dialog_buttons[data.libelle_ok] = function(){ |
3105 |
|
|
// Si validation du dialog : fermeture |
3106 |
|
|
$(this).dialog('close'); |
3107 |
|
|
} |
3108 |
|
|
// Insertion dans le dom du dialog non instancié |
3109 |
|
|
$("html").append(html_list); |
3110 |
|
|
// Instanciation du dialog |
3111 |
|
|
$( "#liste_doc" ).dialog({ |
3112 |
|
|
title: data.title, |
3113 |
|
|
resizable: false, |
3114 |
|
|
modal: true, |
3115 |
|
|
buttons: dialog_buttons, |
3116 |
|
|
// Action avant fermeture : verification des checkbox cochées |
3117 |
|
|
beforeClose: check_doc |
3118 |
|
|
}); |
3119 |
|
|
} |
3120 |
softime |
10573 |
|
3121 |
mbroquet |
3730 |
/* |
3122 |
softime |
16749 |
Fonction de selection du noeud DOM approprié pour le calcul du champ du code département-commune |
3123 |
|
|
* */ |
3124 |
|
|
|
3125 |
|
|
function getNodeForCodeDepcom(){ |
3126 |
|
|
var node_for_code_depcom = $('#om_collectivite')[0]; |
3127 |
|
|
var commune_node = document.getElementById('commune'); |
3128 |
|
|
if (commune_node) { |
3129 |
|
|
node_for_code_depcom = commune_node; |
3130 |
|
|
} |
3131 |
|
|
return node_for_code_depcom; |
3132 |
|
|
} |
3133 |
|
|
|
3134 |
|
|
/* |
3135 |
mbroquet |
3730 |
Affiche les champs dont on a besoin dans le formulaire de demande |
3136 |
|
|
* */ |
3137 |
softime |
6565 |
function showFormDemande(){ |
3138 |
softime |
10573 |
|
3139 |
mbroquet |
3730 |
if($('#demande_type').val() != "") { |
3140 |
|
|
|
3141 |
|
|
$('.demande_hidden_bloc').each( |
3142 |
|
|
function(){ |
3143 |
|
|
$(this).show(); |
3144 |
|
|
} |
3145 |
|
|
); |
3146 |
softime |
16749 |
|
3147 |
|
|
update_num_dossier_type_da($('select#dossier_autorisation_type_detaille')[0]); |
3148 |
|
|
update_num_dossier_code_depcom(getNodeForCodeDepcom()); |
3149 |
|
|
update_num_dossier_annee($('input#date_demande')); |
3150 |
|
|
update_num_dossier_division(); |
3151 |
|
|
|
3152 |
softime |
6565 |
formatFieldReferenceCadastrale(); |
3153 |
mbroquet |
3730 |
$('.field-type-text').show(); |
3154 |
|
|
$('input[type=submit]').show(); |
3155 |
|
|
$('.terrain_references_cadastrales_custom').hide(); |
3156 |
softime |
10573 |
|
3157 |
mbroquet |
3730 |
$('#terrain_references_cadastrales').parent().parent().hide(); |
3158 |
|
|
|
3159 |
|
|
//Vérification des contraintes de récupération des demandeurs si |
3160 |
|
|
// pas de récupération, on efface la liste |
3161 |
softime |
6565 |
var demandeInfo = getDemandeInfo('contraintes'); |
3162 |
softime |
10573 |
var urlParams = extractUrlParams(); |
3163 |
|
|
var obj = 'obj' in urlParams ? urlParams['obj'] : null; |
3164 |
|
|
// si on est sur l'objet correspondant à une nouvelle demande |
3165 |
|
|
if (obj !== 'demande_nouveau_dossier' |
3166 |
|
|
&& obj !== 'demande_nouveau_dossier_contentieux') { |
3167 |
|
|
// |
3168 |
|
|
if (demandeInfo == 'sans_recup') { |
3169 |
|
|
if($('input[name^=petitionnaire_principal]').size() != -1) { |
3170 |
|
|
removeDemandeur("petitionnaire_principal_" + $('input[name^=petitionnaire_principal]').val()); |
3171 |
|
|
} |
3172 |
|
|
if($('input[name^=delegataire]').size() != -1) { |
3173 |
|
|
removeDemandeur("delegataire_" + $('input[name^=delegataire]').val()); |
3174 |
|
|
} |
3175 |
|
|
if($('input[name^=proprietaire]').size() != -1) { |
3176 |
|
|
removeDemandeur("proprietaire_" + $('input[name^=proprietaire]').val()); |
3177 |
mbroquet |
3730 |
} |
3178 |
softime |
10573 |
if($('input[name^=architecte_lc]').size() != -1) { |
3179 |
|
|
removeDemandeur("architecte_lc_" + $('input[name^=architecte_lc]').val()); |
3180 |
mbroquet |
3730 |
} |
3181 |
softime |
10573 |
if($('input[name^=paysagiste]').size() != -1) { |
3182 |
|
|
removeDemandeur("paysagiste_" + $('input[name^=paysagiste]').val()); |
3183 |
|
|
} |
3184 |
mbroquet |
3730 |
|
3185 |
softime |
10573 |
$('#listePetitionnaires input.demandeur_id').each(function(){ |
3186 |
|
|
if($(this).size() != -1) { |
3187 |
mbroquet |
3730 |
|
3188 |
softime |
10573 |
removeDemandeur("petitionnaire_" + $(this).val()); |
3189 |
|
|
} |
3190 |
|
|
}); |
3191 |
softime |
14064 |
} else if (demandeInfo !== 'sans_recup' |
3192 |
|
|
&& demandeInfo !== '' |
3193 |
|
|
&& demandeInfo !== null) { |
3194 |
softime |
10573 |
//Récupération des demandeurs si la contrainte le permet |
3195 |
|
|
$.ajax({ |
3196 |
|
|
type: "GET", |
3197 |
softime |
14064 |
url: "../app/getDemandeurList.php?dossier_autorisation=" + $('#dossier_autorisation').val() + "&contraintes=" + demandeInfo, |
3198 |
softime |
10573 |
cache: false, |
3199 |
|
|
async: false, |
3200 |
|
|
success: function(html){ |
3201 |
|
|
$('#liste_demandeur').replaceWith(html); |
3202 |
|
|
} |
3203 |
|
|
}); |
3204 |
|
|
} |
3205 |
mbroquet |
3730 |
} |
3206 |
|
|
affichageBoutonsDemandeurs(); |
3207 |
|
|
} else { |
3208 |
|
|
/*Récupère les references cadastrales*/ |
3209 |
|
|
getDataFieldReferenceCadastrale(); |
3210 |
softime |
10573 |
|
3211 |
mbroquet |
3730 |
$('.demande_hidden_bloc').each( |
3212 |
|
|
function(){ |
3213 |
|
|
$(this).hide(); |
3214 |
|
|
} |
3215 |
|
|
); |
3216 |
|
|
$('input[type=submit]').hide(); |
3217 |
|
|
|
3218 |
|
|
} |
3219 |
softime |
16749 |
|
3220 |
softime |
17036 |
toggleDisplayMessageDIExistOnDemandeNouveauDossier(); |
3221 |
mbroquet |
3730 |
} |
3222 |
|
|
|
3223 |
softime |
6565 |
function lookingForAutorisationContestee() { |
3224 |
|
|
// Récupération de l'identifiant du dossier contesté sans espace. |
3225 |
|
|
var idx = $('#autorisation_contestee').val().replace(/\s+/g,''); |
3226 |
|
|
idx = $.trim(idx); |
3227 |
|
|
$('#autorisation_contestee').val(idx); |
3228 |
|
|
// Initialisation du bloc de message d'erreur. |
3229 |
|
|
var error_message = |
3230 |
|
|
'<div ' + |
3231 |
|
|
'class="message ui-widget ui-corner-all ui-state-highlight ui-state-error">' + |
3232 |
|
|
'<p>' + |
3233 |
|
|
'<span class="ui-icon ui-icon-info"></span>' + |
3234 |
|
|
'<span class="text">' + |
3235 |
|
|
'{0}' + |
3236 |
|
|
'</span>' + |
3237 |
|
|
'</p>' + |
3238 |
|
|
'</div>'; |
3239 |
|
|
// On vide les demandeurs possiblement déjà présents dans le formulaire |
3240 |
|
|
// puisqu'ils vont être récupérés depuis le dossier contesté. |
3241 |
softime |
16749 |
remove_existing_demandeur(); |
3242 |
softime |
6565 |
|
3243 |
|
|
if (idx != '') { |
3244 |
|
|
$('#form-message').html(msg_loading); |
3245 |
|
|
// |
3246 |
|
|
$.ajax({ |
3247 |
|
|
type: "POST", |
3248 |
softime |
7996 |
url: "../app/index.php?module=form&obj=dossier_instruction&action=220&idx="+idx+"&validation=1&contentonly=true", |
3249 |
softime |
6565 |
cache: false, |
3250 |
|
|
data: "submit=plop&", |
3251 |
|
|
}).done(function(json) { |
3252 |
|
|
|
3253 |
|
|
var infos_dossier = jQuery.parseJSON(json); |
3254 |
|
|
if (infos_dossier.hasOwnProperty('error')) { |
3255 |
|
|
$('#autorisation_contestee').val(''); |
3256 |
|
|
// Ajout du contenu récupéré (uniquement le bloc message) |
3257 |
|
|
$('#form-message').html(error_message.format(infos_dossier.error)); |
3258 |
|
|
return false; |
3259 |
|
|
} |
3260 |
|
|
$('#autorisation_contestee_search_button').prop('disabled', true); |
3261 |
|
|
$('#autorisation_contestee_search_button').button('option', 'disabled', true); |
3262 |
|
|
$('#autorisation_contestee').prop('readonly', true); |
3263 |
|
|
$('#form-message').html(''); |
3264 |
|
|
// Affichage des valeurs de formulaires |
3265 |
|
|
$.each(infos_dossier, function( index, value ) { |
3266 |
|
|
if ($('#'+index).length == 1) { |
3267 |
|
|
$('#'+index).val(value); |
3268 |
|
|
} |
3269 |
|
|
}); |
3270 |
|
|
// Affichage des demandeurs |
3271 |
|
|
afficherDemandeur(infos_dossier.demandeurs.petitionnaire_principal, 'petitionnaire_principal'); |
3272 |
|
|
if (infos_dossier.demandeurs.hasOwnProperty("delegataire") == true) { |
3273 |
|
|
afficherDemandeur(infos_dossier.demandeurs.delegataire, 'delegataire'); |
3274 |
|
|
} |
3275 |
|
|
if (infos_dossier.demandeurs.hasOwnProperty("petitionnaire") == true) { |
3276 |
|
|
$.each(infos_dossier.demandeurs.petitionnaire, function( type, id ) { |
3277 |
|
|
afficherDemandeur(id, 'petitionnaire'); |
3278 |
|
|
}); |
3279 |
|
|
} |
3280 |
|
|
showFormDemande(); |
3281 |
|
|
}); |
3282 |
|
|
|
3283 |
|
|
|
3284 |
|
|
} |
3285 |
|
|
} |
3286 |
|
|
|
3287 |
softime |
16749 |
/** |
3288 |
|
|
* Vide les demandeurs déjà présent sur un formulaier d'ajout de demande. |
3289 |
|
|
*/ |
3290 |
|
|
function remove_existing_demandeur() { |
3291 |
|
|
$('.petitionnaire_principal').each(function() { |
3292 |
|
|
$(this).remove(); |
3293 |
|
|
}); |
3294 |
|
|
$('.delegataire').each(function() { |
3295 |
|
|
$(this).remove(); |
3296 |
|
|
}); |
3297 |
|
|
$('.petitionnaire').each(function() { |
3298 |
|
|
$(this).remove(); |
3299 |
|
|
}); |
3300 |
|
|
$('.avocat').each(function() { |
3301 |
|
|
$(this).remove(); |
3302 |
|
|
}); |
3303 |
|
|
$('.requerent').each(function() { |
3304 |
|
|
$(this).remove(); |
3305 |
|
|
}); |
3306 |
|
|
$('.plaignant').each(function() { |
3307 |
|
|
$(this).remove(); |
3308 |
|
|
}); |
3309 |
|
|
$('.contrevenant').each(function() { |
3310 |
|
|
$(this).remove(); |
3311 |
|
|
}); |
3312 |
|
|
$('.bailleur').each(function() { |
3313 |
|
|
$(this).remove(); |
3314 |
|
|
}); |
3315 |
|
|
$('.proprietaire').each(function() { |
3316 |
|
|
$(this).remove(); |
3317 |
|
|
}); |
3318 |
|
|
$('.architecte_lc').each(function() { |
3319 |
|
|
$(this).remove(); |
3320 |
|
|
}); |
3321 |
|
|
$('.paysagiste').each(function() { |
3322 |
|
|
$(this).remove(); |
3323 |
|
|
}); |
3324 |
|
|
} |
3325 |
|
|
|
3326 |
|
|
function copy_dossier_demandeurs_principaux_to_new_demande(list_id_demandeur_and_type) { |
3327 |
|
|
remove_existing_demandeur(); |
3328 |
|
|
// Traitement des données pour récupérer l'id du demandeur et son |
3329 |
|
|
// type (ceux ne sont que des demandeurs principaux) |
3330 |
|
|
let list_demandeur_datas = list_id_demandeur_and_type.split(":") |
3331 |
|
|
list_demandeur_datas.forEach(all_data => { |
3332 |
|
|
let data_splited = all_data.split(",") |
3333 |
|
|
let id_demandeur = data_splited[0] |
3334 |
|
|
let type = data_splited[1] |
3335 |
|
|
|
3336 |
|
|
// On vérifie l'existence ou non du fieldset pour éviter de l'ajouter en double |
3337 |
|
|
// Lorsqu'on supprime un demandeur par exemple, et qu'on clique à nouveau sur le bouton |
3338 |
|
|
// de récupération des informations du demandeur |
3339 |
|
|
// Le(s) fieldset malgré la suppresion, reste dans le dom |
3340 |
|
|
// ce qui peux crée des doublons très facilement |
3341 |
|
|
if($('fieldset[id='+type+'_'+id_demandeur+']').size() == 0){ |
3342 |
|
|
// On appelle la méthode d'affichage pour chaque demandeur |
3343 |
|
|
afficherDemandeur(id_demandeur, type); |
3344 |
|
|
} |
3345 |
|
|
|
3346 |
|
|
}); |
3347 |
|
|
} |
3348 |
|
|
|
3349 |
softime |
6565 |
function eraseAutorisationContestee(){ |
3350 |
|
|
$('#autorisation_contestee_search_button').prop('disabled', false); |
3351 |
|
|
$('#autorisation_contestee_search_button').button('option', 'disabled', false); |
3352 |
|
|
$('#autorisation_contestee').prop('readonly', false); |
3353 |
|
|
$('#autorisation_contestee').val(''); |
3354 |
|
|
hideFields(); |
3355 |
|
|
} |
3356 |
|
|
|
3357 |
mbroquet |
3730 |
/* |
3358 |
|
|
Action au clique sur le bouton " + ajouter d'autres champs" |
3359 |
|
|
* */ |
3360 |
|
|
function newInputReferenceCadastrale(){ |
3361 |
|
|
|
3362 |
|
|
// Champs désactivé si le formulaire a été validé et est valide |
3363 |
|
|
var type = getDemandeInfo('nature'); |
3364 |
|
|
var reference_cadastrale_disabled = ''; |
3365 |
softime |
10573 |
var urlParams = extractUrlParams(); |
3366 |
|
|
var obj = 'obj' in urlParams ? urlParams['obj'] : null; |
3367 |
|
|
// si on est sur l'objet correspondant à une nouvelle demande |
3368 |
|
|
if((obj !== 'demande_nouveau_dossier' |
3369 |
|
|
&& obj !== 'demande_nouveau_dossier_contentieux' |
3370 |
|
|
&& type != 'NOUV' |
3371 |
|
|
&& type != 'NONE') |
3372 |
|
|
|| $(".form-is-valid").size() > 0 |
3373 |
|
|
|| url.indexOf('action=3') != -1 ) { |
3374 |
|
|
// |
3375 |
mbroquet |
3730 |
reference_cadastrale_disabled = 'disabled="disabled" '; |
3376 |
|
|
} |
3377 |
|
|
|
3378 |
softime |
16749 |
return `<div class="champ--ref-cadastrales"> |
3379 |
|
|
<select |
3380 |
|
|
id="references-cadastrales--operator${$('.references-cadastrales--numero').length}" |
3381 |
|
|
class="champFormulaire reference_cadastrale_custom_field" |
3382 |
|
|
${reference_cadastrale_disabled} |
3383 |
|
|
> |
3384 |
|
|
<option value="A">jusqu'à</option> |
3385 |
|
|
<option value="/">et</option> |
3386 |
|
|
</select> |
3387 |
|
|
</div>` |
3388 |
|
|
+ |
3389 |
|
|
// Champ "Numéro" |
3390 |
|
|
`<div class="champ--ref-cadastrales"> |
3391 |
|
|
<label for="references-cadastrales--numero${$('.references-cadastrales--numero').length}">Numéro</label> |
3392 |
|
|
<input class="champFormulaire reference_cadastrale_custom_field references-cadastrales--numero" |
3393 |
|
|
type="text" |
3394 |
|
|
id="references-cadastrales--numero${$('.references-cadastrales--numero').length}" |
3395 |
|
|
maxlength="4" |
3396 |
|
|
size="4" |
3397 |
|
|
placeholder="_ _ _ _" |
3398 |
|
|
${reference_cadastrale_disabled} |
3399 |
|
|
value="" |
3400 |
softime |
17036 |
onchange="VerifNum(this);strPadJs(this, 4);"/> |
3401 |
softime |
16749 |
</div>`; |
3402 |
mbroquet |
3730 |
} |
3403 |
|
|
|
3404 |
|
|
/** |
3405 |
|
|
* Permet d'éventuellement lancer des scripts spécifiques à l'application. |
3406 |
|
|
*/ |
3407 |
softime |
6929 |
function app_initialize_content(tinymce_load) { |
3408 |
softime |
14542 |
// On cache les champs de recherche sousform pour les listing specifiques |
3409 |
|
|
if ($('#sousform-document_numerise').exists() |
3410 |
|
|
|| $('#sousform-dossier_autorisation').exists() |
3411 |
|
|
|| $('#sousform-dossier_contrainte').exists() |
3412 |
|
|
|| $('#sousform-lien_dossier_tiers').exists()) { |
3413 |
|
|
|
3414 |
|
|
$('#recherche_onglet').hide(); |
3415 |
nhaye |
4780 |
} |
3416 |
softime |
14542 |
|
3417 |
softime |
6565 |
// Si l'onglet consultatione existe |
3418 |
|
|
if ($('#sousform-consultation').exists()) { |
3419 |
|
|
// Si le champ de recherche de l'onglet à dans son attribut onkeyup |
3420 |
|
|
// la chaîne de caractère 'retourformulaire=demande_avis' |
3421 |
softime |
7366 |
if ($('#recherche_onglet input#recherchedyn').exists() |
3422 |
|
|
&& $('#recherche_onglet input#recherchedyn').attr("onkeyup").match(/retourformulaire=demande_avis/g) !== null) { |
3423 |
softime |
6565 |
// |
3424 |
softime |
14542 |
// On cache le champ de recherche sousform |
3425 |
|
|
$('#recherche_onglet').hide(); |
3426 |
softime |
6565 |
} |
3427 |
|
|
} |
3428 |
mbroquet |
3730 |
changeDemandeurType('qualite'); |
3429 |
|
|
addSearchIcon(); |
3430 |
|
|
addDivDialog('.bloc_demandeur'); |
3431 |
jymadier |
4554 |
// Interface de gestion de la commission |
3432 |
|
|
commission_manage_interface(); |
3433 |
nhaye |
5254 |
// Bind actions afficher les données technique depuis les lots |
3434 |
|
|
$('a[id^=action-sousform-lot][id$=-donnees_techniques]').each(function(){ |
3435 |
|
|
$(this).bind_action_for_overlay("donnees_techniques"); |
3436 |
|
|
}); |
3437 |
softime |
6565 |
|
3438 |
|
|
// Bind des actions après le rafraichissement. |
3439 |
|
|
initBindFocus(); |
3440 |
|
|
|
3441 |
|
|
// Bind actions afficher les données technique depuis les lots |
3442 |
|
|
$('a[id^=action-sousform-lot][id$=-donnees_techniques]').each(function(){ |
3443 |
|
|
$(this).bind_action_for_overlay("donnees_techniques"); |
3444 |
|
|
}); |
3445 |
|
|
|
3446 |
nmeucci |
5549 |
// Fermeture overlay sur clic bouton retour |
3447 |
|
|
$("#sousform-donnees_techniques a.retour").off('click').on('click', function(event) { |
3448 |
|
|
$('#sousform-donnees_techniques').dialog('close').remove(); |
3449 |
softime |
10808 |
// Rechargement du formulaire en fond de page |
3450 |
|
|
form_container_refresh("form"); |
3451 |
nmeucci |
5549 |
return false; |
3452 |
|
|
}); |
3453 |
|
|
$("#sousform-architecte a.retour").off('click').on('click', function(event) { |
3454 |
|
|
$('#sousform-architecte').dialog('close').remove(); |
3455 |
|
|
return false; |
3456 |
|
|
}); |
3457 |
|
|
$("#sousform-demande_avis_encours a.retour").off('click').on('click', function(event) { |
3458 |
|
|
$('#sousform-demande_avis_encours').dialog('close').remove(); |
3459 |
|
|
return false; |
3460 |
|
|
}); |
3461 |
softime |
10573 |
$("#sousform-rapport_instruction a[id^=sousform-action-rapport_instruction-back]").off('click').on('click', function(event) { |
3462 |
softime |
5901 |
$('#sousform-rapport_instruction').dialog('close').remove(); |
3463 |
|
|
return false; |
3464 |
|
|
}); |
3465 |
softime |
10573 |
$("#sousform-instruction_preview_edition a.retour").off('click').on('click', function(event) { |
3466 |
|
|
$('#sousform-instruction_preview_edition').dialog('close').remove(); |
3467 |
|
|
return false; |
3468 |
|
|
}); |
3469 |
|
|
$("#sousform-document_numerise_preview_edition a.retour").off('click').on('click', function(event) { |
3470 |
|
|
$('#sousform-document_numerise_preview_edition').dialog('close').remove(); |
3471 |
|
|
return false; |
3472 |
|
|
}); |
3473 |
softime |
6565 |
|
3474 |
|
|
var myObj = ''; |
3475 |
|
|
if ($('#sousform-lien_dossier_dossier').exists()) { |
3476 |
|
|
myObj = 'lien_dossier_dossier'; |
3477 |
|
|
} |
3478 |
|
|
if ($('#sousform-lien_dossier_dossier_contexte_ctx_re').exists()) { |
3479 |
|
|
myObj = 'lien_dossier_dossier_contexte_ctx_re'; |
3480 |
|
|
} |
3481 |
|
|
if ($('#sousform-lien_dossier_dossier_contexte_ctx_inf').exists()) { |
3482 |
|
|
myObj = 'lien_dossier_dossier_contexte_ctx_inf'; |
3483 |
|
|
} |
3484 |
|
|
// Onglet "Dossiers Liés" du DI |
3485 |
|
|
if (myObj !== '' && $('#action-soustab-dossier_lies-corner-ajouter').exists()) { |
3486 |
|
|
|
3487 |
|
|
// Étant donné que la vue spécifique comporte trois tableaux |
3488 |
|
|
// et que l'action "Ajouter" d'un tableau remplace uniquement |
3489 |
|
|
// celui-ci par le formulaire, on redéfinit son comportement |
3490 |
|
|
// en chargeant ce formulaire dans l'onglet entier. |
3491 |
|
|
$('#action-soustab-dossier_lies-corner-ajouter').prop('onclick', null).off('click').on('click', function() { |
3492 |
|
|
// On récupère le lien de l'action passé dans la foncion JS ajaxIt() appelée dans le onclick |
3493 |
|
|
var on_click = $(this).attr('onclick'); |
3494 |
|
|
var reg = new RegExp(/^ajaxIt\('.*','(.*)'\);$/); |
3495 |
|
|
var res = reg.exec(on_click); |
3496 |
|
|
if (res !== null) { |
3497 |
|
|
var link_action = res[1]; |
3498 |
|
|
ajaxIt(myObj, link_action); |
3499 |
|
|
} |
3500 |
|
|
return false; |
3501 |
|
|
}); |
3502 |
|
|
// De même on affiche le message de validation des actions-direct |
3503 |
|
|
// en entête de l'onglet au lieu du tableau concerné. |
3504 |
|
|
$('#sousform-dossier_lies a.action-direct').prop('onclick', null).off('click').on('click', function() { |
3505 |
|
|
// On récupère le lien de l'action passé dans la foncion JS ajaxIt() appelée dans le onclick |
3506 |
|
|
var on_click = $(this).attr('onclick'); |
3507 |
|
|
var reg = new RegExp(/^ajaxIt\('.*','(.*)'\);$/); |
3508 |
|
|
var res = reg.exec(on_click); |
3509 |
|
|
if (res !== null) { |
3510 |
|
|
var link_action = res[1] + '&validation=1&contentonly=true'; |
3511 |
|
|
var link_tab = $('#tab_dossier_lies_href').attr('data-href'); |
3512 |
|
|
var msg_container = '#sousform-' + myObj + ' > .soustab-message'; |
3513 |
|
|
var tab_container = '#sousform-dossier_lies .soustab-container'; |
3514 |
|
|
$(msg_container).html(msg_loading); |
3515 |
|
|
// |
3516 |
|
|
$.ajax({ |
3517 |
|
|
type: "POST", |
3518 |
|
|
url: link_action, |
3519 |
|
|
cache: false, |
3520 |
|
|
success: function(html){ |
3521 |
|
|
// Ajout du contenu récupéré (uniquement le bloc message) |
3522 |
|
|
$(msg_container).html($(html).find('div.message').get(0)); |
3523 |
|
|
// Rafraichissement du tableau |
3524 |
|
|
|
3525 |
|
|
$.get(link_tab, function(html_content) { |
3526 |
|
|
$(tab_container).html(html_content); |
3527 |
|
|
om_initialize_content(); |
3528 |
|
|
}); |
3529 |
|
|
} |
3530 |
|
|
}); |
3531 |
|
|
} |
3532 |
|
|
return false; |
3533 |
|
|
}); |
3534 |
|
|
} |
3535 |
softime |
14064 |
// Ce code sert à gérer le comportement des actions d'ajout et de suppression de l'onglet acteur. |
3536 |
|
|
if ($('#sousform-lien_dossier_tiers').exists()) { |
3537 |
|
|
myObj = 'lien_dossier_tiers'; |
3538 |
|
|
// Étant donné que la vue peux comporter plusieurs tableau et que l'action "Ajouter" d'un |
3539 |
|
|
// tableau remplace uniquement celui-ci par le formulaire, on redéfinit son comportement |
3540 |
|
|
// en chargeant ce formulaire dans l'onglet entier. |
3541 |
|
|
$('#action-soustab-' + myObj + '-corner-ajouter').prop('onclick', null).off('click').on('click', function() { |
3542 |
|
|
// Récupère le lien de l'action passé dans la foncion JS ajaxIt() appelée dans le onclick |
3543 |
|
|
// et recharge la page en utilisant ce lien |
3544 |
|
|
var on_click = $(this).attr('onclick'); |
3545 |
|
|
var reg = new RegExp(/^ajaxIt\('.*','(.*)'\);$/); |
3546 |
|
|
var res = reg.exec(on_click); |
3547 |
|
|
if (res !== null) { |
3548 |
|
|
var link_action = res[1]; |
3549 |
|
|
ajaxIt('lien_dossier_tiers', link_action); |
3550 |
|
|
} |
3551 |
|
|
return false; |
3552 |
|
|
}); |
3553 |
|
|
|
3554 |
|
|
// Gestion des action-direct |
3555 |
|
|
$('a[id^="action-soustab-' + myObj + '"].action-direct').prop('onclick', null).off('click').on('click', function() { |
3556 |
|
|
// Récupère le lien de l'action passé dans la foncion JS ajaxIt() appelée dans le onclick |
3557 |
|
|
// Si rien n'a été récupéré, ne fais rien. |
3558 |
|
|
// Si le lien a été récupéré, construis l'url de l'action avec ce lien pour ne récupérer que |
3559 |
|
|
// le message de retour. Effectue ensuite une requête ajax avec cette url pour récupérer |
3560 |
|
|
// le message de traitement. |
3561 |
|
|
// Pour finir recharge le formulaire en utilisant l'url récupéré dans la balise #back_link et |
3562 |
|
|
// modifie le html pour afficher le tableau à jour et le message de traitement. |
3563 |
|
|
var on_click = $(this).attr('onclick'); |
3564 |
|
|
var reg = new RegExp(/^ajaxIt\('.*','(.*)'\);$/); |
3565 |
|
|
var res = reg.exec(on_click); |
3566 |
|
|
if (res !== null) { |
3567 |
|
|
var link_action = res[1] + '&validation=1&contentonly=true'; |
3568 |
|
|
var link_tab = $('#back_link').attr('data-href'); |
3569 |
|
|
$.ajax({ |
3570 |
|
|
type: "POST", |
3571 |
|
|
url: link_action, |
3572 |
|
|
cache: false, |
3573 |
|
|
success: function(html){ |
3574 |
|
|
// Ajout du contenu récupéré (uniquement le bloc message) |
3575 |
|
|
message = $(html).find('div.message').get(0); |
3576 |
|
|
// Rafraichissement du tableau |
3577 |
|
|
$.get(link_tab, function(html_content) { |
3578 |
|
|
$('#sousform-' + myObj).html(html_content); |
3579 |
|
|
$('#sousform-message').html(message); |
3580 |
|
|
om_initialize_content(); |
3581 |
|
|
}); |
3582 |
|
|
} |
3583 |
|
|
}); |
3584 |
|
|
} |
3585 |
|
|
return false; |
3586 |
|
|
}); |
3587 |
|
|
} |
3588 |
softime |
7521 |
|
3589 |
softime |
14064 |
// Chosen multiple servant a sélectionner la liste des tiers acteur du dossier |
3590 |
|
|
$("div#sousform-lien_dossier_tiers select#tiers").parents('div.formEntete').css("overflow", "visible"); |
3591 |
|
|
$("div#sousform-lien_dossier_tiers select#tiers option[value='']").empty(); |
3592 |
|
|
$("div#sousform-lien_dossier_tiers select#tiers").chosen({ |
3593 |
softime |
18436 |
width: "750px", |
3594 |
softime |
14064 |
placeholder_text_single: "Sélectionner les acteurs", |
3595 |
|
|
no_results_text: "Aucun résultat", |
3596 |
|
|
allow_single_deselect: true |
3597 |
|
|
}); |
3598 |
softime |
8593 |
// Change la liste à choix de l'événement sur l'instruction avec chosen |
3599 |
|
|
// Le div.formEntete doit avoir sa propriété overflow à visible pour que le |
3600 |
|
|
// contenu de la liste à choix soit correctement affiché |
3601 |
|
|
$("div.sousform-instruction-action-0").parents('div.formEntete').css("overflow", "visible"); |
3602 |
|
|
$("div.sousform-instruction-action-0 select#evenement option[value='']").empty(); |
3603 |
|
|
$("div.sousform-instruction-action-0 select#evenement").chosen({ |
3604 |
softime |
18436 |
width: "750px", |
3605 |
softime |
8593 |
placeholder_text_single: "Choisir l'événement", |
3606 |
|
|
no_results_text: "Aucun résultat", |
3607 |
|
|
allow_single_deselect: true |
3608 |
|
|
}); |
3609 |
|
|
|
3610 |
softime |
11585 |
// Change la liste à choix des tiers sur la notification des tiers avec chosen |
3611 |
|
|
// Le div.formEntete doit avoir sa propriété overflow à visible pour que le |
3612 |
|
|
// contenu de la liste à choix soit correctement affiché |
3613 |
softime |
11876 |
$("div#sousform-instruction_notification_manuelle div.formEntete").css({"overflow":"visible","border":"none"}); |
3614 |
|
|
$("div#sousform-instruction_notification_manuelle").css("overflow", "visible"); |
3615 |
|
|
$("div#sousform-instruction_notification_manuelle").parent('div.ui-dialog.ui-widget-content').css("overflow", "visible"); |
3616 |
softime |
11585 |
$("div#sousform-instruction_notification_manuelle select#tiers_consulte option[value='']").empty(); |
3617 |
|
|
$("div#sousform-instruction_notification_manuelle select#tiers_consulte").chosen({ |
3618 |
softime |
18436 |
width: "750px", |
3619 |
softime |
11585 |
placeholder_text_single: "Choisir les tiers à notifier", |
3620 |
|
|
no_results_text: "Aucun résultat", |
3621 |
|
|
allow_single_deselect: true |
3622 |
|
|
}); |
3623 |
|
|
// Chosen multiple servant a sélectionner la liste des annexes a envoyer lors de la notif des services/tiers |
3624 |
softime |
12433 |
// ainsi que la liste des documents et des pièces annexes pour la notification des demandeurs |
3625 |
|
|
$("div#sousform-instruction_notification_manuelle select[id^=annexes] option[value='']").empty(); |
3626 |
|
|
$("div#sousform-instruction_notification_manuelle select[id^=annexes]").chosen({ |
3627 |
softime |
18436 |
width: "750px", |
3628 |
softime |
11585 |
placeholder_text_single: "Sélectionner les annexes", |
3629 |
|
|
no_results_text: "Aucun résultat", |
3630 |
|
|
allow_single_deselect: true |
3631 |
|
|
}); |
3632 |
softime |
10573 |
|
3633 |
softime |
11585 |
|
3634 |
softime |
10573 |
// Change la liste à choix du type de document pour les pièces d'un dossier avec chosen |
3635 |
|
|
// Le div.formEntete doit avoir sa propriété overflow à visible pour que le |
3636 |
|
|
// contenu de la liste à choix soit correctement affiché |
3637 |
|
|
// En ajout |
3638 |
|
|
$("div.sousform-document_numerise-action-0").parents('div.formEntete').css("overflow", "visible"); |
3639 |
|
|
$("div.sousform-document_numerise-action-0 select#document_numerise_type option[value='']").empty(); |
3640 |
|
|
$("div.sousform-document_numerise-action-0 select#document_numerise_type").chosen({ |
3641 |
softime |
18436 |
width: "750px", |
3642 |
softime |
10573 |
placeholder_text_single: "Choisir le type de pièce", |
3643 |
|
|
no_results_text: "Aucun résultat", |
3644 |
|
|
allow_single_deselect: true |
3645 |
|
|
}); |
3646 |
|
|
// En modification |
3647 |
|
|
$("div.sousform-document_numerise-action-1").parents('div.formEntete').css("overflow", "visible"); |
3648 |
|
|
$("div.sousform-document_numerise-action-1 select#document_numerise_type option[value='']").empty(); |
3649 |
|
|
$("div.sousform-document_numerise-action-1 select#document_numerise_type").chosen({ |
3650 |
softime |
18436 |
width: "750px", |
3651 |
softime |
10573 |
placeholder_text_single: "Choisir le type de pièce", |
3652 |
|
|
no_results_text: "Aucun résultat", |
3653 |
|
|
allow_single_deselect: true |
3654 |
|
|
}); |
3655 |
|
|
|
3656 |
softime |
12433 |
// Chosen multiple servant a sélectionner la division territoriale d’intervention commune |
3657 |
|
|
$("select#division_territoire_intervention_commune option[value='']").empty(); |
3658 |
|
|
$("select#division_territoire_intervention_commune").chosen({ |
3659 |
softime |
18436 |
width: "750px", |
3660 |
softime |
12433 |
placeholder_text_single: "Sélectionner les communes", |
3661 |
|
|
no_results_text: "Aucun résultat", |
3662 |
|
|
allow_single_deselect: true |
3663 |
|
|
}); |
3664 |
|
|
// Chosen multiple servant a sélectionner la division territoriale d’intervention département |
3665 |
|
|
$("select#division_territoire_intervention_departement option[value='']").empty(); |
3666 |
|
|
$("select#division_territoire_intervention_departement").chosen({ |
3667 |
softime |
18436 |
width: "750px", |
3668 |
softime |
12433 |
placeholder_text_single: "Sélectionner les departements", |
3669 |
|
|
no_results_text: "Aucun résultat", |
3670 |
|
|
allow_single_deselect: true |
3671 |
|
|
}); |
3672 |
softime |
12124 |
|
3673 |
softime |
14542 |
// url de la page |
3674 |
|
|
url = document.location + ""; |
3675 |
|
|
if (url.indexOf("index.php?module=tab&") == -1) { |
3676 |
|
|
// Chosen multiple servant a sélectionner la nature de travaux |
3677 |
|
|
$("select#nature_travaux option[value='']").empty(); |
3678 |
|
|
$("select#nature_travaux").chosen({ |
3679 |
softime |
18436 |
width: "750px", |
3680 |
softime |
14542 |
placeholder_text_single: "Sélectionner les natures de travaux", |
3681 |
|
|
no_results_text: "Aucun résultat", |
3682 |
|
|
allow_single_deselect: true |
3683 |
|
|
}); |
3684 |
|
|
} |
3685 |
softime |
15650 |
// Chosen servant à sélectionner l'évènement à suggérer dans l'onglet Évènements suggérés |
3686 |
|
|
$("div#sousform-lien_sig_contrainte_evenement select#evenement option[value='']").empty(); |
3687 |
|
|
$("div#sousform-lien_sig_contrainte_evenement select#evenement").chosen({ |
3688 |
softime |
18436 |
width: "750px", |
3689 |
softime |
15650 |
placeholder_text_single: "Sélectionner un évènement", |
3690 |
|
|
no_results_text: "Aucun résultat", |
3691 |
|
|
allow_single_deselect: true |
3692 |
|
|
}); |
3693 |
softime |
12433 |
|
3694 |
softime |
14542 |
if (url.indexOf("index.php?module=form&obj=nature_travaux") != -1) { |
3695 |
|
|
// Chosen multiple servant a sélectionner le dit dans nature de travaux |
3696 |
|
|
$("div.form-content").parents("div.formEntete").css("overflow", "visible"); |
3697 |
|
|
$("select#dossier_instruction_type option[value='']").empty(); |
3698 |
|
|
$("select#dossier_instruction_type").chosen({ |
3699 |
softime |
18436 |
width: "750px", |
3700 |
softime |
14542 |
placeholder_text_single: "Sélectionner les type de dossier d'instruction", |
3701 |
|
|
no_results_text: "Aucun résultat", |
3702 |
|
|
allow_single_deselect: true |
3703 |
|
|
}); |
3704 |
|
|
} |
3705 |
softime |
12433 |
|
3706 |
softime |
14542 |
// Chosen servant à sélectionner l'évènement à suggérer dans l'onglet Évènements suggérés |
3707 |
|
|
$("div#sousform-lien_sig_contrainte_evenement select#evenement option[value='']").empty(); |
3708 |
|
|
$("div#sousform-lien_sig_contrainte_evenement select#evenement").chosen({ |
3709 |
softime |
18436 |
width: "750px", |
3710 |
softime |
14542 |
placeholder_text_single: "Choisir l'événement", |
3711 |
|
|
no_results_text: "Aucun résultat", |
3712 |
|
|
allow_single_deselect: true |
3713 |
|
|
}); |
3714 |
|
|
|
3715 |
softime |
15973 |
// Chosen appliqué sur le champs enjeux de la page de modification des dossiers d'instruction |
3716 |
|
|
if (url.indexOf("index.php?module=form&obj=dossier") != -1) { |
3717 |
|
|
$("select#enjeux option[value='']").empty(); |
3718 |
|
|
$("select#enjeux").chosen({ |
3719 |
|
|
width: "200px", |
3720 |
|
|
placeholder_text_single: "Choisir l'enjeu", |
3721 |
|
|
no_results_text: "Aucun résultat", |
3722 |
|
|
allow_single_deselect: true |
3723 |
|
|
}); |
3724 |
|
|
} |
3725 |
softime |
16749 |
// Chosen servant à sélectionner le type de dossier à suggérer |
3726 |
|
|
$("div.dossier_type select#dossier_autorisation_type_detaille [value='']").empty(); |
3727 |
|
|
$("div.dossier_type select#dossier_autorisation_type_detaille").chosen({ |
3728 |
softime |
18436 |
width: "750px", |
3729 |
softime |
16749 |
placeholder_text_single: "Sélectionner un type de dossier", |
3730 |
|
|
no_results_text: "Aucun résultat", |
3731 |
|
|
allow_single_deselect: true |
3732 |
|
|
}); |
3733 |
|
|
// Chosen servant à sélectionner la commune à suggérer |
3734 |
|
|
$("div.dossier_type select#commune option[value='']").empty(); |
3735 |
|
|
$("div.dossier_type select#commune").chosen({ |
3736 |
softime |
18436 |
width: "750px", |
3737 |
softime |
16749 |
placeholder_text_single: "Sélectionner un évènement", |
3738 |
|
|
no_results_text: "Aucun résultat", |
3739 |
|
|
allow_single_deselect: true |
3740 |
|
|
}); |
3741 |
softime |
19592 |
// Chosen servant dans le cadre d'un ajout de nomenclature de pièce pour : |
3742 |
|
|
// - le type de pièce |
3743 |
|
|
// - le type de dossier d'instruction |
3744 |
|
|
if (url.indexOf("index.php?module=form&obj=lien_document_n_type_d_i_t") != -1) { |
3745 |
|
|
$("select#document_numerise_type option[value='']").empty(); |
3746 |
|
|
$("select#document_numerise_type").chosen({ |
3747 |
|
|
width: "750px", |
3748 |
|
|
placeholder_text_single: "Sélectionner un type de pièce", |
3749 |
|
|
no_results_text: "Aucun résultat", |
3750 |
|
|
allow_single_deselect: true |
3751 |
|
|
}); |
3752 |
|
|
$("select#dossier_instruction_type option[value='']").empty(); |
3753 |
|
|
$("select#dossier_instruction_type").chosen({ |
3754 |
|
|
width: "750px", |
3755 |
|
|
placeholder_text_single: "Sélectionner un type de dossier d'instruction", |
3756 |
|
|
no_results_text: "Aucun résultat", |
3757 |
|
|
allow_single_deselect: true |
3758 |
|
|
}); |
3759 |
|
|
} |
3760 |
|
|
// Chosen servant dans le cadre d'un événement pour définir un destinataire parmi les acteurs |
3761 |
|
|
if (url.indexOf("index.php?module=form&obj=dossier_instruction") != -1) { |
3762 |
|
|
// Chosen multiple servant a sélectionner le destinataire |
3763 |
|
|
$("select#tiers_destinataire option[value='']").empty(); |
3764 |
|
|
$("select#tiers_destinataire").chosen({ |
3765 |
|
|
width: "750px", |
3766 |
|
|
placeholder_text_single: "Sélectionner le destinataire", |
3767 |
|
|
no_results_text: "Aucun résultat", |
3768 |
|
|
allow_single_deselect: true |
3769 |
|
|
}); |
3770 |
|
|
} |
3771 |
softime |
14542 |
|
3772 |
softime |
12124 |
// Création d'un tooltip à coté de tous les champs Chosen |
3773 |
softime |
16749 |
let chosen_title_text = "La chaîne de caractère de la barre de recherche doit figurer dans l'un des mots de l'élément désiré\nLa recherche n'est pas sensible à la casse.\nPar exemple, les premiers caractères saisis sont 'Ra':\n- 'Rapport d'annulation' apparaît puisque le mot 'RApport' contient les caractères saisis\n- 'Lettre rappel incomplétude' apparaît puisque le mot 'RAppel' contient les caractères saisis\n- 'Toutes les pièces du certificat d'urbanisme opérationnel' apparaît puisque le mot 'opéRAtionnel' contient les caractères saisis\n- 'Arrêté de conformité' n'apparaît pas puisqu'aucun des mots ne comporte les caractères saisis"; |
3774 |
softime |
12124 |
|
3775 |
softime |
15650 |
if ($('div.chosen-container').has('.info-16.chosen-tooltip').length != 1) { |
3776 |
|
|
$('div.chosen-container') |
3777 |
softime |
16749 |
.append('<span class="info-16 chosen-tooltip" title="'+chosen_title_text+'"></span>'); |
3778 |
softime |
15650 |
} |
3779 |
softime |
12124 |
|
3780 |
softime |
12654 |
// Création d'une infobulle pour le champ json payload de la RA sur les moniteurs plat'au/ide'au |
3781 |
|
|
let json_payload_infobulle = "Vous devez utiliser les '*' au début et à la fin du terme que vous recherchez.\n Exemple pour une numéro de dossier : *PC 123456 12 12345* au lieu de PC 123456 12 12345 tout simplement.\n Un dernier exemple, les dates : *09/06/2022* au lieu de 09/06/2022."; |
3782 |
softime |
12124 |
|
3783 |
softime |
12654 |
$('label#lib-contenu_json') |
3784 |
|
|
.append('<span class="info-16 " title="'+json_payload_infobulle+'"></span>'); |
3785 |
|
|
|
3786 |
|
|
|
3787 |
softime |
8593 |
// Si le bouton de refresh de la preview existe sur la page, que celui-ci |
3788 |
|
|
// est visible et que l'écran est considéré comme grand |
3789 |
|
|
if ($('#btn_refresh').exists() |
3790 |
|
|
&& $('#btn_refresh').is(":visible") |
3791 |
|
|
&& screen.width > 1280) { |
3792 |
|
|
// Récupère la position initiale du bouton |
3793 |
|
|
btn_refresh_top = $('#btn_refresh').parent().offset().top-50 |
3794 |
|
|
// Le bonton suit le scroll de la page |
3795 |
|
|
$(window).scroll(function (event) { |
3796 |
|
|
if ($(window).scrollTop() > btn_refresh_top){ |
3797 |
|
|
$("#btn_refresh").addClass('floating'); |
3798 |
|
|
} else { |
3799 |
|
|
$("#btn_refresh").removeClass('floating'); |
3800 |
|
|
} |
3801 |
|
|
}); |
3802 |
|
|
} |
3803 |
|
|
|
3804 |
|
|
// Si le bouton pour afficher la prévisualisation existe et qu'il s'agit |
3805 |
|
|
// d'un écran considéré comme petit |
3806 |
|
|
if ($('#btn_preview').exists() && (screen.width <= 1280 || $(window).width() <= 1266)) { |
3807 |
|
|
// Récupère la position initiale du bouton |
3808 |
|
|
btn_preview_top = $('#btn_preview').parent().offset().top-25 |
3809 |
|
|
// Le bonton suit le scroll de la page |
3810 |
|
|
$(window).scroll(function (event) { |
3811 |
|
|
if ($(window).scrollTop() > btn_preview_top){ |
3812 |
|
|
$("#btn_preview").css("position", "fixed"); |
3813 |
|
|
$("#btn_preview").css("top", 20); |
3814 |
|
|
$("#btn_preview").css("z-index", 9999); |
3815 |
|
|
} else { |
3816 |
|
|
$("#btn_preview").css("position", "relative"); |
3817 |
|
|
$("#btn_preview").css("top", 0); |
3818 |
|
|
} |
3819 |
|
|
}); |
3820 |
|
|
} |
3821 |
|
|
|
3822 |
|
|
// Si le bouton pour afficher les champs de rédaction existe et qu'il s'agit |
3823 |
|
|
// d'un écran considéré comme petit |
3824 |
|
|
if ($('#btn_redaction').exists() && (screen.width <= 1280 || $(window).width() <= 1266)) { |
3825 |
|
|
// Récupère la position initiale du bouton |
3826 |
|
|
btn_redaction_top = $('#btn_redaction').parent().offset().top-25 |
3827 |
|
|
// Le bonton suit le scroll de la page |
3828 |
|
|
$(window).scroll(function (event) { |
3829 |
|
|
if ($(window).scrollTop() > btn_redaction_top){ |
3830 |
|
|
$("#btn_redaction").css("position", "fixed"); |
3831 |
|
|
$("#btn_redaction").css("top", 20); |
3832 |
|
|
$("#btn_redaction").css("z-index", 9999); |
3833 |
|
|
} else { |
3834 |
|
|
$("#btn_redaction").css("position", "relative"); |
3835 |
|
|
$("#btn_redaction").css("top", 0); |
3836 |
|
|
} |
3837 |
|
|
}); |
3838 |
|
|
} |
3839 |
|
|
|
3840 |
|
|
// Depuis une instruction en modification, si la prévisualisation du PDF est |
3841 |
|
|
// activée et que l'écran de l'utilisateur est considéré comme petit |
3842 |
|
|
if ($(".container_instr_edition").exists() === true |
3843 |
|
|
&& (screen.width <= 1280 || $(window).width() <= 1266)) { |
3844 |
|
|
// |
3845 |
|
|
$(".preview_instr_edition").hide(); |
3846 |
|
|
// |
3847 |
|
|
$("#btn_redaction").parent().parent().hide(); |
3848 |
|
|
$("#btn_refresh").parent().parent().hide(); |
3849 |
|
|
} |
3850 |
|
|
// Sur un écran considéré comme grand |
3851 |
|
|
if ($(".container_instr_edition").exists() === true |
3852 |
|
|
&& (screen.width > 1280 && $(window).width() > 1266)) { |
3853 |
|
|
// |
3854 |
|
|
$("#btn_preview").parent().parent().hide(); |
3855 |
|
|
$("#btn_redaction").parent().parent().hide(); |
3856 |
|
|
} |
3857 |
|
|
|
3858 |
softime |
7521 |
// Si l'iframe de prévisualisation du PDF existe dans la page |
3859 |
softime |
11876 |
if ($(".preview_instr_edition .field-type-previsualiser_pdf #frame_content").exists() === true |
3860 |
|
|
&& $(".preview_instr_edition .field-type-previsualiser_pdf #frame_content").is (":visible")) { |
3861 |
softime |
8593 |
// Redimensionne la taille du contenu après un temps afin de laisser |
3862 |
|
|
// tinymce calculer la taille des champs compléments |
3863 |
softime |
7521 |
setTimeout(resize_frame_pdf, 2000); |
3864 |
|
|
} |
3865 |
softime |
8593 |
|
3866 |
softime |
19592 |
// masque par défaut les champs 'signataire', 'type de rédaction', 'tiers_destinataire' |
3867 |
softime |
18436 |
// et 'commentaire' sur le sous-formulaire d'ajout d'une instruction |
3868 |
softime |
8593 |
$('div.sousform-instruction-action-0 #flag_edition_integrale').parent().parent().hide(); |
3869 |
|
|
$('div.sousform-instruction-action-0 #signataire_arrete').parent().parent().hide(); |
3870 |
softime |
19592 |
$('div.sousform-instruction-action-0 #tiers_destinataire').parent().parent().hide(); |
3871 |
softime |
18436 |
$('div.sousform-instruction-action-0 #commentaire').parent().parent().hide(); |
3872 |
|
|
// Déclenche les méthodes à exécuter sur la sélection d'un événement |
3873 |
|
|
$('div.sousform-instruction-action-0 select#evenement').each(function() { |
3874 |
|
|
this.onchange(); |
3875 |
|
|
}); |
3876 |
softime |
8593 |
|
3877 |
|
|
// modifie les messages de confirmations lors des clics sur les boutons du |
3878 |
|
|
// Portlet 'Rédaction libre' et 'Rédaction par compléments' |
3879 |
|
|
modify_confirm_msg_for_portlet_btn_redaction(); |
3880 |
softime |
17542 |
display_action_notification_manuelle_portal_popup_confirmation() |
3881 |
softime |
9245 |
// |
3882 |
|
|
if ($('#sousform-document_numerise_preview_edition').exists() === true) { |
3883 |
|
|
setTimeout(view_document_numerise_preview_edition, 500); |
3884 |
softime |
10573 |
} else if ($('#sousform-instruction_preview_edition').exists() === true) { |
3885 |
|
|
setTimeout(view_instruction_preview_edition, 500); |
3886 |
|
|
} else if ($('#sousform-rapport_instruction_preview_edition').exists() === true) { |
3887 |
|
|
setTimeout(view_rapport_instruction_preview_edition, 500); |
3888 |
|
|
} else if ($('#sousform-storage_preview_edition').exists() === true) { |
3889 |
|
|
setTimeout(view_storage_preview_edition, 500); |
3890 |
|
|
} else if ($('#sousform-consultation_preview_edition').exists() === true) { |
3891 |
|
|
setTimeout(view_consultation_preview_edition, 500); |
3892 |
softime |
9245 |
} |
3893 |
softime |
10573 |
|
3894 |
|
|
// Recherche de l'adresse dans la BAN avec présentation des résultats |
3895 |
|
|
// dès l'ouverture du formulaire de normalisation |
3896 |
|
|
if ($('#sousform-normalize_address').exists() === true) { |
3897 |
|
|
search_geo_api_address(); |
3898 |
|
|
$("#address").autocomplete("search"); |
3899 |
|
|
} |
3900 |
|
|
|
3901 |
|
|
// récupère l'objet de l'url courante |
3902 |
|
|
var obj = getUrlParamValue('obj', window.location.search); |
3903 |
|
|
|
3904 |
|
|
// si on est sur l'objet correspondant à une nouvelle demande |
3905 |
|
|
if (obj == 'demande_nouveau_dossier' || obj == 'demande_nouveau_dossier_contentieux') { |
3906 |
|
|
|
3907 |
|
|
// ne pas afficher le champs de l'affectation automatique par défaut |
3908 |
|
|
// sauf si une valeur est déjà sélectionnée |
3909 |
|
|
var aff_auto_node = $('#affectation_automatique'); |
3910 |
|
|
if (aff_auto_node && aff_auto_node.val() == undefined || aff_auto_node.val() == '') { |
3911 |
|
|
aff_auto_node.parent().parent().hide(); |
3912 |
|
|
} |
3913 |
|
|
} |
3914 |
softime |
12433 |
// Le champ message_consultation_amenageur peut être affiché lors du lancement de la recherche d'opérateur. |
3915 |
|
|
// Il faut donc vérifier si il existe et relancer la méthode permettant de cacher/afficher les champs. |
3916 |
|
|
if ($("#operateur_amenagement_pers_publique").exists() || $("#message_consultation_amenageur").exists()) { |
3917 |
|
|
switch_operateur_amenagement_pers_public($("#operateur_amenagement_pers_publique").val()); |
3918 |
|
|
$("select#operateur_amenagement_pers_publique").change(function() { |
3919 |
|
|
switch_operateur_amenagement_pers_public($(this).val()); |
3920 |
|
|
}); |
3921 |
|
|
if ($("#operateur_pers_publique_amenageur").exists()) { |
3922 |
|
|
switch_operateur_pers_publique_amenageur($("#operateur_pers_publique_amenageur").val()); |
3923 |
|
|
$("select#operateur_pers_publique_amenageur").change(function() { |
3924 |
|
|
switch_operateur_pers_publique_amenageur($(this).val()); |
3925 |
|
|
}); |
3926 |
|
|
} |
3927 |
|
|
} |
3928 |
mbroquet |
3730 |
} |
3929 |
|
|
|
3930 |
softime |
8593 |
/** |
3931 |
softime |
10573 |
* Recherche l'adresse normalisée dans l'API Adresse. |
3932 |
|
|
* |
3933 |
|
|
* @return void |
3934 |
|
|
*/ |
3935 |
|
|
function search_geo_api_address() { |
3936 |
|
|
$("#address").autocomplete({ |
3937 |
|
|
source: function(request, response) { |
3938 |
|
|
$.ajax({ |
3939 |
|
|
url: "https://api-adresse.data.gouv.fr/search/?q="+$("#address").val(), |
3940 |
|
|
data: { q: request.term }, |
3941 |
|
|
dataType: "json", |
3942 |
|
|
success: function(data) { |
3943 |
|
|
response($.map(data.features, function(item) { |
3944 |
|
|
return { |
3945 |
|
|
label: item.properties.label, |
3946 |
|
|
properties: item.properties |
3947 |
|
|
}; |
3948 |
|
|
})); |
3949 |
|
|
} |
3950 |
|
|
}); |
3951 |
|
|
}, |
3952 |
|
|
select: function(event, ui) { |
3953 |
|
|
$('#address_json').val(JSON.stringify(ui.item.properties)); |
3954 |
|
|
} |
3955 |
|
|
}); |
3956 |
|
|
} |
3957 |
|
|
|
3958 |
|
|
/** |
3959 |
|
|
* Utilise l'action get_json_data du dossier pour |
3960 |
|
|
* récupérer les informations du dossier. A partir de ces informations |
3961 |
|
|
* compose l'adresse du terrain et fait appelle à la méthode |
3962 |
|
|
* permettant de rediriger vers maps |
3963 |
|
|
* |
3964 |
|
|
* @return void |
3965 |
|
|
*/ |
3966 |
|
|
function get_adresse_terrain(object, idDossierInstruction) { |
3967 |
|
|
// Ajout d'un spinner d'attente |
3968 |
|
|
$("#"+object).append( |
3969 |
|
|
'<div class="msg_loading">'+msg_loading +'</div>' |
3970 |
|
|
); |
3971 |
|
|
// |
3972 |
|
|
$.ajax({ |
3973 |
|
|
url: "../app/index.php?module=form&obj=dossier&idx=" |
3974 |
|
|
+ idDossierInstruction |
3975 |
|
|
+ "&action=998", |
3976 |
|
|
dataType: "json", |
3977 |
|
|
success: function(data) { |
3978 |
|
|
// Évite d'avoir des espaces inutiles si des morceaux de l'adresse |
3979 |
|
|
// n'ont pas été rempli ou si l'adresse est vide |
3980 |
|
|
adresse = ''; |
3981 |
|
|
adresse = data.terrain_adresse_voie_numero != '' ? |
3982 |
|
|
adresse + data.terrain_adresse_voie_numero : adresse; |
3983 |
|
|
adresse = data.terrain_adresse_code_postal != '' ? |
3984 |
|
|
adresse + ' ' + data.terrain_adresse_code_postal : adresse; |
3985 |
|
|
adresse = data.terrain_adresse_voie != '' ? |
3986 |
|
|
adresse + ' ' + data.terrain_adresse_voie : adresse; |
3987 |
|
|
adresse = data.terrain_adresse_localite != '' ? |
3988 |
|
|
adresse + ' ' + data.terrain_adresse_localite : adresse; |
3989 |
|
|
open_streetview(adresse); |
3990 |
|
|
} |
3991 |
|
|
}); |
3992 |
|
|
// Suppression du spinner d'attente |
3993 |
|
|
$("#"+object+" .msg_loading").remove(); |
3994 |
|
|
} |
3995 |
|
|
|
3996 |
|
|
/** |
3997 |
|
|
* Envoie l'adresse reçu à la BAN pour récupérer sa latitude et sa longitude |
3998 |
|
|
* puis compose l'url vers google map en utilisant ces données. |
3999 |
|
|
* Si l'adresse récupérée est vide ou si l'adresse n'a pas été trouvé par la BAN |
4000 |
|
|
* ouvre google map sans localisation, sinon ouvre google map en mode streetview |
4001 |
|
|
* vers l'adresse indiquée. |
4002 |
|
|
* |
4003 |
|
|
* @return string |
4004 |
|
|
*/ |
4005 |
|
|
function open_streetview(adresse) { |
4006 |
|
|
if (adresse != '') { |
4007 |
|
|
$.ajax({ |
4008 |
|
|
url: "https://api-adresse.data.gouv.fr/search/?q="+ adresse, |
4009 |
|
|
dataType: "json", |
4010 |
|
|
success: function(data) { |
4011 |
|
|
coordonne = $.map(data.features, function(item) { |
4012 |
|
|
return { |
4013 |
|
|
coordinates : item.geometry.coordinates |
4014 |
|
|
}; |
4015 |
|
|
}); |
4016 |
|
|
|
4017 |
|
|
// Composition du lien streetview. Si aucune adresse n'a été récupéré alors |
4018 |
|
|
// redirige vers google maps sans envoyer d'adresse. |
4019 |
|
|
|
4020 |
|
|
// Utilise les coordonées récupérées comme paramètre pour l'URL |
4021 |
|
|
parametreUrl = ''; |
4022 |
|
|
if (coordonne.length > 0 |
4023 |
|
|
&& $.inArray('coordinates', coordonne) |
4024 |
|
|
&& coordonne[0]['coordinates'].length >= 2) { |
4025 |
|
|
// |
4026 |
|
|
parametreUrl = |
4027 |
|
|
'?q=&layer=c&cbll=' |
4028 |
|
|
+ encodeURIComponent( |
4029 |
|
|
coordonne[0]['coordinates'][1] |
4030 |
|
|
+ ',' |
4031 |
|
|
+ coordonne[0]['coordinates'][0] |
4032 |
|
|
); |
4033 |
|
|
} |
4034 |
|
|
|
4035 |
|
|
urlStreetview = "https://www.google.com/maps" + parametreUrl; |
4036 |
|
|
window.open(urlStreetview); |
4037 |
|
|
} |
4038 |
|
|
}); |
4039 |
|
|
} else { |
4040 |
|
|
window.open("https://www.google.com/maps"); |
4041 |
|
|
} |
4042 |
|
|
} |
4043 |
|
|
|
4044 |
|
|
/** |
4045 |
|
|
* Appel la méthode PHP pour mettre à jour les données de l'adresse normalisée |
4046 |
|
|
* et recharge la page pour avoir les valeurs de la synthèse du dossier à jour. |
4047 |
|
|
* |
4048 |
|
|
* @param object form Formulaire de normalisation de l'adresse |
4049 |
|
|
* @return void |
4050 |
|
|
*/ |
4051 |
|
|
function normalize_address(form) { |
4052 |
|
|
$.ajax({ |
4053 |
|
|
type: "POST", |
4054 |
|
|
url: form.firstElementChild.attributes["data-href"].value, |
4055 |
|
|
cache: false, |
4056 |
|
|
data: "address="+form.elements["address"].value+"&address_json="+form.elements["address_json"].value+"&submit-normalize="+form.elements["submit-normalize"].value, |
4057 |
|
|
success: function(html){ |
4058 |
|
|
refresh_page_return(); |
4059 |
|
|
} |
4060 |
|
|
}); |
4061 |
|
|
} |
4062 |
|
|
|
4063 |
|
|
/** |
4064 |
softime |
8593 |
* Depuis une instruction en modification avec l'option de prévisualisation |
4065 |
|
|
* activée, affiche le contexte de la prévisualisation. |
4066 |
|
|
* |
4067 |
|
|
* @return void |
4068 |
|
|
*/ |
4069 |
|
|
function show_instr_preview() { |
4070 |
|
|
$(".redaction_instr_edition").hide(); |
4071 |
|
|
$(".preview_instr_edition").show(); |
4072 |
|
|
// |
4073 |
|
|
$("#btn_preview").parent().parent().hide(); |
4074 |
|
|
$("#btn_redaction").parent().parent().show(); |
4075 |
|
|
// |
4076 |
|
|
reload_pdf_viewer(); |
4077 |
|
|
} |
4078 |
softime |
6565 |
|
4079 |
softime |
8593 |
/** |
4080 |
|
|
* Depuis une instruction en modification avec l'option de prévisualisation |
4081 |
|
|
* activée, affiche le contexte de la rédaction. |
4082 |
|
|
* |
4083 |
|
|
* @return void |
4084 |
|
|
*/ |
4085 |
|
|
function show_instr_redaction() { |
4086 |
|
|
$(".redaction_instr_edition").show(); |
4087 |
|
|
$(".preview_instr_edition").hide(); |
4088 |
|
|
// |
4089 |
|
|
$("#btn_preview").parent().parent().show(); |
4090 |
|
|
$("#btn_redaction").parent().parent().hide(); |
4091 |
|
|
// |
4092 |
|
|
$(window).scrollTop($(".container_instr_edition").offset().top); |
4093 |
|
|
} |
4094 |
|
|
|
4095 |
|
|
|
4096 |
nhaye |
5254 |
function activate_data_href() { |
4097 |
|
|
$('#sousform-href-disabled').attr('id', 'sousform-href'); |
4098 |
|
|
} |
4099 |
|
|
|
4100 |
nhaye |
4780 |
jQuery.fn.exists = function(){return this.length>0;} |
4101 |
|
|
|
4102 |
mbroquet |
3730 |
// Retourne la valeur d'une variable GET de l'URL |
4103 |
|
|
function getQuerystring(key, default_) |
4104 |
|
|
{ |
4105 |
|
|
if (default_==null) default_=""; |
4106 |
|
|
key = key.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]"); |
4107 |
|
|
var regex = new RegExp("[\\?&]"+key+"=([^&#]*)"); |
4108 |
|
|
var qs = regex.exec(window.location.href); |
4109 |
|
|
if(qs == null) |
4110 |
|
|
return default_; |
4111 |
|
|
else |
4112 |
|
|
return qs[1]; |
4113 |
|
|
} |
4114 |
|
|
|
4115 |
|
|
/** |
4116 |
|
|
* Fonction permettant de faire la somme des champs passé en 2nd parametre et |
4117 |
|
|
* le stocker dans le champ passé en 1er |
4118 |
|
|
*/ |
4119 |
|
|
function sommeChampsCerfa(cible, source) { |
4120 |
|
|
val_cible = 0; |
4121 |
|
|
|
4122 |
|
|
$.each(source, function(index, value) { |
4123 |
|
|
// Conversion des champs source en integer |
4124 |
|
|
val_source = parseInt($('#'+value).val()); |
4125 |
|
|
// Cumul des valeurs des champs source |
4126 |
|
|
val_cible = val_cible + (isNaN(val_source) ? 0 : val_source); |
4127 |
|
|
}); |
4128 |
|
|
// Affectation de la nouvelle valeur |
4129 |
|
|
$('#'+cible).val(val_cible); |
4130 |
|
|
} |
4131 |
|
|
|
4132 |
softime |
4636 |
|
4133 |
|
|
/** |
4134 |
|
|
* Calcul automatique des tableaux des surfaces. |
4135 |
|
|
* |
4136 |
|
|
* @param integer tab Numéro du tableau des surface (1 pour les destinations, 2 |
4137 |
|
|
* pour les sous-destinations). |
4138 |
|
|
* |
4139 |
|
|
* @return void |
4140 |
|
|
*/ |
4141 |
|
|
function calculSurfaceTotal(tab) { |
4142 |
|
|
|
4143 |
|
|
// On vérifie que le paramètre fait référence à un des tableaux |
4144 |
|
|
if (tab !== 1 && tab !== 2) { |
4145 |
|
|
return; |
4146 |
|
|
} |
4147 |
|
|
|
4148 |
|
|
// Préfixe des champs du tableau |
4149 |
|
|
var prefix; |
4150 |
|
|
// Nom des colonnes du tableau |
4151 |
|
|
var nom_col; |
4152 |
|
|
// Nombre de ligne du tableau |
4153 |
|
|
var nb_ligne; |
4154 |
|
|
|
4155 |
|
|
// Tableau des destinations |
4156 |
|
|
if (tab === 1) { |
4157 |
|
|
// |
4158 |
|
|
prefix = "su" |
4159 |
|
|
// |
4160 |
|
|
nom_col = [ "su_avt_shon", |
4161 |
mbroquet |
3730 |
"su_cstr_shon", |
4162 |
|
|
"su_chge_shon", |
4163 |
|
|
"su_demo_shon", |
4164 |
|
|
"su_sup_shon", |
4165 |
|
|
"su_tot_shon" ]; |
4166 |
softime |
4636 |
// |
4167 |
|
|
nb_ligne = 9; |
4168 |
|
|
} |
4169 |
mbroquet |
3730 |
|
4170 |
softime |
4636 |
// Tableau des sous-destinations |
4171 |
|
|
if (tab === 2) { |
4172 |
|
|
// |
4173 |
|
|
prefix = "su2" |
4174 |
|
|
// |
4175 |
|
|
nom_col = [ "su2_avt_shon", |
4176 |
|
|
"su2_cstr_shon", |
4177 |
|
|
"su2_chge_shon", |
4178 |
|
|
"su2_demo_shon", |
4179 |
|
|
"su2_sup_shon", |
4180 |
|
|
"su2_tot_shon" ]; |
4181 |
|
|
// |
4182 |
softime |
13137 |
nb_ligne = 22; |
4183 |
softime |
4636 |
} |
4184 |
|
|
|
4185 |
mbroquet |
3730 |
// Calcul des totaux de colonnes |
4186 |
|
|
$.each(nom_col, function(index, value) { |
4187 |
|
|
var tot_col = 0; |
4188 |
softime |
4636 |
for ( var i = 1; i <= nb_ligne; i++ ) { |
4189 |
mbroquet |
3730 |
// Conversion des champs source en numérique flotant |
4190 |
|
|
val_source = parseFloat($('#'+value+i).val()); |
4191 |
|
|
val_source = parseFloat(val_source.toFixed(2)); |
4192 |
|
|
if (isNaN(val_source) == false) { |
4193 |
|
|
$('#'+value+i).val(val_source); |
4194 |
|
|
} |
4195 |
|
|
// Cumul des valeurs des champs source |
4196 |
|
|
tot_col = tot_col + (isNaN(val_source) ? 0 : val_source); |
4197 |
|
|
} |
4198 |
|
|
|
4199 |
|
|
// Affectation du résultat de ligne |
4200 |
|
|
$('#'+value+'_tot').val(tot_col); |
4201 |
|
|
}); |
4202 |
|
|
|
4203 |
|
|
// Calcul des totaux des lignes |
4204 |
softime |
4636 |
for ( var j = 1; j <= nb_ligne; j++ ) { |
4205 |
mbroquet |
3730 |
// Conversion des champs source en numérique flotant |
4206 |
softime |
4636 |
su_avt_shon = parseFloat($('#'+prefix+'_avt_shon'+j).val()); |
4207 |
mbroquet |
3730 |
if (isNaN(su_avt_shon) == false) { |
4208 |
|
|
su_avt_shon = parseFloat(su_avt_shon.toFixed(2)); |
4209 |
softime |
4636 |
$('#'+prefix+'_avt_shon'+j).val(su_avt_shon); |
4210 |
mbroquet |
3730 |
} |
4211 |
softime |
4636 |
su_cstr_shon = parseFloat($('#'+prefix+'_cstr_shon'+j).val()); |
4212 |
mbroquet |
3730 |
if (isNaN(su_cstr_shon) == false) { |
4213 |
|
|
su_cstr_shon = parseFloat(su_cstr_shon.toFixed(2)); |
4214 |
softime |
4636 |
$('#'+prefix+'_cstr_shon'+j).val(su_cstr_shon); |
4215 |
mbroquet |
3730 |
} |
4216 |
softime |
4636 |
su_chge_shon = parseFloat($('#'+prefix+'_chge_shon'+j).val()); |
4217 |
mbroquet |
3730 |
if (isNaN(su_chge_shon) == false) { |
4218 |
|
|
su_chge_shon = parseFloat(su_chge_shon.toFixed(2)); |
4219 |
softime |
4636 |
$('#'+prefix+'_chge_shon'+j).val(su_chge_shon); |
4220 |
mbroquet |
3730 |
} |
4221 |
softime |
4636 |
su_demo_shon = parseFloat($('#'+prefix+'_demo_shon'+j).val()); |
4222 |
mbroquet |
3730 |
if (isNaN(su_demo_shon) == false) { |
4223 |
|
|
su_demo_shon = parseFloat(su_demo_shon.toFixed(2)); |
4224 |
softime |
4636 |
$('#'+prefix+'_demo_shon'+j).val(su_demo_shon); |
4225 |
mbroquet |
3730 |
} |
4226 |
softime |
4636 |
su_sup_shon = parseFloat($('#'+prefix+'_sup_shon'+j).val()); |
4227 |
mbroquet |
3730 |
if (isNaN(su_sup_shon) == false) { |
4228 |
|
|
su_sup_shon = parseFloat(su_sup_shon.toFixed(2)); |
4229 |
softime |
4636 |
$('#'+prefix+'_sup_shon'+j).val(su_sup_shon); |
4230 |
mbroquet |
3730 |
} |
4231 |
|
|
|
4232 |
|
|
// Cumul des valeurs des champs source |
4233 |
|
|
su_avt_shon = isNaN(su_avt_shon) ? 0 : su_avt_shon; |
4234 |
|
|
su_cstr_shon = isNaN(su_cstr_shon) ? 0 : su_cstr_shon; |
4235 |
|
|
su_chge_shon = isNaN(su_chge_shon) ? 0 : su_chge_shon; |
4236 |
|
|
su_demo_shon = isNaN(su_demo_shon) ? 0 : su_demo_shon; |
4237 |
|
|
su_sup_shon = isNaN(su_sup_shon) ? 0 : su_sup_shon; |
4238 |
|
|
|
4239 |
|
|
// Affectation du résultat de ligne |
4240 |
|
|
su_tot_shon = (su_avt_shon+su_cstr_shon+su_chge_shon)-(su_demo_shon+su_sup_shon); |
4241 |
|
|
su_tot_shon = parseFloat(su_tot_shon.toFixed(2)); |
4242 |
softime |
4636 |
$('#'+prefix+'_tot_shon'+j).val(su_tot_shon); |
4243 |
mbroquet |
3730 |
|
4244 |
|
|
} |
4245 |
|
|
|
4246 |
|
|
// Calcul du total des totaux |
4247 |
|
|
// Conversion des champs source en numérique flotant |
4248 |
softime |
4636 |
su_avt_shon = parseFloat($('#'+prefix+'_avt_shon_tot').val()); |
4249 |
mbroquet |
3730 |
su_avt_shon = parseFloat(su_avt_shon.toFixed(2)); |
4250 |
|
|
if (isNaN(su_avt_shon) == false) { |
4251 |
|
|
su_avt_shon = parseFloat(su_avt_shon.toFixed(2)); |
4252 |
softime |
4636 |
$('#'+prefix+'_avt_shon_tot').val(su_avt_shon); |
4253 |
mbroquet |
3730 |
} |
4254 |
softime |
4636 |
su_cstr_shon = parseFloat($('#'+prefix+'_cstr_shon_tot').val()); |
4255 |
mbroquet |
3730 |
su_cstr_shon = parseFloat(su_cstr_shon.toFixed(2)); |
4256 |
|
|
if (isNaN(su_cstr_shon) == false) { |
4257 |
|
|
su_cstr_shon = parseFloat(su_cstr_shon.toFixed(2)); |
4258 |
softime |
4636 |
$('#'+prefix+'_cstr_shon_tot').val(su_cstr_shon); |
4259 |
mbroquet |
3730 |
} |
4260 |
softime |
4636 |
su_chge_shon = parseFloat($('#'+prefix+'_chge_shon_tot').val()); |
4261 |
mbroquet |
3730 |
su_chge_shon = parseFloat(su_chge_shon.toFixed(2)); |
4262 |
|
|
if (isNaN(su_chge_shon) == false) { |
4263 |
|
|
su_chge_shon = parseFloat(su_chge_shon.toFixed(2)); |
4264 |
softime |
4636 |
$('#'+prefix+'_chge_shon_tot').val(su_chge_shon); |
4265 |
mbroquet |
3730 |
} |
4266 |
softime |
4636 |
su_demo_shon = parseFloat($('#'+prefix+'_demo_shon_tot').val()); |
4267 |
mbroquet |
3730 |
su_demo_shon = parseFloat(su_demo_shon.toFixed(2)); |
4268 |
|
|
if (isNaN(su_demo_shon) == false) { |
4269 |
|
|
su_demo_shon = parseFloat(su_demo_shon.toFixed(2)); |
4270 |
softime |
4636 |
$('#'+prefix+'_demo_shon_tot').val(su_demo_shon); |
4271 |
mbroquet |
3730 |
} |
4272 |
softime |
4636 |
su_sup_shon = parseFloat($('#'+prefix+'_sup_shon_tot').val()); |
4273 |
mbroquet |
3730 |
su_sup_shon = parseFloat(su_sup_shon.toFixed(2)); |
4274 |
|
|
if (isNaN(su_sup_shon) == false) { |
4275 |
|
|
su_sup_shon = parseFloat(su_sup_shon.toFixed(2)); |
4276 |
softime |
4636 |
$('#'+prefix+'_sup_shon_tot').val(su_sup_shon); |
4277 |
mbroquet |
3730 |
} |
4278 |
|
|
|
4279 |
|
|
// Cumul des valeurs des champs source |
4280 |
|
|
su_avt_shon = isNaN(su_avt_shon) ? 0 : su_avt_shon; |
4281 |
|
|
su_cstr_shon = isNaN(su_cstr_shon) ? 0 : su_cstr_shon; |
4282 |
|
|
su_chge_shon = isNaN(su_chge_shon) ? 0 : su_chge_shon; |
4283 |
|
|
su_demo_shon = isNaN(su_demo_shon) ? 0 : su_demo_shon; |
4284 |
|
|
su_sup_shon = isNaN(su_sup_shon) ? 0 : su_sup_shon; |
4285 |
|
|
|
4286 |
|
|
// Affectation du résultat de ligne |
4287 |
|
|
su_tot_shon_tot = (su_avt_shon+su_cstr_shon+su_chge_shon)-(su_demo_shon+su_sup_shon); |
4288 |
|
|
su_tot_shon_tot = parseFloat(su_tot_shon_tot.toFixed(2)); |
4289 |
softime |
4636 |
$('#'+prefix+'_tot_shon_tot').val(su_tot_shon_tot); |
4290 |
mbroquet |
3730 |
|
4291 |
|
|
} |
4292 |
|
|
|
4293 |
|
|
/* |
4294 |
|
|
* Marque comme non frequent un petitionnaire |
4295 |
|
|
*/ |
4296 |
|
|
function portletUpdatePetitionnaire(id, objet, objetc, file, field, message){ |
4297 |
|
|
|
4298 |
|
|
/* |
4299 |
|
|
*Vérifie que l'identifiant passé en paramètre est bien un chiffre |
4300 |
|
|
* et que le type d'objet est défini |
4301 |
|
|
*/ |
4302 |
|
|
if ( $.isNumeric(id) && objet != '' ){ |
4303 |
|
|
|
4304 |
|
|
donnees = "?ido=" + id + '&obj=' + objet + '&objk=' + objetc + '&idxDossier=' + getQuerystring('idx'); |
4305 |
|
|
$.ajax({ |
4306 |
|
|
type: "GET", |
4307 |
|
|
url: "../app/"+file+".php" + donnees , |
4308 |
|
|
cache: false, |
4309 |
|
|
success: function(html){ |
4310 |
|
|
|
4311 |
|
|
$('#formulaire .message').remove(); |
4312 |
|
|
/*Change la valeur affiché et affiche un message valide*/ |
4313 |
|
|
if ( $.parseJSON(html) == "Mise à jour effectué avec succès" || |
4314 |
|
|
$.parseJSON(html).indexOf("Transfert effectue avec succes") != -1 ){ |
4315 |
|
|
|
4316 |
|
|
// On modife le champ field |
4317 |
|
|
if ( field != '' && message != '' ){ |
4318 |
|
|
$('#'+field).html(message); |
4319 |
|
|
html = $.parseJSON(html); |
4320 |
|
|
} |
4321 |
|
|
else { |
4322 |
|
|
html = $.parseJSON(html).split(';'); |
4323 |
|
|
|
4324 |
|
|
$('#'+field).html(html[0]); |
4325 |
|
|
|
4326 |
|
|
html = html[1]; |
4327 |
|
|
} |
4328 |
|
|
|
4329 |
|
|
// On supprime l'action |
4330 |
|
|
$('span.'+field+'-16').parent().parent().remove(); |
4331 |
|
|
// On affiche le message |
4332 |
|
|
$('#formulaire #tabs-1').prepend( |
4333 |
|
|
'<div ' + |
4334 |
|
|
'class="message ui-widget ui-corner-all ui-state-highlight ui-state-valid">' + |
4335 |
|
|
'<p>' + |
4336 |
|
|
'<span class="ui-icon ui-icon-info"></span>' + |
4337 |
|
|
'<span class="text">' + |
4338 |
|
|
html + |
4339 |
|
|
'</span>' + |
4340 |
|
|
'</p>' + |
4341 |
|
|
'</div>' |
4342 |
|
|
); |
4343 |
|
|
} |
4344 |
|
|
/*Affichage d'une erreur*/ |
4345 |
|
|
else{ |
4346 |
|
|
$('#formulaire #tabs-1').prepend( |
4347 |
|
|
'<div ' + |
4348 |
|
|
'class="message ui-widget ui-corner-all ui-state-highlight ui-state-error">' + |
4349 |
|
|
'<p>' + |
4350 |
|
|
'<span class="ui-icon ui-icon-info"></span>' + |
4351 |
|
|
'<span class="text">' + |
4352 |
|
|
$.parseJSON(html) + |
4353 |
|
|
'</span>' + |
4354 |
|
|
'</p>' + |
4355 |
|
|
'</div>' |
4356 |
|
|
); |
4357 |
|
|
} |
4358 |
|
|
} |
4359 |
|
|
}); |
4360 |
|
|
} |
4361 |
|
|
} |
4362 |
|
|
|
4363 |
|
|
|
4364 |
|
|
// Affiche le sous formulaire onglet |
4365 |
|
|
function redirectPortletAction(id, onglet, nom_tabs){ |
4366 |
|
|
|
4367 |
|
|
var nom_tabs = ( typeof nom_tabs === "undefined" ) ? ".ui-tabs" : nom_tabs; |
4368 |
|
|
var $tabs = $(nom_tabs).tabs(); |
4369 |
|
|
|
4370 |
|
|
lien_onglet = $('#' + onglet).attr('href'); |
4371 |
|
|
lien_onglet = lien_onglet.substring( lien_onglet.length - 1, lien_onglet.length); |
4372 |
|
|
|
4373 |
|
|
$tabs.tabs('select', lien_onglet); |
4374 |
|
|
} |
4375 |
|
|
|
4376 |
jymadier |
4554 |
/** |
4377 |
|
|
* COMMISSION |
4378 |
|
|
*/ |
4379 |
|
|
// Gestion de l'interface de gestion de la commission |
4380 |
|
|
function commission_manage_interface() { |
4381 |
|
|
// Gestion des onglets |
4382 |
|
|
var $tabs = $("#commission-manage-tabs").tabs({ |
4383 |
|
|
load: function(event, ui) { |
4384 |
|
|
// |
4385 |
|
|
om_initialize_content(true); |
4386 |
|
|
return true; |
4387 |
mbroquet |
3730 |
}, |
4388 |
jymadier |
4554 |
select: function(event, ui) { |
4389 |
|
|
// Suppression du contenu de l'onglet precedemment selectionne |
4390 |
|
|
// #ui-tabs-X correspond uniquement aux ids des onglets charges |
4391 |
|
|
// dynamiquement |
4392 |
|
|
selectedTabIndex = $tabs.tabs('option', 'selected'); |
4393 |
|
|
$("#ui-tabs-"+(selectedTabIndex+1)).empty(); |
4394 |
|
|
return true; |
4395 |
mbroquet |
3730 |
}, |
4396 |
jymadier |
4554 |
ajaxOptions: { |
4397 |
|
|
error: function(xhr, status, index, anchor) { |
4398 |
|
|
$(anchor.hash).html(msg_alert_error_tabs); |
4399 |
|
|
} |
4400 |
|
|
} |
4401 |
mbroquet |
3730 |
}); |
4402 |
|
|
} |
4403 |
jymadier |
4554 |
// Gestion spécifique de la soumission du formulaire qui contient des checkbox |
4404 |
|
|
// et qui est soumis via une requête Ajax. Il n'est pas possible de savoir |
4405 |
|
|
// quelles checkbox sont cochées, elles sont toutes renvoyées. |
4406 |
|
|
// On compose donc un champ particulier représentant les cases cochées |
4407 |
|
|
// avant de poster le formulaire. |
4408 |
|
|
function commission_submit_plan_or_unplan_demands(objsf, link, formulaire) { |
4409 |
|
|
// |
4410 |
|
|
$("#view_form_plan_or_unplan_demands .message").remove(); |
4411 |
|
|
$("#view_form_plan_or_unplan_demands").prepend( |
4412 |
|
|
'<div class="msg_loading">'+msg_loading +'</div>' |
4413 |
mbroquet |
3730 |
); |
4414 |
jymadier |
4554 |
// |
4415 |
|
|
var checkeds = ''; |
4416 |
|
|
$("#view_form_plan_or_unplan_demands form input[type='checkbox']").each( |
4417 |
mbroquet |
3730 |
function(index) { |
4418 |
jymadier |
4554 |
if ($(this).is(":checked")) { |
4419 |
|
|
checkeds += $(this).val()+";"; |
4420 |
mbroquet |
3730 |
} |
4421 |
|
|
} |
4422 |
|
|
); |
4423 |
jymadier |
4554 |
// |
4424 |
|
|
var input = document.createElement("input"); |
4425 |
|
|
input.type = "hidden"; |
4426 |
|
|
input.name = "checkeds"; |
4427 |
|
|
input.value = checkeds; |
4428 |
|
|
formulaire.appendChild(input); |
4429 |
|
|
// |
4430 |
|
|
affichersform(objsf, link, formulaire); |
4431 |
|
|
// |
4432 |
|
|
$("#view_form_plan_or_unplan_demands .msg_loading").remove(); |
4433 |
mbroquet |
3730 |
} |
4434 |
jymadier |
4554 |
// Aide à la saisie, récupère les données du type de commission et pré-remplit |
4435 |
|
|
// les champs de la commission |
4436 |
|
|
function commission_update_data_from_commission_type(commission_type_id){ |
4437 |
|
|
// Requête ajax de récupération des données |
4438 |
mbroquet |
3730 |
$.ajax({ |
4439 |
|
|
type: "GET", |
4440 |
softime |
7996 |
url: "../app/index.php?module=form&obj=commission_type&action=11&idx="+commission_type_id, |
4441 |
mbroquet |
3730 |
dataType: "json", |
4442 |
|
|
async: false, |
4443 |
|
|
success: function(data){ |
4444 |
|
|
// Ajout des données dans les champs |
4445 |
|
|
$('#libelle').val(data.libelle); |
4446 |
|
|
$('#lieu_adresse_ligne1').val(data.lieu_adresse_ligne1); |
4447 |
|
|
$('#lieu_adresse_ligne2').val(data.lieu_adresse_ligne2); |
4448 |
|
|
$('#lieu_salle').val(data.lieu_salle); |
4449 |
|
|
$('#listes_de_diffusion').val(data.listes_de_diffusion); |
4450 |
|
|
$('#participants').val(data.participants); |
4451 |
|
|
} |
4452 |
|
|
}); |
4453 |
|
|
} |
4454 |
|
|
|
4455 |
|
|
/** |
4456 |
|
|
* Popup de confirmation pour les traitements |
4457 |
|
|
*/ |
4458 |
|
|
// |
4459 |
|
|
function trt_confirm() { |
4460 |
|
|
// |
4461 |
|
|
if (confirm("Etes-vous sur de vouloir confirmer cette action ?")) { |
4462 |
|
|
// |
4463 |
|
|
return true; |
4464 |
|
|
} else { |
4465 |
|
|
// |
4466 |
|
|
return false; |
4467 |
|
|
} |
4468 |
|
|
} |
4469 |
|
|
|
4470 |
|
|
/** |
4471 |
|
|
* Cette fonction permet d'afficher les options d'un select par rapport |
4472 |
|
|
* à un autre champ |
4473 |
|
|
* |
4474 |
|
|
* @param int id Données (identifiant) du champ visé |
4475 |
|
|
* @param string tableName Nom de la table |
4476 |
|
|
* @param string linkedField Champ visé |
4477 |
|
|
* @param string formCible Formulaire visé |
4478 |
softime |
16749 |
* @param string otherData Autre section |
4479 |
mbroquet |
3730 |
*/ |
4480 |
softime |
16749 |
function filterSelect(id, tableName, linkedField, formCible, ...otherData) { |
4481 |
mbroquet |
3730 |
|
4482 |
|
|
//lien vers script php |
4483 |
softime |
7996 |
link = "../app/index.php?module=form&snippet=filterselect&idx=" + id + "&tableName=" + tableName + |
4484 |
mbroquet |
3730 |
"&linkedField=" + linkedField + "&formCible=" + formCible; |
4485 |
|
|
|
4486 |
softime |
16749 |
// Concaténation dans l'url des paramètres supplémentaires spécifiques |
4487 |
|
|
if (otherData.length > 0) { |
4488 |
|
|
for(let cptOtherData=0 ; cptOtherData < otherData.length ; cptOtherData++ ) { |
4489 |
|
|
if ( otherData[(cptOtherData)].length !== 0) { |
4490 |
|
|
link += "&"+otherData[cptOtherData]; |
4491 |
|
|
cptOtherData++; |
4492 |
|
|
link += "="+otherData[(cptOtherData)]; |
4493 |
|
|
} |
4494 |
|
|
} |
4495 |
|
|
} |
4496 |
|
|
|
4497 |
|
|
// lancement de l'appel et récupération du nouveau contenu du select |
4498 |
mbroquet |
3730 |
$.ajax({ |
4499 |
|
|
type: "GET", |
4500 |
|
|
url: link, |
4501 |
|
|
cache: false, |
4502 |
softime |
16749 |
dataType: "html", |
4503 |
mbroquet |
3730 |
success: function(res){ |
4504 |
softime |
16749 |
var table_node = document.getElementById(tableName); |
4505 |
|
|
var selected_id = table_node.value; |
4506 |
|
|
|
4507 |
mbroquet |
3730 |
$('#'+tableName).empty(); |
4508 |
softime |
16749 |
$('#'+tableName).append(res); |
4509 |
|
|
|
4510 |
|
|
if (selected_id !== '' && selected_id !== null) { |
4511 |
|
|
var is_found = false; |
4512 |
|
|
for(let cpt_option = 0; cpt_option < table_node.length; cpt_option++ ) { |
4513 |
|
|
if ( table_node[cpt_option].value == selected_id){ |
4514 |
|
|
table_node[0].selected = false; |
4515 |
|
|
table_node[cpt_option].selected = true; |
4516 |
|
|
is_found = true; |
4517 |
|
|
} |
4518 |
|
|
} |
4519 |
|
|
if (!is_found && tableName == 'commune') { |
4520 |
|
|
// Récupère un message traduit en PHP |
4521 |
|
|
$.ajax({ |
4522 |
|
|
type: "GET", |
4523 |
|
|
url: "../app/index.php?module=form&obj=demande_nouveau_dossier&action=170&idx=0&text_choice=commune_change_selection", |
4524 |
|
|
success: function(message) { |
4525 |
|
|
if (message) { |
4526 |
|
|
alert(message); |
4527 |
|
|
} |
4528 |
|
|
} |
4529 |
|
|
}); |
4530 |
|
|
} |
4531 |
mbroquet |
3730 |
} |
4532 |
softime |
16749 |
|
4533 |
|
|
// Spécifique au chosen, permet de reset le chosen pour qu'il prenne les nouvelles |
4534 |
|
|
// valeurs du select |
4535 |
|
|
if ($('#' + tableName + '_chosen').exists() === true) { |
4536 |
softime |
17036 |
resetChosen(tableName); |
4537 |
softime |
16749 |
} |
4538 |
mbroquet |
3730 |
}, |
4539 |
|
|
async: false |
4540 |
|
|
}); |
4541 |
|
|
} |
4542 |
|
|
|
4543 |
|
|
/** |
4544 |
|
|
* Redirige vers une page après un temps d'attente |
4545 |
|
|
* @param string page lien de la page vers la redirection |
4546 |
|
|
* @param int milliseconde temps d'attente avant la redirection |
4547 |
|
|
*/ |
4548 |
|
|
function redirection(page, milliseconde) { |
4549 |
|
|
|
4550 |
|
|
// |
4551 |
|
|
setTimeout(window.location = page, milliseconde); |
4552 |
|
|
} |
4553 |
|
|
|
4554 |
|
|
/** |
4555 |
|
|
* Retourne ce qu'il y a à afficher dans le formulaire de retour (bouton ajouter ou supprimer et éditer) |
4556 |
|
|
*/ |
4557 |
|
|
function getObjId(obj){ |
4558 |
|
|
|
4559 |
|
|
//Récupération de l'id de l'objet |
4560 |
|
|
var id=$('#id_retour').val(); |
4561 |
|
|
|
4562 |
|
|
//Retour des données |
4563 |
|
|
if ( $('#id_retour').length > 0 ){ |
4564 |
|
|
setDataFrequent(id, obj); |
4565 |
|
|
om_initialize_content(); |
4566 |
|
|
} |
4567 |
|
|
} |
4568 |
|
|
|
4569 |
|
|
function setDataFrequent(id,obj) { |
4570 |
|
|
$.ajax({ |
4571 |
|
|
type: "GET", |
4572 |
|
|
url: '../app/afficher_synthese_obj.view.php?idx='+id+'&obj=' + obj, |
4573 |
|
|
cache: false, |
4574 |
|
|
success: function(html){ |
4575 |
|
|
$('.add_'+obj).each( |
4576 |
|
|
function(){ |
4577 |
|
|
$(this).remove(); |
4578 |
|
|
} |
4579 |
|
|
); |
4580 |
|
|
$(html).insertBefore('#'+obj).fadeIn(500); |
4581 |
|
|
$('#'+obj).val(id); |
4582 |
|
|
}, |
4583 |
|
|
async:false |
4584 |
|
|
}); |
4585 |
|
|
} |
4586 |
|
|
|
4587 |
|
|
/** |
4588 |
|
|
* Redirige vers le script PHP pour mettre à jour les informations |
4589 |
|
|
* et met à jour l'interface pour l'utilisateur |
4590 |
jymadier |
6911 |
* @param string obj Objet du dossier |
4591 |
mbroquet |
3730 |
* @param string id Identifiant du dossier |
4592 |
|
|
* @param string fieldname Nom du champ |
4593 |
|
|
* @param Function callback Fonction mettant à jour l'interface des données |
4594 |
|
|
* @param string confirm_message Texte du message de confirmation |
4595 |
|
|
*/ |
4596 |
jymadier |
6911 |
function geolocalisation_treatment(obj, id, fieldname, callback, confirm_message) { |
4597 |
mbroquet |
3730 |
|
4598 |
|
|
var idx_dossier = id; |
4599 |
|
|
// Overlay de confirmation du traitement |
4600 |
|
|
if (confirm_message != null && confirm_message != '') { |
4601 |
|
|
var dialog_confirm = confirm(confirm_message); |
4602 |
|
|
if( dialog_confirm == false ){ |
4603 |
|
|
return false; |
4604 |
|
|
} |
4605 |
|
|
} |
4606 |
|
|
|
4607 |
|
|
// Affichage du spinner |
4608 |
|
|
$('#'+fieldname).each( |
4609 |
|
|
function(){ |
4610 |
|
|
$(this).children().removeClass(); |
4611 |
|
|
$(this).children().addClass('message ui-widget ui-corner-all ui-state-highlight ui-state-empty'); |
4612 |
|
|
$(this).children().children().children(".text").html(msg_loading); |
4613 |
|
|
} |
4614 |
|
|
); |
4615 |
|
|
|
4616 |
|
|
// lien vers script PHP faisant l'appel au webservice |
4617 |
softime |
7996 |
link = '../app/index.php?module=form&obj=' + obj + '&idx='+id+'&action='; |
4618 |
mbroquet |
3730 |
// sélection de l'action en fonction du bouton cliqué |
4619 |
|
|
switch(fieldname) { |
4620 |
|
|
case 'verif_parcelle': |
4621 |
|
|
link += '121'; |
4622 |
|
|
break; |
4623 |
|
|
case 'calcul_emprise': |
4624 |
|
|
link += '122'; |
4625 |
|
|
break; |
4626 |
|
|
case 'dessin_emprise': |
4627 |
|
|
link += '123'; |
4628 |
|
|
break; |
4629 |
|
|
case 'calcul_centroide': |
4630 |
|
|
link += '124'; |
4631 |
|
|
break; |
4632 |
|
|
case 'recup_contrainte': |
4633 |
|
|
link += '125'; |
4634 |
|
|
break; |
4635 |
|
|
} |
4636 |
|
|
|
4637 |
|
|
// Traitement |
4638 |
|
|
$.ajax({ |
4639 |
|
|
type: "GET", |
4640 |
|
|
url: link, |
4641 |
|
|
cache: false, |
4642 |
|
|
dataType: "json", |
4643 |
|
|
success: function(res){ |
4644 |
|
|
// |
4645 |
|
|
$('#'+fieldname).each( |
4646 |
|
|
function(){ |
4647 |
|
|
// Affichage du message en face de l'action |
4648 |
|
|
$(this).children().children().children(".text").text(res['log']['message']); |
4649 |
|
|
$(this).children().removeClass(); |
4650 |
|
|
// Changement de la couleur du message selon la réponse de |
4651 |
|
|
// l'action |
4652 |
|
|
if (res['log']['etat'] == true) { |
4653 |
|
|
$(this).children().addClass('message ui-widget ui-corner-all ui-state-highlight ui-state-valid'); |
4654 |
|
|
} else { |
4655 |
|
|
$(this).children().addClass('message ui-widget ui-corner-all ui-state-highlight ui-state-error'); |
4656 |
|
|
} |
4657 |
|
|
} |
4658 |
|
|
); |
4659 |
|
|
|
4660 |
|
|
// Appel de la méthode de callback si l'action s'est déroulée correctement |
4661 |
|
|
if (typeof(callback) === "function" && res['log']['etat'] == true) { |
4662 |
|
|
callback(res, idx_dossier); |
4663 |
|
|
} |
4664 |
|
|
}, |
4665 |
|
|
async:false |
4666 |
|
|
}); |
4667 |
|
|
} |
4668 |
|
|
|
4669 |
|
|
/** |
4670 |
|
|
* Efface le message en haut du formulaire |
4671 |
|
|
* @param array res Résultat après le traitement du script PHP |
4672 |
|
|
*/ |
4673 |
|
|
function set_geolocalisation_message(res, id) { |
4674 |
|
|
// Si il y a un message d'erreur |
4675 |
|
|
if ($('#geolocalisation-message')[0]) { |
4676 |
|
|
// Supprime le message |
4677 |
|
|
$('#geolocalisation-message').remove(); |
4678 |
|
|
// Modifie les messages des autres fonctionnalités |
4679 |
|
|
$('#calcul_emprise').each( |
4680 |
|
|
function() { |
4681 |
|
|
$(this).children().removeClass(); |
4682 |
|
|
$(this).children().addClass('message ui-widget ui-corner-all ui-state-highlight ui-state-error'); |
4683 |
|
|
$(this).children().children().children(".text").text(res['log']['message_diff_parcelle']); |
4684 |
|
|
} |
4685 |
|
|
); |
4686 |
|
|
$('#calcul_centroide').each( |
4687 |
|
|
function() { |
4688 |
|
|
$(this).children().removeClass(); |
4689 |
|
|
$(this).children().addClass('message ui-widget ui-corner-all ui-state-highlight ui-state-error'); |
4690 |
|
|
$(this).children().children().children(".text").text(res['log']['message_diff_parcelle']); |
4691 |
|
|
} |
4692 |
|
|
); |
4693 |
|
|
$('#recup_contrainte').each( |
4694 |
|
|
function() { |
4695 |
|
|
$(this).children().removeClass(); |
4696 |
|
|
$(this).children().addClass('message ui-widget ui-corner-all ui-state-highlight ui-state-error'); |
4697 |
|
|
$(this).children().children().children(".text").text(res['log']['message_diff_parcelle']); |
4698 |
|
|
} |
4699 |
|
|
); |
4700 |
|
|
} |
4701 |
|
|
|
4702 |
|
|
} |
4703 |
|
|
|
4704 |
|
|
/** |
4705 |
|
|
* Met le champ centroïde à jour |
4706 |
|
|
* @param array res Résultat après le traitement du script PHP |
4707 |
|
|
*/ |
4708 |
|
|
function set_geolocalisation_centroide(res, id) { |
4709 |
|
|
var content = "<a id='action-form-localiser'"+ |
4710 |
softime |
7996 |
" target='_SIG' href='../app/index.php?module=form&obj=dossier_instruction&action=140&idx="+id+"'>"+ |
4711 |
mbroquet |
3730 |
"<span class='om-icon om-icon-16 om-icon-fix sig-16' title='Localiser'>Localiser</span> "+ |
4712 |
softime |
7996 |
" POINT("+res['return']['x']+" "+res['return']['y']+")"+ |
4713 |
mbroquet |
3730 |
" </a>"; |
4714 |
|
|
|
4715 |
|
|
$('span#centroide').html(content); |
4716 |
|
|
} |
4717 |
|
|
|
4718 |
|
|
/** |
4719 |
|
|
* Met le champ contrainte à jour |
4720 |
|
|
* @param array res Résultat après le traitement du script PHP |
4721 |
|
|
*/ |
4722 |
|
|
function set_geolocalisation_contrainte(res, id) { |
4723 |
|
|
// Contenus du champ contrainte |
4724 |
|
|
var content = $('span#msg_contrainte_sig').html(); |
4725 |
|
|
// Si aucune contraintes est récupérées du SIG |
4726 |
|
|
if (res['dossier_contrainte']['nb_contrainte_sig'] == 0) { |
4727 |
|
|
content = res['dossier_contrainte']['msg_contrainte_sig_empty']; |
4728 |
|
|
} |
4729 |
|
|
// S'il y a des contraintes récupérées |
4730 |
|
|
if (res['dossier_contrainte']['nb_contrainte_sig'] != 0) { |
4731 |
|
|
content = res['dossier_contrainte']['nb_contrainte_sig'] + " " + res['dossier_contrainte']['msg_contrainte_sig'] |
4732 |
|
|
} |
4733 |
|
|
// Affiche le message |
4734 |
|
|
$('span#msg_contrainte_sig').html(content); |
4735 |
|
|
} |
4736 |
|
|
|
4737 |
|
|
/** |
4738 |
|
|
* Redirige vers le sig |
4739 |
|
|
* @param array res Résultat après le traitement du script PHP |
4740 |
|
|
*/ |
4741 |
|
|
function redirection_web_sig(res, id) { |
4742 |
|
|
window.open(res['return']); |
4743 |
|
|
} |
4744 |
|
|
|
4745 |
|
|
/** |
4746 |
|
|
* Traitement du bouton permettant de calculer toutes les données géographiques |
4747 |
jymadier |
6911 |
* @param string obj Objet du dossier |
4748 |
mbroquet |
3730 |
* @param string id Identifiant du dossier |
4749 |
|
|
* @param string confirm_message Texte du message de confirmation |
4750 |
|
|
*/ |
4751 |
jymadier |
6911 |
function all_geolocalisation_treatments(obj, id, confirm_message) { |
4752 |
mbroquet |
3730 |
|
4753 |
|
|
// Overlay de confirmation du traitement |
4754 |
|
|
if (confirm_message != null && confirm_message != '') { |
4755 |
|
|
var dialog_confirm = confirm(confirm_message); |
4756 |
|
|
if( dialog_confirm == false ){ |
4757 |
|
|
return false; |
4758 |
|
|
} |
4759 |
|
|
} |
4760 |
|
|
|
4761 |
|
|
// Initialisation des variables utilisées en paramètres |
4762 |
|
|
var fieldname = ''; |
4763 |
|
|
var callback = ''; |
4764 |
|
|
var confirm_message = ''; |
4765 |
|
|
var flag = ''; |
4766 |
|
|
|
4767 |
|
|
// Modification des variables utilisées en paramètres pour "Vérifier les |
4768 |
|
|
// parcelles" |
4769 |
|
|
fieldname = 'verif_parcelle'; |
4770 |
|
|
callback = set_geolocalisation_message; |
4771 |
|
|
// Traitement "Vérifier les parcelles" |
4772 |
jymadier |
6911 |
geolocalisation_treatment(obj, id, fieldname, callback, confirm_message); |
4773 |
mbroquet |
3730 |
|
4774 |
|
|
// Positionne le flag sur le message de "Vérifier les parcelles" |
4775 |
|
|
flag = $('#'+fieldname+"-message").attr("class"); |
4776 |
|
|
// Si c'est un message d'erreur on arrete le traitement |
4777 |
|
|
if (flag == 'message ui-widget ui-corner-all ui-state-highlight ui-state-error') { |
4778 |
|
|
return false; |
4779 |
|
|
} |
4780 |
|
|
|
4781 |
|
|
// Modification des variables utilisées en paramètres pour "Calculer |
4782 |
|
|
// l'emprise" |
4783 |
|
|
fieldname = 'calcul_emprise'; |
4784 |
|
|
callback = ''; |
4785 |
|
|
// Traitement "Calculer l'emprise" |
4786 |
jymadier |
6911 |
geolocalisation_treatment(obj, id, fieldname, callback, confirm_message); |
4787 |
mbroquet |
3730 |
|
4788 |
|
|
// Positionne le flag sur le message de "Calculer l'emprise" |
4789 |
|
|
flag = $('#'+fieldname+"-message").attr("class"); |
4790 |
|
|
// Si c'est un message d'erreur on arrete le traitement |
4791 |
|
|
if (flag == 'message ui-widget ui-corner-all ui-state-highlight ui-state-error') { |
4792 |
|
|
return false; |
4793 |
|
|
} |
4794 |
|
|
|
4795 |
|
|
// Modification des variables utilisées en paramètres pour "Calculer le |
4796 |
|
|
// centroïde" |
4797 |
|
|
fieldname = 'calcul_centroide'; |
4798 |
|
|
callback = set_geolocalisation_centroide; |
4799 |
|
|
// Traitement "Calculer le centroïde" |
4800 |
jymadier |
6911 |
geolocalisation_treatment(obj, id, fieldname, callback, confirm_message); |
4801 |
mbroquet |
3730 |
|
4802 |
|
|
// Positionne le flag sur le message de "Calculer le centroïde" |
4803 |
|
|
flag = $('#'+fieldname+"-message").attr("class"); |
4804 |
|
|
// Si c'est un message d'erreur on arrete le traitement |
4805 |
|
|
if (flag == 'message ui-widget ui-corner-all ui-state-highlight ui-state-error') { |
4806 |
|
|
return false; |
4807 |
|
|
} |
4808 |
|
|
|
4809 |
|
|
// Modification des variables utilisées en paramètres pour "Récupérer les |
4810 |
|
|
// contraintes" |
4811 |
|
|
fieldname = 'recup_contrainte'; |
4812 |
|
|
callback = set_geolocalisation_contrainte; |
4813 |
|
|
//Traitement "Récupérer les contraintes" |
4814 |
jymadier |
6911 |
geolocalisation_treatment(obj, id, fieldname, callback, confirm_message); |
4815 |
mbroquet |
3730 |
|
4816 |
|
|
} |
4817 |
|
|
|
4818 |
|
|
/** |
4819 |
|
|
* Remplit le formulaire avec l'adresse trouvée ou affiche un message d'erreur |
4820 |
|
|
*/ |
4821 |
|
|
function getAdressFromCadastrale(){ |
4822 |
|
|
|
4823 |
|
|
//Récupération des références cadastrales |
4824 |
|
|
var referenceCadastrale = '{"refcad":[{'; |
4825 |
|
|
var i = 0 ; |
4826 |
|
|
var j = 1 ; |
4827 |
|
|
var delimit = 0; |
4828 |
|
|
var parcelleDelimit = 0; |
4829 |
|
|
var noReferenceCadastrale = false; |
4830 |
|
|
var om_collectivite = ""; |
4831 |
|
|
if($("#om_collectivite").attr("type") != "hidden") { |
4832 |
|
|
om_collectivite = $("#om_collectivite").val(); |
4833 |
|
|
if(om_collectivite == '') { |
4834 |
|
|
alert('Une collectivité doit être sélectionnée'); |
4835 |
|
|
return; |
4836 |
|
|
} |
4837 |
|
|
} |
4838 |
softime |
10573 |
var commune_node = document.getElementById('commune'); |
4839 |
mbroquet |
3730 |
$(".reference_cadastrale_custom_field").each( |
4840 |
|
|
function(){ |
4841 |
|
|
|
4842 |
|
|
//On vérifie que le champ n'est pas vide |
4843 |
|
|
if ($(this).val()!=""&&$(this).val() != ";"){ |
4844 |
|
|
noReferenceCadastrale = true; |
4845 |
|
|
} |
4846 |
|
|
|
4847 |
|
|
//On va à la ligne suivante |
4848 |
|
|
if ( $(this).val() == ";" ){ |
4849 |
|
|
referenceCadastrale +=(delimit!=0)?'}]':''; |
4850 |
|
|
referenceCadastrale += "}" ; |
4851 |
|
|
i++; |
4852 |
|
|
j = 1; |
4853 |
|
|
delimit = 0; |
4854 |
|
|
parcelleDelimit = 0; |
4855 |
|
|
} |
4856 |
|
|
//On parcourt la ligne |
4857 |
|
|
else { |
4858 |
|
|
switch(true){ |
4859 |
|
|
//Quartier |
4860 |
|
|
case (j==1): |
4861 |
|
|
referenceCadastrale += (i!=0)?',':''; |
4862 |
|
|
referenceCadastrale += '"' + i + '"' + ':{"quartier":"'+$(this).val()+'"'; |
4863 |
|
|
break; |
4864 |
|
|
//Section |
4865 |
|
|
case (j==2): |
4866 |
|
|
referenceCadastrale += ', "section":"'+$(this).val()+'"'; |
4867 |
|
|
break; |
4868 |
|
|
//Parcelle |
4869 |
|
|
case (j==3): |
4870 |
|
|
referenceCadastrale += ', "parcelle":"'+$(this).val()+'"'; |
4871 |
|
|
break; |
4872 |
|
|
//Le délimiteur |
4873 |
|
|
case (j%2==0&&j!=2): |
4874 |
|
|
if ( delimit==0 ){ |
4875 |
|
|
referenceCadastrale += ', "delimit":[{"'+(delimit++)+'":"'+$(this).val()+'"'; |
4876 |
|
|
} |
4877 |
|
|
else { |
4878 |
|
|
referenceCadastrale += ', "'+(delimit++)+'":"'+$(this).val()+'"'; |
4879 |
|
|
} |
4880 |
|
|
break; |
4881 |
|
|
//La parcelle après le délimiteur |
4882 |
|
|
case (j%2==1&&j!=1&&j!=3): |
4883 |
|
|
referenceCadastrale += ',"'+(delimit++)+'":"'+$(this).val()+'"'; |
4884 |
|
|
break; |
4885 |
|
|
} |
4886 |
|
|
j++; |
4887 |
|
|
} |
4888 |
|
|
} |
4889 |
|
|
); |
4890 |
|
|
if ( noReferenceCadastrale == true ){ |
4891 |
|
|
referenceCadastrale += "}]"; |
4892 |
|
|
if(om_collectivite != "") { |
4893 |
|
|
referenceCadastrale += ', "om_collectivite":'+om_collectivite; |
4894 |
|
|
} |
4895 |
softime |
10573 |
if (commune_node) { |
4896 |
|
|
referenceCadastrale += ', "commune":'+commune_node.value; |
4897 |
|
|
} |
4898 |
mbroquet |
3730 |
referenceCadastrale += "}"; |
4899 |
|
|
} |
4900 |
|
|
else { |
4901 |
|
|
referenceCadastrale = ""; |
4902 |
|
|
} |
4903 |
|
|
// Lien |
4904 |
softime |
7996 |
link = "../app/index.php?module=form&obj=demande&action=130&idx=0"; |
4905 |
mbroquet |
3730 |
// Affichage du spinner |
4906 |
|
|
; |
4907 |
softime |
7717 |
$('#cad-adr-them').parent().append('<img id="adresse_cadastral_spinner" src="../lib/om-assets/img/loading.gif" alt="Le traitement est en cours. Merci de patienter.">'); |
4908 |
mbroquet |
3730 |
//Lance la tentative de récupération de l'adresse |
4909 |
|
|
$.ajax({ |
4910 |
|
|
type: "POST", |
4911 |
|
|
url: link, |
4912 |
|
|
data: $.parseJSON(referenceCadastrale), |
4913 |
|
|
cache: false, |
4914 |
|
|
dataType: "json", |
4915 |
|
|
success: function(data){ |
4916 |
|
|
//Si le retour est un objet JSON, on a un résultat |
4917 |
|
|
if ( $.isPlainObject(data)){ |
4918 |
|
|
|
4919 |
|
|
//On met l'adresse dans les champs |
4920 |
|
|
$("#terrain_adresse_voie_numero").val(data.return_addr.numero_voie); |
4921 |
|
|
$("#terrain_adresse_voie").val(data.return_addr.nom_voie); |
4922 |
|
|
$("#terrain_adresse_code_postal").val(data.return_addr.code_postal); |
4923 |
|
|
$("#terrain_adresse_localite").val(data.return_addr.localite); |
4924 |
|
|
} |
4925 |
|
|
//Sinon, on affiche un message d'erreur |
4926 |
|
|
else { |
4927 |
|
|
alert(data); |
4928 |
|
|
} |
4929 |
|
|
$('#adresse_cadastral_spinner').remove(); |
4930 |
|
|
}, |
4931 |
|
|
async: false |
4932 |
|
|
}); |
4933 |
|
|
} |
4934 |
|
|
|
4935 |
|
|
/** |
4936 |
|
|
* Modifie les champs requis pour le formulaire demande_type |
4937 |
|
|
* @param integer demande_nature Identifiant |
4938 |
|
|
* @param string lib_dossier_autorisation_type_detaille Libellé du champ |
4939 |
|
|
* dossier_autorisation_type_detaille |
4940 |
|
|
* @param string lib_dossier_instruction_type Libellé du champ |
4941 |
|
|
* dossier_instruction_type |
4942 |
|
|
*/ |
4943 |
|
|
function required_fields_demande_type(demande_nature, lib_dossier_autorisation_type_detaille, lib_dossier_instruction_type) { |
4944 |
|
|
|
4945 |
|
|
// Lien |
4946 |
softime |
7996 |
link = "../app/index.php?module=form&obj=demande_nature&action=11&idx=" + demande_nature; |
4947 |
mbroquet |
3730 |
|
4948 |
|
|
// Traitement |
4949 |
|
|
$.ajax({ |
4950 |
|
|
type: "GET", |
4951 |
|
|
url: link, |
4952 |
|
|
cache: false, |
4953 |
|
|
dataType: "json", |
4954 |
|
|
success: function(demande_nature_info) { |
4955 |
|
|
|
4956 |
|
|
// On enlève le "*" au libellé du champ |
4957 |
|
|
// dossier_autorisation_type_detaille pour montrer qu'il n'est |
4958 |
|
|
// pas obligatoire |
4959 |
|
|
$("#lib-dossier_autorisation_type_detaille").text(''); |
4960 |
|
|
$("#lib-dossier_autorisation_type_detaille") |
4961 |
|
|
.html(lib_dossier_autorisation_type_detaille); |
4962 |
|
|
|
4963 |
|
|
// On enlève le "*" au libellé du champ |
4964 |
|
|
// dossier_instruction_type pour montrer qu'il n'est |
4965 |
|
|
// pas obligatoire |
4966 |
|
|
$("#lib-dossier_instruction_type").text(''); |
4967 |
|
|
$("#lib-dossier_instruction_type") |
4968 |
|
|
.html(lib_dossier_instruction_type); |
4969 |
|
|
|
4970 |
|
|
// Si c'est une nouvelle demande |
4971 |
|
|
if (demande_nature_info != '' |
4972 |
|
|
&& demande_nature_info != null) { |
4973 |
|
|
|
4974 |
|
|
if (demande_nature_info['code'] == 'NOUV') { |
4975 |
|
|
|
4976 |
|
|
// On ajoute le "*" au libellé du champ |
4977 |
|
|
// dossier_autorisation_type_detaille pour montrer qu'il est |
4978 |
|
|
// obligatoire |
4979 |
|
|
$("#lib-dossier_autorisation_type_detaille").text(''); |
4980 |
|
|
$("#lib-dossier_autorisation_type_detaille") |
4981 |
|
|
.html(lib_dossier_autorisation_type_detaille + ' <span class="not-null-tag">*</span>'); |
4982 |
|
|
|
4983 |
|
|
// On ajoute le "*" au libellé du champ |
4984 |
|
|
// dossier_instruction_type pour montrer qu'il est |
4985 |
|
|
// obligatoire |
4986 |
|
|
$("#lib-dossier_instruction_type").text(''); |
4987 |
|
|
$("#lib-dossier_instruction_type") |
4988 |
|
|
.html(lib_dossier_instruction_type + ' <span class="not-null-tag">*</span>'); |
4989 |
|
|
|
4990 |
|
|
} |
4991 |
|
|
|
4992 |
|
|
} |
4993 |
|
|
|
4994 |
|
|
}, |
4995 |
|
|
async:false |
4996 |
|
|
}); |
4997 |
|
|
} |
4998 |
|
|
|
4999 |
|
|
/** |
5000 |
|
|
* Appel au chargement de la page |
5001 |
|
|
**/ |
5002 |
|
|
$(function() { |
5003 |
|
|
|
5004 |
|
|
// url de la page |
5005 |
|
|
url = document.location + ""; |
5006 |
|
|
|
5007 |
|
|
// Si dans le formulaire des type de demande |
5008 |
|
|
// et que c'est en mode ajout ou modifier |
5009 |
softime |
7996 |
if (url.indexOf("index.php?module=form&obj=demande_type&") != -1 |
5010 |
mbroquet |
3730 |
&& (url.indexOf("&action=0") != -1 |
5011 |
|
|
|| url.indexOf("&action=1") != -1 |
5012 |
|
|
|| url.indexOf("&validation=") != -1)) { |
5013 |
|
|
|
5014 |
|
|
// Récupère les paramètres nécessaires |
5015 |
|
|
var demande_nature = $("#demande_nature").val(); |
5016 |
|
|
var lib_dossier_autorisation_type_detaille = $("#lib-dossier_autorisation_type_detaille").text(); |
5017 |
|
|
var lib_dossier_instruction_type = $("#lib-dossier_instruction_type").text(); |
5018 |
|
|
|
5019 |
|
|
// Appelle la fonction pour indiquer si les champs sont requis ou non |
5020 |
|
|
required_fields_demande_type(demande_nature, lib_dossier_autorisation_type_detaille, lib_dossier_instruction_type); |
5021 |
|
|
} |
5022 |
|
|
|
5023 |
softime |
7996 |
// Bind les widgets RSS affichés sur le tableau de bord |
5024 |
|
|
bind_widget_rss(); |
5025 |
mbroquet |
3730 |
}); |
5026 |
|
|
|
5027 |
|
|
/** |
5028 |
|
|
* Cache les champs du formulaire événement |
5029 |
|
|
* @param array fields Tableau des champs |
5030 |
|
|
*/ |
5031 |
|
|
function hideFieldsEvenement(fields) { |
5032 |
|
|
|
5033 |
|
|
// Pour chaque champ |
5034 |
|
|
for (var cpt = 0; cpt < fields.length; cpt++) { |
5035 |
|
|
|
5036 |
|
|
$('#' + fields[cpt]).each( |
5037 |
|
|
function(){ |
5038 |
|
|
|
5039 |
|
|
// Récupère la balise parent et la valeur |
5040 |
|
|
var parentField = $(this).parent(); |
5041 |
|
|
var valueField = $(this).val(); |
5042 |
|
|
// Supprime le champ |
5043 |
|
|
$(this).remove(); |
5044 |
|
|
// Affiche le champ en tant que static |
5045 |
|
|
parentField.append('<span id="'+fields[cpt]+'" class="field_value">'+valueField+'</span>'); |
5046 |
|
|
} |
5047 |
|
|
); |
5048 |
|
|
|
5049 |
|
|
} |
5050 |
|
|
|
5051 |
|
|
// Cache les champs "evenement_retour_ar" et "evenement_retour_signature" |
5052 |
|
|
$('#evenement_retour_ar').parent().parent().hide(); |
5053 |
|
|
$('#evenement_retour_signature').parent().parent().hide(); |
5054 |
|
|
} |
5055 |
|
|
|
5056 |
|
|
/** |
5057 |
|
|
* Affiche les champs du formulaire événement |
5058 |
|
|
* @param array fields Tableau des champs |
5059 |
|
|
*/ |
5060 |
|
|
function showFieldsEvenement(fields) { |
5061 |
|
|
|
5062 |
|
|
// Pour chaque champ |
5063 |
|
|
for (var cpt = 0; cpt < fields.length; cpt++) { |
5064 |
|
|
|
5065 |
|
|
$('#' + fields[cpt]).each( |
5066 |
|
|
function(){ |
5067 |
|
|
|
5068 |
|
|
// Récupère la balise parent et la valeur |
5069 |
|
|
var parentField = $(this).parent(); |
5070 |
|
|
var valueField = $(this).text(); |
5071 |
|
|
// Supprime le champ |
5072 |
|
|
$(this).remove(); |
5073 |
|
|
|
5074 |
|
|
// Si le champ est restriction |
5075 |
|
|
if (this.id == 'restriction') { |
5076 |
|
|
|
5077 |
|
|
// Réaffiche le champ en type text |
5078 |
|
|
parentField.append('<input id="'+this.id+'" class="champFormulaire" type="text" maxlength="60" size="30" value="'+ valueField +'" name="'+this.id+'">'); |
5079 |
|
|
} else { |
5080 |
|
|
|
5081 |
|
|
// Réaffiche les selects |
5082 |
|
|
parentField.append('<select id="'+this.id+'" class="champFormulaire" size="1" name="'+this.id+'"></select>'); |
5083 |
|
|
filterSelect(valueField, fields[cpt], 'delai', 'evenement'); |
5084 |
|
|
} |
5085 |
|
|
} |
5086 |
|
|
); |
5087 |
|
|
|
5088 |
|
|
} |
5089 |
|
|
|
5090 |
|
|
// Affiche les champs "evenement_retour_ar" et "evenement_retour_signature" |
5091 |
|
|
$('#evenement_retour_ar').parent().parent().show(); |
5092 |
|
|
$('#evenement_retour_signature').parent().parent().show(); |
5093 |
|
|
} |
5094 |
|
|
|
5095 |
|
|
/** |
5096 |
|
|
* Action onchange sur la case à cocher "retour" du formulaire "evenement" |
5097 |
|
|
* @param object field Champ de type booléen |
5098 |
|
|
*/ |
5099 |
|
|
function retourOnchangeEvenement(field) { |
5100 |
|
|
|
5101 |
|
|
// liste des champs à modifier dans le formulaire |
5102 |
|
|
var fields = new Array( |
5103 |
|
|
'restriction', |
5104 |
|
|
'delai', |
5105 |
|
|
'accord_tacite', |
5106 |
|
|
'delai_notification', |
5107 |
|
|
'avis_decision' |
5108 |
|
|
); |
5109 |
|
|
|
5110 |
|
|
// Si le champ booléen est à 'Oui' |
5111 |
|
|
if (field.value == 'Oui') { |
5112 |
|
|
// Cache et rend static les champs de la liste |
5113 |
|
|
hideFieldsEvenement(fields); |
5114 |
|
|
} else { |
5115 |
|
|
// Affiche et rend modifiable les champs de la liste |
5116 |
|
|
showFieldsEvenement(fields); |
5117 |
|
|
} |
5118 |
|
|
} |
5119 |
|
|
|
5120 |
softime |
7685 |
/** |
5121 |
|
|
* Permet de récupérer les contraintes ajoutées manuellement depuis le |
5122 |
|
|
* formulaire spécifique. |
5123 |
|
|
*/ |
5124 |
mbroquet |
3730 |
function dossierContrainteValidationForm(objsf, link, formulaire) { |
5125 |
|
|
// composition de la chaine data en fonction des elements du formulaire |
5126 |
|
|
var data = ""; |
5127 |
softime |
7685 |
// |
5128 |
mbroquet |
3730 |
if (formulaire) { |
5129 |
softime |
7685 |
// Pour chaque champ du formulaire |
5130 |
mbroquet |
3730 |
for (i=0; i<formulaire.elements.length; i++) { |
5131 |
softime |
7685 |
// |
5132 |
|
|
var name = formulaire.elements[i].name; |
5133 |
|
|
var value = formulaire.elements[i].value; |
5134 |
|
|
|
5135 |
|
|
// Compose la chaîne data avec les champs contraintes dont la valeur |
5136 |
|
|
// est définit et à 'Oui', ainsi que les champs qui ne sont pas des |
5137 |
|
|
// contraintes |
5138 |
|
|
if (typeof(value) != 'undefined' |
5139 |
|
|
&& ((name.match(/contrainte_.*/) !== null && value == 'Oui') |
5140 |
|
|
|| name.match(/contrainte_.*/) === null)) { |
5141 |
|
|
// |
5142 |
|
|
data += name+"="+encodeURIComponent(value)+"&"; |
5143 |
|
|
} |
5144 |
mbroquet |
3730 |
} |
5145 |
|
|
} |
5146 |
softime |
7685 |
|
5147 |
mbroquet |
3730 |
// execution de la requete en POST |
5148 |
|
|
$.ajax({ |
5149 |
|
|
type: "POST", |
5150 |
|
|
url: link, |
5151 |
|
|
cache: false, |
5152 |
|
|
data: data, |
5153 |
|
|
dataType: "json", |
5154 |
|
|
success: function(html){ |
5155 |
|
|
// Efface le message |
5156 |
|
|
$('.message').remove(); |
5157 |
|
|
// Affiche le message |
5158 |
|
|
$('.subtitle').after( |
5159 |
|
|
'<div ' + |
5160 |
|
|
'class="message ui-widget ui-corner-all ui-state-highlight ui-state-valid">' + |
5161 |
|
|
'<p>' + |
5162 |
|
|
'<span class="ui-icon ui-icon-info"></span>' + |
5163 |
|
|
'<span class="text">' + |
5164 |
|
|
html + |
5165 |
|
|
'</span>' + |
5166 |
|
|
'</p>' + |
5167 |
|
|
'</div>' |
5168 |
|
|
); |
5169 |
|
|
// Décoche toutes les checkbox |
5170 |
|
|
$(":checkbox").attr('checked', false); |
5171 |
|
|
$(":checkbox").attr('value', ''); |
5172 |
|
|
} |
5173 |
|
|
}); |
5174 |
|
|
} |
5175 |
|
|
|
5176 |
softime |
12433 |
|
5177 |
mbroquet |
3730 |
/** |
5178 |
softime |
12433 |
* Permet de récupérer les avis des opérateurs kpark en mode modifier. |
5179 |
|
|
*/ |
5180 |
|
|
function get_avis_from_operateur_kpark(tab_collterr) { |
5181 |
|
|
// composition de la chaine data en fonction des elements du formulaire |
5182 |
|
|
var data = []; |
5183 |
|
|
for (j=0; j<tab_collterr; j++) { |
5184 |
|
|
if ($("#tab_avis_"+j).attr('value') != 'no_select') { |
5185 |
|
|
data[j] = $("#tab_avis_"+j).attr('value'); |
5186 |
|
|
} else { |
5187 |
|
|
data[j] = 'no_select'; |
5188 |
|
|
} |
5189 |
|
|
} |
5190 |
|
|
|
5191 |
|
|
$("#tab_avis_maj").get(0).value = JSON.stringify(data); |
5192 |
|
|
} |
5193 |
|
|
|
5194 |
|
|
/** |
5195 |
mbroquet |
3730 |
* Permet de recharger la page. |
5196 |
|
|
*/ |
5197 |
|
|
function refresh_page_return() { |
5198 |
|
|
// Recharge la page |
5199 |
|
|
location.reload(); |
5200 |
|
|
} |
5201 |
jymadier |
3880 |
|
5202 |
|
|
/** |
5203 |
|
|
* Action permettant la génération d'une archive zip contenant les documents |
5204 |
|
|
* numérisés de la page. |
5205 |
|
|
* |
5206 |
softime |
3925 |
* @param {array} var_text Chaînes d'affichage. |
5207 |
|
|
* @param {string} dossier Identifiant du DA ou DI (selon contexte pièce). |
5208 |
jymadier |
3880 |
*/ |
5209 |
softime |
10573 |
function zip_doc_numerise(var_text, dossier, obj, action) { |
5210 |
jymadier |
3880 |
// Message d'attente |
5211 |
softime |
7717 |
waiting_message_loading ='<img src="../lib/om-assets/img/loading.gif" alt="'+var_text.waiting_message+'" />'+var_text.waiting_message; |
5212 |
jymadier |
3880 |
// Création du modal dialog de confirmation |
5213 |
softime |
6565 |
id_sousform = "#sousform-" + obj; |
5214 |
|
|
addDivDialog(id_sousform); |
5215 |
jymadier |
3880 |
$( "#dialog" ).html(var_text.confirm_message); |
5216 |
|
|
$( "#dialog" ).dialog({ |
5217 |
|
|
title: var_text.title, |
5218 |
|
|
resizable: false, |
5219 |
|
|
height:140, |
5220 |
|
|
modal: true, |
5221 |
|
|
buttons: [ |
5222 |
|
|
{ |
5223 |
|
|
text: var_text.confirm_button_ok, |
5224 |
softime |
15650 |
class : "ui-dialog-button-confirm", |
5225 |
jymadier |
3880 |
click: function() { |
5226 |
|
|
// Si confirmation : |
5227 |
|
|
// on enlève les boutons |
5228 |
|
|
$( "#dialog" ).dialog( "option", "buttons", {}); |
5229 |
|
|
// on change le contenu du modal |
5230 |
|
|
$( "#dialog" ).html(waiting_message_loading); |
5231 |
|
|
// on récupère les identifiant des documents numérisés |
5232 |
|
|
ids = new Array(); |
5233 |
|
|
$('tr td .lienDocumentNumerise').each(function() { |
5234 |
|
|
ids.push(this.id.replace("document_numerise_", "")); |
5235 |
|
|
}); |
5236 |
|
|
// On appel le script de génération de l'archive |
5237 |
|
|
$.ajax({ |
5238 |
softime |
10573 |
url: "../app/index.php?module=form&obj=" + obj + "&action=" + action + "&idx=0&dossier="+dossier+"&ids="+ids.join(','), |
5239 |
jymadier |
3880 |
dataType: "json" |
5240 |
|
|
}).done( |
5241 |
|
|
function(data) { |
5242 |
|
|
// Une fois la génération terminée on affiche l'erreur |
5243 |
|
|
// ou le lien de téléchargement |
5244 |
|
|
if(data.status == false) { |
5245 |
|
|
$( "#dialog" ).html(var_text.error_message); |
5246 |
|
|
} else { |
5247 |
softime |
7996 |
link = '<a id="archive_download_link" href="../app/index.php?module=form&snippet=file&uid='+data.file+ |
5248 |
jymadier |
3880 |
'&dl=download&mode=temporary">'+ |
5249 |
|
|
'<span class="om-icon om-icon-16 om-icon-fix archive-16" title="'+var_text.download_link_message+'">'+ |
5250 |
|
|
var_text.download_link_message+'</span>'+var_text.download_link_message+'</a>'; |
5251 |
|
|
$( "#dialog" ).html(var_text.download_message+'<br/>'+link); |
5252 |
|
|
} |
5253 |
|
|
} |
5254 |
|
|
).fail( |
5255 |
|
|
function() { |
5256 |
|
|
$( "#dialog" ).html(var_text.error_message); |
5257 |
|
|
} |
5258 |
|
|
); |
5259 |
|
|
} |
5260 |
|
|
}, { |
5261 |
|
|
text: var_text.confirm_button_ko, |
5262 |
softime |
15650 |
class : "ui-dialog-button-cancel", |
5263 |
jymadier |
3880 |
click: function() { |
5264 |
|
|
$(this).dialog('close'); |
5265 |
|
|
} |
5266 |
|
|
} |
5267 |
|
|
], |
5268 |
|
|
//OnClose suppression du contenu |
5269 |
|
|
close: function(ev, ui) { |
5270 |
|
|
$(this).remove(); |
5271 |
|
|
} |
5272 |
|
|
}); |
5273 |
nhaye |
4780 |
} |
5274 |
softime |
6565 |
|
5275 |
softime |
8329 |
/** |
5276 |
|
|
* Fonctions de cochage des items de dossier final |
5277 |
|
|
*/ |
5278 |
|
|
function dossier_final_checkbox_select_all_none(checkbox) { |
5279 |
|
|
if (checkbox.checked === true) { |
5280 |
|
|
dossier_final_select_all(); |
5281 |
|
|
} else { |
5282 |
|
|
dossier_final_select_none(); |
5283 |
|
|
} |
5284 |
|
|
} |
5285 |
|
|
function dossier_final_select_all(){ |
5286 |
|
|
$('.checkbox-dossier_final').each(function() { |
5287 |
|
|
this.checked = true; |
5288 |
|
|
}); |
5289 |
|
|
} |
5290 |
|
|
function dossier_final_select_none(){ |
5291 |
|
|
$('.checkbox-dossier_final').each(function() { |
5292 |
|
|
this.checked = false; |
5293 |
|
|
}); |
5294 |
|
|
} |
5295 |
|
|
function dossier_final_select_recommandees(){ |
5296 |
|
|
$('.checkbox-dossier_final').each(function() { |
5297 |
|
|
if($(this).parents("tr").hasClass("dossier_final_piece_recommandee")){ |
5298 |
|
|
this.checked = true; |
5299 |
|
|
}else |
5300 |
|
|
{this.checked = false;} |
5301 |
|
|
}); |
5302 |
|
|
} |
5303 |
|
|
|
5304 |
|
|
/** |
5305 |
softime |
15218 |
* Fonctions de cochage des items de l'onglet téléchargement |
5306 |
|
|
*/ |
5307 |
|
|
function telechargement_checkbox_select_all_none(checkbox) { |
5308 |
|
|
if (checkbox.checked === true) { |
5309 |
|
|
telechargement_select_all(); |
5310 |
|
|
} else { |
5311 |
|
|
telechargement_select_none(); |
5312 |
|
|
} |
5313 |
|
|
} |
5314 |
|
|
function telechargement_select_none(){ |
5315 |
|
|
$('.checkbox-telechargement').each(function() { |
5316 |
|
|
this.checked = false; |
5317 |
|
|
}); |
5318 |
|
|
} |
5319 |
|
|
function telechargement_select_all(){ |
5320 |
|
|
$('.checkbox-telechargement').each(function() { |
5321 |
|
|
this.checked = true; |
5322 |
|
|
}); |
5323 |
|
|
} |
5324 |
|
|
|
5325 |
|
|
/** |
5326 |
softime |
8329 |
* Vérifie que des éléments sont cochés et retourne l'état coché/non coché des fichiers |
5327 |
|
|
*/ |
5328 |
softime |
15218 |
function get_fichiers_checked(context){ |
5329 |
softime |
8329 |
|
5330 |
softime |
15218 |
$('#form-message-'+context).html(msg_loading); |
5331 |
|
|
context = context.replace('-', '_'); |
5332 |
softime |
8329 |
// Récupération des données |
5333 |
softime |
15218 |
var dataJson = "{\""+context+"\":["; |
5334 |
|
|
$('.checkbox-'+context).each( |
5335 |
softime |
8329 |
function(){ |
5336 |
|
|
var id_table = $(this).attr("name") |
5337 |
|
|
var idInput = $(this).attr("id"); |
5338 |
|
|
var champ_uid = $(this).attr("champ_uid"); |
5339 |
|
|
var checked = this.checked; |
5340 |
|
|
dataJson += "{\"uid\":\"" + idInput + "\",\"champ_uid\":\""+ champ_uid + "\",\"table\":\""+ id_table +"\",\"val\":\""+ checked +"\"},"; |
5341 |
|
|
} |
5342 |
|
|
); |
5343 |
|
|
dataJson = $.parseJSON(dataJson.substring(0,dataJson.length-1)+"]}"); |
5344 |
|
|
// Retour des champs avec leur valeur |
5345 |
|
|
return dataJson; |
5346 |
|
|
} |
5347 |
|
|
|
5348 |
|
|
function constituer_dossier_final(dossier, obj){ |
5349 |
|
|
|
5350 |
softime |
15218 |
dataJson = get_fichiers_checked('dossier-final'); |
5351 |
softime |
8329 |
if (dataJson == "") { |
5352 |
|
|
return; |
5353 |
|
|
} |
5354 |
|
|
// On appel le script de constitution du dossier final |
5355 |
|
|
$.ajax({ |
5356 |
|
|
type: "POST", |
5357 |
|
|
url: "../app/index.php?module=form&obj=" + obj + "&action=301&idx=0&dossier="+dossier, |
5358 |
|
|
dataType: "json", |
5359 |
|
|
data: dataJson |
5360 |
|
|
}).done( |
5361 |
|
|
function(html) { |
5362 |
|
|
$('#form-message-dossier-final').html( |
5363 |
|
|
'<div class="message ui-widget ui-corner-all ui-state-highlight">'+ |
5364 |
|
|
'<p>'+ |
5365 |
|
|
'<span class="ui-icon ui-icon-info"></span>'+ |
5366 |
|
|
'<span class="text">'+ |
5367 |
|
|
'Le dossier final a bien été constitué.'+ |
5368 |
|
|
'</span>'+ |
5369 |
|
|
'</p>'+ |
5370 |
|
|
'</div>' |
5371 |
|
|
); |
5372 |
|
|
$('#telecharger-dossier-final').html(html.button_content); |
5373 |
|
|
// Si le retour de l'appel Ajax n'est pas vide, alors il y a eu une |
5374 |
|
|
// erreur lors du traitement |
5375 |
|
|
if ( html.msg_error.length > 2 ) { |
5376 |
|
|
$("#form-message-dossier-final .message").addClass("ui-state-error"); |
5377 |
|
|
$("#form-message-dossier-final .text").html(html.msg_error); |
5378 |
|
|
} |
5379 |
|
|
} |
5380 |
|
|
).fail( |
5381 |
|
|
function(html) { |
5382 |
|
|
if(html.responseText.length > 0){ |
5383 |
|
|
$("#form-message-dossier-final .text").html(html.responseText); |
5384 |
|
|
} |
5385 |
|
|
else { |
5386 |
|
|
$('#form-message-dossier-final').html( |
5387 |
|
|
'<div class="message ui-widget ui-corner-all ui-state-highlight">'+ |
5388 |
|
|
'<p>'+ |
5389 |
|
|
'<span class="ui-icon ui-icon-info"></span>'+ |
5390 |
|
|
'<span class="text">'+ |
5391 |
|
|
'</span>'+ |
5392 |
|
|
'</p>'+ |
5393 |
|
|
'</div>' |
5394 |
|
|
); |
5395 |
|
|
$("#form-message-dossier-final .message").addClass("ui-state-error"); |
5396 |
|
|
$("#form-message-dossier-final .text").html("Erreur lors de la constitution du dossier final."); |
5397 |
|
|
} |
5398 |
|
|
} |
5399 |
|
|
); |
5400 |
|
|
} |
5401 |
|
|
|
5402 |
|
|
/** |
5403 |
softime |
10713 |
* Fonctions de cochage des contraintes à supprimer |
5404 |
|
|
*/ |
5405 |
|
|
function dossier_contrainte_checkbox_select_all_none(checkbox) { |
5406 |
|
|
if (checkbox.checked === true) { |
5407 |
|
|
dossier_contrainte_select_all(); |
5408 |
softime |
11876 |
// Si la case qui sélectionne toutes les contraintes est |
5409 |
|
|
// coché on décoche toutes les cases de sélection de constrainte par groupe |
5410 |
|
|
$('.checkbox_select_all_groupe_none').each(function() { |
5411 |
|
|
this.checked = true; |
5412 |
|
|
}); |
5413 |
softime |
10713 |
} else { |
5414 |
|
|
dossier_contrainte_select_none(); |
5415 |
softime |
11876 |
// Si la case qui sélectionne toutes les contraintes est |
5416 |
|
|
// décoché on décoche toutes les cases de sélection de constrainte par groupe |
5417 |
|
|
$('.checkbox_select_all_groupe_none').each(function() { |
5418 |
|
|
this.checked = false; |
5419 |
|
|
}); |
5420 |
softime |
10713 |
} |
5421 |
|
|
} |
5422 |
|
|
function dossier_contrainte_select_all(){ |
5423 |
|
|
$('.checkbox-contrainte_conserve').each(function() { |
5424 |
|
|
this.checked = true; |
5425 |
|
|
}); |
5426 |
|
|
} |
5427 |
|
|
function dossier_contrainte_select_none(){ |
5428 |
|
|
$('.checkbox-contrainte_conserve').each(function() { |
5429 |
|
|
this.checked = false; |
5430 |
|
|
}); |
5431 |
|
|
} |
5432 |
|
|
|
5433 |
|
|
/** |
5434 |
softime |
11876 |
* Fonctions de cochage par groupe des contraintes à conserver |
5435 |
|
|
*/ |
5436 |
|
|
function dossier_contrainte_checkbox_select_groupe(checkbox){ |
5437 |
|
|
id_parent = checkbox.id.replace('checkbox_select_all_groupe_', ''); |
5438 |
|
|
if (checkbox.checked === true) { |
5439 |
|
|
$('#'+id_parent+' .checkbox-contrainte_conserve').each(function() { |
5440 |
|
|
this.checked = true; |
5441 |
|
|
}); |
5442 |
|
|
} else { |
5443 |
|
|
$('#'+id_parent+' .checkbox-contrainte_conserve').each(function() { |
5444 |
|
|
this.checked = false; |
5445 |
|
|
}); |
5446 |
|
|
// On décoche la case de sélection de toutes les contraintes |
5447 |
|
|
// car un des groupes est déselectionné |
5448 |
|
|
$('.checkbox_select_all_none').each(function() { |
5449 |
|
|
this.checked = false; |
5450 |
|
|
}); |
5451 |
|
|
} |
5452 |
|
|
} |
5453 |
|
|
|
5454 |
|
|
/** |
5455 |
softime |
10713 |
* Vérifie que des éléments sont cochés et retourne l'état coché/non coché des contraintes |
5456 |
|
|
* et renvoie ces informations dans un json. |
5457 |
|
|
* |
5458 |
|
|
* @return {json} |
5459 |
|
|
*/ |
5460 |
|
|
function getContrainteAConserver(){ |
5461 |
|
|
|
5462 |
|
|
$('#form-message-contrainte-conserve').html(msg_loading); |
5463 |
|
|
|
5464 |
|
|
// Récupération des données |
5465 |
|
|
var dataJson = "{\"contraintes_a_conserver\":["; |
5466 |
|
|
$('.checkbox-contrainte_conserve').each( |
5467 |
|
|
function(){ |
5468 |
|
|
var idInput = $(this).attr("id"); |
5469 |
|
|
var checked = this.checked; |
5470 |
|
|
dataJson += "{\"id\":\"" + idInput + "\",\"val\":\"" + checked + "\"},"; |
5471 |
|
|
} |
5472 |
|
|
); |
5473 |
|
|
dataJson = $.parseJSON(dataJson.substring(0,dataJson.length-1)+"]}"); |
5474 |
|
|
// Retour des champs avec leur valeur |
5475 |
|
|
return dataJson; |
5476 |
|
|
} |
5477 |
|
|
|
5478 |
|
|
/** |
5479 |
|
|
* Fait appel à l'action permettant de supprimer les contraintes non séléctionnées. |
5480 |
|
|
* Actualise la page et affiche un message indiquant si le traitement à réussi. |
5481 |
|
|
* |
5482 |
|
|
* @param {string} dossier |
5483 |
|
|
* @param {string} obj |
5484 |
|
|
* @returns |
5485 |
|
|
*/ |
5486 |
|
|
function supprimer_contraintes_non_selectionnees(dossier, obj){ |
5487 |
|
|
dataJson = getContrainteAConserver(); |
5488 |
|
|
if (dataJson == "") { |
5489 |
|
|
return; |
5490 |
|
|
} |
5491 |
|
|
// On appel le script de suppression des contraintes |
5492 |
|
|
$.ajax({ |
5493 |
|
|
type: "POST", |
5494 |
|
|
url: "../app/index.php?module=form&obj=" + obj + "&action=6&idx=0&dossier=" + dossier, |
5495 |
|
|
dataType: "json", |
5496 |
|
|
data: dataJson |
5497 |
|
|
}).done( |
5498 |
|
|
function(html) { |
5499 |
|
|
form_container_refresh("sousform"); |
5500 |
|
|
$('#sousform-dossier_contrainte #sousform-message').html( |
5501 |
|
|
'<div class="message ui-widget ui-corner-all ui-state-highlight">'+ |
5502 |
|
|
'<p>'+ |
5503 |
|
|
'<span class="ui-icon ui-icon-info"></span>'+ |
5504 |
|
|
'<span class="text">'+ |
5505 |
|
|
'</span>'+ |
5506 |
|
|
'</p>'+ |
5507 |
|
|
'</div>' |
5508 |
|
|
); |
5509 |
|
|
$('#sousform-dossier_contrainte #sousform-message span.text').html(html.msg_validation); |
5510 |
|
|
// Si le retour de l'appel Ajax n'est pas vide, alors il y a eu une |
5511 |
|
|
// erreur lors du traitement |
5512 |
|
|
if ( html.msg_error.length > 2 ) { |
5513 |
|
|
$("#sousform-dossier_contrainte #sousform-message .message").addClass("ui-state-error"); |
5514 |
|
|
$("#sousform-dossier_contrainte #sousform-message .text").html(html.msg_error); |
5515 |
|
|
} |
5516 |
|
|
} |
5517 |
|
|
).fail( |
5518 |
|
|
function(html) { |
5519 |
|
|
form_container_refresh("sousform"); |
5520 |
|
|
if(html.responseText.length > 0){ |
5521 |
|
|
$("#sousform-dossier_contrainte #sousform-message .text").html(html.responseText); |
5522 |
|
|
} |
5523 |
|
|
else { |
5524 |
|
|
$('#sousform-dossier_contrainte #sousform-message').html( |
5525 |
|
|
'<div class="message ui-widget ui-corner-all ui-state-highlight">'+ |
5526 |
|
|
'<p>'+ |
5527 |
|
|
'<span class="ui-icon ui-icon-info"></span>'+ |
5528 |
|
|
'<span class="text">'+ |
5529 |
|
|
'</span>'+ |
5530 |
|
|
'</p>'+ |
5531 |
|
|
'</div>' |
5532 |
|
|
); |
5533 |
|
|
$("#sousform-dossier_contrainte #sousform-message .message").addClass("ui-state-error"); |
5534 |
|
|
$("#sousform-dossier_contrainte #sousform-message .text").html("Erreur lors de la suppression des contraintes."); |
5535 |
|
|
} |
5536 |
|
|
} |
5537 |
|
|
); |
5538 |
|
|
} |
5539 |
|
|
|
5540 |
|
|
/** |
5541 |
softime |
8329 |
* Action permettant la génération d'une archive zip contenant |
5542 |
|
|
* les documents du dernier dossier final constitué |
5543 |
|
|
* |
5544 |
|
|
* @param {array} var_text Chaînes d'affichage. |
5545 |
|
|
* @param {array} uids Les uid des fichiers du dossier final. |
5546 |
|
|
* @param {string} dossier Identifiant du DI. |
5547 |
|
|
* @param {string} obj Nom de l'obj |
5548 |
|
|
*/ |
5549 |
|
|
function generate_archive_dossier_final(var_text, uids, dossier, obj) { |
5550 |
|
|
// Message d'attente |
5551 |
|
|
waiting_message_loading ='<img src="../lib/om-assets/img/loading.gif" alt="'+var_text.waiting_message+'" />'+var_text.waiting_message; |
5552 |
|
|
// Création du modal dialog de confirmation |
5553 |
|
|
id_sousform = "#sousform-" + obj; |
5554 |
|
|
addDivDialog(id_sousform); |
5555 |
|
|
$( "#dialog" ).html(var_text.confirm_message); |
5556 |
|
|
$( "#dialog" ).dialog({ |
5557 |
|
|
title: var_text.title, |
5558 |
|
|
resizable: false, |
5559 |
|
|
modal: true, |
5560 |
|
|
buttons: [ |
5561 |
|
|
{ |
5562 |
|
|
text: var_text.confirm_button_ok, |
5563 |
softime |
15650 |
class : "ui-dialog-button-confirm", |
5564 |
softime |
8329 |
click: function() { |
5565 |
|
|
// Si confirmation : |
5566 |
|
|
// on enlève les boutons |
5567 |
|
|
$( "#dialog" ).dialog( "option", "buttons", {}); |
5568 |
|
|
// on change le contenu du modal |
5569 |
|
|
$( "#dialog" ).html(waiting_message_loading); |
5570 |
|
|
// On appel le script de génération de l'archive |
5571 |
|
|
$.ajax({ |
5572 |
|
|
url: "../app/index.php?module=form&obj=" + obj + "&action=302&idx=0&dossier="+dossier+"&ids="+uids.join(','), |
5573 |
|
|
dataType: "json", |
5574 |
|
|
}).done( |
5575 |
|
|
function(data) { |
5576 |
|
|
// Une fois la génération terminée on affiche l'erreur |
5577 |
|
|
// ou le lien de téléchargement |
5578 |
|
|
if(data.status == false) { |
5579 |
|
|
$( "#dialog" ).html(var_text.error_message); |
5580 |
|
|
$( "#dialog" ).html("Nein"); |
5581 |
|
|
} else { |
5582 |
|
|
link = '<a id="archive_download_link" href="../app/index.php?module=form&snippet=file&uid='+data.file+ |
5583 |
|
|
'&dl=download&mode=temporary">'+ |
5584 |
|
|
'<span class="om-icon om-icon-16 om-icon-fix archive-16" title="'+var_text.download_link_message+'">'+ |
5585 |
|
|
var_text.download_link_message+'</span>'+var_text.download_link_message+'</a>'; |
5586 |
softime |
10573 |
$( "#dialog" ).html(var_text.download_message+'<br/>'+link); |
5587 |
softime |
8329 |
} |
5588 |
|
|
} |
5589 |
|
|
).fail( |
5590 |
|
|
function(data) { |
5591 |
|
|
$( "#dialog" ).html(var_text.error_message); |
5592 |
|
|
} |
5593 |
|
|
); |
5594 |
|
|
} |
5595 |
|
|
}, { |
5596 |
|
|
text: var_text.confirm_button_ko, |
5597 |
softime |
15650 |
class : "ui-dialog-button-cancel", |
5598 |
softime |
8329 |
click: function() { |
5599 |
|
|
$(this).dialog('close'); |
5600 |
|
|
} |
5601 |
|
|
} |
5602 |
|
|
], |
5603 |
|
|
//OnClose suppression du contenu |
5604 |
|
|
close: function(ev, ui) { |
5605 |
|
|
$(this).remove(); |
5606 |
|
|
} |
5607 |
|
|
}); |
5608 |
|
|
} |
5609 |
|
|
|
5610 |
softime |
15218 |
/** |
5611 |
|
|
* Action permettant la génération d'une archive zip contenant |
5612 |
|
|
* les documents sélectionnés dans l'onglet téléchargement et |
5613 |
|
|
* l'affichage d'un popup permettant de le télécharger |
5614 |
|
|
* |
5615 |
|
|
* @param {array} var_text Chaînes d'affichage. |
5616 |
|
|
* @param {string} dossier Identifiant du DI. |
5617 |
|
|
* @param {string} obj Nom de l'obj |
5618 |
|
|
*/ |
5619 |
|
|
function archive_telechargement(var_text, dossier, obj) { |
5620 |
|
|
// récupération des fichiers sélectionnés |
5621 |
|
|
dataJson = get_fichiers_checked('telechargement'); |
5622 |
|
|
if (dataJson == "") { |
5623 |
|
|
return; |
5624 |
|
|
} |
5625 |
|
|
uids = []; |
5626 |
|
|
dataJson.telechargement.forEach(function (element) { if (element.val == "true") {uids.push(element.uid);}}) |
5627 |
|
|
|
5628 |
|
|
if (uids.length == 0) { |
5629 |
|
|
// Le click sur le bouton affiche un message, on le supprime |
5630 |
|
|
$('#form-message-telechargement').html(""); |
5631 |
|
|
return; |
5632 |
|
|
} |
5633 |
|
|
// Message d'attente |
5634 |
|
|
waiting_message_loading ='<img src="../lib/om-assets/img/loading.gif" alt="'+var_text.waiting_message+'" />'+var_text.waiting_message; |
5635 |
|
|
// Création du modal dialog de confirmation |
5636 |
|
|
id_sousform = "#sousform-" + obj; |
5637 |
|
|
addDivDialog(id_sousform); |
5638 |
|
|
$( "#dialog" ).html(var_text.confirm_message); |
5639 |
|
|
$( "#dialog" ).dialog({ |
5640 |
|
|
title: var_text.title, |
5641 |
|
|
resizable: false, |
5642 |
|
|
modal: true, |
5643 |
|
|
buttons: [ |
5644 |
|
|
{ |
5645 |
|
|
text: var_text.confirm_button_ok, |
5646 |
softime |
15650 |
class : "ui-dialog-button-confirm", |
5647 |
softime |
15218 |
click: function() { |
5648 |
|
|
// Si confirmation : |
5649 |
|
|
// on enlève les boutons |
5650 |
|
|
$( "#dialog" ).dialog( "option", "buttons", {}); |
5651 |
|
|
// on change le contenu du modal |
5652 |
|
|
$( "#dialog" ).html(waiting_message_loading); |
5653 |
|
|
// On appel le script de génération de l'archive |
5654 |
|
|
$.ajax({ |
5655 |
|
|
url: "../app/index.php?module=form&obj=" + obj + "&action=304&idx=0&dossier="+dossier+"&ids="+uids.join(','), |
5656 |
|
|
dataType: "json", |
5657 |
|
|
}).done( |
5658 |
|
|
function(data) { |
5659 |
|
|
// Une fois la génération terminée on affiche l'erreur |
5660 |
|
|
// ou le lien de téléchargement |
5661 |
|
|
if(data.status == false) { |
5662 |
|
|
$( "#dialog" ).html(var_text.error_message); |
5663 |
|
|
$( "#dialog" ).html("Nein"); |
5664 |
|
|
} else { |
5665 |
|
|
link = '<a id="archive_download_link" href="../app/index.php?module=form&snippet=file&uid='+data.file+ |
5666 |
|
|
'&dl=download&mode=temporary">'+ |
5667 |
|
|
'<span class="om-icon om-icon-16 om-icon-fix archive-16" title="'+var_text.download_link_message+'">'+ |
5668 |
|
|
var_text.download_link_message+'</span>'+var_text.download_link_message+'</a>'; |
5669 |
|
|
$( "#dialog" ).html(var_text.download_message+'<br/>'+link); |
5670 |
|
|
} |
5671 |
|
|
} |
5672 |
|
|
).fail( |
5673 |
|
|
function(data) { |
5674 |
|
|
$( "#dialog" ).html(var_text.error_message); |
5675 |
|
|
} |
5676 |
|
|
); |
5677 |
|
|
} |
5678 |
|
|
}, { |
5679 |
|
|
text: var_text.confirm_button_ko, |
5680 |
softime |
15650 |
class : "ui-dialog-button-cancel", |
5681 |
softime |
15218 |
click: function() { |
5682 |
|
|
$(this).dialog('close'); |
5683 |
|
|
// On supprime le message de traitement en cours |
5684 |
|
|
$('#form-message-telechargement').html(""); |
5685 |
|
|
} |
5686 |
|
|
} |
5687 |
|
|
], |
5688 |
|
|
//OnClose suppression du contenu |
5689 |
|
|
close: function(ev, ui) { |
5690 |
|
|
$(this).remove(); |
5691 |
|
|
// On supprime le message de traitement en cours |
5692 |
|
|
$('#form-message-telechargement').html(""); |
5693 |
|
|
} |
5694 |
|
|
}); |
5695 |
|
|
} |
5696 |
|
|
|
5697 |
softime |
6565 |
function manage_display_demande(idx_datd) { |
5698 |
|
|
var request = $.ajax({ |
5699 |
|
|
type: "GET", |
5700 |
softime |
7996 |
url: "../app/index.php?module=form&obj=dossier_autorisation_type_detaille&action=4&idx="+idx_datd, |
5701 |
softime |
6565 |
cache: false, |
5702 |
softime |
7521 |
// La requête doit être synchrone car c'était l'une des deux causes d'un |
5703 |
|
|
// bug qui cassait les champs custom de références cadastrales et |
5704 |
|
|
// certains de leurs boutons. Pour une raison qui n'a pas été comprise |
5705 |
|
|
// (c'est la folie tout ce qui se passe pour formater (3 fois!) ces |
5706 |
|
|
// champs customs) cela provoque un appel récursif de |
5707 |
|
|
// formatFieldReferenceCadastrale(). Et le fait d'avoir 2 appels |
5708 |
|
|
// imbriqués fait que l'état est incohérent. Donc la création des champs |
5709 |
|
|
// et des boutons ne se fait pas bien. |
5710 |
|
|
// |
5711 |
|
|
// Il est possible de rendre à nouveau cette requête asynchrone en |
5712 |
|
|
// allant voir où manage_display_demande() est appelée. Puis de mettre |
5713 |
|
|
// la suite du code (ce qui se passe après l'appel à |
5714 |
|
|
// manage_display_demande()) dans le callback pour que l'ordre |
5715 |
|
|
// d'exécution soit le même que avec la requête synchrone. Le but est |
5716 |
|
|
// d'éviter de freezer toute la page web pendant la requète au serveur |
5717 |
|
|
// (temps réseau + traitement serveur) |
5718 |
|
|
// |
5719 |
|
|
// manage_display_demande() est appelée à deux endroits donc c'est peut |
5720 |
|
|
// être eux qui vont devoir fournir le callback. |
5721 |
|
|
async: false, |
5722 |
|
|
dataType: "json" |
5723 |
softime |
6565 |
}); |
5724 |
|
|
request.done(function(affichage_form) { |
5725 |
|
|
$('.demande_autorisation_contestee_hidden_bloc').hide(); |
5726 |
|
|
hideFields(); |
5727 |
|
|
|
5728 |
|
|
switch(affichage_form) { |
5729 |
|
|
|
5730 |
|
|
case 'CTX RE': |
5731 |
|
|
// On affiche le champ de recherche de dossier à contester |
5732 |
|
|
$('.demande_autorisation_contestee_hidden_bloc').show(); |
5733 |
|
|
// Désactivation de la validation du formulaire de la demande |
5734 |
|
|
// par l'appui sur la touche entrée |
5735 |
|
|
$(document).on("keypress", '#autorisation_contestee', function (e) { |
5736 |
|
|
var code = e.keyCode || e.which; |
5737 |
|
|
if (code == 13) { |
5738 |
|
|
e.preventDefault(); |
5739 |
|
|
return false; |
5740 |
|
|
} |
5741 |
|
|
}); |
5742 |
|
|
// Dans le cas d'un formulaire soumis en erreur le champ |
5743 |
|
|
// peut être déjà saisie, on recherche donc les informations |
5744 |
|
|
if ($('#autorisation_contestee').val() != '') { |
5745 |
|
|
lookingForAutorisationContestee(); |
5746 |
|
|
} |
5747 |
|
|
break; |
5748 |
|
|
default: |
5749 |
|
|
showFormDemande(); |
5750 |
|
|
break; |
5751 |
|
|
} |
5752 |
|
|
}); |
5753 |
|
|
} |
5754 |
|
|
|
5755 |
|
|
/** |
5756 |
|
|
* Méthode de mise en forme semblable à sprintf : |
5757 |
|
|
* "lorem {0} dolor {1} amet".format("ipsum", "sit"); |
5758 |
|
|
* |
5759 |
|
|
* @return, string Chaîne fourni avec remplacement des index |
5760 |
|
|
*/ |
5761 |
|
|
String.prototype.format = function () { |
5762 |
|
|
var args = [].slice.call(arguments); |
5763 |
|
|
return this.replace(/(\{\d+\})/g, function (a){ |
5764 |
|
|
return args[+(a.substr(1,a.length-2))||0]; |
5765 |
|
|
}); |
5766 |
|
|
}; |
5767 |
softime |
7521 |
|
5768 |
|
|
|
5769 |
|
|
/** |
5770 |
softime |
8989 |
* Enregistre le contenu d'un rendu PDF au format base64 |
5771 |
|
|
* dans une variable 'globale' dont la portée est gérée |
5772 |
|
|
* par jQuery |
5773 |
|
|
*/ |
5774 |
|
|
function set_jquery_data_var_pdf(base64_content) { |
5775 |
|
|
window.pdfjs_content_b64 = atob(base64_content); |
5776 |
|
|
} |
5777 |
|
|
|
5778 |
|
|
/** |
5779 |
|
|
* Affiche l'iframe de prévisualisation PDF |
5780 |
|
|
* (écrasée à chaque rechargement) |
5781 |
|
|
*/ |
5782 |
|
|
function load_iframe_pdf() { |
5783 |
softime |
10573 |
// Détection du navigateur et de sa version |
5784 |
|
|
// https://stackoverflow.com/questions/5916900 |
5785 |
|
|
navigator.sayswho= (function(){ |
5786 |
|
|
var ua= navigator.userAgent, tem, |
5787 |
|
|
M= ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i) || []; |
5788 |
|
|
if(/trident/i.test(M[1])){ |
5789 |
|
|
tem= /\brv[ :]+(\d+)/g.exec(ua) || []; |
5790 |
|
|
return 'IE '+(tem[1] || ''); |
5791 |
|
|
} |
5792 |
|
|
if(M[1]=== 'Chrome'){ |
5793 |
|
|
tem= ua.match(/\b(OPR|Edge)\/(\d+)/); |
5794 |
|
|
if(tem!= null) return tem.slice(1).join(' ').replace('OPR', 'Opera'); |
5795 |
|
|
} |
5796 |
|
|
M= M[2]? [M[1], M[2]]: [navigator.appName, navigator.appVersion, '-?']; |
5797 |
|
|
if((tem= ua.match(/version\/(\d+)/i))!= null) M.splice(1, 1, tem[1]); |
5798 |
|
|
return M; |
5799 |
|
|
})(); |
5800 |
|
|
|
5801 |
|
|
// Charge la librairie pdfjs récente ou pdfjs ancienne en fonction du navigateur et de sa version |
5802 |
|
|
if ((navigator.sayswho[0].toLowerCase() === 'firefox' && parseInt(navigator.sayswho[1], 10) < 74) |
5803 |
|
|
|| (navigator.sayswho[0].toLowerCase() === 'chrome' && parseInt(navigator.sayswho[1], 10) < 80)) { |
5804 |
|
|
// |
5805 |
|
|
$("#frame_content").html('<iframe src="lib/pdfjs-2.0.943/web/om_viewer.html" id="frame_pdf"></iframe>'); |
5806 |
|
|
} else { |
5807 |
|
|
$("#frame_content").html('<iframe src="lib/pdfjs-2.10.377/web/om_viewer.html" id="frame_pdf"></iframe>'); |
5808 |
|
|
} |
5809 |
softime |
8989 |
} |
5810 |
|
|
|
5811 |
|
|
/** |
5812 |
softime |
7521 |
* Recharge le contenu du PDF de prévisualisation |
5813 |
|
|
* |
5814 |
|
|
* @return void |
5815 |
|
|
*/ |
5816 |
|
|
function reload_pdf_viewer() { |
5817 |
softime |
8593 |
var link = "../app/index.php?module=form&obj=instruction&action=777&idx="+$(".form-content #instruction").val(); |
5818 |
|
|
var params =''; |
5819 |
|
|
if (tinyMCE.get('corps_om_htmletatex') != null) { |
5820 |
|
|
params += '&corps='+encodeURIComponent(tinyMCE.get('corps_om_htmletatex').getContent()); |
5821 |
|
|
} |
5822 |
|
|
if (tinyMCE.get('titre_om_htmletat') != null) { |
5823 |
|
|
params += '&titre='+encodeURIComponent(tinyMCE.get('titre_om_htmletat').getContent()); |
5824 |
|
|
} |
5825 |
|
|
if (tinyMCE.get('complement_om_html') != null) { |
5826 |
|
|
params += '&c1='+encodeURIComponent(tinyMCE.get('complement_om_html').getContent()); |
5827 |
|
|
} |
5828 |
|
|
if (tinyMCE.get('complement2_om_html') != null) { |
5829 |
|
|
params += '&c2='+encodeURIComponent(tinyMCE.get('complement2_om_html').getContent()); |
5830 |
|
|
} |
5831 |
|
|
if (tinyMCE.get('complement3_om_html') != null) { |
5832 |
|
|
params += '&c3='+encodeURIComponent(tinyMCE.get('complement3_om_html').getContent()); |
5833 |
|
|
} |
5834 |
|
|
if (tinyMCE.get('complement4_om_html') != null) { |
5835 |
|
|
params += '&c4='+encodeURIComponent(tinyMCE.get('complement4_om_html').getContent()); |
5836 |
|
|
} |
5837 |
softime |
7521 |
$.ajax({ |
5838 |
|
|
type: "POST", |
5839 |
|
|
url: link, |
5840 |
softime |
8593 |
data: params, |
5841 |
softime |
7521 |
dataType: "json", |
5842 |
softime |
8593 |
async: false, |
5843 |
softime |
7521 |
success: function(data){ |
5844 |
softime |
8989 |
// Enregistre le contenu du fichier PDF dans une variable globale |
5845 |
|
|
// qui sera ensuite utilisée dans l'iframe pour charger le document |
5846 |
|
|
set_jquery_data_var_pdf(data.base); |
5847 |
|
|
// Affiche l'iframe (écrase à chaque rechargement) |
5848 |
|
|
load_iframe_pdf(); |
5849 |
softime |
7521 |
// Redimensionne la taille de l'iframe contenant le PDF |
5850 |
|
|
resize_frame_pdf(); |
5851 |
softime |
8593 |
// Positionne l'écran au début de la prévisualisation |
5852 |
|
|
$(window).scrollTop($(".container_instr_edition").offset().top); |
5853 |
softime |
7521 |
} |
5854 |
|
|
}); |
5855 |
|
|
} |
5856 |
|
|
|
5857 |
|
|
|
5858 |
|
|
/** |
5859 |
|
|
* Redimensionne l'iframe contenant le PDF de prévisualisation lors de la |
5860 |
|
|
* modification d'une instruction. |
5861 |
|
|
* |
5862 |
|
|
* @return void |
5863 |
|
|
*/ |
5864 |
|
|
function resize_frame_pdf() { |
5865 |
softime |
8593 |
// |
5866 |
|
|
if (screen.width <= 1280 || $(window).width() <= 1266) { |
5867 |
|
|
$("#frame_pdf").height($('.box_instr_edition').height()); |
5868 |
|
|
} else { |
5869 |
|
|
// Récupère la taille du container comprenant les éléments de rédaction |
5870 |
|
|
var height = $('.box_instr_edition').height(); |
5871 |
|
|
// Redimensionne l'iframe en supprimant les élements au dessus |
5872 |
|
|
// et en dessous de l'iframe |
5873 |
|
|
$("#frame_pdf").height(height-87); |
5874 |
|
|
} |
5875 |
softime |
7521 |
} |
5876 |
softime |
7996 |
|
5877 |
|
|
|
5878 |
|
|
/** |
5879 |
softime |
10573 |
* Initialise la vue du type de champ jsontotab |
5880 |
|
|
* en utilisant la librairie gridjs |
5881 |
|
|
* |
5882 |
|
|
* @return void |
5883 |
|
|
*/ |
5884 |
|
|
function init_view_jsontotab(champ, columns_tab, data_tab) { |
5885 |
|
|
new gridjs.Grid({ |
5886 |
|
|
columns: columns_tab, |
5887 |
|
|
data: data_tab, |
5888 |
|
|
width: 'none', |
5889 |
|
|
style: { |
5890 |
softime |
12433 |
container: { |
5891 |
|
|
'font-weight' : 'normal' |
5892 |
|
|
}, |
5893 |
softime |
10573 |
td: { |
5894 |
|
|
'padding-top': '5px', |
5895 |
|
|
'padding-bottom': '5px', |
5896 |
|
|
'padding-left': '7px', |
5897 |
|
|
'padding-right': '7px', |
5898 |
|
|
color: '#4d4d4d', |
5899 |
|
|
'font-size': '90%' |
5900 |
|
|
}, |
5901 |
|
|
th: { |
5902 |
|
|
'padding-top': '5px', |
5903 |
|
|
'padding-bottom': '5px', |
5904 |
|
|
'padding-left': '7px', |
5905 |
|
|
'padding-right': '7px', |
5906 |
|
|
'font-variant': 'small-caps' |
5907 |
|
|
} |
5908 |
|
|
} |
5909 |
|
|
}).render(document.getElementById(champ+'_jsontotab')); |
5910 |
|
|
} |
5911 |
|
|
|
5912 |
|
|
|
5913 |
|
|
/** |
5914 |
softime |
7996 |
* Permet d'afficher tout les dossiers consultés. (limit à 20) |
5915 |
|
|
* |
5916 |
|
|
* @param {string} widget_id Identifiant du widget |
5917 |
|
|
* |
5918 |
|
|
* @return void |
5919 |
|
|
*/ |
5920 |
|
|
function get_all_dossier_consulte(widget_id) { |
5921 |
|
|
$("div #" + widget_id + " tr").show(); |
5922 |
|
|
$("div #" + widget_id + " .widget-footer").hide(); |
5923 |
|
|
} |
5924 |
softime |
8593 |
|
5925 |
|
|
/** |
5926 |
|
|
* Hack rapide pour modifier les messages de confirmations lors des clics |
5927 |
|
|
* sur les boutons du Portlet 'Rédaction libre' et 'Rédaction par compléments' |
5928 |
|
|
**/ |
5929 |
|
|
function modify_confirm_msg_for_portlet_btn_redaction() |
5930 |
|
|
{ |
5931 |
|
|
actions = ['enable', 'disable']; |
5932 |
|
|
for(i = 0; i < actions.length; i++) { |
5933 |
|
|
btn_id = 'action-sousform-instruction-' + actions[i] + '-edition-integrale'; |
5934 |
|
|
$('#' + btn_id).off('click').on('click', function(event) { |
5935 |
|
|
// |
5936 |
|
|
if ($(this).attr('class').indexOf("action-with-confirmation") >= 0) { |
5937 |
softime |
17542 |
// Définis le contenu du message en fonction de l'action utilisée |
5938 |
|
|
var redaction_libre_action = $(this).attr('id') |
5939 |
|
|
.replace('action-sousform-instruction-', '') |
5940 |
|
|
.replace('-edition-integrale', '') |
5941 |
|
|
var msg_confirm = redaction_libre_action == 'enable' |
5942 |
|
|
? 'Êtes-vous sûr de vouloir activer le mode "Rédaction Libre" ?<br/><br/><span>Le contenu de vos compléments va être intégré dans le document, dont vous pourrez modifier librement l\'intégralité.</span>' |
5943 |
|
|
: 'Êtes-vous sûr de vouloir activer le mode "Rédaction par Compléments" ?<br/><br/><span style="font-weight: bold; color: red;">Attention: toute la rédaction manuelle réalisée sera perdue.</span>'; |
5944 |
|
|
// Modifie le message la popup de confirmation |
5945 |
|
|
remplace_popup_confirmation(form_execute_action_direct, "sousform", this, msg_confirm); |
5946 |
softime |
8593 |
} else { |
5947 |
|
|
form_execute_action_direct("sousform", this); |
5948 |
|
|
} |
5949 |
|
|
// |
5950 |
|
|
return false; |
5951 |
|
|
}); |
5952 |
|
|
} |
5953 |
|
|
} |
5954 |
|
|
|
5955 |
|
|
/** |
5956 |
softime |
17542 |
* Affiche la popup de confirmation lorsque l'utilisateur clique sur l'action |
5957 |
|
|
* notification_manuelle_portal. |
5958 |
softime |
8593 |
**/ |
5959 |
softime |
17542 |
function display_action_notification_manuelle_portal_popup_confirmation() { |
5960 |
|
|
id_instruction = $('input#instruction').val() |
5961 |
|
|
$('#action-sousform-instruction-notification_manuelle_portal').off('click').on('click', function(event) { |
5962 |
|
|
// Interroge le serveur pour savoir si la date limite de notification est dépassée |
5963 |
|
|
elem = this |
5964 |
|
|
$.ajax({ |
5965 |
|
|
type: "GET", |
5966 |
|
|
url: "../app/index.php?module=form&obj=instruction&action=412&idx=" + id_instruction, |
5967 |
|
|
cache: false, |
5968 |
|
|
success: function(data){ |
5969 |
|
|
// Affichage du message de confirmation en fonction du dépassement de la |
5970 |
|
|
// date limite de notification |
5971 |
|
|
if (data == "True") { |
5972 |
|
|
remplace_popup_confirmation( |
5973 |
|
|
form_execute_action_direct, |
5974 |
|
|
"sousform", |
5975 |
|
|
elem, |
5976 |
|
|
"<b>Vous êtes sur le point de notifier un document alors que la date limite d’instruction est dépassée.</b><br/><br/>" |
5977 |
|
|
+ msg_form_action_confirmation |
5978 |
|
|
); |
5979 |
|
|
} else { |
5980 |
|
|
form_confirmation_action(form_execute_action_direct, "sousform", elem); |
5981 |
|
|
} |
5982 |
|
|
} |
5983 |
|
|
}); |
5984 |
softime |
8593 |
|
5985 |
softime |
17542 |
}) |
5986 |
|
|
} |
5987 |
|
|
|
5988 |
|
|
/** |
5989 |
|
|
* Remplace le contenu d'une popup de confirmation par un nouveau contenu. |
5990 |
|
|
* |
5991 |
|
|
* @param {callback} callback callable utilisé si l'utilisateur clique sur le bouton |
5992 |
|
|
* de validation |
5993 |
|
|
* @param {string} elem Element sur lequel s'applique l'action du callback. Ex : form ou sousform |
5994 |
|
|
* @param {string} action Action appliqué lors de l'utilisation du callback |
5995 |
|
|
* @param {string=} msg Nouveau message de la popup |
5996 |
|
|
* @param {array|Object=} btn Tableau de paramétrage des boutons |
5997 |
|
|
*/ |
5998 |
|
|
function remplace_popup_confirmation(callback, elem, action, msg, btn = []) { |
5999 |
|
|
// Paramétrage du message par défaut |
6000 |
|
|
if (msg === undefined) { |
6001 |
|
|
msg = msg_form_action_confirmation |
6002 |
|
|
} |
6003 |
|
|
// Paramétrage des boutons par défaut |
6004 |
|
|
if (btn === undefined || btn.length == 0) { |
6005 |
|
|
btn = [ |
6006 |
softime |
8593 |
{ |
6007 |
|
|
text: msg_form_action_confirmation_button_confirm, |
6008 |
softime |
15650 |
class: "ui-dialog-button-confirm", |
6009 |
softime |
8593 |
click: function() { |
6010 |
softime |
17542 |
$(this).dialog("close") |
6011 |
|
|
callback(elem, action) |
6012 |
softime |
8593 |
} |
6013 |
|
|
}, { |
6014 |
|
|
text: msg_form_action_confirmation_button_cancel, |
6015 |
softime |
15650 |
class : "ui-dialog-button-cancel", |
6016 |
softime |
8593 |
click: function() { |
6017 |
softime |
17542 |
$(this).dialog("close") |
6018 |
softime |
8593 |
} |
6019 |
|
|
} |
6020 |
softime |
17542 |
]; |
6021 |
|
|
} |
6022 |
|
|
|
6023 |
|
|
// Suppression du message de confirmation par défaut |
6024 |
|
|
$('#dialog-action-confirmation').remove() |
6025 |
|
|
// Remplissage du bloc avec le nouveau message |
6026 |
|
|
var dialogbloc = $('<div id="dialog-action-confirmation">' + msg + '</div>').insertAfter('#footer') |
6027 |
|
|
// Suppression de la popup pour la re-construire par la suite |
6028 |
|
|
$(dialogbloc).dialog( "destroy" ) |
6029 |
|
|
|
6030 |
|
|
// Construction du nouveau message de confirmation |
6031 |
|
|
$(dialogbloc).dialog({ |
6032 |
|
|
resizable: false, |
6033 |
|
|
height: 'auto', |
6034 |
|
|
width: 350, |
6035 |
|
|
modal: true, |
6036 |
|
|
buttons: btn |
6037 |
|
|
}) |
6038 |
softime |
8593 |
} |
6039 |
softime |
8989 |
|
6040 |
|
|
/** |
6041 |
|
|
* Copie modifiée des fonctions form_confirmation_action() et |
6042 |
|
|
* form_execute_action_direct() afin de ne pas modifier les fonctions du 'core' |
6043 |
|
|
* (framework openMairie). |
6044 |
|
|
* |
6045 |
|
|
* Fenêtre modale de confirmation spécifique à l'action d'export d'un fichier |
6046 |
|
|
* SITADEL. |
6047 |
|
|
*/ |
6048 |
softime |
17542 |
function sitadel_form_confirmation_action(elem, action) { |
6049 |
|
|
$('#'+elem+'-message').html(msg_loading); |
6050 |
softime |
8989 |
// |
6051 |
softime |
17542 |
$.ajax({ |
6052 |
|
|
type: "POST", |
6053 |
|
|
url: $(action).attr('data-href')+"&validation=1&contentonly=true", |
6054 |
|
|
cache: false, |
6055 |
|
|
dataType: "html", |
6056 |
|
|
data: "datedebut="+action.form.datedebut.value+"&datefin="+action.form.datefin.value+"&numero="+action.form.numero.value, |
6057 |
|
|
success: function(html){ |
6058 |
|
|
// XXX Il semble nécessaire afin de récupérer la portion de code |
6059 |
|
|
// div.message d'ajouter un container qui contient l'intégralité |
6060 |
|
|
// du code html représentant le contenu du formulaire. Si on ajoute |
6061 |
|
|
// pas ce bloc la récupération du bloc ne se fait pas. |
6062 |
|
|
container_specific_js = '<div id="container-specific-js">'+html+'</div>'; |
6063 |
|
|
message = $(container_specific_js).find('div.message').get(0); |
6064 |
|
|
if (message == undefined) { |
6065 |
|
|
message = -1; |
6066 |
softime |
8989 |
} |
6067 |
softime |
17542 |
// Ajout du contenu récupéré (uniquement le bloc message) |
6068 |
|
|
$('#'+elem+'-message').html(message); |
6069 |
|
|
// Rafraichissement du bloc de formulaire |
6070 |
|
|
form_container_refresh(elem); |
6071 |
|
|
// Initialisation JS du nouveau contenu de la page |
6072 |
|
|
om_initialize_content(); |
6073 |
|
|
} |
6074 |
softime |
8989 |
}); |
6075 |
|
|
} |
6076 |
|
|
|
6077 |
|
|
/** |
6078 |
|
|
* Défini l'url pour charger le contenu de l'onglet DI. |
6079 |
|
|
* (uniquement dans le cas d'un clic depuis un autre onglet |
6080 |
|
|
* et si l'url n'est pas déjà défini). |
6081 |
|
|
* Cela permet de forcer le (re)chargement du contenu de l'onglet DI |
6082 |
softime |
9245 |
* à chaque clic sur l'onglet DI. |
6083 |
|
|
* |
6084 |
|
|
* @return boolean 'true' si clique sur un DI à partir d'un autre onglet, sinon 'false' |
6085 |
softime |
8989 |
*/ |
6086 |
|
|
function set_di_href_in_data_load_tabs(evt, ui) { |
6087 |
softime |
9245 |
var ret = false; |
6088 |
|
|
|
6089 |
softime |
14542 |
// Réinitialisation de la valeur de la barre de recherche lors |
6090 |
|
|
// du passage d'un sous-formulaire à un autre |
6091 |
|
|
$('#recherchedyn').val(""); |
6092 |
|
|
|
6093 |
softime |
9245 |
// recherche l'index de l'onglet 'DI' et son noeud DOM |
6094 |
|
|
var di_tab_title_node = null; |
6095 |
|
|
var di_tab_index = -1; |
6096 |
|
|
var di_tab_node = null; |
6097 |
|
|
var list_of_tabs = $('.ui-tabs-nav li'); |
6098 |
|
|
for (var i = 0; i < list_of_tabs.length; i++) { |
6099 |
|
|
var tab = list_of_tabs.get(i); |
6100 |
|
|
var tab_title_node = $(tab).find('> a'); |
6101 |
|
|
if(tab_title_node && tab_title_node.length == 1) { |
6102 |
|
|
tab_title_node.contents().filter(function() { |
6103 |
|
|
return this.nodeType == Node.TEXT_NODE; |
6104 |
|
|
}); |
6105 |
|
|
var tab_title = null; |
6106 |
|
|
if (tab_title_node) { |
6107 |
|
|
tab_title = $(tab_title_node).text().trim(); |
6108 |
|
|
} |
6109 |
|
|
if (tab_title == 'DI') { |
6110 |
|
|
di_tab_title_node = tab_title_node.get(0); |
6111 |
|
|
di_tab_index = i; |
6112 |
|
|
break; |
6113 |
|
|
} |
6114 |
|
|
} |
6115 |
|
|
} |
6116 |
|
|
|
6117 |
|
|
// si l'onglet DI existe (son index a été trouvé) |
6118 |
|
|
if (di_tab_index != -1 && di_tab_title_node) { |
6119 |
|
|
// récupère l'id de l'onglet actuellement sélectionné |
6120 |
softime |
8989 |
var tabIdSelectedFrom = $("#formulaire").tabs('option', 'selected'); |
6121 |
|
|
// si on clic sur l'onglet DI à partir d'un autre onglet |
6122 |
softime |
9245 |
if (ui.tab == di_tab_title_node && tabIdSelectedFrom != di_tab_index) { |
6123 |
|
|
ret = true; |
6124 |
|
|
// récupère la source (href) de l'onglet DI actuellement définie |
6125 |
softime |
8989 |
var tab_href = $.data(di_tab_title_node, 'load.tabs'); |
6126 |
softime |
9245 |
// si l'onglet n'a aucune source distante définie |
6127 |
softime |
8989 |
if (!tab_href) { |
6128 |
softime |
9245 |
// récupère l'URL de la page courante |
6129 |
|
|
// (sans le hash car celui-ci est utilisé pour afficher un autre onglet) |
6130 |
|
|
var tab_href = window.location.href; |
6131 |
|
|
if (tab_href.indexOf('#') != -1) { |
6132 |
|
|
tab_href = window.location.href.split('#')[0]; |
6133 |
|
|
} |
6134 |
|
|
} |
6135 |
|
|
// une recherche dynamique est disponible |
6136 |
|
|
var recherchedyn = document.getElementById("recherchedyn"); |
6137 |
|
|
if (recherchedyn) { |
6138 |
|
|
// retire l'id de la recherche dynamique (car ajouté systématiquement après) |
6139 |
|
|
tab_href = tab_href.replace(/&advs_id=[^&#]*/ig, ''); |
6140 |
|
|
// met à jour l'id de la recherche dynamique (car utilisé par la fonction suivante) |
6141 |
|
|
// si cet id n'est pas mis à jour, le bouton retour de l'onglet DI nouvellement |
6142 |
|
|
// généré aura l'id de recherche d'une recherche vide (si aucune recherche n'a été |
6143 |
|
|
// effectuée) |
6144 |
softime |
8989 |
var search_params = new URLSearchParams(window.location.search); |
6145 |
softime |
9245 |
if (search_params) { |
6146 |
|
|
var advs_id = search_params.get('advs_id'); |
6147 |
|
|
if (advs_id) { |
6148 |
|
|
var current_advs_id = $('#advs_id').get(0).value; |
6149 |
|
|
if (current_advs_id != advs_id) { |
6150 |
|
|
$('#advs_id').get(0).value = advs_id; |
6151 |
|
|
} |
6152 |
|
|
} |
6153 |
|
|
} |
6154 |
softime |
8989 |
} |
6155 |
softime |
9245 |
// défini la source (href) de l'onglet DI (ce qui provoquera son rechargement) |
6156 |
|
|
$.data(di_tab_title_node, 'load.tabs', tab_href); |
6157 |
softime |
8989 |
} |
6158 |
|
|
} |
6159 |
softime |
9245 |
return ret; |
6160 |
softime |
8989 |
} |
6161 |
|
|
|
6162 |
softime |
16749 |
/** |
6163 |
|
|
* |
6164 |
|
|
* @param {*} no_num_doss_complet_node |
6165 |
|
|
*/ |
6166 |
softime |
17036 |
function resetCommuneDADTFromNoNumDossComplet(no_num_doss_complet_node) { |
6167 |
softime |
16749 |
if ( no_num_doss_complet_node.value == 'Oui' ){ |
6168 |
softime |
17036 |
suggestCommuneDatdFromNumDossier(true); |
6169 |
softime |
16749 |
}else{ |
6170 |
softime |
17036 |
suggestCommuneDatdFromNumDossier(); |
6171 |
softime |
16749 |
} |
6172 |
|
|
} |
6173 |
softime |
8989 |
|
6174 |
|
|
/** |
6175 |
softime |
16749 |
* |
6176 |
|
|
*/ |
6177 |
softime |
17036 |
function suggestCommuneDatdFromNumDossier( reset = false ) { |
6178 |
softime |
16749 |
// Recuper le numéro de dossier complet |
6179 |
|
|
num_doss_complet_node = $("#num_doss_complet")[0]; |
6180 |
|
|
|
6181 |
|
|
if ( num_doss_complet_node.value != '' || reset === true ) { |
6182 |
|
|
// récupère l'objet de l'url courante |
6183 |
|
|
var obj = getUrlParamValue('obj', window.location.search); |
6184 |
|
|
if (! obj || (obj != 'demande_nouveau_dossier' |
6185 |
|
|
&& obj != 'demande_nouveau_dossier_contentieux')) { |
6186 |
|
|
obj = 'demande_nouveau_dossier'; |
6187 |
|
|
} |
6188 |
|
|
|
6189 |
|
|
// |
6190 |
|
|
filterSelect (num_doss_complet_node.value, 'dossier_autorisation_type_detaille', 'num_doss_complet', obj); |
6191 |
|
|
|
6192 |
|
|
// si le select 'commune' existe |
6193 |
|
|
var communes_select_node = document.getElementById('commune'); |
6194 |
|
|
if (communes_select_node) { |
6195 |
|
|
var collectivite_node = document.getElementById('om_collectivite'); |
6196 |
|
|
// si le champ 'om_collectivite' existe |
6197 |
|
|
if (collectivite_node) { |
6198 |
|
|
// récupère sa valeur courante |
6199 |
|
|
om_collectivite = collectivite_node.value || ''; |
6200 |
|
|
} |
6201 |
|
|
// si le champ 'date_demande' existe |
6202 |
|
|
var date_demande_node = document.getElementById('date_demande'); |
6203 |
|
|
if (date_demande_node) { |
6204 |
|
|
// récupère sa valeur courante |
6205 |
|
|
date_demande = date_demande_node.value || ''; |
6206 |
|
|
} |
6207 |
softime |
17036 |
updateCommuneSelect(); |
6208 |
|
|
//filterSelect (num_doss_complet_node.value, 'commune', 'num_doss_complet', obj, 'date_demande', date_demande, 'om_collectivite', om_collectivite); |
6209 |
softime |
16749 |
} |
6210 |
|
|
} |
6211 |
|
|
} |
6212 |
|
|
|
6213 |
|
|
/** |
6214 |
softime |
8989 |
* Fonctions pour la mise à jour des champs composant le numéro de dossier |
6215 |
|
|
* d'une nouvelle demande. |
6216 |
|
|
*/ |
6217 |
|
|
|
6218 |
|
|
/** |
6219 |
|
|
* Affiche/cache les champs composant la numérotation manuelle |
6220 |
|
|
* |
6221 |
|
|
* @return void |
6222 |
|
|
*/ |
6223 |
softime |
17036 |
function toggleNoNumDossComplet(no_num_doss_complet_node, onload = false) { |
6224 |
softime |
10573 |
|
6225 |
softime |
16749 |
//Si le formulaire n'as pas été validée |
6226 |
|
|
if ($("form[name=f1] .form-is-valid").size() == 0 ) { |
6227 |
softime |
10573 |
|
6228 |
softime |
16749 |
// si la case de la saisie manuelle du numéro de dossier vient d'être cochée |
6229 |
|
|
if (no_num_doss_complet_node.checked === true) { |
6230 |
|
|
// Désactive le numéro de dossier complet |
6231 |
|
|
$("#num_doss_complet")[0].setAttribute('disabled','disabled'); |
6232 |
|
|
|
6233 |
|
|
// Stock le contenu du numero de dossier complet |
6234 |
|
|
get_num_dossier_complet = $("#num_doss_complet").val(); |
6235 |
|
|
// Vide le contenu du numéro de dossier complet |
6236 |
|
|
$("#num_doss_complet").val(''); |
6237 |
softime |
10573 |
|
6238 |
softime |
16749 |
// Affiche le bloc pour la numérotation manuelle |
6239 |
|
|
if (!onload) { |
6240 |
|
|
// met à jour le type de dossier d'autorisation |
6241 |
|
|
update_num_dossier_type_da($('select#dossier_autorisation_type_detaille')[0], true); |
6242 |
|
|
// met à jour les différents champs qui compose le numéro de dossier |
6243 |
|
|
update_num_dossier_code_depcom(getNodeForCodeDepcom(), true); |
6244 |
|
|
update_num_dossier_annee($('input#date_demande'), true); |
6245 |
|
|
update_num_dossier_division(true); |
6246 |
|
|
update_num_dossier_seq(true); |
6247 |
softime |
10573 |
|
6248 |
softime |
16749 |
// montre le bloc de numéro manuelle de dossier |
6249 |
|
|
$("div.bloc_num_manu").show('fast', 'swing'); |
6250 |
softime |
10573 |
} |
6251 |
softime |
16749 |
|
6252 |
|
|
// affiche le bloc de numéro manuelle de dossier |
6253 |
|
|
else { |
6254 |
|
|
$("div.bloc_num_manu").show(); |
6255 |
softime |
10573 |
} |
6256 |
|
|
} |
6257 |
|
|
|
6258 |
softime |
16749 |
// case de la saisie manuelle du numéro de dossier vient d'être décochée |
6259 |
softime |
10573 |
else { |
6260 |
softime |
16749 |
// Active le numéro de dossier complet |
6261 |
|
|
$("#num_doss_complet")[0].removeAttribute('disabled'); |
6262 |
|
|
// Récupère le num_doss_complet si un numéro est stockée. |
6263 |
|
|
if ( get_num_dossier_complet ) { |
6264 |
|
|
$("#num_doss_complet").val(get_num_dossier_complet); |
6265 |
|
|
} |
6266 |
softime |
10573 |
|
6267 |
softime |
16749 |
//On trigger la vérification du numéro d'urbanisme |
6268 |
|
|
verifier_numerotation_urbanisme($("#num_doss_complet")[0]); |
6269 |
softime |
10573 |
|
6270 |
softime |
16749 |
// Cache le bloc de la numérotation manuelle |
6271 |
|
|
var bloc_numero_dossier = document.getElementsByClassName('bloc demande_hidden_bloc bloc_numero_dossier')[0]; |
6272 |
|
|
// Si le block parent n'est pas caché et que l'on n'est pas au chargement de la page |
6273 |
|
|
if ( |
6274 |
|
|
typeof(bloc_numero_dossier) !== undefined && $(bloc_numero_dossier).is(":visible") |
6275 |
|
|
&& !onload |
6276 |
|
|
) { |
6277 |
|
|
// On applique un effet |
6278 |
|
|
$("div.bloc_num_manu").hide('fast', 'swing'); |
6279 |
|
|
} else { |
6280 |
|
|
// Sinon on cache |
6281 |
|
|
$("div.bloc_num_manu").hide(); |
6282 |
|
|
} |
6283 |
softime |
10573 |
} |
6284 |
softime |
16749 |
} else { |
6285 |
|
|
// Sinon on cache |
6286 |
|
|
$("div.bloc_numero_complet_dossier").hide(); |
6287 |
|
|
$("div.bloc_num_manu").hide(); |
6288 |
softime |
10573 |
} |
6289 |
|
|
} |
6290 |
|
|
|
6291 |
|
|
/** |
6292 |
|
|
* Affiche/cache les champs composant la numérotation manuelle |
6293 |
|
|
* |
6294 |
|
|
* @return void |
6295 |
|
|
*/ |
6296 |
softime |
17036 |
function toggleNumDossierManuel(saisie_manuelle_node, onload) { |
6297 |
softime |
16749 |
//Si le formulaire n'as pas été validée |
6298 |
|
|
if ($("form[name=f1] .form-is-valid").size() == 0 ) { |
6299 |
|
|
// Désactivation des champs de saisie |
6300 |
|
|
if (onload === true) { |
6301 |
|
|
$("#num_doss_type_da")[0].setAttribute('disabled','disabled'); |
6302 |
|
|
$("#num_doss_code_depcom")[0].setAttribute('disabled','disabled'); |
6303 |
|
|
$("#num_doss_annee")[0].setAttribute('disabled','disabled'); |
6304 |
|
|
} |
6305 |
softime |
10573 |
|
6306 |
softime |
16749 |
if (saisie_manuelle_node.checked === true) { |
6307 |
|
|
// Activation des champs de saisie |
6308 |
|
|
$("#num_doss_division")[0].removeAttribute('disabled'); |
6309 |
|
|
$("#num_doss_sequence")[0].removeAttribute('disabled'); |
6310 |
softime |
10573 |
} else { |
6311 |
softime |
16749 |
// Désactivation des champs de saisie |
6312 |
|
|
$("#num_doss_division")[0].setAttribute('disabled','disabled'); |
6313 |
|
|
$("#num_doss_sequence")[0].setAttribute('disabled','disabled'); |
6314 |
|
|
update_num_dossier_type_da($('select#dossier_autorisation_type_detaille')[0]); |
6315 |
|
|
update_num_dossier_code_depcom(getNodeForCodeDepcom()); |
6316 |
|
|
update_num_dossier_annee($('input#date_demande')); |
6317 |
|
|
update_num_dossier_division(); |
6318 |
softime |
8989 |
} |
6319 |
softime |
16749 |
} else { |
6320 |
|
|
// Sinon on cache |
6321 |
|
|
$("div.bloc_num_manu").hide(); |
6322 |
softime |
8989 |
} |
6323 |
|
|
} |
6324 |
|
|
|
6325 |
|
|
/** |
6326 |
softime |
10573 |
* [verifier_numerotation_urbanisme description] |
6327 |
softime |
16749 |
* @param {[type]} num_doss_complet [description] |
6328 |
softime |
10573 |
* @return {[type]} [description] |
6329 |
|
|
*/ |
6330 |
softime |
16749 |
function verifier_numerotation_urbanisme(num_doss_complet) { |
6331 |
softime |
15037 |
// vider le message d'erreur |
6332 |
|
|
$('#complet_err_msg').remove(); |
6333 |
|
|
|
6334 |
|
|
// si la valeur est vide: rien à faire |
6335 |
softime |
16749 |
// ou si la page est valide |
6336 |
|
|
if ( |
6337 |
|
|
(num_doss_complet.value.trim() === "") |
6338 |
|
|
|| ($("form[name=f1] .form-is-valid").size() != 0 ) |
6339 |
|
|
) { |
6340 |
softime |
15037 |
return; |
6341 |
|
|
} |
6342 |
|
|
|
6343 |
softime |
10573 |
// |
6344 |
|
|
var datd_id = document.getElementById('dossier_autorisation_type_detaille'); |
6345 |
|
|
var demande_type_id = document.getElementById('demande_type'); |
6346 |
|
|
|
6347 |
|
|
// Récupère l'objet de l'url courante |
6348 |
|
|
var obj = getUrlParamValue('obj', window.location.search); |
6349 |
|
|
if (!obj || (obj != 'demande_nouveau_dossier' |
6350 |
|
|
&& obj != 'demande_nouveau_dossier_contentieux')) { |
6351 |
|
|
// |
6352 |
|
|
obj = 'demande_nouveau_dossier'; |
6353 |
|
|
} |
6354 |
|
|
|
6355 |
|
|
// |
6356 |
|
|
var url = '../app/index.php?module=form&obj='+obj+'&action=160' |
6357 |
|
|
+ '&num_doss_complet=' + encodeURIComponent(num_doss_complet.value) |
6358 |
|
|
+ '&datd_id=' + encodeURIComponent(datd_id.value) |
6359 |
|
|
+ '&demande_type_id=' + encodeURIComponent(demande_type_id.value); |
6360 |
|
|
$.ajax({ |
6361 |
|
|
url: url, |
6362 |
|
|
dataType: "json", |
6363 |
|
|
success: function(data) { |
6364 |
|
|
// |
6365 |
|
|
if (data && typeof(data) == 'object' && 'info_msg' in data) { |
6366 |
softime |
15037 |
var err_msg_elt = document.getElementById('complet_err_msg'); |
6367 |
|
|
if (! err_msg_elt) { |
6368 |
softime |
16749 |
$('div.bloc_numero_complet_dossier_message').append( |
6369 |
softime |
15037 |
'<div id="complet_err_msg">'+ data['info_msg'] +'</div>'); |
6370 |
|
|
} |
6371 |
|
|
else { |
6372 |
|
|
$(err_msg_elt).html(data['info_msg']); |
6373 |
|
|
} |
6374 |
softime |
10573 |
} |
6375 |
|
|
} |
6376 |
|
|
}); |
6377 |
|
|
} |
6378 |
|
|
|
6379 |
|
|
/** |
6380 |
softime |
16749 |
* Detecte la visibilité des champs num_dossier |
6381 |
|
|
* |
6382 |
|
|
* |
6383 |
|
|
*/ |
6384 |
softime |
17036 |
function numDossierIsVisible(){ |
6385 |
softime |
16749 |
var bloc_numero_dossier = document.getElementsByClassName('bloc demande_hidden_bloc bloc_numero_dossier')[0]; |
6386 |
|
|
var num_doss_manuel_bloc = document.getElementsByClassName('bloc bloc_num_manu inline_block')[0]; |
6387 |
|
|
|
6388 |
|
|
if ( |
6389 |
|
|
typeof(bloc_numero_dossier) !== undefined |
6390 |
|
|
&& $(bloc_numero_dossier).is(":visible") |
6391 |
|
|
&& typeof(num_doss_manuel_bloc) !== undefined |
6392 |
|
|
&& $(num_doss_manuel_bloc).is(":visible") |
6393 |
|
|
) { |
6394 |
|
|
return true; |
6395 |
|
|
} |
6396 |
|
|
return false; |
6397 |
|
|
} |
6398 |
|
|
|
6399 |
|
|
/** |
6400 |
softime |
8989 |
* Met à jour le code du type de dossier d'autorisation composant la |
6401 |
|
|
* numérotation du dossier. |
6402 |
|
|
* |
6403 |
|
|
* @return void |
6404 |
|
|
*/ |
6405 |
softime |
16749 |
function update_num_dossier_type_da(type_da_node, force = false) { |
6406 |
softime |
10573 |
|
6407 |
|
|
// si le champ du type DA du numéro de dossier existe |
6408 |
softime |
8989 |
var num_doss_type_da_node = document.getElementById('num_doss_type_da'); |
6409 |
softime |
16749 |
if (num_doss_type_da_node |
6410 |
softime |
17036 |
&& ( numDossierIsVisible() || force) |
6411 |
softime |
16749 |
) { |
6412 |
softime |
10573 |
|
6413 |
|
|
// détermine le noeud DOM de référence pour le type de DAdt |
6414 |
softime |
8989 |
type_da_node = type_da_node || document.getElementById('dossier_autorisation_type_detaille'); |
6415 |
softime |
10573 |
|
6416 |
|
|
// si une valeur est renseignée pour le DAdt |
6417 |
softime |
8989 |
if (type_da_node.value) { |
6418 |
softime |
10573 |
|
6419 |
|
|
// si la valeur est valide |
6420 |
softime |
8989 |
var type_da = type_da_node.value; |
6421 |
|
|
var type_da_regex = new RegExp('^[0-9]{1,3}$'); |
6422 |
|
|
if (type_da_regex.test(type_da)) { |
6423 |
softime |
10573 |
|
6424 |
|
|
// récupère l'objet de l'url courante |
6425 |
|
|
var obj = getUrlParamValue('obj', window.location.search); |
6426 |
|
|
if (! obj || (obj != 'demande_nouveau_dossier' |
6427 |
|
|
&& obj != 'demande_nouveau_dossier_contentieux')) { |
6428 |
|
|
obj = 'demande_nouveau_dossier'; |
6429 |
|
|
} |
6430 |
|
|
|
6431 |
|
|
// récupère le code du DA et met à jour le champ |
6432 |
|
|
var url = '../app/index.php?module=form&obj='+obj+'&action=140' |
6433 |
softime |
8989 |
+ '&type_dadt=' + encodeURIComponent(type_da); |
6434 |
|
|
$.ajax({ |
6435 |
|
|
url: url, |
6436 |
|
|
dataType: "json", |
6437 |
|
|
success: function(data) { |
6438 |
|
|
if (data && typeof(data) == 'object' && 'code_type_da' in data) { |
6439 |
|
|
num_doss_type_da_node.value = data['code_type_da']; |
6440 |
softime |
10573 |
$(num_doss_type_da_node).trigger('change'); |
6441 |
softime |
8989 |
} |
6442 |
|
|
} |
6443 |
|
|
}); |
6444 |
|
|
} |
6445 |
softime |
10573 |
|
6446 |
|
|
// valeur invalide : on vide le champ |
6447 |
softime |
8989 |
else { |
6448 |
|
|
num_doss_type_da_node.value = ''; |
6449 |
softime |
10573 |
$(num_doss_type_da_node).trigger('change'); |
6450 |
softime |
8989 |
} |
6451 |
|
|
} |
6452 |
softime |
10573 |
|
6453 |
|
|
// pas de valeur : on vide le champ |
6454 |
|
|
else { |
6455 |
|
|
num_doss_type_da_node.value = ''; |
6456 |
|
|
$(num_doss_type_da_node).trigger('change'); |
6457 |
|
|
} |
6458 |
softime |
8989 |
} |
6459 |
|
|
} |
6460 |
|
|
|
6461 |
|
|
/** |
6462 |
|
|
* Récupère l'année sur deux caractères depuis la date de la demande. |
6463 |
|
|
* |
6464 |
|
|
* @return string |
6465 |
|
|
*/ |
6466 |
softime |
16749 |
function get_date_demande_annee(date_demande_node, force = false) { |
6467 |
softime |
10573 |
if (date_demande_node.attr("id") == "date_depot_mairie" && date_demande_node[0].value == "") { |
6468 |
|
|
date_demande_node = $('input#date_demande') |
6469 |
|
|
} |
6470 |
|
|
// si le champ date demande existe |
6471 |
softime |
8989 |
if (date_demande_node.exists() === true) { |
6472 |
softime |
10573 |
|
6473 |
|
|
// si sa valeur est valide (date à la française) |
6474 |
softime |
8989 |
var date = date_demande_node[0].value; |
6475 |
|
|
var date_regex = new RegExp('^[0-9]{2}/[0-9]{2}/([0-9]{4})$'); |
6476 |
|
|
if (date_regex.test(date)) { |
6477 |
softime |
10573 |
|
6478 |
|
|
// on renvoie l'année |
6479 |
softime |
8989 |
return date.replace(date_regex, '$1').substring(2); |
6480 |
|
|
} |
6481 |
|
|
} |
6482 |
softime |
10573 |
|
6483 |
|
|
// on renvoie une chaine vide par défaut |
6484 |
softime |
8989 |
return ''; |
6485 |
|
|
} |
6486 |
|
|
|
6487 |
|
|
/** |
6488 |
|
|
* Met à jour l'année composant la numérotation du dossier. |
6489 |
|
|
* |
6490 |
|
|
* @return void |
6491 |
|
|
*/ |
6492 |
softime |
16749 |
function update_num_dossier_annee(date_demande_node, force = false) { |
6493 |
softime |
10573 |
|
6494 |
|
|
// si le champ de l'année du numéro de dossier existe |
6495 |
|
|
var num_doss_annee_node = document.getElementById('num_doss_annee'); |
6496 |
softime |
16749 |
if (num_doss_annee_node && ( |
6497 |
softime |
17036 |
numDossierIsVisible() || force) |
6498 |
softime |
16749 |
) { |
6499 |
softime |
10573 |
|
6500 |
|
|
// si le champ de la date_demande existe et permet de calculer l'année |
6501 |
|
|
if ($('input#date_depot_mairie').attr("type") == "hidden" || ($('input#date_depot_mairie').attr("type") != "hidden" && $('input#date_depot_mairie').val() == "")) { |
6502 |
|
|
var date_annee = get_date_demande_annee(date_demande_node); |
6503 |
|
|
} else { |
6504 |
|
|
var date_annee = get_date_demande_annee($('input#date_depot_mairie')); |
6505 |
|
|
} |
6506 |
softime |
8989 |
if (typeof(date_annee) !== 'undefined') { |
6507 |
softime |
10573 |
num_doss_annee_node.value = date_annee; |
6508 |
|
|
$(num_doss_annee_node).trigger('change'); |
6509 |
softime |
8989 |
} |
6510 |
softime |
10573 |
|
6511 |
|
|
// si aucune année : on vide le champ |
6512 |
softime |
8989 |
else { |
6513 |
softime |
10573 |
num_doss_annee_node.value = ''; |
6514 |
|
|
$(num_doss_annee_node).trigger('change'); |
6515 |
softime |
8989 |
} |
6516 |
|
|
} |
6517 |
|
|
} |
6518 |
|
|
|
6519 |
|
|
/** |
6520 |
|
|
* Met à jour le code du département et le code de la commune composant la |
6521 |
|
|
* numérotation du dossier. |
6522 |
|
|
* |
6523 |
|
|
* @return void |
6524 |
|
|
*/ |
6525 |
softime |
10573 |
var regex_positive_integer = new RegExp('^[0-9]+$'); |
6526 |
softime |
16749 |
function update_num_dossier_code_depcom(event_node, force = false) { |
6527 |
softime |
10573 |
|
6528 |
|
|
// si le champ code département-commune existe |
6529 |
|
|
// et que le noeud cible de l'évènement est l'un des noeuds attendus |
6530 |
softime |
8989 |
var num_doss_code_depcom_node = document.getElementById('num_doss_code_depcom'); |
6531 |
softime |
16749 |
if ( |
6532 |
|
|
num_doss_code_depcom_node |
6533 |
|
|
&& event_node |
6534 |
|
|
&& ['om_collectivite', 'commune', 'autocomplete-commune-id'].indexOf(event_node.id) != -1 |
6535 |
|
|
&& ( |
6536 |
softime |
17036 |
numDossierIsVisible() || force |
6537 |
softime |
16749 |
) |
6538 |
|
|
) { |
6539 |
softime |
10573 |
|
6540 |
|
|
// récupère l'objet de l'url courante |
6541 |
|
|
var obj = getUrlParamValue('obj', window.location.search); |
6542 |
|
|
if (! obj || (obj != 'demande_nouveau_dossier' |
6543 |
|
|
&& obj != 'demande_nouveau_dossier_contentieux')) { |
6544 |
|
|
obj = 'demande_nouveau_dossier'; |
6545 |
|
|
} |
6546 |
|
|
|
6547 |
|
|
var url = '../app/index.php?module=form&obj='+obj+'&action=141'; |
6548 |
|
|
var url_param_to_add = null; |
6549 |
|
|
|
6550 |
|
|
// le champ 'commune' existe donc on l'utilise (sous forme de select normal ou autocomplete) |
6551 |
|
|
var commune_node = document.getElementById('commune'); |
6552 |
|
|
if (commune_node) { |
6553 |
|
|
|
6554 |
|
|
// le champ 'commune' existe et le déclencheur est le champ 'om_collectivite' |
6555 |
|
|
// on ne fait rien |
6556 |
|
|
if (event_node.id == 'om_collectivite') { |
6557 |
|
|
return; |
6558 |
|
|
} |
6559 |
|
|
|
6560 |
|
|
// sinon on ajoute le paramètre de la commune à l'url |
6561 |
|
|
var commune_id = commune_node.value |
6562 |
|
|
if (regex_positive_integer.test(commune_id)) { |
6563 |
|
|
url_param_to_add = '&commune_id=' + encodeURIComponent(commune_id); |
6564 |
|
|
} |
6565 |
|
|
} |
6566 |
|
|
// le déclencheur est le champ 'collectivité' et le champ 'commune' n'existe pas |
6567 |
|
|
else if (event_node.id == 'om_collectivite') { |
6568 |
|
|
var collectivite_id = event_node.value; |
6569 |
|
|
if (regex_positive_integer.test(collectivite_id)) { |
6570 |
|
|
url_param_to_add = '&collectivite_id=' + encodeURIComponent(collectivite_id); |
6571 |
|
|
} |
6572 |
|
|
} |
6573 |
|
|
|
6574 |
|
|
// ajoute le paramètre à l'url et lance la requête Ajax |
6575 |
|
|
if (url_param_to_add) { |
6576 |
|
|
url += url_param_to_add; |
6577 |
|
|
|
6578 |
|
|
// récupération et mise à jour du code département-commune |
6579 |
softime |
8989 |
$.ajax({ |
6580 |
|
|
url: url, |
6581 |
|
|
dataType: "json", |
6582 |
|
|
success: function(data) { |
6583 |
|
|
if (data && typeof(data) == 'object' && 'code_depcom' in data) { |
6584 |
|
|
num_doss_code_depcom_node.value = data['code_depcom']; |
6585 |
softime |
10573 |
$(num_doss_code_depcom_node).trigger('change'); |
6586 |
softime |
8989 |
} |
6587 |
|
|
} |
6588 |
|
|
}); |
6589 |
|
|
} |
6590 |
softime |
10573 |
|
6591 |
|
|
// si on a aucun paramètre pour construire l'URL : on vide le champs |
6592 |
softime |
8989 |
else { |
6593 |
|
|
num_doss_code_depcom_node.value = ''; |
6594 |
softime |
10573 |
$(num_doss_code_depcom_node).trigger('change'); |
6595 |
softime |
8989 |
} |
6596 |
|
|
} |
6597 |
|
|
} |
6598 |
|
|
|
6599 |
|
|
/** |
6600 |
|
|
* Met à jour la division composant la numérotation du dossier. |
6601 |
|
|
* |
6602 |
|
|
* @return void |
6603 |
|
|
*/ |
6604 |
softime |
16749 |
function update_num_dossier_division(force = false) { |
6605 |
softime |
10573 |
|
6606 |
|
|
// si le champ de la division du numéro de dossier existe |
6607 |
|
|
var doss_division_node = document.getElementById('num_doss_division'); |
6608 |
softime |
16749 |
if (doss_division_node |
6609 |
softime |
17036 |
&& ( numDossierIsVisible() || force) |
6610 |
softime |
16749 |
) { |
6611 |
softime |
10573 |
|
6612 |
softime |
16749 |
/* si : |
6613 |
|
|
- la saisie manuelle est décochée on reclcule toujours |
6614 |
|
|
- la saisie manuelle est cochée et le champ n'a aucun valeur renseigner. |
6615 |
|
|
- on force le calcul |
6616 |
|
|
*/ |
6617 |
|
|
var num_doss_manuel_node = document.getElementById('num_doss_manuel'); |
6618 |
|
|
if ( |
6619 |
|
|
(num_doss_manuel_node.value == 'Oui' && (! doss_division_node.value || doss_division_node.value == '0')) |
6620 |
|
|
|| num_doss_manuel_node.value != 'Oui' |
6621 |
|
|
|| force |
6622 |
|
|
) { |
6623 |
softime |
10573 |
|
6624 |
softime |
16749 |
// récupération des informations nécessaires pour le calcul de la division |
6625 |
|
|
// de l'instructeur affecté automatiquement |
6626 |
|
|
var om_collectivite_node = document.getElementById('om_collectivite'); |
6627 |
|
|
var datd_node = document.getElementById('dossier_autorisation_type_detaille'); |
6628 |
softime |
10573 |
|
6629 |
softime |
16749 |
// si on les champs requis existent et leurs valeurs sont valides |
6630 |
|
|
if (om_collectivite_node && datd_node && om_collectivite_node.value && |
6631 |
|
|
om_collectivite_node.value != '0' && datd_node.value && datd_node.value != '0') { |
6632 |
softime |
10573 |
|
6633 |
softime |
16749 |
// la vérification se fait seulement sur la première parcelle saisie |
6634 |
|
|
var ref_cadas_quar = $('.champ--ref-cadastrales__section:first-of-type .champ--ref-cadastrales:nth-of-type(1) input'); |
6635 |
|
|
var ref_cadas_sect = $('.champ--ref-cadastrales__section:first-of-type .champ--ref-cadastrales:nth-of-type(2) input'); |
6636 |
|
|
var ref_cadas_parc = $('.champ--ref-cadastrales__section:first-of-type .champ--ref-cadastrales:nth-of-type(3) input'); |
6637 |
|
|
var ref_cadas = ''; |
6638 |
|
|
if (ref_cadas_quar.exists() && ref_cadas_sect.exists() && ref_cadas_parc.exists()) { |
6639 |
|
|
ref_cadas = ref_cadas_quar[0].value + ref_cadas_sect[0].value + ref_cadas_parc[0].value; |
6640 |
|
|
} |
6641 |
softime |
10573 |
|
6642 |
softime |
16749 |
// récupère l'objet de l'url courante |
6643 |
|
|
var obj = getUrlParamValue('obj', window.location.search); |
6644 |
|
|
if (! obj || (obj != 'demande_nouveau_dossier' |
6645 |
|
|
&& obj != 'demande_nouveau_dossier_contentieux')) { |
6646 |
|
|
obj = 'demande_nouveau_dossier'; |
6647 |
|
|
} |
6648 |
softime |
10573 |
|
6649 |
softime |
16749 |
// composition de l"URL permettant de récupérer le code de la division |
6650 |
|
|
var url = '../app/index.php?module=form&obj='+obj+'&action=143' |
6651 |
|
|
+ '&om_collectivite=' + encodeURIComponent(om_collectivite_node.value) |
6652 |
|
|
+ '&datd=' + encodeURIComponent(datd_node.value) |
6653 |
|
|
+ '&ref_cadas=' + encodeURIComponent(ref_cadas); |
6654 |
softime |
10573 |
|
6655 |
softime |
16749 |
// cas de la commune associé aux dossier |
6656 |
|
|
var commune_node = document.getElementById('commune'); |
6657 |
|
|
if (commune_node) { |
6658 |
|
|
url += '&commune=' + encodeURIComponent(commune_node.value); |
6659 |
|
|
} |
6660 |
|
|
|
6661 |
|
|
// récupération de la division et mise à jour du champ |
6662 |
|
|
$.ajax({ |
6663 |
|
|
url: url, |
6664 |
|
|
dataType: "json", |
6665 |
|
|
success: function(data) { |
6666 |
|
|
if (data && typeof(data) == 'object' && 'code_division' in data) { |
6667 |
|
|
var code_division = data['code_division']; |
6668 |
|
|
if (code_division !== '') { |
6669 |
|
|
doss_division_node.value = code_division; |
6670 |
|
|
$(doss_division_node).trigger('change'); |
6671 |
|
|
} |
6672 |
softime |
10573 |
} |
6673 |
|
|
} |
6674 |
softime |
16749 |
}); |
6675 |
|
|
} |
6676 |
softime |
10573 |
|
6677 |
softime |
16749 |
// les champs requis ne sont pas existant ou invalides : on vide le champ |
6678 |
|
|
else { |
6679 |
|
|
doss_division_node.value = ''; |
6680 |
|
|
$(doss_division_node).trigger('change'); |
6681 |
|
|
} |
6682 |
softime |
10573 |
} |
6683 |
softime |
8989 |
} |
6684 |
softime |
10573 |
} |
6685 |
|
|
|
6686 |
|
|
/** |
6687 |
|
|
* Met à jour le numéro de séquence composant la numérotation du dossier. |
6688 |
|
|
* |
6689 |
|
|
* @return void |
6690 |
|
|
*/ |
6691 |
|
|
function update_num_dossier_seq(force = false) { |
6692 |
|
|
|
6693 |
|
|
// si le champ de la séquence existe |
6694 |
softime |
16749 |
const num_seq_node = document.getElementById('num_doss_sequence'); |
6695 |
|
|
if ( |
6696 |
|
|
num_seq_node |
6697 |
softime |
17036 |
&& ( numDossierIsVisible() || force) |
6698 |
softime |
16749 |
) { |
6699 |
softime |
10573 |
|
6700 |
softime |
16749 |
var num_doss_manuel_node = document.getElementById('num_doss_manuel'); |
6701 |
|
|
// si la saisie manuelle est décochée ou que la sélquence est null |
6702 |
|
|
if ( |
6703 |
|
|
(num_doss_manuel_node.value == 'Oui' && (! num_seq_node.value || num_seq_node.value == '0')) |
6704 |
|
|
|| num_doss_manuel_node.value != 'Oui' |
6705 |
|
|
|| force |
6706 |
|
|
) { |
6707 |
softime |
10573 |
// récupération des autres champs composant la numérotation |
6708 |
|
|
// nécessaires au calcul de la séquence |
6709 |
|
|
var type_da_node = document.getElementById('num_doss_type_da'); |
6710 |
|
|
var code_depcom_node = document.getElementById('num_doss_code_depcom'); |
6711 |
|
|
var date_annee_node = document.getElementById('num_doss_annee'); |
6712 |
|
|
|
6713 |
|
|
// si leur valeur est non-nulle/non-vide/non-indéfinie/non-zéro |
6714 |
|
|
if (type_da_node && code_depcom_node && date_annee_node && |
6715 |
|
|
type_da_node.value && code_depcom_node.value && date_annee_node.value && |
6716 |
|
|
type_da_node.value != '0' && code_depcom_node.value != '0' && |
6717 |
|
|
date_annee_node.value != '0') { |
6718 |
|
|
|
6719 |
|
|
// récupère l'objet de l'url courante |
6720 |
|
|
var obj = getUrlParamValue('obj', window.location.search); |
6721 |
|
|
if (! obj || (obj != 'demande_nouveau_dossier' |
6722 |
|
|
&& obj != 'demande_nouveau_dossier_contentieux')) { |
6723 |
|
|
obj = 'demande_nouveau_dossier'; |
6724 |
softime |
8989 |
} |
6725 |
softime |
10573 |
|
6726 |
|
|
// défini l'URL permettant de récupérer la valeur courante de la séquence |
6727 |
|
|
var url = '../app/index.php?module=form&obj='+obj+'&action=142' |
6728 |
|
|
+ '&type_da=' + encodeURIComponent(type_da_node.value) |
6729 |
|
|
+ '&code_depcom=' + encodeURIComponent(code_depcom_node.value) |
6730 |
|
|
+ '&date_demande_annee=' + encodeURIComponent(date_annee_node.value); |
6731 |
|
|
|
6732 |
|
|
// récupération de la valeur de la séquence et mise à jour du champ |
6733 |
|
|
$.ajax({ |
6734 |
|
|
url: url, |
6735 |
|
|
dataType: "json", |
6736 |
|
|
success: function(data) { |
6737 |
|
|
if (data && typeof(data) == 'object' && 'seq_currval' in data) { |
6738 |
|
|
var num_doss_seq_currval = parseInt(data['seq_currval']); |
6739 |
|
|
if (num_doss_seq_currval < 9999) { |
6740 |
|
|
num_seq_node.value = num_doss_seq_currval + 1; |
6741 |
|
|
$(num_seq_node).trigger('change'); |
6742 |
|
|
} |
6743 |
|
|
else { |
6744 |
|
|
console.error( |
6745 |
|
|
"Le numéro de séquence reçu '"+ num_doss_seq_currval +"' "+ |
6746 |
|
|
"est invalide (supérieur ou égal à 9999)."); |
6747 |
|
|
} |
6748 |
|
|
} |
6749 |
|
|
} |
6750 |
|
|
}); |
6751 |
softime |
8989 |
} |
6752 |
softime |
10573 |
|
6753 |
|
|
// si les champs requis sont inexistant ou leurs valeurs invalides : on vide le champ |
6754 |
|
|
else { |
6755 |
|
|
num_seq_node.value = ''; |
6756 |
|
|
$(num_seq_node).trigger('change'); |
6757 |
|
|
} |
6758 |
softime |
8989 |
} |
6759 |
softime |
10573 |
} |
6760 |
softime |
8989 |
} |
6761 |
|
|
|
6762 |
|
|
/** |
6763 |
softime |
13137 |
* Met à jour la liste des affectations automatiques (identifiées comme manuelle) possibles d'une nouvelle demande. |
6764 |
softime |
8989 |
* |
6765 |
softime |
10573 |
* @param mixed _this L'objet courant |
6766 |
|
|
* @param func callback Une fonction a appeler après que le champ est été mis à jour |
6767 |
|
|
* @param int delay_cb Un délai avant le callback. Uniquemnt si le champ est affiché |
6768 |
|
|
* |
6769 |
softime |
8989 |
* @return void |
6770 |
|
|
*/ |
6771 |
softime |
10573 |
function update_affectation_auto(_this = null, callback = null, delay_cb = 0) { |
6772 |
|
|
|
6773 |
|
|
// champs de l'affectation automatique |
6774 |
|
|
var aff_auto_jq = $('#affectation_automatique'); |
6775 |
|
|
|
6776 |
|
|
// fonction d'appel du callback |
6777 |
|
|
var _cb = function (aff_auto_jq_is_show) { |
6778 |
|
|
if (typeof callback === 'function') { |
6779 |
|
|
if (delay_cb && aff_auto_jq_is_show) { |
6780 |
|
|
setTimeout(function() { callback(_this); }, delay_cb); |
6781 |
|
|
} |
6782 |
|
|
else { |
6783 |
|
|
callback(_this); |
6784 |
|
|
} |
6785 |
|
|
} |
6786 |
|
|
}; |
6787 |
|
|
|
6788 |
|
|
// si aucun champ 'affectation_automatique' on ne fait rien |
6789 |
|
|
if (! aff_auto_jq.exists()) { |
6790 |
|
|
_cb(false); |
6791 |
softime |
8989 |
return; |
6792 |
|
|
} |
6793 |
softime |
10573 |
|
6794 |
|
|
// récupération des informations nécessaires |
6795 |
|
|
var om_collectivite_id = $('#om_collectivite').val(); |
6796 |
|
|
var datd_id = $('select#dossier_autorisation_type_detaille').val(); |
6797 |
softime |
13137 |
var demande_type_id = $('#demande_type').val(); |
6798 |
softime |
10573 |
|
6799 |
|
|
// s'il manque des informations |
6800 |
|
|
if (om_collectivite_id == undefined || om_collectivite_id == '' |
6801 |
|
|
|| datd_id == undefined || datd_id == '' |
6802 |
softime |
13137 |
|| demande_type_id == undefined || demande_type_id == '') { |
6803 |
softime |
10573 |
|
6804 |
|
|
// on remplace le noeud DOM par un <input> caché et à valeur vide |
6805 |
|
|
aff_auto_jq.replaceWith( |
6806 |
|
|
'<input id="affectation_automatique" name="affectation_automatique" type="hidden" ' + |
6807 |
|
|
'value="" />' |
6808 |
|
|
); |
6809 |
|
|
|
6810 |
|
|
// on cache la ligne du bloc |
6811 |
|
|
$('#affectation_automatique').parent().parent().hide(); |
6812 |
|
|
|
6813 |
|
|
// on s'arrête là |
6814 |
|
|
_cb(false); |
6815 |
|
|
return; |
6816 |
|
|
} |
6817 |
|
|
|
6818 |
|
|
// récupère l'objet de l'url courante |
6819 |
|
|
var obj = getUrlParamValue('obj', window.location.search); |
6820 |
|
|
if (! obj || (obj != 'demande_nouveau_dossier' |
6821 |
|
|
&& obj != 'demande_nouveau_dossier_contentieux')) { |
6822 |
|
|
obj = 'demande_nouveau_dossier'; |
6823 |
|
|
} |
6824 |
|
|
|
6825 |
|
|
// composition de l"URL permettant de récupérer les affectations automatiques |
6826 |
|
|
var url = '../app/index.php?module=form&obj='+obj+'&action=150' |
6827 |
|
|
+ '&om_collectivite=' + encodeURIComponent(om_collectivite_id) |
6828 |
|
|
+ '&datd=' + encodeURIComponent(datd_id) |
6829 |
softime |
13137 |
+ '&demande_type=' + encodeURIComponent(demande_type_id); |
6830 |
softime |
10573 |
|
6831 |
|
|
// le champ 'commune' existe donc on l'utilise (sous forme de select normal ou autocomplete) |
6832 |
|
|
var commune_node = document.getElementById('commune'); |
6833 |
|
|
if (commune_node) { |
6834 |
softime |
16749 |
var commune_id = commune_node.value; |
6835 |
softime |
10573 |
if (regex_positive_integer.test(commune_id)) { |
6836 |
|
|
url += '&commune=' + encodeURIComponent(commune_id); |
6837 |
|
|
} |
6838 |
|
|
} |
6839 |
|
|
|
6840 |
|
|
// exécution de la requête HTTP pour récupérer les affectations automatiques |
6841 |
softime |
8989 |
$.ajax({ |
6842 |
|
|
url: url, |
6843 |
|
|
dataType: "json", |
6844 |
|
|
success: function(data) { |
6845 |
softime |
10573 |
aff_auto_jq = $('#affectation_automatique'); |
6846 |
|
|
|
6847 |
|
|
// si le champ 'affectation_automatique' n'existe plus |
6848 |
|
|
if (! aff_auto_jq) { |
6849 |
|
|
_cb(false); |
6850 |
|
|
return; |
6851 |
|
|
} |
6852 |
|
|
|
6853 |
|
|
// on cache la ligne du bloc |
6854 |
|
|
aff_auto_jq.parent().parent().hide(); |
6855 |
|
|
|
6856 |
|
|
// on remplace le noeud DOM par un <select> |
6857 |
|
|
var aff_auto_jq_classes = aff_auto_jq.attr('class'); |
6858 |
|
|
var urlParams = extractUrlParams(); |
6859 |
|
|
var selectedValue = null; |
6860 |
|
|
if ('affectation_automatique' in urlParams) { |
6861 |
|
|
selectedValue = urlParams['affectation_automatique']; |
6862 |
|
|
} |
6863 |
|
|
aff_auto_jq.replaceWith( |
6864 |
|
|
'<select id="affectation_automatique" name="affectation_automatique">' + |
6865 |
|
|
'<option value=""' + (! selectedValue ? ' selected="selected"' : '') + '>' + |
6866 |
|
|
'choisir affectation automatique' + |
6867 |
|
|
'</option>' + |
6868 |
|
|
'</select>' |
6869 |
|
|
); |
6870 |
|
|
aff_auto_jq = $('#affectation_automatique'); |
6871 |
|
|
aff_auto_jq.attr('class', aff_auto_jq_classes); |
6872 |
|
|
|
6873 |
|
|
// si on a bien reçu des affectations automatiques correspondantes |
6874 |
|
|
var options_received = false; |
6875 |
|
|
if (data && typeof(data) == 'object' && 'affectations_auto' in data) { |
6876 |
|
|
var aff_auto = data['affectations_auto']; |
6877 |
|
|
if (aff_auto && typeof(aff_auto) == 'object' && aff_auto.length > 0) { |
6878 |
|
|
options_received = true; |
6879 |
|
|
|
6880 |
|
|
// on les ajoute au <select> en tant que <option> |
6881 |
|
|
$.each(aff_auto, function() { |
6882 |
|
|
var opt_html = $("<option></option>").text(this.libelle).val(this.id); |
6883 |
|
|
if (selectedValue && selectedValue == this.id) { |
6884 |
|
|
opt_html.attr('selected', 'selected'); |
6885 |
|
|
} |
6886 |
|
|
aff_auto_jq.append(opt_html); |
6887 |
|
|
}); |
6888 |
softime |
8989 |
} |
6889 |
|
|
} |
6890 |
softime |
10573 |
|
6891 |
|
|
// si on a ajouté des options on affiche la ligne du bloc |
6892 |
|
|
if (options_received) { |
6893 |
|
|
aff_auto_jq.parent().parent().show(); |
6894 |
|
|
|
6895 |
|
|
// exécute le callback avec délai |
6896 |
|
|
_cb(true); |
6897 |
|
|
} |
6898 |
|
|
else { |
6899 |
|
|
|
6900 |
|
|
// exécute le callback sans délai |
6901 |
|
|
_cb(false); |
6902 |
|
|
} |
6903 |
softime |
8989 |
} |
6904 |
|
|
}); |
6905 |
|
|
} |
6906 |
softime |
9245 |
|
6907 |
|
|
/** |
6908 |
softime |
10573 |
* Remplace un paramètre d'une URL relative (sans domaine) |
6909 |
softime |
9245 |
* |
6910 |
softime |
10573 |
* @source: https://stackoverflow.com/a/20420424 |
6911 |
|
|
*/ |
6912 |
|
|
function replaceRelativeUrlParam(url, paramName, paramValue) |
6913 |
|
|
{ |
6914 |
|
|
if (paramValue == null) { |
6915 |
|
|
paramValue = ''; |
6916 |
|
|
} |
6917 |
|
|
var pattern = new RegExp('\\b('+paramName+'=).*?(&|#|$)'); |
6918 |
|
|
if (url.search(pattern)>=0) { |
6919 |
|
|
return url.replace(pattern,'$1' + paramValue + '$2'); |
6920 |
|
|
} |
6921 |
|
|
url = url.replace(/[?#]$/,''); |
6922 |
|
|
return url + (url.indexOf('?')>0 ? '&' : '?') + paramName + '=' + paramValue; |
6923 |
|
|
} |
6924 |
|
|
|
6925 |
|
|
/** |
6926 |
softime |
16749 |
* Met à jour l'objet 'select' du champ commune à partir des champs |
6927 |
softime |
10573 |
* 'om_collectivite' et 'date_demande' |
6928 |
|
|
* (lorsque l'option dossier_commune est activée) |
6929 |
|
|
*/ |
6930 |
softime |
17036 |
function updateCommuneSelect() { |
6931 |
softime |
16749 |
// si la select 'commune' existe |
6932 |
|
|
var commune_node = document.getElementById('commune'); |
6933 |
|
|
if (commune_node) { |
6934 |
|
|
var om_collectivite = ''; |
6935 |
|
|
var date_demande = ''; |
6936 |
softime |
17036 |
var has_loader = false; |
6937 |
softime |
10573 |
|
6938 |
softime |
16749 |
// Recuper le numéro de dossier complet |
6939 |
|
|
num_doss_complet_node = $("#num_doss_complet")[0]; |
6940 |
softime |
10573 |
|
6941 |
softime |
16749 |
// récupère l'objet de l'url courante |
6942 |
softime |
17036 |
const obj = getUrlParamValue('obj', window.location.search); |
6943 |
softime |
16749 |
if (! obj || (obj != 'demande_nouveau_dossier' |
6944 |
|
|
&& obj != 'demande_nouveau_dossier_contentieux')) { |
6945 |
|
|
obj = 'demande_nouveau_dossier'; |
6946 |
|
|
} |
6947 |
softime |
10573 |
|
6948 |
softime |
17036 |
const collectivite_node = document.getElementById('om_collectivite'); |
6949 |
softime |
16749 |
// si le champ 'om_collectivite' existe |
6950 |
|
|
if (collectivite_node) { |
6951 |
|
|
// récupère sa valeur courante |
6952 |
|
|
om_collectivite = collectivite_node.value || ''; |
6953 |
|
|
} |
6954 |
|
|
// si le champ 'date_demande' existe |
6955 |
|
|
var date_demande_node = document.getElementById('date_demande'); |
6956 |
|
|
if (date_demande_node) { |
6957 |
|
|
// récupère sa valeur courante |
6958 |
|
|
date_demande = date_demande_node.value || ''; |
6959 |
|
|
} |
6960 |
softime |
10573 |
|
6961 |
softime |
17036 |
// la section suivante fait l'équivalent de |
6962 |
|
|
// filterSelect (num_doss_complet_node.value, 'commune', 'num_doss_complet', obj, 'date_demande', date_demande, 'om_collectivite', om_collectivite); |
6963 |
|
|
// mais avec l'ajout du loader |
6964 |
|
|
// lien vers script php |
6965 |
|
|
link = "../app/index.php?module=form&snippet=filterselect&idx=" + num_doss_complet_node.value + "&tableName=commune" + |
6966 |
|
|
"&linkedField=num_doss_complet&formCible=" + obj; |
6967 |
|
|
// Concaténation dans l'url des paramètres supplémentaires spécifiques |
6968 |
|
|
link += "&date_demande="+date_demande; |
6969 |
|
|
link += "&om_collectivite="+om_collectivite; |
6970 |
|
|
link += "&triggered_load="+true; |
6971 |
|
|
|
6972 |
|
|
const commune_loader_div = document.getElementsByClassName('commune---loader'); |
6973 |
|
|
if ( |
6974 |
|
|
typeof(commune_loader_div) !== 'undefined' |
6975 |
|
|
&& typeof(commune_loader_div[0]) !== 'undefined' |
6976 |
|
|
&& commune_loader_div[0].firstElementChild.hidden === false |
6977 |
|
|
) { |
6978 |
|
|
// add loading image |
6979 |
|
|
has_loader = true; |
6980 |
|
|
$(commune_loader_div).addClass('inline_block'); |
6981 |
|
|
$(commune_loader_div).append('<div id="commune_loader_div" class="loader"></div>'); |
6982 |
|
|
} |
6983 |
softime |
10573 |
|
6984 |
softime |
17036 |
// lancement de l'appel et récupération du nouveau contenu du select |
6985 |
|
|
$.ajax({ |
6986 |
|
|
type: "GET", |
6987 |
|
|
url: link, |
6988 |
|
|
cache: true, |
6989 |
|
|
dataType: "html", |
6990 |
|
|
success: function(res){ |
6991 |
|
|
var table_node = document.getElementById('commune'); |
6992 |
|
|
var selected_id = table_node.value; |
6993 |
|
|
|
6994 |
|
|
$('#commune').empty(); |
6995 |
|
|
$('#commune').append(res); |
6996 |
|
|
|
6997 |
|
|
if (selected_id !== '' && selected_id !== null) { |
6998 |
|
|
var is_found = false; |
6999 |
|
|
for(let cpt_option = 0; cpt_option < table_node.length; cpt_option++ ) { |
7000 |
|
|
if ( table_node[cpt_option].value == selected_id){ |
7001 |
|
|
table_node[0].selected = false; |
7002 |
|
|
table_node[cpt_option].selected = true; |
7003 |
|
|
is_found = true; |
7004 |
|
|
} |
7005 |
|
|
} |
7006 |
|
|
if (!is_found) { |
7007 |
|
|
// Récupère un message traduit en PHP |
7008 |
|
|
$.ajax({ |
7009 |
|
|
type: "GET", |
7010 |
|
|
url: "../app/index.php?module=form&obj=demande_nouveau_dossier&action=170&idx=0&text_choice=commune_change_selection", |
7011 |
|
|
success: function(message) { |
7012 |
|
|
if (message) { |
7013 |
|
|
alert(message); |
7014 |
|
|
} |
7015 |
|
|
} |
7016 |
|
|
}); |
7017 |
|
|
} |
7018 |
|
|
} |
7019 |
|
|
|
7020 |
|
|
// Spécifique au chosen, permet de reset le chosen pour qu'il prenne les nouvelles |
7021 |
|
|
// valeurs du select |
7022 |
|
|
if ($('#commune_chosen').exists() === true) { |
7023 |
|
|
resetChosen('commune'); |
7024 |
|
|
} |
7025 |
|
|
} |
7026 |
|
|
}).always(function() { |
7027 |
|
|
if (has_loader){ |
7028 |
|
|
// remove loading image |
7029 |
|
|
const commune_loader_node = document.getElementById('commune_loader_div'); |
7030 |
|
|
$(commune_loader_node).remove(); |
7031 |
|
|
$(commune_loader_div).removeClass('inline_block'); |
7032 |
|
|
} |
7033 |
|
|
}); |
7034 |
softime |
10573 |
} |
7035 |
|
|
} |
7036 |
|
|
|
7037 |
|
|
|
7038 |
|
|
/** |
7039 |
|
|
* |
7040 |
softime |
9245 |
* @return void |
7041 |
|
|
*/ |
7042 |
|
|
function view_document_numerise_preview_edition() { |
7043 |
|
|
// |
7044 |
|
|
$("#frame_pdf").height($('#sousform-document_numerise_preview_edition').height()-50); |
7045 |
|
|
$("#frame_pdf").width($('#sousform-document_numerise_preview_edition').width()-50); |
7046 |
|
|
$('#sousform-document_numerise_preview_edition .formControls input').hide(); |
7047 |
|
|
$('#sousform-document_numerise_preview_edition .formControls-bottom').hide(); |
7048 |
|
|
} |
7049 |
softime |
10573 |
|
7050 |
|
|
/** |
7051 |
|
|
* |
7052 |
|
|
* @return void |
7053 |
|
|
*/ |
7054 |
|
|
function view_instruction_preview_edition() { |
7055 |
|
|
// |
7056 |
|
|
$("#frame_pdf").height($('#sousform-instruction_preview_edition').height()-50); |
7057 |
|
|
$("#frame_pdf").width($('#sousform-instruction_preview_edition').width()-50); |
7058 |
|
|
$('#sousform-instruction_preview_edition .formControls input').hide(); |
7059 |
|
|
$('#sousform-instruction_preview_edition .formControls-bottom').hide(); |
7060 |
|
|
} |
7061 |
|
|
|
7062 |
|
|
/** |
7063 |
|
|
* |
7064 |
|
|
* @return void |
7065 |
|
|
*/ |
7066 |
|
|
function view_rapport_instruction_preview_edition() { |
7067 |
|
|
// |
7068 |
|
|
$("#frame_pdf").height($('#sousform-rapport_instruction_preview_edition').height()-50); |
7069 |
|
|
$("#frame_pdf").width($('#sousform-rapport_instruction_preview_edition').width()-50); |
7070 |
|
|
$('#sousform-rapport_instruction_preview_edition .formControls input').hide(); |
7071 |
|
|
$('#sousform-rapport_instruction_preview_edition .formControls-bottom').hide(); |
7072 |
|
|
} |
7073 |
|
|
|
7074 |
|
|
/** |
7075 |
|
|
* |
7076 |
|
|
* @return void |
7077 |
|
|
*/ |
7078 |
|
|
function view_storage_preview_edition() { |
7079 |
|
|
// |
7080 |
|
|
$("#frame_pdf").height($('#sousform-storage_preview_edition').height()-50); |
7081 |
|
|
$("#frame_pdf").width($('#sousform-storage_preview_edition').width()-50); |
7082 |
|
|
$('#sousform-storage_preview_edition .formControls input').hide(); |
7083 |
|
|
$('#sousform-storage_preview_edition .formControls-bottom').hide(); |
7084 |
|
|
} |
7085 |
|
|
|
7086 |
|
|
/** |
7087 |
|
|
* |
7088 |
|
|
* @return void |
7089 |
|
|
*/ |
7090 |
|
|
function view_consultation_preview_edition() { |
7091 |
|
|
// |
7092 |
|
|
$("#frame_pdf").height($('#sousform-consultation_preview_edition').height()-50); |
7093 |
|
|
$("#frame_pdf").width($('#sousform-consultation_preview_edition').width()-50); |
7094 |
|
|
$('#sousform-consultation_preview_edition .formControls input').hide(); |
7095 |
|
|
$('#sousform-consultation_preview_edition .formControls-bottom').hide(); |
7096 |
|
|
} |
7097 |
|
|
/** |
7098 |
|
|
* Renvoi la valeur du paramètre GET de l'url passée en argument, ou 'false' si non-trouvé |
7099 |
|
|
* |
7100 |
|
|
*/ |
7101 |
|
|
function getUrlParamValue(key, url = null) { |
7102 |
|
|
if (url === null) { |
7103 |
|
|
url = window.location.search; |
7104 |
|
|
} |
7105 |
|
|
var search_params = new URLSearchParams(url); |
7106 |
|
|
if (search_params) { |
7107 |
|
|
return search_params.get(key); |
7108 |
|
|
} |
7109 |
|
|
return false; |
7110 |
|
|
} |
7111 |
|
|
|
7112 |
|
|
/** |
7113 |
|
|
* Surcharge de la méthode form_container_refresh qui |
7114 |
|
|
* utilise les données récupérée à partir du href de la balise d'id sousform-real-href plutot |
7115 |
|
|
* que celle du sousform-href pour mettre à jour les données de la page. |
7116 |
|
|
* |
7117 |
|
|
* Dans le cas ou un listing est affiché en dessous d'un formulaire en consultation, |
7118 |
|
|
* cette modification permet d'afficher le code complet de la page et pas uniquement |
7119 |
|
|
* celui du tableau. |
7120 |
|
|
* Le problème étant que le tableau à lui aussi une balise d'id sousform-href et que |
7121 |
|
|
* c'est le href qui lui est associé qui va être utilisé car cette balise est affichée |
7122 |
|
|
* en première. |
7123 |
|
|
*/ |
7124 |
|
|
function form_container_refresh(elem) { |
7125 |
|
|
// |
7126 |
|
|
if (elem == "form") { |
7127 |
|
|
// |
7128 |
|
|
$.get(window.location.href, function(data) { |
7129 |
|
|
// |
7130 |
|
|
$('#form-container').html(data); |
7131 |
|
|
// Initialisation JS du nouveau contenu de la page |
7132 |
|
|
om_initialize_content(); |
7133 |
|
|
}); |
7134 |
|
|
} else if (elem == "sousform") { |
7135 |
|
|
// |
7136 |
softime |
13528 |
if($("#sousform-real-href").attr('data-href') !== null && |
7137 |
|
|
$("#sousform-real-href").attr('data-href') !== undefined && |
7138 |
|
|
$("#sousform-real-href").attr('data-href') !== '' |
7139 |
|
|
){ |
7140 |
|
|
|
7141 |
|
|
$.get($("#sousform-real-href").attr('data-href')+"&contentonly=true", function(data) { |
7142 |
|
|
// |
7143 |
|
|
$('#sousform-container').html(data); |
7144 |
|
|
// Initialisation JS du nouveau contenu de la page |
7145 |
|
|
om_initialize_content(); |
7146 |
|
|
}); |
7147 |
|
|
} |
7148 |
softime |
10573 |
} |
7149 |
|
|
} |
7150 |
|
|
|
7151 |
|
|
/** |
7152 |
|
|
* Affiche le champ description_type dans le formulaire d'ajout des pièces |
7153 |
|
|
* si le champ Autre à préciser est sélectionné. |
7154 |
|
|
* Si un autre type de pièce est choisi, masque le champ et supprime son |
7155 |
|
|
* contenu |
7156 |
|
|
* |
7157 |
|
|
*/ |
7158 |
|
|
function afficheChampDescription(selectedValue, idPieceAutre) { |
7159 |
|
|
if (selectedValue == idPieceAutre) { |
7160 |
|
|
$('input#description_type').parents('div.field-type-hidden').attr('class', 'field field-type-text'); |
7161 |
|
|
document.getElementById('description_type').type = 'text'; |
7162 |
|
|
$('input#description_type').val(""); |
7163 |
|
|
} else { |
7164 |
|
|
document.getElementById('description_type').type = 'hidden'; |
7165 |
|
|
$('input#description_type').val(""); |
7166 |
|
|
$('input#description_type').parents('div.field-type-text').attr('class', 'field field-type-hidden'); |
7167 |
|
|
} |
7168 |
|
|
} |
7169 |
softime |
10808 |
|
7170 |
|
|
/** |
7171 |
|
|
* Permet de mettre à jour le formulaire d'instruction après validation |
7172 |
|
|
* du formulaire de sélection des demandeurs. |
7173 |
|
|
* |
7174 |
|
|
*/ |
7175 |
|
|
function validation_formulaire_notification_manuelle() { |
7176 |
|
|
// Refresh du formulaire de l'instruction |
7177 |
|
|
form_container_refresh("sousform"); |
7178 |
|
|
} |
7179 |
|
|
|
7180 |
softime |
11057 |
/** |
7181 |
|
|
* Récupérer le numéro du dossier courant et de l'instructeur sélecionné. |
7182 |
|
|
* A partir de ces informations interroge le serveur à l'aide d'une ajax |
7183 |
|
|
* pour récupérer l'identifiant de la division de l'instructeur. |
7184 |
|
|
* Donne au select du champ division la valeur ainsi récupérée. |
7185 |
|
|
* |
7186 |
|
|
* @param {integer} idInstructeur identifiant de l'instructeur sélectionné |
7187 |
|
|
* @param {string} idDossier identifiant du dossier courant |
7188 |
|
|
*/ |
7189 |
|
|
function changementDivision(idInstructeur,idDossier) { |
7190 |
|
|
// Lien servant à appeller l'action qui permet de récupérer l'identifiant de la division |
7191 |
|
|
// à l'aide de l'identifiant de l'instructeur contenu dans "instructeurId" |
7192 |
|
|
link = "../app/index.php?module=form&obj=dossier_instruction&action=599&idx=" + idDossier + "&instructeurId=" + idInstructeur; |
7193 |
|
|
// Traitement |
7194 |
|
|
$.ajax({ |
7195 |
|
|
type: "GET", |
7196 |
|
|
url: link, |
7197 |
|
|
cache: false, |
7198 |
|
|
dataType: "json", |
7199 |
|
|
success: function(data) { |
7200 |
|
|
// Le select du champ division prend la valeur récupérer via l'action |
7201 |
|
|
$("#division").val(data["division"]); |
7202 |
|
|
}, |
7203 |
|
|
async: false, |
7204 |
|
|
}); |
7205 |
|
|
} |
7206 |
|
|
|
7207 |
softime |
11418 |
/** |
7208 |
softime |
16749 |
* SURCHARGE - lib/om-assets/js/layout_jqueryui_after.js |
7209 |
|
|
*/ |
7210 |
|
|
function affichersform(objsf, link, formulaire, async = true) { |
7211 |
|
|
// composition de la chaine data en fonction des elements du formulaire |
7212 |
|
|
var data = ""; |
7213 |
|
|
// |
7214 |
|
|
if (formulaire) { |
7215 |
|
|
// |
7216 |
|
|
for (i = 0; i < formulaire.elements.length; i++) { |
7217 |
|
|
// |
7218 |
|
|
field = $(formulaire.elements[i]); |
7219 |
|
|
// Sauvegarde du contenu des tinymce avant serialisation |
7220 |
|
|
if (tinyMCE.editors[formulaire.elements[i].name]) { |
7221 |
|
|
// |
7222 |
|
|
form_val = encodeURIComponent(tinyMCE.get(formulaire.elements[i].name).getContent()); |
7223 |
|
|
// |
7224 |
|
|
data+=formulaire.elements[i].name+"="+form_val+"&"; |
7225 |
|
|
} else if (field.attr("multiple") == "multiple") { |
7226 |
|
|
var multipleValues = field.val() || []; |
7227 |
|
|
for (var j = 0; j < multipleValues.length; j++) { |
7228 |
|
|
data+=formulaire.elements[i].name+"="+multipleValues[j]+"&"; |
7229 |
|
|
}; |
7230 |
|
|
} else { |
7231 |
|
|
form_val = encodeURIComponent(formulaire.elements[i].value); |
7232 |
|
|
// |
7233 |
|
|
data+=formulaire.elements[i].name+"="+form_val+"&"; |
7234 |
|
|
} |
7235 |
|
|
} |
7236 |
|
|
} |
7237 |
|
|
// execution de la requete en POST |
7238 |
|
|
$.ajax({ |
7239 |
|
|
type: "POST", |
7240 |
|
|
url: link, |
7241 |
|
|
cache: false, |
7242 |
|
|
data: data, |
7243 |
|
|
async: async, |
7244 |
|
|
success: function(html){ |
7245 |
|
|
$("#sousform-"+objsf).empty(); |
7246 |
|
|
$("#sousform-"+objsf).append(html); |
7247 |
|
|
real_link = $(html).find("#sousform-real-href").attr("data-href"); |
7248 |
|
|
if ($("#sousform-href").length) { |
7249 |
|
|
if (real_link != undefined) { |
7250 |
|
|
$("#sousform-href").attr("data-href", real_link); |
7251 |
|
|
} else { |
7252 |
|
|
$("#sousform-href").attr("data-href", link); |
7253 |
|
|
} |
7254 |
|
|
} |
7255 |
|
|
om_initialize_content(true); |
7256 |
|
|
// Remonte au début du formulaire |
7257 |
|
|
$(window).scrollTop($("div.ui-widget-content div#sousform-" + objsf).parent().offset().top); |
7258 |
|
|
} |
7259 |
|
|
}); |
7260 |
|
|
} |
7261 |
|
|
|
7262 |
|
|
/** |
7263 |
softime |
11418 |
* Surcharge de ajaxIt pour ajouter un spinner au chargement de la page. |
7264 |
|
|
* |
7265 |
|
|
* @param {string} objsf nom du sous formulaire ex: document_numerise |
7266 |
|
|
* @param {string} link url permettant de récupérer les infos du formulaire |
7267 |
|
|
*/ |
7268 |
|
|
function ajaxIt(objsf, link) { |
7269 |
|
|
$("#sousform-"+objsf).append(msg_loading); |
7270 |
|
|
// execution de la requete en POST |
7271 |
|
|
$.ajax({ |
7272 |
|
|
type: "GET", |
7273 |
|
|
url: link, |
7274 |
|
|
cache: false, |
7275 |
|
|
success: function(html){ |
7276 |
|
|
$("#sousform-"+objsf).empty(); |
7277 |
|
|
$("#sousform-"+objsf).append(html); |
7278 |
|
|
real_link = $(html).find("#sousform-real-href").attr("data-href"); |
7279 |
|
|
if ($("#sousform-href").length) { |
7280 |
|
|
if (real_link != undefined) { |
7281 |
|
|
$("#sousform-href").attr("data-href", real_link); |
7282 |
|
|
} else { |
7283 |
|
|
$("#sousform-href").attr("data-href", link); |
7284 |
|
|
} |
7285 |
|
|
} |
7286 |
|
|
om_initialize_content(true); |
7287 |
|
|
} |
7288 |
|
|
}); |
7289 |
|
|
} |
7290 |
softime |
12847 |
|
7291 |
|
|
/** |
7292 |
|
|
* SURCHARGE/OVERLOAD - lib/om-assets/js/layout_jqueryui_after.js |
7293 |
|
|
* |
7294 |
|
|
* FORM WIDGET - HTML tinyMCE Complet pour les états et lettre type |
7295 |
|
|
* |
7296 |
|
|
* Le surcharge permet d'ajouter la police de caractère Arial. |
7297 |
|
|
* |
7298 |
|
|
* CORPS |
7299 |
|
|
*/ |
7300 |
|
|
function inputText_bind_tinyMCE_extended() { |
7301 |
|
|
// |
7302 |
|
|
tinymce.init({ |
7303 |
|
|
// |
7304 |
|
|
selector: "textarea.htmletatex", |
7305 |
|
|
// |
7306 |
|
|
menubar: "edit insert format table tools", |
7307 |
|
|
// |
7308 |
|
|
menu: { |
7309 |
|
|
edit: {title: 'Edit', items: 'undo redo | cut copy paste pastetext | selectall | searchreplace'}, |
7310 |
|
|
insert: {title: 'Insert', items: 'sousetats | hr pagebreak | insertdatetime'}, |
7311 |
|
|
format: {title: 'Format', items: 'bold italic underline strikethrough superscript subscript | removeformat'}, |
7312 |
|
|
table: {title: 'Table', items: 'inserttable tableprops deletetable | cell row column'}, |
7313 |
|
|
tools: {title: 'Tools', items: 'code | fullscreen'} |
7314 |
|
|
}, |
7315 |
|
|
// modifier le language via l'appel à la LOCALE |
7316 |
|
|
language : locale, |
7317 |
|
|
// Spell check (pas de contextmenu...) |
7318 |
|
|
browser_spellcheck : true, |
7319 |
|
|
// |
7320 |
|
|
fontsize_formats: "6pt 7pt 8pt 9pt 10pt 11pt 12pt 13pt 14pt 15pt 18pt 24pt 36pt", |
7321 |
|
|
entity_encoding : "raw", |
7322 |
|
|
plugins: [ |
7323 |
|
|
"advlist lists hr pagebreak", |
7324 |
|
|
"searchreplace wordcount fullscreen", |
7325 |
|
|
"insertdatetime save table", |
7326 |
|
|
"paste textcolor autoresize code" |
7327 |
|
|
], |
7328 |
|
|
// Custom CSS |
7329 |
|
|
content_css: "../lib/om-assets/css/tinymce.css", |
7330 |
|
|
// Style inline |
7331 |
|
|
inline_styles : true, |
7332 |
|
|
paste_auto_cleanup_on_paste : true, |
7333 |
|
|
paste_word_valid_elements: "b,strong,i,em,h1,h2", |
7334 |
|
|
// |
7335 |
|
|
contextmenu : "cut copy paste pastetext selectall | removeformat | insertdate inserttable", |
7336 |
|
|
insertdatetime_formats : ["%d/%m/%Y", "%H:%M"], |
7337 |
|
|
tools: "inserttable", |
7338 |
|
|
debug : true, |
7339 |
|
|
pagebreak_separator : "<br pagebreak='true' />", |
7340 |
|
|
// table_unbreakable_breakable_property - Ajout de l'attribut nobr sur |
7341 |
|
|
// l'élement table comme élément valide pour ne pas qu'il soit supprimé |
7342 |
|
|
// par tinymce (tous les attributs existants de table ont été repris |
7343 |
|
|
// car le paramètre 'extended_valid_elements' n'étend pas l'existant |
7344 |
|
|
// sur une balise). |
7345 |
|
|
extended_valid_elements : "br[pagebreak],table[nobr|border=0|style|cellspacing|cellpadding|width|frame|rules|height|align|summary|bgcolor|background|bordercolor],", |
7346 |
|
|
invalid_elements : "script,applet,iframe,tcpdf", |
7347 |
|
|
toolbar1: "undo redo | bold italic underline | fontselect |"+ |
7348 |
|
|
" fontsizeselect | alignleft aligncenter alignright alignjustify |"+ |
7349 |
|
|
" bullist numlist | forecolor backcolor | majmin | codebarre | table_unbreakable_breakable_property", |
7350 |
|
|
formats : { |
7351 |
|
|
bold: {inline: 'span', styles: {'font-weight': 'bold'}}, |
7352 |
|
|
mce_minformat: {inline: 'span', 'classes': 'mce_min'}, |
7353 |
|
|
mce_majformat: {inline: 'span', 'classes': 'mce_maj'}, |
7354 |
|
|
mce_codebarreformat: {inline: 'span', 'classes': 'mce_codebarre'}, |
7355 |
|
|
}, |
7356 |
|
|
|
7357 |
|
|
// Liste des polices |
7358 |
|
|
font_formats: "Courier New=courier new,courier;"+ |
7359 |
|
|
"Helvetica=helvetica;"+ |
7360 |
|
|
"Times New Roman=times new roman,times;"+ |
7361 |
|
|
"Arial=arial", |
7362 |
|
|
|
7363 |
|
|
// Interdiction de redimentionner une table |
7364 |
|
|
object_resizing : false, |
7365 |
|
|
// Colle le texte brut sans style, ni balise |
7366 |
|
|
paste_as_text: true, |
7367 |
|
|
// |
7368 |
|
|
setup: function (editor) { |
7369 |
|
|
// |
7370 |
|
|
addMajMinButton(editor); |
7371 |
|
|
// table_unbreakable_breakable_property - Ajout du bouton. |
7372 |
|
|
tinymce_add_table_unbreakable_breakable_property(editor); |
7373 |
|
|
// |
7374 |
|
|
addCodeBarreButton(editor); |
7375 |
|
|
// |
7376 |
|
|
addSEMenu(editor); |
7377 |
|
|
// |
7378 |
|
|
editor.on('SetContent', function(e) { |
7379 |
|
|
editor.save(); |
7380 |
|
|
}); |
7381 |
|
|
} |
7382 |
|
|
}); |
7383 |
|
|
} |
7384 |
|
|
|
7385 |
|
|
/** |
7386 |
|
|
* SURCHARGE/OVERLOAD - lib/om-assets/js/layout_jqueryui_after.js |
7387 |
|
|
* |
7388 |
|
|
* FORM WIDGET - HTML Simplifié - Zones de texte des formulaires |
7389 |
|
|
* |
7390 |
|
|
* Le surcharge permet d'ajouter la police de caractère Arial. |
7391 |
|
|
* |
7392 |
|
|
* CHAMPS DE FUSION |
7393 |
|
|
*/ |
7394 |
|
|
function inputText_bind_tinyMCE() { |
7395 |
|
|
// |
7396 |
|
|
tinymce.init({ |
7397 |
|
|
// |
7398 |
|
|
selector: "textarea.html", |
7399 |
|
|
// |
7400 |
|
|
menubar: "edit insert format table tools", |
7401 |
|
|
// |
7402 |
|
|
menu: { |
7403 |
|
|
edit: {title: 'Edit', items: 'undo redo | cut copy paste pastetext | selectall | searchreplace'}, |
7404 |
softime |
14542 |
insert: {title: 'Insert', items: 'hr | insertdatetime'}, |
7405 |
softime |
12847 |
format: {title: 'Format', items: 'bold italic underline strikethrough superscript subscript | removeformat'}, |
7406 |
|
|
table: {title: 'Table', items: 'inserttable tableprops deletetable | cell row column'}, |
7407 |
|
|
tools: {title: 'Tools', items: 'code | fullscreen'} |
7408 |
|
|
}, |
7409 |
|
|
// modifier le language via l'appel à la LOCALE |
7410 |
|
|
language : locale, |
7411 |
|
|
// Spell check (pas de contextmenu...) |
7412 |
|
|
browser_spellcheck : true, |
7413 |
|
|
// |
7414 |
|
|
fontsize_formats: "6pt 7pt 8pt 9pt 10pt 11pt 12pt 13pt 14pt 15pt 18pt 24pt 36pt", |
7415 |
|
|
entity_encoding : "raw", |
7416 |
|
|
plugins: [ |
7417 |
|
|
"advlist lists hr", |
7418 |
|
|
"searchreplace wordcount", |
7419 |
softime |
17542 |
"insertdatetime save table", |
7420 |
softime |
12847 |
"paste textcolor autoresize code" |
7421 |
|
|
], |
7422 |
|
|
// Custom CSS |
7423 |
|
|
content_css: "../lib/om-assets/css/tinymce.css", |
7424 |
|
|
// Style inline |
7425 |
|
|
inline_styles : true, |
7426 |
|
|
paste_auto_cleanup_on_paste : true, |
7427 |
|
|
paste_word_valid_elements: "b,strong,i,em,h1,h2", |
7428 |
|
|
// |
7429 |
|
|
contextmenu : "cut copy paste pastetext selectall | removeformat | insertdate", |
7430 |
|
|
insertdatetime_formats : ["%d/%m/%Y", "%H:%M"], |
7431 |
|
|
invalid_elements : "script,applet,iframe,tcpdf", |
7432 |
|
|
toolbar1: "undo | bold italic underline | fontselect | "+ |
7433 |
|
|
" fontsizeselect | alignleft aligncenter alignright alignjustify |"+ |
7434 |
|
|
" bullist numlist | forecolor backcolor", |
7435 |
|
|
|
7436 |
|
|
formats : { |
7437 |
|
|
bold: {inline: 'span', styles: {'font-weight': 'bold'}}, |
7438 |
|
|
}, |
7439 |
|
|
|
7440 |
|
|
// Liste des polices |
7441 |
|
|
font_formats: "Courier New=courier new,courier;"+ |
7442 |
|
|
"Helvetica=helvetica;"+ |
7443 |
|
|
"Times New Roman=times new roman,times;"+ |
7444 |
|
|
"Arial=arial", |
7445 |
|
|
|
7446 |
|
|
// Colle le texte brut sans style, ni balise |
7447 |
|
|
paste_as_text: true, |
7448 |
|
|
// |
7449 |
|
|
setup: function(editor) { |
7450 |
|
|
// |
7451 |
|
|
editor.on('SetContent', function(e) { |
7452 |
|
|
editor.save(); |
7453 |
|
|
}); |
7454 |
|
|
} |
7455 |
|
|
}); |
7456 |
|
|
} |
7457 |
|
|
|
7458 |
|
|
/** |
7459 |
|
|
* SURCHARGE/OVERLOAD - lib/om-assets/js/layout_jqueryui_after.js |
7460 |
|
|
* |
7461 |
|
|
* FORM WIDGET - HTML Simplifié pour champs de fusions des états et lettretype |
7462 |
|
|
* |
7463 |
|
|
* Le surcharge permet d'ajouter la police de caractère Arial. |
7464 |
|
|
* |
7465 |
|
|
* TITRE, HEADER, FOOTER |
7466 |
|
|
*/ |
7467 |
|
|
function inputText_bind_tinyMCE_simple() { |
7468 |
|
|
// |
7469 |
|
|
tinymce.init({ |
7470 |
|
|
// |
7471 |
|
|
selector: "textarea.htmletat", |
7472 |
|
|
// |
7473 |
|
|
menubar: "edit insert view format table tools", |
7474 |
|
|
// |
7475 |
|
|
menu: { |
7476 |
|
|
edit: {title: 'Edit', items: 'undo redo | cut copy paste pastetext | selectall | searchreplace'}, |
7477 |
softime |
14542 |
insert: {title: 'Insert', items: 'hr | insertdatetime | template'}, |
7478 |
softime |
12847 |
format: {title: 'Format', items: 'bold italic underline strikethrough superscript subscript | removeformat'}, |
7479 |
|
|
table: {title: 'Table', items: 'inserttable tableprops deletetable | cell row column'}, |
7480 |
|
|
tools: {title: 'Tools', items: 'code | fullscreen'} |
7481 |
|
|
}, |
7482 |
|
|
// modifier le language via l'appel à la LOCALE |
7483 |
|
|
language : locale, |
7484 |
|
|
// Spell check (pas de contextmenu...) |
7485 |
|
|
browser_spellcheck : true, |
7486 |
|
|
// |
7487 |
|
|
fontsize_formats: "6pt 7pt 8pt 9pt 10pt 11pt 12pt 13pt 14pt 15pt 18pt 24pt 36pt", |
7488 |
|
|
entity_encoding : "raw", |
7489 |
|
|
plugins: [ |
7490 |
|
|
"advlist lists hr", |
7491 |
|
|
"searchreplace wordcount fullscreen", |
7492 |
|
|
"insertdatetime save table", |
7493 |
|
|
"template paste textcolor autoresize code" |
7494 |
|
|
], |
7495 |
|
|
// Custom CSS |
7496 |
|
|
content_css: "../lib/om-assets/css/tinymce.css", |
7497 |
|
|
// Style inline |
7498 |
|
|
inline_styles : true, |
7499 |
|
|
paste_auto_cleanup_on_paste : true, |
7500 |
|
|
paste_word_valid_elements: "b,strong,i,em,h1,h2", |
7501 |
|
|
// |
7502 |
|
|
contextmenu : "cut copy paste pastetext selectall | removeformat | insertdate inserttable", |
7503 |
|
|
insertdatetime_formats : ["%d/%m/%Y", "%H:%M"], |
7504 |
|
|
tools: "inserttable", |
7505 |
|
|
invalid_elements : "script,applet,iframe,tcpdf", |
7506 |
|
|
toolbar1: "undo redo | bold italic underline | fontselect |"+ |
7507 |
|
|
" fontsizeselect | alignleft aligncenter alignright alignjustify |"+ |
7508 |
softime |
14542 |
" bullist numlist | forecolor backcolor | majmin | codebarre | fullscreen", |
7509 |
softime |
12847 |
templates: [ |
7510 |
|
|
{title: 'Modèle courrier', content: '<p> </p><table><tbody><tr><td style=\'width: 50%;\'><p>Civilité Nom Prénom emetteur</p><p>adresse</p><p>complément</p><p>cp ville</p><p> </p><p> </p><p> </p><p> </p><p> </p><p> </p><p> </p></td><td><p> </p><p> </p><p> </p><p> </p><p> </p><p> </p><p> </p><p>Civilité Nom Prénom destinataire</p><p>adresse</p><p>complément</p><p>cp ville</p></td></tr></tbody></table>'} ], |
7511 |
|
|
|
7512 |
|
|
formats : { |
7513 |
|
|
bold: {inline: 'span', styles: {'font-weight': 'bold'}}, |
7514 |
|
|
mce_minformat: {inline: 'span', 'classes': 'mce_min'}, |
7515 |
|
|
mce_majformat: {inline: 'span', 'classes': 'mce_maj'}, |
7516 |
|
|
mce_codebarreformat: {inline: 'span', 'classes': 'mce_codebarre'}, |
7517 |
|
|
}, |
7518 |
|
|
|
7519 |
|
|
// Liste des polices |
7520 |
|
|
font_formats: "Courier New=courier new,courier;"+ |
7521 |
|
|
"Helvetica=helvetica;"+ |
7522 |
|
|
"Times New Roman=times new roman,times;"+ |
7523 |
|
|
"Arial=arial", |
7524 |
|
|
|
7525 |
|
|
// Interdiction de redimentionner une table |
7526 |
|
|
object_resizing : false, |
7527 |
|
|
// Colle le texte brut sans style, ni balise |
7528 |
|
|
paste_as_text: true, |
7529 |
|
|
// |
7530 |
|
|
setup: function (editor) { |
7531 |
|
|
// |
7532 |
|
|
addMajMinButton(editor); |
7533 |
|
|
// |
7534 |
|
|
addCodeBarreButton(editor); |
7535 |
|
|
// |
7536 |
|
|
editor.on('SetContent', function(e) { |
7537 |
|
|
editor.save(); |
7538 |
|
|
}); |
7539 |
|
|
} |
7540 |
|
|
}); |
7541 |
|
|
} |
7542 |
|
|
|
7543 |
|
|
/** |
7544 |
|
|
* Alterne l'affichage de la liste des champs passé en paramètre |
7545 |
|
|
* selon si la condition voulue est remplie ou pas. |
7546 |
|
|
* |
7547 |
|
|
* @param {boolean} condition |
7548 |
|
|
* @param {array} afficheSiOK liste des champs affiché si la condition est respectée |
7549 |
|
|
* @param {array} afficheSiNon Liste des champs affiché si la condition n'est pas |
7550 |
|
|
* respecté |
7551 |
|
|
*/ |
7552 |
|
|
function alternate_display(condition, afficheSiOK, afficheSiNon) { |
7553 |
|
|
if (condition) { |
7554 |
softime |
15650 |
afficheSiOK.forEach(displayField); |
7555 |
|
|
afficheSiNon.forEach(hideField); |
7556 |
softime |
12847 |
return; |
7557 |
|
|
} |
7558 |
softime |
15650 |
afficheSiNon.forEach(displayField) |
7559 |
|
|
afficheSiOK.forEach(hideField) |
7560 |
softime |
12847 |
} |
7561 |
|
|
|
7562 |
|
|
/** |
7563 |
|
|
* Masque un champs de formulaire en lui donnant pour type hidden. |
7564 |
|
|
* @param {string} fieldName identifiant du champs à cacher |
7565 |
|
|
*/ |
7566 |
softime |
15650 |
function hideField(fieldName) { |
7567 |
|
|
$('#' + fieldName).parents('.field').addClass('ui-tabs-hide') |
7568 |
softime |
12847 |
// Vide la valeur du champs masqué |
7569 |
|
|
$('#' + fieldName).val('').removeAttr('checked').removeAttr('selected'); |
7570 |
|
|
} |
7571 |
|
|
|
7572 |
|
|
/** |
7573 |
|
|
* Affiche un champs caché en lui retirant sa classe hidden. |
7574 |
|
|
* @param {string} fieldName identifiant du champs à cacher |
7575 |
|
|
*/ |
7576 |
softime |
15650 |
function displayField(fieldName) { |
7577 |
|
|
$('#' + fieldName).parents('.field').removeClass('ui-tabs-hide') |
7578 |
softime |
12847 |
} |
7579 |
softime |
13137 |
|
7580 |
|
|
/** |
7581 |
|
|
* Mutateur de la valeur d'un champ et déclenche son événement de changement (onchange). |
7582 |
|
|
* |
7583 |
|
|
* @param {object} target Objet visé. |
7584 |
|
|
* @param {string} value Valeur de l'objet visé. |
7585 |
|
|
*/ |
7586 |
|
|
function set_field_value(target, value) { |
7587 |
|
|
target.value = value; |
7588 |
|
|
target.onchange(); |
7589 |
|
|
} |
7590 |
|
|
|
7591 |
|
|
/** |
7592 |
|
|
* Permet de faire un calcul simplifié et sauvegardé le résultat dans la valeur d'un champ. |
7593 |
|
|
* Simplifié dans le sens où l'opérateur se mettra entre chaque opérande de façon itérative. |
7594 |
|
|
* Exemple pour une division avec 3 opérandes 10, 4, 8. |
7595 |
|
|
* Le résultat sera 10 / 4 = 2.5, puis 2.5 / 8 = 0,3125. |
7596 |
|
|
* Donc le résultat final sera 0.3125. |
7597 |
|
|
* |
7598 |
|
|
* @param {object} target Objet visé. |
7599 |
|
|
* @param {string} operator Opérateur du calcul (addition, subtraction, division, multiplication). |
7600 |
|
|
* @param {[type]} operands Opérandes composant le calcul. |
7601 |
|
|
*/ |
7602 |
|
|
function calculate_field_value(target, operator, operands) { |
7603 |
|
|
// Si un opérande n'est pas définit alors le calcul n'est pas exécuté |
7604 |
|
|
operands.forEach(function(item, index, array) { |
7605 |
|
|
if (item === '') { |
7606 |
|
|
return; |
7607 |
|
|
} |
7608 |
|
|
}); |
7609 |
|
|
|
7610 |
|
|
// Par défaut le résultat prend le premier opérande |
7611 |
|
|
result = parseFloat(operands[0]); |
7612 |
|
|
if (operator === 'addition') { |
7613 |
|
|
operands.forEach(function(item, index, array) { |
7614 |
|
|
if (index !== 0 && isNaN(item) !== true) { |
7615 |
|
|
result += parseFloat(item); |
7616 |
|
|
} |
7617 |
|
|
}); |
7618 |
|
|
} |
7619 |
|
|
if (operator === 'subtraction') { |
7620 |
|
|
operands.forEach(function(item, index, array) { |
7621 |
|
|
if (index !== 0 && isNaN(item) !== true) { |
7622 |
|
|
result -= parseFloat(item); |
7623 |
|
|
} |
7624 |
|
|
}); |
7625 |
|
|
} |
7626 |
|
|
if (operator === 'division') { |
7627 |
|
|
operands.forEach(function(item, index, array) { |
7628 |
|
|
if (index !== 0 && isNaN(item) !== true) { |
7629 |
softime |
14542 |
// Gestion de la division par 0 |
7630 |
|
|
if (parseFloat(item) === 0) { |
7631 |
|
|
result = 0; |
7632 |
|
|
} else { |
7633 |
|
|
result /= parseFloat(item); |
7634 |
|
|
} |
7635 |
softime |
13137 |
} |
7636 |
|
|
}); |
7637 |
|
|
} |
7638 |
|
|
if (operator === 'multiplication') { |
7639 |
|
|
operands.forEach(function(item, index, array) { |
7640 |
|
|
if (index !== 0 && isNaN(item) !== true) { |
7641 |
|
|
result *= parseFloat(item); |
7642 |
|
|
} |
7643 |
|
|
}); |
7644 |
|
|
} |
7645 |
|
|
|
7646 |
|
|
// Le résutat doit être un numérique pour mettre à jour la cible |
7647 |
|
|
// et déclencher sont onchange |
7648 |
|
|
if (isNaN(result) !== true) { |
7649 |
|
|
target.value = result; |
7650 |
|
|
target.onchange(); |
7651 |
|
|
} |
7652 |
|
|
} |
7653 |
softime |
15650 |
|
7654 |
|
|
// SURCHAGE afin de modifier l'icone des datepicker |
7655 |
|
|
function inputdate_bind_datepicker() { |
7656 |
|
|
// |
7657 |
|
|
$(".datepicker").datepicker({ |
7658 |
|
|
dateFormat: dateFormat, |
7659 |
|
|
changeMonth: true, |
7660 |
|
|
changeYear: true, |
7661 |
|
|
yearRange: minYear+':'+maxYear, |
7662 |
|
|
showOn: "button", |
7663 |
|
|
buttonImage: './img/calendar-16x16.svg', |
7664 |
|
|
buttonImageOnly: true, |
7665 |
|
|
buttonText: "Choisir une date", |
7666 |
|
|
constrainInput: true |
7667 |
|
|
}); |
7668 |
|
|
} |
7669 |
|
|
|
7670 |
softime |
16749 |
/** |
7671 |
|
|
* Si un select lié à un chosen est modifié dynamiquement, le chosen n'est pas mis |
7672 |
|
|
* à jour automatiquement. |
7673 |
|
|
* Cette fonction permet donc de mettre à jour les valeurs d'un chosen par rapport |
7674 |
|
|
* à son select de référence. |
7675 |
|
|
* |
7676 |
|
|
* Remarque : lors de la mise à jour le chosen se base sur le contenu du select, |
7677 |
|
|
* si le placeholder a été défini lors de l'application du chosen et pas dans le |
7678 |
|
|
* select, il va donc être supprimé lors de la mise à jour. |
7679 |
|
|
* Pour garder le placeholder sur un select, il faut ajouter dans sa balise <select> |
7680 |
|
|
* un attribut data-placeholder qui contiens le texte voulu. |
7681 |
|
|
* |
7682 |
|
|
* @param {string} field |
7683 |
|
|
*/ |
7684 |
softime |
17036 |
function resetChosen(field) { |
7685 |
softime |
16749 |
$("#" + field).trigger("chosen:updated"); |
7686 |
|
|
} |
7687 |
|
|
|
7688 |
softime |
15650 |
// *** |
7689 |
|
|
// Ajout d'une deuxième scrollbar quand le tableau est dans un petit écran |
7690 |
|
|
// *** |
7691 |
|
|
|
7692 |
|
|
$(function(){ |
7693 |
|
|
$(".wrapper1").scroll(function(){ |
7694 |
|
|
$(".wrapper2") |
7695 |
|
|
.scrollLeft($(".wrapper1").scrollLeft()); |
7696 |
|
|
}); |
7697 |
|
|
$(".wrapper2").scroll(function(){ |
7698 |
|
|
$(".wrapper1") |
7699 |
|
|
.scrollLeft($(".wrapper2").scrollLeft()); |
7700 |
|
|
}); |
7701 |
|
|
}); |
7702 |
softime |
18436 |
|
7703 |
|
|
/** |
7704 |
|
|
* Ajout un lien vers la documentation du module dans le formulaire de paramétrage d'un |
7705 |
|
|
* module d'évènement. |
7706 |
|
|
* |
7707 |
|
|
* @return void |
7708 |
|
|
*/ |
7709 |
|
|
function show_module_doc_link(module_element) { |
7710 |
|
|
let module_name = module_element.value; |
7711 |
|
|
let object_name = ''; |
7712 |
|
|
let object_name_field = $('#object_name'); |
7713 |
|
|
if (object_name_field) object_name = object_name_field.val(); |
7714 |
|
|
let object_id = ''; |
7715 |
|
|
let object_id_field = $('#object_id'); |
7716 |
|
|
if (object_id_field) object_id = object_id_field.val(); |
7717 |
|
|
let module_doc_url = '../app/getModuleDoc.php?module='+module_name+'&object_name='+object_name+'&object_id='+object_id; |
7718 |
|
|
let module_doc_element = $('#module-doc-link'); |
7719 |
|
|
|
7720 |
|
|
// si aucun module n'est sélectionné et que l'élément module-doc-link existe |
7721 |
|
|
if (! module_name && module_doc_element.length) { |
7722 |
|
|
module_doc_element.remove(); |
7723 |
|
|
} |
7724 |
|
|
// si un module est sélectionné |
7725 |
|
|
else { |
7726 |
|
|
|
7727 |
|
|
// ajoute l'élément module-doc-link |
7728 |
|
|
if (! module_doc_element.length) { |
7729 |
|
|
let docLinkNode = document.createElement('p'); |
7730 |
|
|
docLinkNode.setAttribute('id', 'module-doc-link'); |
7731 |
|
|
module_element.parentNode.appendChild(docLinkNode); |
7732 |
|
|
module_doc_element = $('#module-doc-link'); |
7733 |
|
|
} |
7734 |
|
|
|
7735 |
|
|
// fabrique le lien vers la documentation |
7736 |
|
|
let doc_link_text = 'Pour plus d\'information <a '+ |
7737 |
|
|
'onclick="popupIt(\'evenement\', $(this).attr(\'data-href\'), 800, \'auto\');" '+ |
7738 |
|
|
'data-href="' + module_doc_url + '">consultez la documentation</a>'; |
7739 |
|
|
module_doc_element.html(doc_link_text); |
7740 |
|
|
} |
7741 |
|
|
} |
7742 |
|
|
|
7743 |
|
|
/** |
7744 |
|
|
* Met à jour la liste des déclencheurs d'un module sur le formulaire de paramétrage. |
7745 |
|
|
* |
7746 |
|
|
* @return void |
7747 |
|
|
*/ |
7748 |
|
|
function update_module_declencheur_field(module_element) { |
7749 |
|
|
let module_name = module_element.value; |
7750 |
|
|
let object_name = ''; |
7751 |
|
|
let object_name_field = $('#object_name'); |
7752 |
|
|
if (object_name_field) object_name = object_name_field.val(); |
7753 |
|
|
let object_id = ''; |
7754 |
|
|
let object_id_field = $('#object_id'); |
7755 |
|
|
if (object_id_field) object_id = object_id_field.val(); |
7756 |
|
|
let module_declencheur_data_url = '../app/findModuleDeclencheurs.php?module='+module_name+'&object_name='+object_name+'&object_id='+object_id; |
7757 |
|
|
let declencheur_field = $('#declencheur'); |
7758 |
|
|
|
7759 |
|
|
if (! declencheur_field && typeof declencheur_field == "undefined"){ |
7760 |
|
|
return; |
7761 |
|
|
} |
7762 |
|
|
// Le select des déclencheurs est présent mais caché par défaut, avant la première sélection |
7763 |
|
|
declencheur_field.parent().parent().removeClass('ui-tabs-hide') |
7764 |
|
|
// vide le contenu du select dans tous les cas, sauf le premier élement qui doit être |
7765 |
|
|
// le placeholder (avec une valeur vide) |
7766 |
|
|
declencheur_field.find('option:gt(0)').remove(); |
7767 |
|
|
|
7768 |
|
|
if (module_name) { |
7769 |
|
|
$.ajax({ |
7770 |
|
|
type: 'GET', |
7771 |
|
|
url: module_declencheur_data_url, |
7772 |
|
|
dataType: 'json', |
7773 |
|
|
success: function(hooks) { |
7774 |
|
|
var ownProps = Object.keys( hooks ), |
7775 |
|
|
i = ownProps.length; |
7776 |
|
|
if (i == 0){ |
7777 |
|
|
declencheur_field.parent().parent().hide(); |
7778 |
|
|
} else { |
7779 |
|
|
while (i--) { |
7780 |
|
|
let option = $('<option></option>').attr("value", ownProps[i]).text(hooks[ownProps[i]]); |
7781 |
|
|
declencheur_field.append(option); |
7782 |
|
|
} |
7783 |
|
|
declencheur_field.parent().parent().show(); |
7784 |
|
|
} |
7785 |
|
|
} |
7786 |
|
|
}); |
7787 |
|
|
} |
7788 |
|
|
} |
7789 |
softime |
19307 |
|
7790 |
|
|
/** |
7791 |
|
|
* SURCHARGE/OVERLOAD - lib/om-assets/js/layout_jqueryui_after.js |
7792 |
|
|
* |
7793 |
|
|
* FORMULAIRE |
7794 |
|
|
* |
7795 |
|
|
* La surcharge permet de désactiver le script jQuery.autosize sur tous les textarea |
7796 |
|
|
* |
7797 |
|
|
* @return void |
7798 |
|
|
*/ |
7799 |
|
|
function textarea_autoresize() { |
7800 |
softime |
19592 |
} |