Asset Publisher

An error occurred while processing the template.
The following has evaluated to null or missing:
==> projectcategorytype  [in template "260001#260038#FULL_PROJECT" at line 9, column 28]

----
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: ${projectcategorytype}  [in template "260001#260038#FULL_PROJECT" at line 9, column 26]
----
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">&nbsp;</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">&nbsp;</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">&nbsp;</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>