Faq Domande Frequenti - ENPAV
An error occurred while processing the template.
The following has evaluated to null or missing: ==> xPathSelectorC.selectSingleNode(rootElement) [in template "20157#20197#4138883" at line 53, column 125] ---- 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: #assign category = xPathSelectorC.sel... [in template "20157#20197#4138883" at line 53, column 105] ----
1<style>
2 .AF-Faq_title2 {
3 display: -ms-flexbox;
4 display: flex;
5 -ms-flex-align: end;
6 align-items: flex-end;
7 min-height: 3.125rem;
8 margin-bottom: 0.625rem;
9 }
10</style>
11<div>
12<section class="AF-FAQPage_abstract">
13 <div class="container">
14 <div class="row">
15 <div class="col-xs-12 offset-xs-0 col-lg-10 offset-lg-1">
16 <div class="AF-Abstract">
17 <h1 class="AF-Text_black mb-2x">FAQ</h1>
18 <p class="AF-Paragraph_large AF-Abstract_subtitle">${languageUtil.get(request,"multilingua.adt2019_FAQ.intestazione" )}</p>
19 </div>
20 </div>
21 </div>
22 </div>
23</section>
24<#if entries?has_content>
25<div class="container">
26 <div class="row">
27 <div class="col-xs-12 offset-xs-0 col-lg-10 offset-lg-1">
28 <section class="mb-9x mb-md-12x">
29 <div class="row">
30 <div class="col-xs-12">
31 <div class="row">
32 <div class="col-xs-12">
33 <div class="AF-FaqSearch" data-state="close">
34 <div class="AF-Accordion AF-FaqSearch_accordion" data-state="close">
35 <div class="AF-Accordion_wrapper AF-FaqSearch_accordionWrapper">
36 <p class="AF-Accordion_title AF-FaqSearch_title">${languageUtil.get(request,"multilingua.adt2019_FAQ.lbl.tutte.le.faq")}</p>
37 <div class="AF-Accordion_icon">
38 <svg id="chevron-down" xmlns="http://www.w3.org/2000/svg">
39 <use xlink:href="#icon-chevron-down"></use>
40 </svg>
41 </div>
42 </div>
43 <div id="af-tab-nav-mobile">
44 <#assign idCategory =1 />
45 <#list entries as curEntry>
46 <#assign renderer = curEntry.getAssetRenderer() />
47 <#assign className = renderer.getClassName() />
48 <#if className == "com.liferay.journal.model.JournalArticle">
49 <#assign journalArticle = renderer.getArticle() />
50 <#assign document = saxReaderUtil.read(journalArticle.getContent()) />
51 <#assign rootElement = document.getRootElement() />
52 <#assign xPathSelectorC = saxReaderUtil.createXPath("dynamic-element[@name='Category']/dynamic-content[@language-id = '${locale}']") />
53 <#assign category = xPathSelectorC.selectSingleNode(rootElement).getStringValue() />
54 </#if>
55 <p class="AF-Accordion_content AF-FaqSearch_content">
56 <a class="AF-FaqSearch_link" href="#faq_${idCategory}">${category}</a>
57 </p>
58 <#assign idCategory = idCategory +1 />
59 </#list>
60 </div>
61 </div>
62 <span class="AF-InputSearch_icon AF-FaqSearch_icon-search" data-state="close">
63 <svg id="icon-search-input" xmlns="http://www.w3.org/2000/svg">
64 <use xlink:href="#icon-search"></use>
65 </svg>
66 </span>
67 <div class="AF-Input AF-FaqSearch_input">
68 <div class="AF-Input_wrap">
69 <div class="AF-Input_icon AF-Input_icon-left">
70 <svg id="icon-search-input" xmlns="http://www.w3.org/2000/svg">
71 <use xlink:href="#icon-search"></use>
72 </svg>
73 </div>
74 <input type="text" class="AF-Input_field AF-Input-indent AF-Input_field-no-border js-AF-FAQSearch_input" placeholder="${languageUtil.get(request,"multilingua.adt2019_FAQ.placeholder")}">
75 </div>
76 </div>
77 <div class="AF-FaqSearch_button">
78 <button class="AF-Btn AF-Btn-primary">
79 <span class="AF-Btn_label AF-Btn_label-medium">${languageUtil.get(request,"multilingua.adt2019_FAQ.lbl.cerca" )}</span>
80 </button>
81 </div>
82 <div class="AF-FaqSearch_icon-close">
83 <svg id="icon-delete-menu" xmlns="http://www.w3.org/2000/svg">
84 <use xlink:href="#icon-delete"></use>
85 </svg>
86 </div>
87 </div>
88 </div>
89 </div>
90 </div>
91 </div>
92 </section>
93 </div>
94 </div>
95</div>
96 <div class="container mb-13x mb-md-20x">
97 <div class="row">
98 <div class="col-xs-12 offset-xs-0 col-lg-10 offset-lg-1">
99 <section>
100 <div class="container">
101 <div class="row">
102 <div class="AF-Faq_links col-xs-12 col-md-4">
103 <div class="AF-Faq_title AF-Faq_title-all AF-Tab_li AF-Tab_li-primary AF-Faq_tab-active">
104 <p>${languageUtil.get(request,"multilingua.adt2019_FAQ.lbl.tutte.le.faq")}</p>
105 </div>
106 <ul id="af-tab-nav" class="AF-Faq_ul">
107 <#assign idCategory =1 />
108 <#list entries as curEntry>
109 <#assign renderer = curEntry.getAssetRenderer() />
110 <#assign className = renderer.getClassName() />
111 <#if className == "com.liferay.journal.model.JournalArticle">
112 <#assign journalArticle = renderer.getArticle() />
113 <#assign document = saxReaderUtil.read(journalArticle.getContent()) />
114 <#assign rootElement = document.getRootElement() />
115 <#assign xPathSelectorC = saxReaderUtil.createXPath("dynamic-element[@name='Category']/dynamic-content[@language-id = '${locale}']") />
116 <#assign category = xPathSelectorC.selectSingleNode(rootElement).getStringValue() />
117 </#if>
118 <li class="AF-Tab_li AF-Tab_li-primary">
119 <a class="AF-Tab_link-primary" href="#faq_${idCategory}">${category}</a>
120 </li>
121 <#assign idCategory = idCategory +1 />
122 </#list>
123 </ul>
124 </div>
125 <div class="col-xs-12 col-md-8">
126 <div id="faqResultEmpty" class="col-xs-12 offset-xs-0 col-lg-10 offset-lg-1" style="display:none; margin-top: 15px;">
127 <h4>${languageUtil.get(request,"multilingua.adt2019_FAQ.lbl.noresult")}</h4>
128 </div>
129 <div class="AF-Faq_tab-content">
130 <#assign idCategory =1 />
131 <#list entries as curEntry>
132 <#assign renderer = curEntry.getAssetRenderer() />
133 <#assign className = renderer.getClassName() />
134 <#if className == "com.liferay.journal.model.JournalArticle">
135 <#assign journalArticle = renderer.getArticle() />
136 <#assign document = saxReaderUtil.read(journalArticle.getContent()) />
137 <#assign rootElement = document.getRootElement() />
138 <#assign xPathSelectorC = saxReaderUtil.createXPath("dynamic-element[@name='Category']/dynamic-content[@language-id = '${locale}']") />
139 <#assign category = xPathSelectorC.selectSingleNode(rootElement).getStringValue() />
140 <#assign xPathSelectorQ = saxReaderUtil.createXPath("dynamic-element[@name='Question']") />
141 <#assign questions = xPathSelectorQ.selectNodes(rootElement) />
142 <#assign xPathSelectorQTitle = saxReaderUtil.createXPath("dynamic-content[@language-id = '${locale}']") />
143 <#assign xPathSelectorA = saxReaderUtil.createXPath("dynamic-element[@name='Answer']/dynamic-content[@language-id = '${locale}']") />
144 </#if>
145 <div class="AF-Faq_tab-pane AF-Faq_tab-active" id="faq_${idCategory}">
146 <div class="AF-Faq_title2">
147 <h3>${category}</h3>
148 </div>
149 <#list questions as question>
150 <div class="AF-Accordion AF-FAQ-Accordion" data-state="close">
151 <#assign questionTitle = xPathSelectorQTitle.selectSingleNode(question).getStringValue() />
152 <#assign answer = xPathSelectorA.selectSingleNode(question).getStringValue() />
153 <div class= "AF-Faq_Search">
154 <div class="AF-Accordion_wrapper">
155 <p class="AF-Accordion_title AF-FAQ-Accordion_title">${questionTitle}</p>
156 <div class="AF-Accordion_icon">
157 <svg id="chevron-down" xmlns="http://www.w3.org/2000/svg">
158 <use xlink:href="#icon-chevron-down"></use>
159 </svg>
160 </div>
161 </div>
162 <div class="AF-Accordion_content">${answer}</div>
163 </div>
164 </div>
165 </#list>
166 </div>
167 <#assign idCategory = idCategory + 1 />
168 </#list>
169 </div>
170 </div>
171 </div>
172 </div>
173 </section>
174 </div>
175 </div>
176 </div>
177</#if>
178</div>
179<style>
180 .AF-Faq_hidden{
181 display :none !important;
182 }
183</style>
184
185<script type="text/javascript">
186 $(document).ready(function() {
187 $(document).on('click', '.AF-Faq_title-all', function(e) {
188 $(".js-AF-FAQSearch_input").val("");
189 clearSearchFaq();
190 });
191 });
192
193 function clearSearchFaq(){
194 $("#faqResultEmpty").css("display", "none");
195 $.each($(document).find(".AF-Faq_hidden"), function(){
196 $(this).removeClass("AF-Faq_hidden");
197 });
198 }
199
200 function doSearch(){
201 clearSearchFaq();
202 var keyword = $('.js-AF-FAQSearch_input').val();
203
204 var i=0;
205 $.each($(".AF-Faq_tab-pane"), function(){
206 var j = 0;
207 $.each($(this).find(".AF-Faq_Search"), function(){
208 var content = $(this).text().toLowerCase();
209 if(content.indexOf(keyword.toLowerCase()) == -1 ){
210 $(this).addClass("AF-Faq_hidden");
211 }else{
212 j = j+1;
213 }
214 });
215 if(j == 0){
216 $(this).addClass("AF-Faq_hidden");
217 }else{
218 i= i+1;
219 }
220 });
221 if(i == 0){
222 $("#faqResultEmpty").css("display", "block");
223 }
224 }
225
226 $(document).ready(function() {
227 $(document).on('click', '.AF-Btn_label', function(e) {
228 $(".js-AF-FAQSearch_input").val();
229 doSearch();
230 $(".js-AF-FAQSearch_input").val("");
231 });
232 });
233
234 $('.js-AF-FAQSearch_input').keypress(function(e) {
235 if(e.which == 13) {
236 doSearch();
237 $(".js-AF-FAQSearch_input").val("");
238
239 }
240 });
241
242 $(document).ready(function() {
243 $(document).on('click', '.AF-Faq_ul', function(e) {
244 $(".js-AF-FAQSearch_input").val("");
245 clearSearchFaq();
246 });
247 });
248
249
250 $(document).ready(function() {
251 $(document).on('click', '.AF-FaqSearch_icon-close', function(e) {
252 $(".js-AF-FAQSearch_input").val("");
253 clearSearchFaq();
254 });
255
256
257 url = window.location.href;
258 if(url.indexOf("keyword") > -1){
259 query_str = url.substr(url.indexOf('keyword'), url.length-1);
260 query_str2 = query_str.substr(query_str.indexOf('=')+1, query_str.length-1);
261 query_str3= query_str2.split("%20").join(" ");
262 $(".js-AF-FAQSearch_input").val(query_str3);
263 doSearch();
264 }
265 });
266</script>