escapedSiteName:Guest
errorType:
errorCode:
errorMsg:
hasLayoutCustomizePermission: false
hasLayoutUpdatePermission:false
refererPlid: 0
backURL:
toggleControlsState:visible
showAddControls:false
showEditControls: false
showPreviewControls: false
showToggleControls: false
userSetupComplete: false
showAdminLinks: false
portalMessageUseAnimation: true
hasLayoutCustomizePermission: false
setHasLayoutUpdatePermission: false
toggleControlsState: visible
openSiteMapUrl: https://www.atl.biella.it/newsletter?p_p_id=145&p_p_lifecycle=0&p_p_state=pop_up&p_p_mode=view&_145_stateMaximized=true&_145_selPlid=1887563&_145_struts_action=%2Fdockbar%2Fadd_panel&_145_closeRedirect=%2Fsuggesto-gui-portlet%2Fhtml%2Fclosewindow.html
openEditPageUrl: https://www.atl.biella.it/newsletter?p_p_id=145&p_p_lifecycle=0&p_p_state=pop_up&p_p_mode=view&_145_selPlid=1887563&_145_struts_action=%2Fdockbar%2Fedit_layout_panel&_145_closeRedirect=%2Fsuggesto-gui-portlet%2Fhtml%2Fclosewindow.html
Si è verificato un errore nell'elaborarazione del modello.
Expression newsletters.getJSONObject("data").getJSONArray("items") is undefined on line 107, column 47 in 1882933#1882971#2457218.
1<#-- 
2 
3    ATL BIELLA NEWSLETTER 
4    email di conferma: http://localhost:8080/web/guest/newsletter?token=1222 
5     
6    ©Suggesto 2020 
7 
8--> 
9<#assign SuggestoMarketspaceAPI = serviceLocator.findService("suggesto-mksp-portlet","eu.suggesto.marketspace.service.MkspDomainLocalService")> 
10<#assign domainName = "domainLiferay"> 
11<#assign defLng = "it_IT"> 
12<style> 
13    .custom-checkbox .custom-control-input:checked ~ .custom-control-label.newsletter-check:before{ 
14        background-color: #d21a4c; 
15
16    .purple{ 
17        color: #d21a4c !important; 
18
19</style> 
20 
21<#assign 
22    suggestoAPI = serviceLocator.findService("suggesto-gui-portlet", "eu.suggesto.suggestogui.service.suggestoGuiLocalService") 
23    newsletterAPI = serviceLocator.findService("newsletter20-portlet", "eu.suggesto.d40.openemm.service.OpenemmLocalService") 
24    token = result.getRequestStringParameter("token") 
25    portletId = result.getPortletId() 
26    plid = result.getPlid() 
27    defLng = "it_IT" 
28/> 
29 
30<section id="newsletter_reg" class="pt-5"> 
31    <div class="container-fluid-big pb-5"> 
32        <div class="row justify-content-center"> 
33            <div class="col-12 col-xl-8"> 
34                <#if token?has_content> 
35                    <#assign confirm = newsletterAPI.confirmSubscriber(groupId, token)> 
36                     
37                    <#if confirm.getBoolean("success")> 
38                        <h2 class="text-dark">${i18n("registrazione-confermata")}! <i class="fa fa-paper-plane purple fa-2x ml-3"></i></h2> 
39                        <a href="/" class="btn btn-link purple px-0 mt-4">    
40                            <i class="fa fa-chevron-left mr-2"></i> 
41                            <span>${i18n("torna-alla-home")}</span> 
42                        </a> 
43                    <#else> 
44                        <h2 class="text-dark">${i18n("errore-di-registrazione")} <i class="fa fa-exclamation-triangle purple fa-2x ml-3"></i></h2> 
45                        <p class="mt-3">${i18n("errore-registrazione-testo")}</p> 
46                        <a href="javascript:history.go(-1)" class="btn btn-link purple px-0 mt-4">    
47                            <i class="fa fa-chevron-left mr-2"></i> 
48                            <span>${i18n("torna-indietro")}</span> 
49                        </a> 
50                    </#if>     
51                <#else> 
52                    <#if result.view == "requestSent"> 
53                        <h2 class="text-dark">${i18n("richiesta-inviata")} <i class="fa fa-check purple fa-2x ml-2"></i></h2> 
54                         
55                        <p>${i18n("richiesta-inviata-riga1")}</p> 
56                        <p>${i18n("richiesta-inviata-riga2")}</p> 
57                    <#else> 
58                        <#assign 
59                            newsletters = result.getMailingLists() 
60                            subscribeActionURL = portletURLFactory.create(request, portletId, plid, "ACTION_PHASE") 
61                        /> 
62                         
63                        <form action="${subscribeActionURL}&&p_p_state=normal" method="post" id="needs-validation" novalidate> 
64                            <div class="form_description"> 
65                                <h2 class="text-uppercase font-weight-bold mt-0 mt-md-5 mb-3">${i18n("iscrizione-alla-newsletter")}</h2> 
66                                 
67                                <#if result.errorType?has_content> 
68                                    <p>errorType: ${result.errorType}</p> 
69                                </#if> 
70                                <#if result.errorCode?has_content> 
71                                    <p>errorCode: ${result.errorCode}</p> 
72                                </#if> 
73                                 
74                                <p class="h5 mb-4"> 
75                                    <br> 
76                                    ${i18n("i-campi-selezionati-da")} (<span class="required">*</span>) ${i18n("sono-obbligatori")} 
77                                </p> 
78                                <div class="dropdown-divider"></div> 
79                            </div> 
80                            <div class="row text-body p-4 mt-4"> 
81                                <div class="col-12 col-md-4 mb-3"> 
82                                    <label for="newsletter-email" class="description">Email <span class="required">*</span></label> 
83                                    <div> 
84                                        <input type="email" name="_${portletId}_email" id="newsletter-email" class="form-control border rounded-0" required> 
85                                        <div class="invalid-feedback alert alert-danger"> 
86                                            ${i18n("inserisci-un-email-valida")} 
87                                        </div> 
88                                    </div> 
89                                </div> 
90                                <div class="col-12 col-md-4 mb-3"> 
91                                    <label for="newletter-name" class="description">${i18n("nome")}</label>  
92                                    <div> 
93                                        <input type="text" name="newsletter-name" id="newsletter-name" class="form-control border rounded-0"> 
94                                    </div> 
95                                </div> 
96                             
97                                <div class="col-12 col-md-4 mb-3"> 
98                                    <label for="newletter-surname" class="description">${i18n("cognome")}</label>  
99                                    <div> 
100                                        <input type="text" name="newsletter-surname" id="newsletter-surname" class="form-control border rounded-0"> 
101                                    </div> 
102                                </div> 
103                               
104                                <div class="col-12 col-md-4 mb-3"> 
105                                    <label class="description">${i18n("newsletter-disponibili")}:</label> 
106                                     
107                                    <#list 0..newsletters.getJSONObject("data").getJSONArray("items").length()-1 as i> 
108                                        <#assign item = newsletters.getJSONObject("data").getJSONArray("items").getJSONObject(i)> 
109                                        <#if (!item.getString("name")?starts_with("priv") && !item.getString("name")?starts_with("test")) ||  (item.getString("name") == "priv_mese_week")  > 
110                                            <div class="custom-control custom-checkbox"> 
111                                                <input type="checkbox" class="custom-control-input" name="_${portletId}_id" value="${item.getInt('id')}" id="${item.getString('name')}"> 
112                                                <label class="newsletter-check custom-control-label pointer small text-body" for="${item.getString('name')}">${getLabel(item.getString("name"))}</label> 
113                                            </div> 
114                                        </#if> 
115                                    </#list> 
116                                     
117                                    <#-- 
118                                    <select id="newsletters" class="custom-select" required> 
119                                        <option selected disabled hidden value="">${i18n("scegli")}</option> 
120                                        <#list 0..newsletters.getJSONObject("data").getJSONArray("items").length()-1 as i> 
121                                            <#assign item = newsletters.getJSONObject("data").getJSONArray("items").getJSONObject(i)> 
122                                             
123                                            <#if (!item.getString("name")?starts_with("priv") && !item.getString("name")?starts_with("test")) ||  (item.getString("name") == "priv_mese_week")  > 
124                                                <option name="_${portletId}_id" value="${item.getInt('id')}">${item.getString("name")}</option> 
125                                            </#if> 
126                                        </#list> 
127                                    </select> 
128                                    <div class="invalid-feedback alert alert-danger"> 
129                                       ${i18n("Seleziona una newsletter")} 
130                                    </div> 
131                                    --> 
132                                </div> 
133                                 
134                                <!-- div class="col-12 col-md-4 mb-3"> 
135                                    <div class="d-flex align-items-center justify-content-center h-100 w-100"> 
136                                        <button type="button" class="btn btn-link text-dark description px-0" data-toggle="collapse" data-target="#condizioni"> 
137                                            <span>${i18n("condizioni-di-adesione")}</span> 
138                                            <i class="fa fa-chevron-down ml-3"></i> 
139                                        </button> 
140                                    </div> 
141                                </div --> 
142                                 
143                                <div class="col-12 col-md-8 mb-3"> 
144                                    <div class="d-flex align-items-center justify-content-center h-100 w-100"> 
145                                        <div class="custom-control custom-checkbox"> 
146                                            <input type="checkbox" class="custom-control-input" id="conditions" required> 
147                                            <label class="custom-control-label pointer small text-body" for="conditions">${i18n("ho-letto-la")} <a href="/privacy-policy" title="Privacy Policy">${i18n("informativa")}</a> ${i18n("consenso-newsletter")}<span class="required">*</span></label> 
148                                            <div class="invalid-feedback alert alert-danger"> 
149                                                ${i18n("accetta-le-condizioni-per-continuare")} 
150                                            </div> 
151                                             
152                                        </div> 
153                                    </div> 
154                                </div> 
155                                 
156                                <div class="col-12 text-center text-lg-right mb-3">  
157                                    <input type="hidden" name="_${portletId}_cmd" value="subscribe"> 
158                                    <input type="hidden" id="_${portletId}_recaptcha" name="_${portletId}_token" value="token"> 
159                                     
160                                    <button type="submit" class="btn btn-lg btn-dark text-uppercase small rounded-0 px-5">${i18n("invia")}</button> 
161                                </div> 
162                                 
163                                <div class="col-12"> 
164                                    <div class="collapse" id="condizioni"> 
165                                        <div class="dropdown-divider"></div> 
166                                        <p>${i18n("condizioni-uso-newsletter")}</p> 
167                                    </div> 
168                                </div> 
169                            </div> 
170                        </form> 
171                    </#if> 
172                </#if> 
173            </div> 
174        </div> 
175    </div> 
176</section> 
177 
178<#function getLabel text> 
179    <#return suggestoAPI.msg(companyId, groupId, text, locale, "it", localeUtil.fromLanguageId(defLng))> 
180</#function> 
181 
182<script> 
183    window.addEventListener('load', function(){ 
184        var form = document.getElementById("needs-validation"); 
185         
186        if(form){ 
187            form.addEventListener('submit', function(event){ 
188                if(!form.checkValidity()){ 
189                    event.preventDefault(); 
190                    event.stopPropagation(); 
191
192                 
193                form.classList.add('was-validated'); 
194            }, false); 
195
196    }); 
197</script> 
198 
199<#-- siteKey extended: 6LeQIs0UAAAAAIFdq2Yh0Wp2-InKsDlLDMsMF1qF --> 
200 
201<#if result.isGoogleCheck()>         
202    <script src="https://www.google.com/recaptcha/api.js?render=${result.googleSiteKey}"></script> 
203    <script> 
204        AUI().ready(function(){ 
205            grecaptcha.ready(function() { 
206                grecaptcha.execute('${result.googleSiteKey}', { 
207                    action: 'homepage' 
208                }).then(function(token){ 
209                    document.getElementById("_${portletId}_recaptcha").value = token; 
210                    console.log("Google token set"); 
211                }); 
212            }); 
213        }); 
214    </script> 
215</#if> 
216 
217 
218<#function i18n labelId> 
219    <#assign ret = labelId> 
220    <#assign ret = SuggestoMarketspaceAPI.msgAll(groupId?string,domainName,labelId,locale.toString(),defLng)> 
221    <#return ret> 
222</#function> 

Vuoi ricevere la nostra Newsletter?

Iscriviti per ricevere le nostre comunicazioni