S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> items.brightcove_id [in template "260001#260038#FULL_PROJECT" at line 102, column 46] ---- Tip: It's the step after the last dot that caused this error, not those before it. ---- Tip: If the failing expression is known to be legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: #if items.brightcove_id.getData()?? [in template "260001#260038#FULL_PROJECT" at line 102, column 41] ----
1<#include "${journalTemplatesPath}/PROBITAS_MACROS">
2<#assign hasVideo = false>
3<#assign idbrightcove = 1>
4<#assign projectType = "">
5<#assign value = "">
6<#assign count = 1 >
7<@getprojecttype articleId=.vars['reserved-article-id'].data projecttype=projectType/>
8
9<div class="full-project ${projectcategorytype}">
10 <div class="back-to-map">
11 <p class="specific-button">
12 <a href="#"><@liferay.language key="grifols.bcs.return-to-the-map"/>
13 </a>
14 </p>
15 </div>
16 <div class="banner">
17 <section class="slideModel1 clearfix">
18 <ul>
19 <#list slider_images.slider_image.getSiblings() as image>
20 <li>
21 <img src="${image.getData()}"> </img>
22 </li>
23 </#list>
24 </ul>
25 <a class="icon ${projectcategorytype}">
26 <span class="background-image" > </span>
27 </a>
28 </section>
29 </div>
30 <div class="data-menu">
31 <ul class="menu-movil">
32 <#if collaborators.collaborator_name.getData()?has_content >
33 <#assign count = count + 1 >
34 </#if>
35 <#if project_data.beneficiary_name.getData()?has_content >
36 <#assign count = count + 1 >
37 </#if>
38 <#if count == 1 >
39 <#assign value = "uno" >
40 <#elseif count == 2 >
41 <#assign value = "dos" >
42 <#else>
43 <#assign value = "tres" >
44 </#if>
45
46 <li id="menu-map" class="menu-projects ${value}"><a class="menu-1-link"><i class="menu-map-icon"> </i><span>${coordinates.location.getData()}</span></a>
47 <div class="ctd" id="map"></div>
48 </li>
49 <#if project_data.beneficiary_name.getData()?has_content >
50 <li id="menu-beneficiary" class="menu-projects ${value}"><a href="javascript:void(0)" class="menu-1-link" ><i class="menu-beneficiary-icon"> </i><span><@liferay.language key="grifols.bcs.beneficiaries"/></span></a>
51 <div class="ctd">
52 <div class="cross">
53 <h4><@liferay.language key="grifols.bcs.beneficiaries"/></h4>
54 <img class="responsive-image-menu" src="/o/bcs2-theme/images/color_schemes/probitas/ICONO_CRUZ_CERRAR.png"/>
55 </div>
56 <ul class="lvl1">
57 <#list project_data.beneficiary_name.siblings as items >
58 <li><p class="destacado"> ${items.getData()}: </p><p> ${items.beneficiary_number.getData()} </p></li>
59 </#list>
60 </ul>
61 </div>
62 </li>
63 </#if>
64 <#if collaborators.collaborator_name.getData()?has_content >
65 <li id="menu-collaborators" class="menu-projects ${value}"><a href="javascript:void(0)" class="menu-1-link"><i class="menu-collaborators-icon"> </i><span> <@liferay.language key="grifols.bcs.collaborators"/></span></a>
66 <div class="ctd">
67 <div class="cross">
68 <h4><@liferay.language key="grifols.bcs.collaborators"/></h4>
69 <img class="responsive-image-menu" src="/o/bcs2-theme/images/color_schemes/probitas/ICONO_CRUZ_CERRAR.png"/>
70 </div>
71 <#list collaborators.collaborator_name.siblings as collaborator >
72 <#if collaborator.collaborator_url.getData()?has_content>
73 <a class="head" href="${collaborator.collaborator_url.getData()}" alt="${collaborator.getData()}">
74 </#if>
75 <img class="images" src="${collaborator.collaborator_image.getData()}"> </img>
76 <#if collaborator.collaborator_url.getData()?has_content>
77 </a>
78 </#if>
79 </#list>
80 </div>
81 </li>
82 </#if>
83 </ul>
84 </div>
85 <div class="project-content">
86 <div class="left-column">
87 <div class="detail">
88 <h3> ${grifolstitle.getData()} </h3>
89 <p class="destacado"> ${grifolsdesc.getData()} </p>
90 <img class="thumbnail" src="${grifolsimage.getData()}"></img>
91 </br>
92 <#list content_section.siblings as items >
93 <#if items.subhead_title.getData()?has_content >
94 <p class="subtitulo">${items.subhead_title.getData()} </p>
95 </#if>
96 <#if items.subhead_content.getData()?has_content >
97 ${items.subhead_content.getData()}
98 </#if>
99 <#if items.subhead_image.getData()?has_content >
100 <img src="${items.subhead_image.getData()}" />
101 </#if>
102 <#if items.brightcove_id.getData()?? >
103 <#assign hasVideo = true>
104 <div class="videoplayer" style="display: block; position: relative; max-width: 970px;">
105 <div style="padding-top: 56.2505%;">
106 <video id="${idbrightcove}" data-video-id="${items.brightcove_id.getData()}" data-account="2468238095001" data-player="rJpMcEBjg" data-embed="default" data-application-id class="video-js" controls style="width: 100%; height: 100%; position: absolute; top: 0px; bottom: 0px; right: 0px; left: 0px;"></video>
107 </div>
108 </div>
109 </#if>
110 </#list>
111 <@addshareicons articleId=.vars['reserved-article-id'].getData()/>
112 </div>
113 </div>
114 <div class="right-column">
115 <#assign bannerArticle = journalLocalService.getLatestArticleByUrlTitle(scopeGroupId,"banners-laterales",0)>
116 <#assign bannerArticleId = bannerArticle.getArticleId()>
117 ${journalLocalService.getArticleDisplay(scopeGroupId,bannerArticleId,"","VIEW",locale.toString(),themeDisplay).getContent()}
118 </div>
119 </div>
120</div>
121
122<script>
123jQuery(document).ready(function() {
124 jQuery(".responsive-image-menu").on("click", function () {
125 if (jQuery('.menu-projects .menu-1-link').hasClass("act")) {
126 jQuery('.menu-projects .menu-1-link').removeClass('act');
127 }
128 jQuery('.menu-projects .ctd').removeClass('show');
129 jQuery(this).toggleClass('act');
130 });
131
132 jQuery(".menu-projects .menu-1-link").bind('click', function() {
133 if (jQuery(this).parent().find('.ctd').hasClass("show")) {
134 jQuery(this).parent().find('.ctd').toggleClass('show');
135 if (jQuery('.menu-projects .menu-1-link').hasClass("act")) {
136 jQuery('.menu-projects .menu-1-link').removeClass('act');
137 }
138 } else {
139 if (jQuery('.menu-projects .menu-1-link').hasClass("act")) {
140 jQuery('.menu-projects .menu-1-link').removeClass('act');
141 }
142 if (jQuery('.menu-projects .ctd').hasClass("show")) {
143 jQuery('.menu-projects .ctd').removeClass('show');
144 }
145 jQuery(this).toggleClass('act');
146 jQuery(this).parent().find('.ctd').toggleClass('show');
147
148 if (jQuery(this).parent().find('.ctd').is("#map")) {
149 var screen = window.innerWidth;
150 if (screen < 1024) {
151 if ($(this).parent().find('#map')) {
152 initMap();
153 }
154 }
155 }
156 }
157 });
158});
159
160function initMap() {
161 var latlng = new google.maps.LatLng(${coordinates.coordinate_x.getData()}, ${coordinates.coordinate_y.getData()});
162 var myOptions = {
163 zoom: 3,
164 center: latlng,
165 mapTypeId: google.maps.MapTypeId.SATELLITE
166 };
167
168 var image = {
169 url: '/o/bcs2-theme/images/color_schemes/probitas/map_marker_${projectcategorytype}.png',
170 size: new google.maps.Size(42, 42),
171 origin: new google.maps.Point(0, 0),
172 anchor: new google.maps.Point(21, 42)
173 }
174
175 var map = new google.maps.Map(document.getElementById("map"), myOptions);
176 var marker = new google.maps.Marker({
177 position: latlng,
178 map: map,
179 icon: image
180 });
181}
182window.addEventListener("orientationchange", function() {
183 if (jQuery('.menu-projects .ctd').hasClass("show")) {
184 jQuery('.menu-projects .ctd').removeClass('show');
185 }
186 if (jQuery('.menu-projects .menu-1-link').hasClass("act")) {
187 jQuery('.menu-projects .menu-1-link').removeClass('act');
188 }
189 initMap();
190}, false);
191
192/*
193window.onresize = loadMap;
194function loadMap() {
195 initMap();
196}*/
197</script>
198
199<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyANMZqJRJ-4Fbk-ye-y0jFaGJUx6cHF_Hs&v=3&callback=initMap"></script>
200<#if slider_images.slider_image.siblings?has_content >
201 <script>
202 var slider;
203 jQuery(document).ready(function() {
204 slider = jQuery('.slideModel1 ul').bxSlider({pager: true, auto: true, controls: false, pause: 3000, useCSS: false, adaptiveHeight:true});
205 });
206 </script>
207<#else>
208 <style>
209 .banner li {list-style:none;}
210 .ie7 .banner li { list-style-position: outside; }
211 </style>
212</#if>
213<script>
214$(document).ready(function(){
215 if ($('head meta[property="og:description"]').length != 0){
216 $('head meta[property="og:description"]').attr('content',$('p.destacado').text());
217 }
218});
219</script>
220
221<#if hasVideo>
222 <script src="//players.brightcove.net/2468238095001/rJpMcEBjg_default/index.min.js"></script>
223</#if>
224
225<style>
226 .banner-element.map { display: none; }
227 .videoplayer { margin-bottom: 26px; }
228</style>