T'interessa

Enllaços relacionats

opinión

Enlaces Avisos

S'ha produït un error mentre es processava la plantilla.
?substring(...) argument #2 had invalid value: The index must be at least 0, but was -1.

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign parameterKey = parameterKeyAn...  [in template "10155#10193#161981574" at line 115, column 49]
----
1<#ftl output_format="HTML"> 
2<#-- 
3	* Autor: Andrea Olivero 
4	* Fecha Inicio: 22/06/2020 
5	* Formato migracion: json 
6	* Fecha Finalizacion: 30/06/2020 
7	--> 
8 
9	<#assign reserved_article_title = "${.vars['reserved-article-title'].data}"/> 
10	<#assign reserved_article_id = "${.vars['reserved-article-id'].data}"/> 
11	<#assign viewUrl=""/> 
12	<#assign cuerpo=""/> 
13	<#assign posicion=""/> 
14	<#assign iframeId = "${.vars['reserved-article-id'].data}"/>  
15	<#assign iframeProtocol = ""/> 
16	<#assign width = "100%"/> 
17	<#assign height = "650"/> 
18	<#assign scrolling = "auto"/> 
19	<#assign src = ""/> 
20	<#assign velocityCount = ""/> 
21	<#assign ajustar_alto = false/> 
22	<#assign mostrar_atras = false/> 
23	<#assign mostrar_enlazar = false/> 
24	<#assign mostrar_imprimir = false/> 
25 
26	<div class="webContent" style="float:none;"> 
27		 <#if reserved_article_title?? && reserved_article_title!=""> 
28			<p class="header10">${reserved_article_title}</p> 
29		</#if> 
30	</div> 
31 
32	<#--Dependiendo del valor de la variable posicion el Cuerpo se pinta arriba o abajo 
33	por lo que primero recogemos los valores en variables --> 
34 
35	<#--Posición arriba/abajo--> 
36	<#if Posicion??> 
37		<#assign posicion=Posicion.getData()/> 
38	</#if> 
39 
40	<#--Texto en el cuerpo caja de texto enriquecido.--> 
41	<#if Cuerpo??> 
42		  <#assign cuerpo = Cuerpo.getData()/> 
43	</#if> 
44 
45	<div class="iframe"> 
46		<#--Si el valor seleccionado es arriba entonces imprimimos el contenido del cuerpo.--> 
47		<#if posicion == "arriba"> 
48		   <div class="texto_cuerpo">  
49				${cuerpo?no_esc} 
50		   </div> 
51		</#if> 
52		<#--Comprobamos valores rellenados por usuario--> 
53		<#if ancho.getData()?? && ancho.getData()!="">  
54			<#assign width = ancho.getData()/> 
55		</#if> 
56		 
57		<#if alto.getData()?? && alto.getData()!=""> 
58			<#assign height = alto.getData()/> 
59		</#if> 
60		 
61		<#if barra_desplazamiento.getData()?? && barra_desplazamiento.getData()!=""> 
62			<#assign scrolling = barra_desplazamiento.getData()/> 
63		</#if> 
64		 
65		<#if url.getData()?? && url.getData()!=""> 
66			<#assign src = url.getData()/> 
67		</#if> 
68		 
69		<#if autoajustar_alto?? && autoajustar_alto.getData()=="true"> 
70			<#assign ajustar_alto = true/> 
71		</#if> 
72		 
73		<#if mostrar_enlace_atras?? && mostrar_enlace_atras.getData()=="true"> 
74			<#assign mostrar_atras = true/> 
75		</#if> 
76		 
77		<#if mostrar_enlace_enlazar?? && mostrar_enlace_enlazar.getData()=="true"> 
78			<#assign mostrar_enlazar = true/> 
79		</#if> 
80		 
81		<#if mostrar_boton_imprimir?? && mostrar_boton_imprimir.getData()=="true"> 
82			<#assign mostrar_imprimir = true/> 
83		</#if> 
84		 
85		<#--Obtengo el dominio actual--> 
86		<#assign currentUrl = Request.CURRENT_COMPLETE_URL/> 
87		<#assign urlParts = currentUrl?split("/")/> 
88		<#assign currentDomain = ""/> 
89		<#assign currentProtocol = ""/> 
90		<#list urlParts as urlPart> 
91			<#if velocityCount == "3"> 
92				<#assign currentDomain = urlPart/> 
93			</#if> 
94		</#list> 
95		<#--Obtengo el dominio del iframe --> 
96		<#assign srcParts = src?split("/")/> 
97		<#assign iframeDomain = ""/> 
98		<#assign serverUrl = ""/> 
99		 
100		<#if srcParts[0] == "http:" || srcParts[0] == "https:"> 
101			<#assign iframeDomain = srcParts[2]/> 
102			<#assign iframeProtocol = srcParts[0]/> 
103			<#assign serverUrl = iframeProtocol + "//" + iframeDomain/> 
104		</#if> 
105		 
106		<#if src?? && src!=""> 
107			<#-- parámetros de la url del portal--> 
108 
109				<#assign parametrosString = httpUtil.getQueryString(currentUrl)/> 
110				<#assign parameterList = parametrosString?split("&")/> 
111				<#assign sufijo = ""/> 
112				 
113				<#list parameterList as parameterKeyAndValue> 
114					<#if parameterKeyAndValue?? && parameterKeyAndValue?has_content> 
115						<#assign parameterKey = parameterKeyAndValue?substring(0,parameterKeyAndValue?index_of("="))/> 
116						<#assign parameterValue = parameterKeyAndValue?substring(parameterKeyAndValue?index_of("=")+1)/> 
117 
118						<#assign anyadir = true/> 
119						 
120						<#-- ENT-308086 : Tenemos que ver si se ha añadido algún valor en el campo ignore_parametros--> 
121						<#if ignore_parametros?? && ignore_parametros?has_content> 
122							<#assign ignoreParameters = ignore_parametros.getData()?split(";")/> 
123							<#list ignoreParameters as ignoreParameter> 
124								<#if ignoreParameter?? && ignoreParameter?has_content && ignoreParameter==parameterKey> 
125									<#assign anyadir = false/> 
126								</#if>					 
127							</#list> 
128						</#if> 
129						<#--FIN ENT-308086-->  
130 
131						<#--Buscamos si se ha definido la URL que se ha de ver en el iFrame--> 
132						<#if parameterKey == "viewUrl${iframeId}"> 
133							<#assign viewUrl = parameterValue /> 
134							<#assign anyadir = false/> 
135						</#if> 
136 
137						 
138						<#if anyadir > 
139							<#if sufijo != "" > 
140								<#assign sufijo = sufijo + "&" /> 
141							<#else> 
142								<#assign sufijo = "?" /> 
143							</#if> 
144							<#assign sufijo = sufijo + parameterKeyAndValue /> 
145						</#if> 
146					</#if> 
147				</#list> 
148				 
149				<#--Establecemos la URL que se ha de ver en el iFrame, si se ha definido--> 
150 
151				<#if viewUrl?? && viewUrl!=""> 
152					<#assign src = serverUrl + viewUrl /> 
153				</#if> 
154				 
155				<#if sufijo?? && sufijo!=""> 
156					 
157					<#--Comprobamos si la URL ya trae parametros para concatenarlos--> 
158					<#assign index = src?index_of('?')/> 
159				 
160					<#if (index >= 0) >   
161						<#assign sufijo = sufijo?replace("?", "&")/> 
162					</#if> 
163					<#assign src = "${src}${sufijo}"/> 
164				</#if> 
165 
166				<div class="iframe-error-protocol" style="display: none;"><span><@liferay.language key="iframe.mensaje" /><a href="${src?no_esc}" target="_blank"><b><@liferay.language key="iframe.mensaje.ventana" /></b></a></span></div> 
167				<#if mostrar_enlazar || mostrar_atras || mostrar_imprimir> 
168					<div class="iframe-controls iframe-controls-${reserved_article_id} gva-btn-group gva-btn-group-end"> 
169						<#if mostrar_imprimir> 
170							<a class="taglib-icon pull-right gva-btn gva-btn-outline-primary" id="iframe-print-${reserved_article_id}"  target="_self">  
171								<i class="fas fa-print"></i> 
172								<span class="taglib-text"><@liferay.language key="print" /></span>  
173							</a>  
174						</#if> 
175						<#if mostrar_enlazar> 
176							<a class="iframe-show-link pull-right gva-btn gva-btn-outline-primary" id="iframe-show-link-${reserved_article_id}"  style="display: none;" ><i class="fas fa-link"></i><@liferay.language key="iframe.enlazar" /></a> 
177						</#if> 
178						<#if mostrar_atras> 
179							<a class="back-link pull-right gva-btn gva-btn-ghost-primary bold" id="iframe-back-link-${reserved_article_id}" href="javascript:history.go(-1)" style="display: none;"><i class="fa-solid fa-arrow-left"></i><@liferay.language key="back"  /></a> 
180						</#if> 
181					</div> 
182					<#if mostrar_enlazar> 
183						<div id="iframe-link-${reserved_article_id}" class="iframe-link"> 
184							<input aria-labelledby="iframe-show-link-${reserved_article_id}" id="iframe-link-input-${reserved_article_id}" class="iframe-link-input" type="text" style="display: none;" /> 
185						</div> 
186					</#if> 
187					 
188				</#if> 
189				 
190				<div id="iframe-container-${reserved_article_id}"> 
191					<iframe allow="clipboard-write" src="" width="${width}" height="${height}" scrolling="${scrolling}" title="${reserved_article_title}" id="iframe-${reserved_article_id}" name="iframe-${reserved_article_id}"></iframe> 
192				</div> 
193		 
194		  
195				<#--Si el valor seleccionado es abajo imprimimos el contenido del cuerpo.--> 
196				<#if posicion == "abajo"> 
197				  <div class="texto_cuerpo">  
198					  ${cuerpo?no_esc} 
199				 </div> 
200				</#if> 
201 
202			<script type="text/javascript"> 
203 
204				 
205				// Script para que no cargue el src del iframe dos veces por el efecto del SPA https://help.liferay.com/hc/es/requests/41501 
206				var iframe = document.getElementById('iframe-${reserved_article_id}'); 
207				var url = "${src?no_esc}"; 
208				if (Liferay.SPA && iframe) { 
209					iframe.src = url; 
210
211				else { 
212					Liferay.on( 
213						'SPAReady', 
214						function(event) { 
215							if (iframe) { 
216								iframe.src = url; 
217
218
219					); 
220
221 
222				// No es el mismo dominio, así que definimos el valor del document.domain 
223				<#if (ajustar_alto || mostrar_atras) && currentDomain?has_content && iframeDomain?has_content && !currentDomain.equals(iframeDomain) > 
224					document.domain = 'gva.es'; 
225				</#if> 
226			 
227				// ENT-337637 Cogemos protocolo por js 
228				if( location.protocol == "https:" &&  "${iframeProtocol}" == "http:" ) 
229					$('.iframe-error-protocol').css('display','block'); 
230 
231			 
232				// Controlar la visualizacion de los botones de Atras y Enlazar en las sucesivas cargas del iframe 
233				<#if mostrar_enlazar || mostrar_atras > 
234					var numLoads=0; 
235					document.getElementById('iframe-${reserved_article_id}').onload = function () { 
236						if (numLoads > 0) { 
237							if ($(window).scrollTop() > $('#iframe-container-${reserved_article_id}').offset().top) { 
238								$('html, body').animate({ scrollTop: $('#iframe-container-${reserved_article_id}').offset().top - 60 }, 'slow'); 
239
240							$('#iframe-link-input-${reserved_article_id}').fadeOut(); 
241
242						if (numLoads == 1) { 
243								$('#iframe-show-link-${reserved_article_id}').show(); 
244								$('#iframe-back-link-${reserved_article_id}').show(); 
245
246						numLoads++; 
247					}								 
248				</#if> 
249 
250				 
251				//Obtener enlace permanente del iframe 
252				$('#iframe-show-link-${reserved_article_id}').click(function (event) { 
253				 
254					//Cuando le damos click no queremos que se quede el marco del foco 
255					$('#iframe-show-link-${reserved_article_id}').blur(); 
256					 
257					var input = $('#iframe-link-input-${reserved_article_id}'); 
258				 
259					if (!$(input).is(':visible')) { 
260			 
261						var iframeLocation = document.getElementById('iframe-${reserved_article_id}').contentWindow.location; 
262						 
263						var pageUrl = window.location.href; 
264						var iframeParams = iframeLocation.href; 
265 
266						if (pageUrl.includes('?')) { 
267							pageUrl = pageUrl.substring(0, pageUrl.indexOf('?')); 
268
269						 
270						if (iframeParams.includes('?')) { 
271							iframeParams = iframeParams.substring(iframeParams.indexOf('?')+1); 
272							iframeParams = '&' + iframeParams.replace(/(&)?viewUrl=[^&]+/g, ''); 
273						} else { 
274							iframeParams = ''; 
275
276						 
277						$(input).val(pageUrl + '?viewUrl${iframeId}=' + iframeLocation.pathname + iframeParams); 
278					}	 
279					$(input).toggle(); 
280				}); 
281					 
282				$('#iframe-show-link-${reserved_article_id}').keyup(function(event){ 
283					if (event.keyCode == 13) { 
284						event.preventDefault(); 
285						$('#iframe-show-link-${reserved_article_id}').click(); 
286
287				}); 
288				 
289				//Imprimimos sólo el contenido del iframe 
290				$('#iframe-print-${reserved_article_id}').click(function (event) { 
291					var ifr = document.getElementById("iframe-${reserved_article_id}"); 
292					ifr.contentWindow.focus(); 
293					ifr.contentWindow.print(); 
294					console.log("Click") 
295				}); 
296				$('#iframe-print-${reserved_article_id}').keyup(function(event){ 
297					if (event.keyCode == 13) { 
298						event.preventDefault(); 
299						$('#iframe-print-${reserved_article_id}').click(); 
300
301				}); 
302			 
303				//El enlace « Atrás de los publicadores para los contenidos de tipo IFRAME, vuelve atrás en el historial para que deshaga una posible navegación realizada en la página incrustada 
304				$("span[class='header-back-to']").find("a").attr("href", "javascript:window.history.back()"); 
305	    
306				//Autoajustar alto cada vez que se cargue el contenido del iframe 
307				<#if ajustar_alto > 
308					 
309					// Autoajustar el alto del iframe cada segundo 
310					setInterval(function() { 
311						var iframe = document.getElementById('iframe-${reserved_article_id}'); 
312						var style = 0; 
313						if (iframe && iframe !== 'null' && iframe !== 'undefined') { 
314							style = iframe.style.height.replace('px', ''); 
315							if (iframe.contentWindow.document.body && iframe.contentWindow.document.body !== 'null' && iframe.contentWindow.document.body !== 'undefined') { 
316								var offset = iframe.contentWindow.document.body.offsetHeight + 30; 
317								 
318								if(style>=offset+31 || style<=offset-31){ 
319								   iframe.style.height = offset + 'px'; 
320
321
322
323					},1); 
324				</#if>	    
325			</script> 
326			 
327		<#else> 
328			No se ha introduccido una URL de iframe. 
329		</#if> 
330	</div> 

Avisos de Riscos

S'ha produït un error mentre es processava la plantilla.
?substring(...) argument #2 had invalid value: The index must be at least 0, but was -1.

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign parameterKey = parameterKeyAn...  [in template "10155#10193#161981574" at line 115, column 49]
----
1<#ftl output_format="HTML"> 
2<#-- 
3	* Autor: Andrea Olivero 
4	* Fecha Inicio: 22/06/2020 
5	* Formato migracion: json 
6	* Fecha Finalizacion: 30/06/2020 
7	--> 
8 
9	<#assign reserved_article_title = "${.vars['reserved-article-title'].data}"/> 
10	<#assign reserved_article_id = "${.vars['reserved-article-id'].data}"/> 
11	<#assign viewUrl=""/> 
12	<#assign cuerpo=""/> 
13	<#assign posicion=""/> 
14	<#assign iframeId = "${.vars['reserved-article-id'].data}"/>  
15	<#assign iframeProtocol = ""/> 
16	<#assign width = "100%"/> 
17	<#assign height = "650"/> 
18	<#assign scrolling = "auto"/> 
19	<#assign src = ""/> 
20	<#assign velocityCount = ""/> 
21	<#assign ajustar_alto = false/> 
22	<#assign mostrar_atras = false/> 
23	<#assign mostrar_enlazar = false/> 
24	<#assign mostrar_imprimir = false/> 
25 
26	<div class="webContent" style="float:none;"> 
27		 <#if reserved_article_title?? && reserved_article_title!=""> 
28			<p class="header10">${reserved_article_title}</p> 
29		</#if> 
30	</div> 
31 
32	<#--Dependiendo del valor de la variable posicion el Cuerpo se pinta arriba o abajo 
33	por lo que primero recogemos los valores en variables --> 
34 
35	<#--Posición arriba/abajo--> 
36	<#if Posicion??> 
37		<#assign posicion=Posicion.getData()/> 
38	</#if> 
39 
40	<#--Texto en el cuerpo caja de texto enriquecido.--> 
41	<#if Cuerpo??> 
42		  <#assign cuerpo = Cuerpo.getData()/> 
43	</#if> 
44 
45	<div class="iframe"> 
46		<#--Si el valor seleccionado es arriba entonces imprimimos el contenido del cuerpo.--> 
47		<#if posicion == "arriba"> 
48		   <div class="texto_cuerpo">  
49				${cuerpo?no_esc} 
50		   </div> 
51		</#if> 
52		<#--Comprobamos valores rellenados por usuario--> 
53		<#if ancho.getData()?? && ancho.getData()!="">  
54			<#assign width = ancho.getData()/> 
55		</#if> 
56		 
57		<#if alto.getData()?? && alto.getData()!=""> 
58			<#assign height = alto.getData()/> 
59		</#if> 
60		 
61		<#if barra_desplazamiento.getData()?? && barra_desplazamiento.getData()!=""> 
62			<#assign scrolling = barra_desplazamiento.getData()/> 
63		</#if> 
64		 
65		<#if url.getData()?? && url.getData()!=""> 
66			<#assign src = url.getData()/> 
67		</#if> 
68		 
69		<#if autoajustar_alto?? && autoajustar_alto.getData()=="true"> 
70			<#assign ajustar_alto = true/> 
71		</#if> 
72		 
73		<#if mostrar_enlace_atras?? && mostrar_enlace_atras.getData()=="true"> 
74			<#assign mostrar_atras = true/> 
75		</#if> 
76		 
77		<#if mostrar_enlace_enlazar?? && mostrar_enlace_enlazar.getData()=="true"> 
78			<#assign mostrar_enlazar = true/> 
79		</#if> 
80		 
81		<#if mostrar_boton_imprimir?? && mostrar_boton_imprimir.getData()=="true"> 
82			<#assign mostrar_imprimir = true/> 
83		</#if> 
84		 
85		<#--Obtengo el dominio actual--> 
86		<#assign currentUrl = Request.CURRENT_COMPLETE_URL/> 
87		<#assign urlParts = currentUrl?split("/")/> 
88		<#assign currentDomain = ""/> 
89		<#assign currentProtocol = ""/> 
90		<#list urlParts as urlPart> 
91			<#if velocityCount == "3"> 
92				<#assign currentDomain = urlPart/> 
93			</#if> 
94		</#list> 
95		<#--Obtengo el dominio del iframe --> 
96		<#assign srcParts = src?split("/")/> 
97		<#assign iframeDomain = ""/> 
98		<#assign serverUrl = ""/> 
99		 
100		<#if srcParts[0] == "http:" || srcParts[0] == "https:"> 
101			<#assign iframeDomain = srcParts[2]/> 
102			<#assign iframeProtocol = srcParts[0]/> 
103			<#assign serverUrl = iframeProtocol + "//" + iframeDomain/> 
104		</#if> 
105		 
106		<#if src?? && src!=""> 
107			<#-- parámetros de la url del portal--> 
108 
109				<#assign parametrosString = httpUtil.getQueryString(currentUrl)/> 
110				<#assign parameterList = parametrosString?split("&")/> 
111				<#assign sufijo = ""/> 
112				 
113				<#list parameterList as parameterKeyAndValue> 
114					<#if parameterKeyAndValue?? && parameterKeyAndValue?has_content> 
115						<#assign parameterKey = parameterKeyAndValue?substring(0,parameterKeyAndValue?index_of("="))/> 
116						<#assign parameterValue = parameterKeyAndValue?substring(parameterKeyAndValue?index_of("=")+1)/> 
117 
118						<#assign anyadir = true/> 
119						 
120						<#-- ENT-308086 : Tenemos que ver si se ha añadido algún valor en el campo ignore_parametros--> 
121						<#if ignore_parametros?? && ignore_parametros?has_content> 
122							<#assign ignoreParameters = ignore_parametros.getData()?split(";")/> 
123							<#list ignoreParameters as ignoreParameter> 
124								<#if ignoreParameter?? && ignoreParameter?has_content && ignoreParameter==parameterKey> 
125									<#assign anyadir = false/> 
126								</#if>					 
127							</#list> 
128						</#if> 
129						<#--FIN ENT-308086-->  
130 
131						<#--Buscamos si se ha definido la URL que se ha de ver en el iFrame--> 
132						<#if parameterKey == "viewUrl${iframeId}"> 
133							<#assign viewUrl = parameterValue /> 
134							<#assign anyadir = false/> 
135						</#if> 
136 
137						 
138						<#if anyadir > 
139							<#if sufijo != "" > 
140								<#assign sufijo = sufijo + "&" /> 
141							<#else> 
142								<#assign sufijo = "?" /> 
143							</#if> 
144							<#assign sufijo = sufijo + parameterKeyAndValue /> 
145						</#if> 
146					</#if> 
147				</#list> 
148				 
149				<#--Establecemos la URL que se ha de ver en el iFrame, si se ha definido--> 
150 
151				<#if viewUrl?? && viewUrl!=""> 
152					<#assign src = serverUrl + viewUrl /> 
153				</#if> 
154				 
155				<#if sufijo?? && sufijo!=""> 
156					 
157					<#--Comprobamos si la URL ya trae parametros para concatenarlos--> 
158					<#assign index = src?index_of('?')/> 
159				 
160					<#if (index >= 0) >   
161						<#assign sufijo = sufijo?replace("?", "&")/> 
162					</#if> 
163					<#assign src = "${src}${sufijo}"/> 
164				</#if> 
165 
166				<div class="iframe-error-protocol" style="display: none;"><span><@liferay.language key="iframe.mensaje" /><a href="${src?no_esc}" target="_blank"><b><@liferay.language key="iframe.mensaje.ventana" /></b></a></span></div> 
167				<#if mostrar_enlazar || mostrar_atras || mostrar_imprimir> 
168					<div class="iframe-controls iframe-controls-${reserved_article_id} gva-btn-group gva-btn-group-end"> 
169						<#if mostrar_imprimir> 
170							<a class="taglib-icon pull-right gva-btn gva-btn-outline-primary" id="iframe-print-${reserved_article_id}"  target="_self">  
171								<i class="fas fa-print"></i> 
172								<span class="taglib-text"><@liferay.language key="print" /></span>  
173							</a>  
174						</#if> 
175						<#if mostrar_enlazar> 
176							<a class="iframe-show-link pull-right gva-btn gva-btn-outline-primary" id="iframe-show-link-${reserved_article_id}"  style="display: none;" ><i class="fas fa-link"></i><@liferay.language key="iframe.enlazar" /></a> 
177						</#if> 
178						<#if mostrar_atras> 
179							<a class="back-link pull-right gva-btn gva-btn-ghost-primary bold" id="iframe-back-link-${reserved_article_id}" href="javascript:history.go(-1)" style="display: none;"><i class="fa-solid fa-arrow-left"></i><@liferay.language key="back"  /></a> 
180						</#if> 
181					</div> 
182					<#if mostrar_enlazar> 
183						<div id="iframe-link-${reserved_article_id}" class="iframe-link"> 
184							<input aria-labelledby="iframe-show-link-${reserved_article_id}" id="iframe-link-input-${reserved_article_id}" class="iframe-link-input" type="text" style="display: none;" /> 
185						</div> 
186					</#if> 
187					 
188				</#if> 
189				 
190				<div id="iframe-container-${reserved_article_id}"> 
191					<iframe allow="clipboard-write" src="" width="${width}" height="${height}" scrolling="${scrolling}" title="${reserved_article_title}" id="iframe-${reserved_article_id}" name="iframe-${reserved_article_id}"></iframe> 
192				</div> 
193		 
194		  
195				<#--Si el valor seleccionado es abajo imprimimos el contenido del cuerpo.--> 
196				<#if posicion == "abajo"> 
197				  <div class="texto_cuerpo">  
198					  ${cuerpo?no_esc} 
199				 </div> 
200				</#if> 
201 
202			<script type="text/javascript"> 
203 
204				 
205				// Script para que no cargue el src del iframe dos veces por el efecto del SPA https://help.liferay.com/hc/es/requests/41501 
206				var iframe = document.getElementById('iframe-${reserved_article_id}'); 
207				var url = "${src?no_esc}"; 
208				if (Liferay.SPA && iframe) { 
209					iframe.src = url; 
210
211				else { 
212					Liferay.on( 
213						'SPAReady', 
214						function(event) { 
215							if (iframe) { 
216								iframe.src = url; 
217
218
219					); 
220
221 
222				// No es el mismo dominio, así que definimos el valor del document.domain 
223				<#if (ajustar_alto || mostrar_atras) && currentDomain?has_content && iframeDomain?has_content && !currentDomain.equals(iframeDomain) > 
224					document.domain = 'gva.es'; 
225				</#if> 
226			 
227				// ENT-337637 Cogemos protocolo por js 
228				if( location.protocol == "https:" &&  "${iframeProtocol}" == "http:" ) 
229					$('.iframe-error-protocol').css('display','block'); 
230 
231			 
232				// Controlar la visualizacion de los botones de Atras y Enlazar en las sucesivas cargas del iframe 
233				<#if mostrar_enlazar || mostrar_atras > 
234					var numLoads=0; 
235					document.getElementById('iframe-${reserved_article_id}').onload = function () { 
236						if (numLoads > 0) { 
237							if ($(window).scrollTop() > $('#iframe-container-${reserved_article_id}').offset().top) { 
238								$('html, body').animate({ scrollTop: $('#iframe-container-${reserved_article_id}').offset().top - 60 }, 'slow'); 
239
240							$('#iframe-link-input-${reserved_article_id}').fadeOut(); 
241
242						if (numLoads == 1) { 
243								$('#iframe-show-link-${reserved_article_id}').show(); 
244								$('#iframe-back-link-${reserved_article_id}').show(); 
245
246						numLoads++; 
247					}								 
248				</#if> 
249 
250				 
251				//Obtener enlace permanente del iframe 
252				$('#iframe-show-link-${reserved_article_id}').click(function (event) { 
253				 
254					//Cuando le damos click no queremos que se quede el marco del foco 
255					$('#iframe-show-link-${reserved_article_id}').blur(); 
256					 
257					var input = $('#iframe-link-input-${reserved_article_id}'); 
258				 
259					if (!$(input).is(':visible')) { 
260			 
261						var iframeLocation = document.getElementById('iframe-${reserved_article_id}').contentWindow.location; 
262						 
263						var pageUrl = window.location.href; 
264						var iframeParams = iframeLocation.href; 
265 
266						if (pageUrl.includes('?')) { 
267							pageUrl = pageUrl.substring(0, pageUrl.indexOf('?')); 
268
269						 
270						if (iframeParams.includes('?')) { 
271							iframeParams = iframeParams.substring(iframeParams.indexOf('?')+1); 
272							iframeParams = '&' + iframeParams.replace(/(&)?viewUrl=[^&]+/g, ''); 
273						} else { 
274							iframeParams = ''; 
275
276						 
277						$(input).val(pageUrl + '?viewUrl${iframeId}=' + iframeLocation.pathname + iframeParams); 
278					}	 
279					$(input).toggle(); 
280				}); 
281					 
282				$('#iframe-show-link-${reserved_article_id}').keyup(function(event){ 
283					if (event.keyCode == 13) { 
284						event.preventDefault(); 
285						$('#iframe-show-link-${reserved_article_id}').click(); 
286
287				}); 
288				 
289				//Imprimimos sólo el contenido del iframe 
290				$('#iframe-print-${reserved_article_id}').click(function (event) { 
291					var ifr = document.getElementById("iframe-${reserved_article_id}"); 
292					ifr.contentWindow.focus(); 
293					ifr.contentWindow.print(); 
294					console.log("Click") 
295				}); 
296				$('#iframe-print-${reserved_article_id}').keyup(function(event){ 
297					if (event.keyCode == 13) { 
298						event.preventDefault(); 
299						$('#iframe-print-${reserved_article_id}').click(); 
300
301				}); 
302			 
303				//El enlace « Atrás de los publicadores para los contenidos de tipo IFRAME, vuelve atrás en el historial para que deshaga una posible navegación realizada en la página incrustada 
304				$("span[class='header-back-to']").find("a").attr("href", "javascript:window.history.back()"); 
305	    
306				//Autoajustar alto cada vez que se cargue el contenido del iframe 
307				<#if ajustar_alto > 
308					 
309					// Autoajustar el alto del iframe cada segundo 
310					setInterval(function() { 
311						var iframe = document.getElementById('iframe-${reserved_article_id}'); 
312						var style = 0; 
313						if (iframe && iframe !== 'null' && iframe !== 'undefined') { 
314							style = iframe.style.height.replace('px', ''); 
315							if (iframe.contentWindow.document.body && iframe.contentWindow.document.body !== 'null' && iframe.contentWindow.document.body !== 'undefined') { 
316								var offset = iframe.contentWindow.document.body.offsetHeight + 30; 
317								 
318								if(style>=offset+31 || style<=offset-31){ 
319								   iframe.style.height = offset + 'px'; 
320
321
322
323					},1); 
324				</#if>	    
325			</script> 
326			 
327		<#else> 
328			No se ha introduccido una URL de iframe. 
329		</#if> 
330	</div> 

Bon Nadal

Notes de premsa

Emergencias reconoce el esfuerzo y dedicación de los voluntarios de la Comunitat Valenciana en el Día Internacional de la Protección Civil

El conseller de Emergencias e Interior recuerda “la importante labor que los voluntarios desempeñan en emergencias como los incendios forestales declarados en nuestros bosques y montañas” La...

La Comissió de Protecció Civil de la Comunitat Valenciana homologa 199 nous plans municipals davant d’emergències

S’han aprovat 62 plans territorials, 91 plans antiincendis, 16 plans davant inundacions, 29 plans davant de sismes i un pla davant el risc d’accidents en el transport de mercaderies perilloses El...

El Consell implanta la respuesta unificada ante grandes emergencias para la movilización inmediata de bomberos de toda la Comunitat Valenciana

Este procedimiento de coordinación de los servicios de prevención y extinción de incendios y salvamento y de bomberos forestales se testará el 4 de marzo en un simulacro de emergencia sísmica en...

Emergències advertix de l’arribada d’un nou episodi de forts vents

El Centre de Coordinació d’Emergències declara l’alerta nivell taronja per vents en el nord de Castelló També s’han activat alertes nivell groc per vents i fenòmens costaners La Conselleria...

Emergències demana mantindre la vigilància davant possibles despreniments i caiguda d’arbres a causa dels efectes del temporal de vent

Les previsions indiquen que l’episodi de vent en la Comunitat Valenciana dona una treva, però que es poden reactivar els avisos El telèfon d’emergències 112 ha gestionat en dos dies a causa del...

Veure totes les notes de premsa