Agenda

Componence Asset List

Er trad een fout op tijdens de verwerking van de sjabloon.
The following has evaluated to null or missing:
==> hourMinute[1]  [in template "10155#10193#null" at line 256, column 99]

----
Tip: It's the final [] step that caused this error, not those before it.
----
Tip: If the failing expression is known to 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: #assign minute = hourMinute[1]  [in template "10155#10193#null" at line 256, column 81]
----
1<#assign serviceContext = staticUtil["com.liferay.portal.kernel.service.ServiceContextThreadLocal"].getServiceContext()> 
2<#assign httpServletRequest = serviceContext.getRequest()> 
3<#assign portletId = getterUtil.getString(httpServletRequest.getParameter("p_p_id"), "") /> 
4<#assign backUrl =''/> 
5<#assign currentCompleteURL=portalUtil.getCurrentCompleteURL(httpServletRequest) /> 
6<#assign index=currentCompleteURL?index_of("/-/wcl/")> 
7<#assign expirationdate =''/> 
8<#assign articleId = .vars['reserved-article-id'].data> 
9<#assign JournalArticleService = serviceLocator.findService("com.liferay.journal.service.JournalArticleService")>  
10<#assign journalArticle = JournalArticleService.getLatestArticle(groupId, articleId,-1)> 
11<#assign validatorUtil = staticUtil["com.liferay.portal.kernel.util.Validator"] /> 
12<#setting locale = localeUtil.getDefault()> 
13<#setting date_format="dd MMMM yyyy"> 
14 
15<#assign aCLS = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryService")> 
16<#assign aVLS = serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyService")> 
17<#assign lLS  = serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService")> 
18<#assign HtmlUtil = staticUtil["com.liferay.portal.kernel.util.HtmlUtil"] /> 
19 
20<#assign jLS = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")> 
21<#assign dQFU = staticUtil["com.liferay.portal.kernel.dao.orm.DynamicQueryFactoryUtil"] /> 
22<#assign classResolver = staticUtil["com.liferay.portal.kernel.util.ClassResolverUtil"] /> 
23<#assign eCLSU = serviceLocator.findService("com.liferay.expando.kernel.service.ExpandoColumnLocalService")> 
24<#assign eVLSU = serviceLocator.findService("com.liferay.expando.kernel.service.ExpandoValueLocalService")> 
25<#assign expandoValueClass = classResolver.resolveByPortalClassLoader("com.liferay.expando.kernel.model.ExpandoValue")/> 
26<#assign rFU = staticUtil["com.liferay.portal.kernel.dao.orm.RestrictionsFactoryUtil"] /> 
27 
28 
29<#assign filterVocabNamesForTitle = "Contactvorm"> 
30<#assign vestigingVocabName = "Vestiging PG"> 
31<#assign vestigingPSYQVocabName = "Vestigingen PsyQ"> 
32 
33<#assign curArticleCategories = aCLS.getCategories("com.liferay.journal.model.JournalArticle", journalArticle.getResourcePrimKey())> 
34<#assign type = ""> 
35<#list curArticleCategories as category> 
36        <#assign vocab = aVLS.getVocabulary(category.getVocabularyId()) >       
37       <#if (vocab.getName() == filterVocabNamesForTitle) > 
38			<#if validatorUtil.isNotNull(type)> 
39				<#assign type =  type+", "> 
40			</#if> 
41            <#assign type = type + category.getTitle(locale) > 
42       </#if> 
43</#list> 
44<#macro renderFormHtml cssClass layoutId aCssClass text title target place topic date> 
45	<#assign t = target> 
46	<#if validatorUtil.isNotNull(layoutId)> 
47		<#if t == ""> 
48			<#assign t = "_self"/> 
49		</#if> 
50		<#assign tgt = "target =" + t> 
51		<#assign url = layoutId + "?activiteittitel="+journalArticle.getUrlTitle() + "&location=" + place + "&event=" + topic + "&timeslot=" + date> 
52		<div title="${title}" class="${cssClass}"><a rel="nofollow" class="${aCssClass}" ${tgt} href="${htmlUtil.escape(url)}">${text}</a></div> 
53	</#if> 
54</#macro> 
55 
56<#macro renderInfoFormHtml cssClass layoutId aCssClass text title target> 
57	<#assign t = target> 
58	<#if validatorUtil.isNotNull(layoutId)> 
59		<#if t == ""> 
60			<#assign t = "_self"/> 
61		</#if> 
62		<#assign tgt = "target =" + t> 
63		<#assign url = layoutId + "?activiteittitel="+journalArticle.getUrlTitle()> 
64		<div title="${title}" class="${cssClass}"><a rel="nofollow" class="${aCssClass}" ${tgt} href="${htmlUtil.escape(url)}">${text}</a></div> 
65	</#if> 
66</#macro> 
67 
68<#macro getDetailPagePlid_AC art groupId> 
69    <#assign plid=0> 
70    <#assign tableName="site-settings-"+groupId> 
71    <#assign eValue=eVLSU.getValue(company.getCompanyId(),"site-settings",tableName,"structure-layout-pairs",1)>   
72    <#if validatorUtil.isNotNull(eValue)> 
73      <#assign structureLayoutPairs=stringUtil.split(eValue.getData(),",")> 
74	  <#list structureLayoutPairs as pair> 
75         <#assign pairParts=stringUtil.split(pair,"||")> 
76         <#assign structureId=pairParts[0]> 
77         <#assign layoutId=pairParts[2]> 
78         <#if art.getStructureId() ==structureId> 
79            <#assign plid=getterUtil.getLong(layoutId)> 
80         </#if> 
81      </#list> 
82    </#if> 
83</#macro> 
84 
85 
86<div class="pg-content agenda-detail"> 
87	<div class="col-md-8"> 
88		<#assign backUrl =''/> 
89		<#if httpServletRequest.getHeader("referer")??> 
90			<#assign backUrl =  httpServletRequest.getHeader("referer")/> 
91			<#assign filterIndex=backUrl?index_of("/filter?")> 
92			<#if (filterIndex>0)> 
93				<#assign currentCompleteURL=portalUtil.getCurrentCompleteURL(httpServletRequest) /> 
94				<#assign index=currentCompleteURL?index_of("/-/wcl/")> 
95				<#if (index>0)> 
96					<#assign backUrl =currentCompleteURL?substring(0,index)/> 
97				<#else> 
98					<#assign backUrl =''/> 
99				</#if> 
100			</#if> 
101		<#else> 
102			 <#assign currentCompleteURL=portalUtil.getCurrentCompleteURL(httpServletRequest) /> 
103			 <#assign index=currentCompleteURL?index_of("/-/wcl/")> 
104			 <#if (index>0)> 
105				<#assign backUrl =currentCompleteURL?substring(0,index)/> 
106			 <#else> 
107				<#assign backUrl =''/> 
108		   </#if> 
109		</#if> 
110		<div class="taglib-header "> 
111			<#if (portletId!="" && !(portletId?contains("JournalContentPortlet_INSTANCE_")) && backUrl!="")> 
112				<h3 class="header-title"> 
113					<span class="pull-left"> 
114					<#if validator.isNotNull(backUrl) && portalUtil.escapeRedirect(backUrl)?? && validator.isNotNull(portalUtil.escapeRedirect(backUrl))> 
115						<a class="icon-circle-arrow-left previous-level" href="${htmlUtil.escapeHREF(portalUtil.escapeRedirect(backUrl))}" title="<@liferay.language key='back' />"> 
116						<@liferay.language key='back' /> 
117						</a> 
118						</#if> 
119					</span> 
120 
121				 </h3> 
122			</#if> 
123		</div> 
124		 
125		<#if (abstract_image.getData()!='')> 
126			<#assign imgStr = abstract_image.getData()?substring(0,abstract_image.getData()?last_index_of('/'))> 
127			<#assign imgStr = imgStr?substring(imgStr?last_index_of('/')+1)> 
128			<img src="${abstract_image.getData()}" class="img-rounded pull-right abstract-image" alt="${imgStr}" /> 
129		</#if> 
130		 
131		<div class="caption abstract"> 
132			${abstract_description.getData()} 
133		</div> 
134		<#if subTitle?has_content> 
135			<#if subTitle.getData()!=""> 
136				<h2>${subTitle.getData()}</h2> 
137			</#if> 
138		</#if> 
139		${para1.getData()} 
140		<div class="row-fluid button-container"> 
141			 <#if buttons?has_content> 
142					<#list buttons.getSiblings() as button> 
143						<#assign internalURL = "${button.internalURL.getData()}"> 
144						<#assign externalURL = "${button.externalURL.getData()}"> 
145						<#assign downloadURL = "${button.downloadURL.getData()}"> 
146						<#assign bottonLabel = "${button.getData()}">			 
147						<#assign bottonURL = "">				  
148						<#if (internalURL != '')> 
149							<#assign bottonURL = button.internalURL.getFriendlyUrl()> 
150						<#elseif (externalURL != '')> 
151								<#assign bottonURL = externalURL> 
152						<#elseif (downloadURL != '')> 
153								<#assign bottonURL = downloadURL> 
154						</#if> 
155						<#if ((bottonLabel != '') && (bottonURL != ''))> 
156							 <a class="btn btn-primary" href="${bottonURL}"   target="${button.urlTarget.getData()}"  title="${button.getData()}" > 
157												${bottonLabel}	  
158											<i class="${button.icon.getData()}" style="color:${button.iconColor.getData()}"></i>	</a> 
159							</a> 
160						</#if> 
161				</#list> 
162				</#if> 
163		</div> 
164		 
165		<#assign procedure = aanmeldProcedure.getData() /> 
166		<#if place.getSiblings()?has_content> 
167             
168            <#assign placeCounter = 0/> 
169            <div id="events-container"> 
170	        <h2 class="portlet-title more-agenda-heading">  
171				<span class="portlet-title-text"><@liferay.language key='Beschikbare locaties en datums' /></span>  
172			</h2> 
173            <#list place.getSiblings() as cur_place> 
174            	<#assign placeCounter = placeCounter + 1 /> 
175            	<#assign placeHasEvents = false /> 
176            	<div class="location-body">  
177        					<h4 class="location-text">${cur_place.getData()}</h4>  
178        					<span class="location-address">${cur_place.street.getData()} ${cur_place.housenumber.getData()}, ${cur_place.postcode.getData()} ${cur_place.getData()} <#if (validatorUtil.isNotNull(cur_place.locationComment.getData())) > - <strong>${cur_place.locationComment.getData()}</strong> </#if></span> 
179        		</div> 
180        	<#if cur_place.topic.getSiblings()?has_content> 
181        	<ul class="media-list more-agenda"> 
182        	<#assign topicCounter = 0 /> 
183                 <#list cur_place.topic.getSiblings() as cur_topic> 
184                 <#assign activityStartedBeforeToday = false /> 
185	             <#assign activityStartedButHasFollowUpDates = false /> 
186                 <#assign topicCounter = topicCounter + 1 /> 
187                		   	   	     <#assign timings = ""> 
188                		   	   	     <#assign dates = "" > 
189                		   	   	     <#assign dateCount=1> 
190									 <#if (procedure == "many") >                        			 
191	                        			<#if cur_topic.dateFrom?? && cur_topic.dateFrom.getSiblings()??> 
192		                        			<#assign dateCounter = 0 /> 
193		                        			<#assign sortedDateList = [] /> 
194		                        			<#assign size = cur_topic.dateFrom.getSiblings()?size> 
195		                        			<#list cur_topic.dateFrom.getSiblings() as datefroms> 
196		                        					<#assign dateCounter = dateCounter + 1 />  
197	                            		 			<#setting date_format="dd MMMM yyyy"> 
198	                            		 			<#if (size gt 0) && (datefroms.getData()!='') > 
199	                                					<#assign hourMinute = datefroms.van.getData()?split(":") /> 
200	                                					<#assign hour = hourMinute[0] /> 
201	                                					<#assign minute = hourMinute[1] /> 
202	                                					<#assign dateFroms = datefroms.getData()/> 
203														<#assign dateFroms = dateFroms?date("yyyy-MM-dd")/> 
204														<#assign dateFroms = dateFroms?string["dd-MM-yyyy"]/> 
205	                            						<#assign dateTime = dateFroms + " " + hour + ":" + minute /> 
206	                                					<#assign date = dateTime?datetime("dd-MM-yyyy HH:mm")?date> 
207	                                					<#assign startTime = datefroms.van.getData()/> 
208	                                					<#assign endTime = datefroms.tot.getData()/> 
209	                                					<#assign timings = startTime + " - " + endTime/>  
210	                                					<#if (dateTime?datetime("dd-MM-yyyy HH:mm")?datetime > .now?datetime || dateTime?datetime("dd-MM-yyyy HH:mm")?date?string == .now?datetime?date?string) > 
211	                                						<#assign placeHasEvents = true /> 
212	                                						<#assign sortedDateList=sortedDateList+[{"date":date, "time":timings , "timeslot":dateCounter} ]/> 
213	                                					</#if>  
214	                                				</#if> 
215	                            			</#list>  
216	                                        <#assign size = cur_topic.dateFrom.getSiblings()?size> 
217		                            		 		<#list sortedDateList?sort_by("date") as datefroms> 
218		                            		 			<li class="media"> 
219	                							  	     	<span class="media-object pull-left"> 
220	                        									<#setting date_format="dd"> 
221	                        									<span class='dd'>${datefroms.date?date}</span> 
222	                        									  <#setting date_format="MMM"> 
223	                        									<span class='mm'>${datefroms.date?date}<#if (datefroms.date?string["MMM"] != "mei")>.</#if></span> 
224	                    									 </span> 
225															<div class="media-body"> 
226																<h4 class="media-heading"> 
227																${cur_topic.getData()} 
228																</h4> 
229																<span class="date-right-block"> 
230																<#setting date_format="dd MMMM yyyy"> 
231																${datefroms.date}, ${datefroms.time} uur</span> 
232																<#if cur_topic.status.getData() == "available"> 
233																	<#assign activityDate = datefroms.date?date> 
234																	<#if (activityDate?string != .now?date?string) > 
235																		<@renderFormHtml cssClass="sign-up-form pull-right" layoutId=subscriptionForm.getFriendlyUrl() aCssClass="btn btn-primary" text="Aanmelden" title=subscriptionForm.subscriptionFormTitle.getData() target=subscriptionForm.subscriptionFormTarget.getData() place="${placeCounter}" topic="${topicCounter}" date="${datefroms.timeslot}" /> 
236																	<#else> 
237																		<span class='sign-up-form pull-right activity-started-message'><@liferay.language key='activiteit-reeds-gestart' /></span> 
238																	</#if> 
239																<#else> 
240																	<span class='sign-up-form pull-right'>Volgeboekt</span> 
241																</#if> 
242															</div> 
243		                            		    		</li> 
244		                            				</#list> 
245	                        			</#if> 
246                        		     </#if> 
247                        		     <#if (procedure == "one") >    
248                        		     <#assign agendaDateList=[]/>                      			 
249	                        			<#if cur_topic.dateFrom?? && cur_topic.dateFrom.getSiblings()??> 
250											<#assign size = cur_topic.dateFrom.getSiblings()?size> 
251											<#list cur_topic.dateFrom.getSiblings() as datefroms> 
252	                            		 			<#setting date_format="dd MMMM yyyy"> 
253	                            		 			<#if (size gt 0) && (datefroms.getData()!='') > 
254	                                					<#assign hourMinute = datefroms.van.getData()?split(":") /> 
255	                                					<#assign hour = hourMinute[0] /> 
256	                                					<#assign minute = hourMinute[1] /> 
257	                                					<#assign dateFroms = datefroms.getData()/> 
258														<#assign dateFroms = dateFroms?date("yyyy-MM-dd")/> 
259														<#assign dateFroms = dateFroms?string["dd-MM-yyyy"]/> 
260	                            						<#assign dateTime = dateFroms + " " + hour + ":" + minute /> 
261	                                					<#assign date = dateTime?datetime("dd-MM-yyyy HH:mm")?date> 
262	                                					<#assign startTime = datefroms.van.getData()/> 
263	                                					<#assign endTime = datefroms.tot.getData()/> 
264	                                					<#assign timings = startTime + " - " + endTime/>  
265														<#--Future Dates --> 
266														<#if (dateTime?datetime("dd-MM-yyyy HH:mm")?datetime > .now?datetime || dateTime?datetime("dd-MM-yyyy HH:mm")?date?string == .now?datetime?date?string) > 
267	                                						<#assign placeHasEvents = true /> 
268	                                						<#assign agendaDateList=agendaDateList+[{"date":date, "time":timings}]/> 
269	                                						<#-- Course started before today but has follow up dates in future --> 
270	                                						<#if activityStartedBeforeToday == true > 
271	                                							<#assign activityStartedButHasFollowUpDates = true /> 
272	                                						</#if> 
273	                                					<#-- Course already started before today --> 
274	                                					<#else> 
275	                                						<#assign activityStartedBeforeToday = true /> 
276															<#assign agendaDateList=agendaDateList+[{"date":date, "time":timings}]/> 
277														</#if> 
278	                                				</#if> 
279	                            			</#list> 
280	                            			<#-- Course started and has no follow-up dates in future --> 
281	                            			<#if activityStartedBeforeToday == true && activityStartedButHasFollowUpDates == false> 
282	                            				<#assign agendaDateList=[]/> 
283	                            			</#if> 
284		                        			<#assign agendaDateSize = agendaDateList?size> 
285	                            				<#if (agendaDateSize > 0) > 
286	                            					<li class="media"> 
287			                            				<#list agendaDateList?sort_by("date") as i> 
288		                							  	    <#if validatorUtil.isNotNull(i.date)> 
289		                							  	     	<span class="media-object pull-left"> 
290		                        									<#setting date_format="dd"> 
291		                        									<span class='dd'>${i.date?date}</span> 
292		                        									  <#setting date_format="MMM"> 
293		                        									<span class='mm'>${i.date?date}<#if (i.date?string["MMM"] != "mei")>.</#if></span> 
294		                    									 </span> 
295		                    								   <#break> 
296		                    								</#if> 
297		                								</#list> 
298														<div class="media-body"> 
299															<h4 class="media-heading"> 
300															${cur_topic.getData()} 
301															</h4> 
302															<#assign activityDate = .now?date?string> 
303															<#list agendaDateList?sort_by("date") as datefroms> 
304				                            		 			<#if (datefroms_index == 0) > 
305																	<#assign activityDate = datefroms.date?date> 
306																</#if> 
307 
308																<#setting date_format="dd MMMM yyyy"> 
309																<span class="date-right-block">${datefroms.date}, ${datefroms.time} uur</span> 
310				                            		    	</#list> 
311															<#if cur_topic.status.getData() == "available"> 
312																<#if activityStartedBeforeToday == true && activityStartedButHasFollowUpDates == true> 
313																	<span class='sign-up-form pull-right activity-started-message'><@liferay.language key='activiteit-reeds-gestart' /></span> 
314																<#else> 
315																	<#if (activityDate?string != .now?date?string) > 
316																		<@renderFormHtml cssClass="sign-up-form pull-right" layoutId=subscriptionForm.getFriendlyUrl() aCssClass="btn btn-primary" text="Aanmelden" title=subscriptionForm.subscriptionFormTitle.getData() target=subscriptionForm.subscriptionFormTarget.getData() place="${placeCounter}" topic="${topicCounter}" date="all"/> 
317																	<#else> 
318																		<span class='sign-up-form pull-right activity-started-message'><@liferay.language key='activiteit-reeds-gestart' /></span> 
319																	</#if> 
320																</#if>	 
321							                        		<#else> 
322							                        			<#if activityStartedBeforeToday == true && activityStartedButHasFollowUpDates == true> 
323																	<span class='sign-up-form pull-right activity-started-message'><@liferay.language key='activiteit-reeds-gestart' /></span> 
324																<#else> 
325							                        				<span class='sign-up-form pull-right'>Volgeboekt</span> 
326							                        			</#if> 
327							                        		</#if> 
328														</div> 
329													</li> 
330												</#if> 
331	                        			</#if> 
332                        		     </#if> 
333                 </#list> 
334                 <#if (placeHasEvents == false) > 
335					<li class="media"> 
336						<div class="media-body"> 
337							<#if (validatorUtil.isNotNull(informationFrom.getFriendlyUrl())) > 
338								<div class='no-dates contact-info'> 
339								<div class="contact">Geen datums beschikbaar, neem contact op voor de mogelijkheden</div> 
340									<@renderInfoFormHtml cssClass="sign-up-form" layoutId=informationFrom.getFriendlyUrl() aCssClass="button btn btn-primary contact-button" text="Contact opnemen" title=informationFrom.informationFromTitle.getData() target=informationFrom.informationFromTarget.getData() /> 
341								</div> 
342							<#else> 
343								<span class='no-dates'>Geen datums beschikbaar, neem contact op voor de mogelijkheden</span> 
344							</#if> 
345							 
346						</div> 
347            		</li> 
348	             </#if> 
349                 </ul> 
350            </#if> 
351		   </#list> 
352		   </div> 
353        </#if> 
354	 
355							 
356	</div>	 
357	<div class="filter-container col-md-4 meta-container"> 
358		<h2 class="portlet-title"> <span class="portlet-title-text"><@liferay.language key='Informatie' /></span> </h2> 
359		<div class="filter-content agenda-meta-info"> 
360			<#assign datecount = 1> 
361			<#assign otherdate = ""> 
362			<#assign startdate = ""> 
363			<#assign timings = ""> 
364			 
365			<#if validatorUtil.isNotNull(duration.getData())> 
366				<dl class="agenda-meta-fields"> 
367						<dt class="date-left-block"><@liferay.language key='Duur' /> </dt> 
368						<dd class="date-right-block">${duration.getData()}</dd> 
369				</dl> 
370			</#if> 
371			<#if validatorUtil.isNotNull(type)> 
372				<dl class="agenda-meta-fields"> 
373						<dt class="date-left-block"><@liferay.language key='Type' /> </dt> 
374						<dd class="date-right-block">${type}</dd> 
375				</dl> 
376			</#if> 
377			 
378			<#if validatorUtil.isNotNull(cost.getData())> 
379				<dl class="agenda-meta-fields"> 
380						<dt class="date-left-block"><@liferay.language key='Kosten' /> </dt> 
381						<dd class="date-right-block">${cost.getData()}</dd> 
382				</dl> 
383			</#if> 
384			<div class="button-holder"><a class="btn btn-primary" href="#events-container" title="Check availability"><@liferay.language key='Bekijk beschikbaarheid'/><i class="icon-double-angle-down"></i></a></div> 
385				 
386		</div> 
387	 
388	</div> 
389</div> 
390<#if (portletId!="" && !(portletId?contains("JournalContentPortlet_INSTANCE_")))> 
391<#assign portletId = htmlUtil.escape(portletId)> 
392	<#assign containerId = "#portlet_"+portletId /> 
393	<style> 
394		${containerId} header.portlet-topper{ 
395		display:none; 
396
397	</style> 
398</#if>