1<#assign serviceContext = staticUtil["com.liferay.portal.kernel.service.ServiceContextThreadLocal"].getServiceContext()>
2 <#assign httpServletRequest = serviceContext.getRequest()>
3 <#assign groupLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
4 <#assign currentGroup = groupLocalService.getGroup(portalUtil.getScopeGroupId(httpServletRequest))>
5 <#assign currentTimeZone = currentGroup.getExpandoBridge().getAttribute("timezone")?string>
6 <#assign guest = httpServletRequest.getSession().getAttribute("LIFERAY_SHARED_hxl-guest")>
7 <#assign promoCode = httpServletRequest.getSession().getAttribute("LIFERAY_SHARED_hxl-promo_code")>
8 <#assign hasPromo = false>
9 <#assign submitButtonText = languageUtil.get(locale, "hxl.home.bookingform.book_now")>
10 <#assign submitButtonTextPromo = languageUtil.get(locale, "hxl.home.bookingform.book_now_promo")>
11
12 <#if httpServletRequest.getSession().getAttribute("LIFERAY_SHARED_hxl-current_reservation")??>
13 <#assign currReservation = httpServletRequest.getSession().getAttribute("LIFERAY_SHARED_hxl-current_reservation")>
14
15 <#-- ESEGUO I CALCOLI SULLA DATA DELLA PRENOTAZIONE -->
16 <#setting date_format="yyyy-MM-dd">
17 <#setting time_zone=currentTimeZone>
18 <#assign bookingDate = currReservation.arrival_date>
19 <#assign bookingDate = bookingDate?date>
20 <#assign bookingDate = bookingDate?long>
21 <#assign checkoutDate = currReservation.departure_date>
22 <#assign checkoutDate = checkoutDate?date>
23 <#assign checkoutDate = checkoutDate?long>
24 <#assign currentDate = .now>
25 <#assign currentDate = currentDate?iso_utc>
26 <#assign currentDate = currentDate?date>
27 <#assign currentDate = currentDate?long>
28 <#assign dateDiffUntilNow = (((((bookingDate-currentDate)/1000)/60)/60)/24)>
29 <#assign dateDiffUntilCheckout = (((((checkoutDate-currentDate)/1000)/60)/60)/24)>
30
31
32 <#-- LEGGO LE VARIABILI DEL WEB CONTENT SULLA BASE DELLA PRENOTAZIONE -->
33 <#if dateDiffUntilNow gt 3>
34
35 <#assign helloText = Over3.HelloText.getData()>
36 <#assign shortSentence = Over3.ShortSentence1.getData()>
37 <#assign buttonText = Over3.ButtonText.getData()>
38 <#assign linkToPage = Over3.LinkToPage.getFriendlyUrl()>
39 <#if Over3.Image4gqc.getData()?? && Over3.Image4gqc.getData() != "">
40 <#assign imageSrc = Over3.Image4gqc.getData()>
41 <#assign imageAlt = Over3.Image4gqc.getAttribute("alt")>
42 </#if>
43
44 <#elseif dateDiffUntilNow<=3 && dateDiffUntilNow gt 0 >
45
46 <#assign helloText = UpTo3.HelloTextx.getData()>
47 <#assign shortSentence = UpTo3.ShortSentencex.getData()>
48 <#assign buttonText = UpTo3.ButtonTextx.getData()>
49 <#assign linkToPage = UpTo3.LinkToPagex.getFriendlyUrl()>
50 <#if UpTo3.Imag5gqc.getData()?? && UpTo3.Imag5gqc.getData() != "">
51 <#assign imageSrc = UpTo3.Imag5gqc.getData()>
52 <#assign imageAlt = UpTo3.Imag5gqc.getAttribute("alt")>
53 </#if>
54
55 <#elseif dateDiffUntilNow<=0 && dateDiffUntilCheckout gte 0>
56
57 <#assign helloText = StayingTime.HelloTexty.getData()>
58 <#assign shortSentence = StayingTime.ShortSentencey.getData()>
59 <#assign buttonText = StayingTime.ButtonTexty.getData()>
60 <#assign linkToPage = StayingTime.LinkToPagey.getFriendlyUrl()>
61 <#if StayingTime.Image6gqc.getData()?? && StayingTime.Image6gqc.getData() != "">
62 <#assign imageSrc = StayingTime.Image6gqc.getData()>
63 <#assign imageAlt = StayingTime.Image6gqc.getAttribute("alt")>
64 </#if>
65 </#if>
66 <#else>
67 <#assign helloText = CheckedOut.HelloTextz.getData()>
68 <#assign shortSentence = CheckedOut.ShortSentencez.getData()>
69 <#if CheckedOut.Image7gqc.getData()?? && CheckedOut.Image7gqc.getData() != "">
70 <#assign imageSrc = CheckedOut.Image7gqc.getData()>
71 <#assign imageAlt = CheckedOut.Image7gqc.getAttribute("alt")>
72 </#if>
73
74 </#if>
75
76
77 <div class="c-list c-list-notices">
78 <ul class="list list-notices">
79 <li class="list__item">
80 <div class="media">
81 <div class="media__fig">
82 <span style="background-image: url(${imageSrc})"></span>
83 </div>
84
85 <div class="media__txt">
86 <p>
87 <strong>${helloText} ${guest.first_name}, </strong>${shortSentence}
88 </p>
89
90 <#if !currReservation??>
91 <div class="embed" style="padding-left:0px;padding-right:0px; max-width:820px; border:none; background-color:#fff;">
92 <form name="bookingEngineForm" action="https://reservations.verticalbooking.com/premium/index2.html" method="post" target="_blank" onsubmit="javascript:book();">
93 <div style="display: inline-block;"><i class="i material-icons booking-form-icon">input</i> <input type="text" name="arrival" id="arrivalDisp" placeholder="<@liferay.language key="hxl.home.bookingform.arrival_date" />" style="text-align:center;width:100px !important;height:64px;color:#000;border:none;"></div>
94 <div style="display: inline-block;"><i class="i material-icons booking-form-icon">launch</i> <input type="text" name="departure" id="departureDisp" placeholder="<@liferay.language key="hxl.home.bookingform.departure_date" />" style="text-align:center;width:100px !important;height:64px;color:#000;border:none;"></div>
95 <div style="display: inline-block;"><i class="i material-icons booking-form-icon">people</i> <input type="number" min="1" name="adulti1" id="adults1" placeholder="<@liferay.language key="hxl.home.bookingform.adults" />" style="text-align:center;width:80px !important; height:64px;color:#000;border:none;"></div>
96 <div style="display: inline-block;"><i class="i material-icons booking-form-icon">child_care</i> <input type="number" min="0" name="bambini1" id="children1" placeholder="<@liferay.language key="hxl.home.bookingform.children" />" style="text-align:center;width:80px !important; height:64px;color:#000;border:none;"></div>
97
98 <input type="hidden" value="1" name="tot_camere" id="rooms"/>
99 <input type="hidden" value="" name="gg" id="gg"/>
100 <input type="hidden" value="" name="mm" id="mm"/>
101 <input type="hidden" value="" name="aa" id="aa"/>
102 <input type="hidden" value="" name="ggf" id="ggf"/>
103 <input type="hidden" value="" name="mmf" id="mmf"/>
104 <input type="hidden" value="" name="aaf" id="aaf"/>
105 <#--
106 <#if promoCode?has_content>
107 <input type="hidden" name="sconto" value="${promoCode}">
108 </#if>
109
110 -->
111 <#if promoCode.promoType??>
112 <#if promoCode.promoType=="specialRate" && promoCode.promoValue?has_content>
113 <input type="hidden" name="sconto" value="${promoCode.promoValue}">
114 <#assign hasPromo = true>
115 <#elseif promoCode.promoType=="travelAgentName" && promoCode.promoValue?has_content>
116 <input type="hidden" name="sconto" value="${promoCode.promoValue}">
117 <#assign hasPromo = true>
118 <#elseif CheckedOut.BookingEngine.discountCode?has_content && CheckedOut.BookingEngine.discountCode.getData()!="">
119 <input type="hidden" name="sconto" value="${CheckedOut.BookingEngine.discountCode.getData()}">
120 <#assign hasPromo = true>
121 </#if>
122 </#if>
123
124 <input type="hidden" value="${CheckedOut.BookingEngine.AffiliateID.getData()}" name="id_affiliazione">
125 <input type="hidden" value="${CheckedOut.BookingEngine.StyleID.getData()}" name="id_stile">
126 <input type="hidden" value="${CheckedOut.BookingEngine.defaultLanguage.getData()}" name="lingua_int">
127 <input type="hidden" value="${CheckedOut.BookingEngine.headVar.getData()}" name="headvar">
128 <input type="hidden" name="dc" value="${CheckedOut.BookingEngine.dc.getData()}">
129 <input type="hidden" value="${CheckedOut.BookingEngine.HotelID.getData()}" name="id_albergo">
130
131
132 <input type="submit" name="submit" value="${hasPromo?then(submitButtonTextPromo, submitButtonText)}" class="link__more" style="height: 64px; font-weight: bold; width: 200px; float:right; font-size:20px;border:none;">
133 </form>
134 </div>
135 <#else>
136 <a class="link__more" href="${linkToPage}">
137 <span class="link__text">${buttonText}</span><i class="i material-icons">arrow_forward</i>
138 </a>
139 </#if>
140 </div>
141 </div>
142 </li>
143 </ul>
144 </div>
145<script>
146
147 YUI().use(
148 'aui-datepicker',
149 'datatype-date',
150 'datatype-date-math',
151 'datatype-date-parse',
152 function(A) {
153 var toDatePicker;
154 var fromDatePicker = new A.DatePicker({
155 trigger: '#arrivalDisp',
156 mask: '%d-%m-%Y',
157 popover: {
158 zIndex: 1600
159 },
160 on: {
161 selectionChange: function(event) {
162 if (event.newSelection[0]) {
163 var oldToValue = A.Date.parse("%d-%m-%Y",
164 document.getElementById(
165 "departureDisp").value);
166 toDatePicker.getCalendar().set('minimumDate',
167 event.newSelection[0]);
168 if (A.Date.isGreater(event.newSelection[0],
169 oldToValue)) {
170 document.getElementById(
171 "departureDisp").value =
172 A.Date.format(event.newSelection[0],
173 {format: "%d-%m-%Y"});
174 }
175 }
176 }
177 },
178 calendar: {
179 minimumDate: new Date()
180 }
181 });
182
183 toDatePicker = new A.DatePicker({
184 trigger: '#departureDisp',
185 mask: '%d-%m-%Y',
186 popover: {
187 zIndex: 1600
188 },
189 calendar: {
190 minimumDate: new Date()
191 }
192 });
193 }
194
195 );
196
197
198 function book(){
199 var sdate=$("#arrivalDisp").val().split("-");
200 var depdate=$("#departureDisp").val().split("-");
201 $("#gg").val(sdate[0]);
202 $("#mm").val(sdate[1]);
203 $("#aa").val(sdate[2]);
204 $("#ggf").val(depdate[0]);
205 $("#mmf").val(depdate[1]);
206 $("#aaf").val(depdate[2]);
207 if($("#adults1").val() == "") $("#adults1").val(1);
208 if($("#children1").val() == "") $("#children1").val(0);
209 }
210</script>