Conteúdo | Curta o Verão

Comemore o Valentine's Day com uma viagem a dois!

Conteúdo | AmigoV2 | Carousel Curta o Verão

Um erro ocorreu enquanto processava o modelo.
The following has evaluated to null or missing:
==> row.Exibir  [in template "20116#20152#5143666" at line 19, column 22]

----
Tip: It's the step after the last dot that caused this error, not those before it.
----
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: #if row.Exibir.getData() == '["logado"]'  [in template "20116#20152#5143666" at line 19, column 17]
----
1<#assign dateFormat = "dd'/'MM'/'yyyy" /> 
2<section id="carousel-promocoes" class="carousel-cards" data-tabindex="#tab-1"> 
3    <div  class="center-content"> 
4        <!-- +++ TITULO +++ --> 
5        <#if carrosselPromocao.tituloCarrosselDesktop.getData()?? && carrosselPromocao.tituloCarrosselDesktop.getData() != ""> 
6            <h3 class="title promo content_desktop">${carrosselPromocao.tituloCarrosselDesktop.getData()}</h3> 
7            <h3 class="title promo content_mobile">${carrosselPromocao.tituloCarrosselMobile.getData()}</h3> 
8        <#else> 
9            <#if carrosselPromocao.tituloCarrosselMobile.getData()?? && carrosselPromocao.tituloCarrosselMobile.getData() != ""> 
10                <h3 class="title promo">${carrosselPromocao.tituloCarrosselMobile.getData()}</h3> 
11            </#if> 
12        </#if> 
13 
14        <!-- +++ ITENS +++ --> 
15        <ul class="owl-carousel owl-theme carousel-trechos-promocionais" > 
16            <#list carrosselPromocao.item.getSiblings() as row> 
17 
18                <#assign exibir = "ambos"/> 
19                <#if row.Exibir.getData() == '["logado"]'> 
20                    <#assign exibir = "logado"/> 
21                </#if> 
22 
23                <#if row.Exibir.getData() == '["deslogado"]'> 
24                    <#assign exibir = "deslogado"/> 
25                </#if> 
26                <li data-exibir-logado='${exibir}' data-prova='row.Exibir.getData()' class="carousel_itens"> 
27                    <div class="box_img"> 
28                        <#if row.ImagemDesktop.getData()?? && row.ImagemDesktop.getData() != ""> 
29                            <span class="content_img content_mobile" style="background-image:url(${row.imagem.getData()})"></span> 
30                            <span class="content_img content_desktop" style="background-image:url(${row.ImagemDesktop.getData()})"></span> 
31                        <#else> 
32                            <#if row.imagem.getData()?? && row.imagem.getData() != ""> 
33                                <span class="content_img" style="background-image:url(${row.imagem.getData()})"></span> 
34                            </#if> 
35                        </#if> 
36 
37                        <!-- +++ DESTINO +++ --> 
38                        <#if row.destinoDesktop.getData()?? && row.destinoDesktop.getData() != ""> 
39                            <p class="destino content_desktop">${row.origemDesktop.getData()}<br>${row.destinoDesktop.getData()}</p> 
40                            <p class="destino content_mobile">${row.origemMobile.getData()}<br>${row.destinoMobile.getData()}</p> 
41                        <#else> 
42                            <#if row.destinoMobile.getData()?? && row.destinoMobile.getData() != ""> 
43                                <p class="destino">${row.origemMobile.getData()}<br>${row.destinoMobile.getData()}</p> 
44                            </#if> 
45                        </#if> 
46                        <!-- <span class="mask"></span> --> 
47                    </div> 
48 
49 
50                    <#if row.aPartir.getData()?? && row.aPartir.getData() != ""> 
51                        <span class="a_partir">${row.aPartir.getData()}</span> 
52                    </#if> 
53 
54                    <#if row.qtPontosMobile.getData()?? && row.qtPontosMobile.getData() != ""> 
55                        <span class="price">${row.qtPontosMobile.getData()}</span> 
56                    </#if>                       
57 
58                    <#if row.labelPontosDesktop.getData()?? && row.labelPontosDesktop.getData() != ""> 
59                        <span class="pontos content_mobile">${row.labelPontos.getData()}</span> 
60                        <span class="pontos content_desktop">${row.labelPontosDesktop.getData()}</span> 
61                    <#else> 
62                        <#if row.labelPontos.getData()?? && row.labelPontos.getData() != ""> 
63                            <span class="pontos">${row.labelPontos.getData()}</span> 
64                        </#if> 
65                    </#if> 
66 
67                    <span class="pontos"> 
68                        <#if row.Embarque.DataDeEmbarqueDe.getData()?? && row.Embarque.DataDeEmbarqueDe.getData() != ""> 
69                            <span style="font-size: 11px;"> 
70                                ${row.Embarque.TextoEmbarque.getData()} 
71                                ${row.Embarque.DataDeEmbarqueDe.getData()?date("yyyy-MM-dd")?string(dateFormat)} 
72                                ${row.Embarque.TextoEntreDatasDeEmbarque.getData()} 
73                                ${row.Embarque.DataEmbarqueAte.getData()?date("yyyy-MM-dd")?string(dateFormat)} 
74                            </span> 
75                        </#if> 
76                        <#if row.TextoExceto.getData()?? && row.TextoExceto.getData() != ""> 
77                            <br> 
78                            <span style="font-size: 9px;"> 
79                                ${row.TextoExceto.getData()} 
80                            </span> 
81                        </#if> 
82                    </span> 
83 
84                    <#if row.btnDesktop.linkDesktop.getData()?? && row.btnDesktop.linkDesktop.getData() != ""> 
85                     
86                        <#list row.btnDesktop.aberturaDesktop.getSiblings() as target> 
87                            <#assign blank = target.getData()> 
88                        </#list> 
89                             
90                        <#if blank == '["blank"]'> 
91                            <a class="button btn-secondary-black content_desktop" href="${row.btnDesktop.linkDesktop.getData()}" target="_blank"> 
92                                ${row.btnDesktop.textoBtn.getData()} 
93                            </a> 
94                        <#else> 
95                            <a class="button btn-secondary-black content_desktop" href="${row.btnDesktop.linkDesktop.getData()}"> 
96                                ${row.btnDesktop.textoBtn.getData()} 
97                            </a> 
98                        </#if> 
99 
100                        <#list row.btnMobile.aberturaMobile.getSiblings() as target> 
101                            <#assign blank = target.getData()> 
102                        </#list> 
103                             
104                        <#if blank == '["blank"]'> 
105                            <#if row.btnMobile.linkMobile.getData()?? && row.btnMobile.linkMobile.getData() != ""> 
106                                 <a class="button btn-secondary-black content_mobile" href="${row.btnMobile.linkMobile.getData()}" target="_blank"> 
107                                    ${row.btnMobile.textoBnt.getData()} 
108                                </a> 
109                            </#if> 
110                        <#else> 
111                            <#if row.btnMobile.linkMobile.getData()?? && row.btnMobile.linkMobile.getData() != ""> 
112                                 <a class="button btn-secondary-black content_mobile" href="${row.btnMobile.linkMobile.getData()}"> 
113                                    ${row.btnMobile.textoBnt.getData()} 
114                                </a> 
115                            </#if> 
116                        </#if> 
117 
118                    <#else> 
119 
120                        <#if row.btnMobile.linkMobile.getData()?? && row.btnMobile.linkMobile.getData() != ""> 
121                             
122                            <#list row.btnMobile.aberturaMobile.getSiblings() as target> 
123                                <#assign blank = target.getData()> 
124                            </#list> 
125                                 
126                            <#if blank == '["blank"]'> 
127                                <#if row.btnMobile.linkMobile.getData()?? && row.btnMobile.linkMobile.getData() != ""> 
128                                     <a class="button btn-secondary-black" href="${row.btnMobile.linkMobile.getData()}" target="_blank"> 
129                                        ${row.btnMobile.textoBnt.getData()} 
130                                    </a> 
131                                </#if> 
132                            <#else> 
133                                <#if row.btnMobile.linkMobile.getData()?? && row.btnMobile.linkMobile.getData() != ""> 
134                                     <a class="button btn-secondary-black" href="${row.btnMobile.linkMobile.getData()}"> 
135                                        ${row.btnMobile.textoBnt.getData()} 
136                                    </a> 
137                                </#if> 
138                            </#if> 
139 
140                        </#if> 
141                    </#if> 
142                </li> 
143            </#list> 
144        </ul> 
145    </div> 
146</section> 
147<script> 
148    require_acc(['jquery','owl_carousel'], function(){ 
149 
150        var reload = false; 
151        var thisURL = window.location.pathname; 
152        var userIsLogged = thisURL.indexOf("minha-conta") !== -1;  
153        $('.carousel_itens').each(function(key){ 
154            if($(this).attr('data-exibir-logado') != "ambos"){ 
155                if (userIsLogged) { 
156                    if($(this).attr('data-exibir-logado') == "deslogado"){ 
157                        $(this).remove(); 
158
159                } else { 
160                    if($(this).attr('data-exibir-logado') == "logado"){ 
161                        $(this).remove(); 
162
163
164
165        }); 
166 
167        if ($('.carousel-trechos-promocionais li').size()) { 
168            if (userIsLogged) { 
169                $('.carousel-trechos-promocionais').owlCarousel({ 
170                    margin:10, 
171                    responsive:{ 
172                        0:{ 
173                            items:1, 
174                            stagePadding: 40, 
175                            loop: false 
176                        }, 
177                        510: { 
178                            items:2, 
179                            stagePadding: 40, 
180                            loop: false 
181                        }, 
182                        660:{ 
183                            items:2, 
184                            stagePadding: 40, 
185                            loop: false 
186                        }, 
187                        700:{ 
188                            items:2, 
189                            stagePadding: 40, 
190                            loop: false 
191                        }, 
192                        1000:{ 
193                            items:2, 
194
195
196                }); 
197            } else { 
198                $('.carousel-trechos-promocionais').owlCarousel({ 
199                    margin:10, 
200                    responsive:{ 
201                        0:{ 
202                            items:1, 
203                            stagePadding: 40, 
204                            loop: false 
205                        }, 
206                        510: { 
207                            items:2, 
208                            stagePadding: 40, 
209                            loop: false 
210                        }, 
211                        660:{ 
212                            items:2, 
213                            stagePadding: 40, 
214                            loop: false 
215                        }, 
216                        700:{ 
217                            items:3, 
218                            stagePadding: 40, 
219                            loop: false 
220                        }, 
221                        1000:{ 
222                            items:4, 
223
224
225                }); 
226
227        } else { 
228            $("#carousel-promocoes").remove(); 
229
230 
231        var __This; 
232        var owl = $('.carousel-trechos-promocionais'); 
233        var swipeDirection; 
234        var direction = ""; 
235        var oldx = 0; 
236        var mousemovemethod = function (e) { 
237            if (e.pageX < oldx) { 
238                direction = "left" 
239            } else if (e.pageX > oldx) { 
240                direction = "right" 
241
242                 
243            oldx = e.pageX; 
244            return direction; 
245        }; 
246 
247        owl.on('drag.owl.carousel', function() { 
248            document.addEventListener('mousemove', mousemovemethod); 
249        }) 
250 
251        owl.on('dragged.owl.carousel', function(e) { 
252            if(direction == 'left'){ 
253                dataLayer.push({ 
254                    event: 'carouselNavigation', 
255                    carouselName: "carrossel_promocoes", 
256                    type: 'swipeLeft', 
257                    position: $('.carousel-trechos-promocionais').find('.owl-dot.active').index() + 1, 
258                    total: $(this).find('.owl-item').length 
259                }); 
260            }else{ 
261                dataLayer.push({ 
262                    event: 'carouselNavigation', 
263                    carouselName: "carrossel_promocoes",  
264                    type: 'swipeRight', 
265                    position: $('.carousel-trechos-promocionais').find('.owl-dot.active').index() + 1, 
266                    total: $(this).find('.owl-item').length 
267                }); 
268            }; 
269        }) 
270 
271        $(document).on('click', '.carousel-trechos-promocionais .owl-dot', function(){ 
272            var pos = $(this).closest('.owl-dots'); 
273 
274            dataLayer.push({ 
275                event: 'carouselNavigation', 
276                carouselName: "carrossel_promocoes",  
277                type: 'navButton', 
278                position: $(this).closest('.owl-dot').index() + 1, 
279                total: pos.find('.owl-dot').length 
280            }); 
281        }); 
282 
283        function getUrlVars() { 
284            var vars = [], 
285                hash; 
286            var hashes = __This.attr('href').slice(__This.attr('href').indexOf('?') + 1).split('&'); 
287            for (var i = 0; i < hashes.length; i++) { 
288                hash = hashes[i].split('='); 
289                vars.push(hash[0]); 
290                vars[hash[0]] = hash[1]; 
291
292            return vars; 
293
294 
295 
296        $('.carousel-trechos-promocionais li .btn-secondary-black').on('click', function(){ 
297            __This = $(this); 
298 
299            dataLayer.push({ 
300                event: "verTrechoPromocional", 
301                trecho: getUrlVars()['ORG'] + '-' + getUrlVars()['DEST'], 
302                pontos: $(this).closest('li').find('.price').text(), 
303                posicao: $(this).closest('.owl-item').index() + 1, 
304                totalDeItens: $('.carousel-trechos-promocionais').find('.owl-item').length 
305            }); 
306        }) 
307    }); 
308</script> 
309 
310<style> 
311 
312.owl-stage {margin: 0 auto} 
313 
314.carousel-cards .title { 
315    width: 100%; 
316
317/* 
318.carousel-cards .mask { 
319    width: 100%; 
320    position: absolute; 
321    bottom: 0; 
322    left: 0; 
323    z-index: 1; 
324    height: 95px; 
325    background: linear-gradient(180deg, rgba(88,88,91,0) 0%, rgba(56,54,54,0.69) 100%); 
326
327*/ 
328.carousel-cards .destino { 
329    z-index: 3; 
330
331 
332.carousel-cards .content_img { 
333    width: 100%; 
334    position: absolute; 
335    bottom: 0; 
336    left: 0; 
337    z-index: 1; 
338    height: 100%; 
339    background-size: cover; 
340
341 
342@media screen and (min-width: 1024px) { 
343    .carousel-cards .content_desktop { 
344        display: inline-block; 
345
346
347.carousel-cards .pontos {text-align:right} 
348 
349</style> 

Conteúdo | Curta o Verão Regulamento

 

 

 

 

 

* Rotas promocionais válidas somente para resgates feitos com a Avianca Brasil (O6). O período de emissão dessa promoção é de 14/02/2019 (a partir das 10h20) até 17/02/2019 (23h59). O período de embarque é de 01/04/2019 até 30/04/2019, exceto feriados. Tarifas sujeitas à disponibilidade de voo e assento.

Conteúdo | Box Texto Link Parceiros de Viagem

Conteúdo | Header

Amigo Search Portlet

Conteúdo melhor visualizado nos navegadores Google Chrome e Firefox OK
 

Menu

Cancelar

Login

CADASTRE-SE
Lembre-se sua senha segue as regras abaixo:
* Uma letra maiúscula * Uma letra minúscula
* Mais de 8 caracteres * Um Número
* Um caractere especial

Olá, (VER CONTA)

sair
NO. AMIGO:

SEU SALDO

PONTOS

Conteúdo | AmigoV2 | Footer