Sua sessão no site expirou. Você será desconectado em 59 segundos. Continuar conectado.

Sua sessão no site expirou. Faça seu Login .

Sua sessão no site foi renovada.

DESTINOS

Rio de Janeiro

COME TO RIO

Salvador

COME TO SALVADOR

Recife

COME TO RECIFE
São Paulo

São Paulo

COME TO SÃO PAULO!
An error occurred while processing the template.
The following has evaluated to null or missing:
==> titulo  [in template "20116#20152#167532" at line 109, column 82]

----
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: ${titulo}  [in template "20116#20152#167532" at line 109, column 80]
----
1<#function get_friendly_url_from_dynamic_element dynamicElement> 
2<#-- from http://stackoverflow.com/questions/34745527/how-to-access-a-field-of-type-link-to-page-in-liferay-application-display-temp --> 
3 
4	<#assign getURL = dynamicElement.element("dynamic-content").getText() /> 
5	<#-- split the string to just get the page layout id , groupID and if its a private layout--> 
6 
7	<#list getURL?split("@") as item> 
8		<#if item_index == 0> 
9			<#assign linkPageId = item?number> 
10		</#if> 
11		<#if item_index == 1> 
12			<#if item == "private"> 
13				<#assign linkPrivate = true> 
14			<#else> 
15				<#assign linkPrivate = false> 
16			</#if> 
17		</#if> 
18		<#if item_index = 2> 
19			<#assign linkGroupId = item?number> 
20		</#if> 
21	</#list> 
22 
23	<#-- get layout --> 
24	<#assign layoutLocalService = staticUtil["com.liferay.portal.kernel.service.LayoutLocalServiceUtil"]> 
25	<#assign pageLayout = layoutLocalService.getLayout(linkGroupId, linkPrivate, linkPageId)> 
26	<#-- get Friendly URL --> 
27	<#assign portalUtil = staticUtil["com.liferay.portal.kernel.util.PortalUtil"]> 
28	<#assign friendly_page_link = portalUtil.getLayoutFriendlyURL(pageLayout, themeDisplay)> 
29 
30	<#return friendly_page_link> 
31</#function> 
32 
33<#if entries?has_content> 
34	<#list entries as curEntry> 
35		<#assign viewURL = assetPublisherHelper.getAssetViewURL(renderRequest, renderResponse, curEntry, true) /> 
36		<#assign rootElement = saxReaderUtil.read(curEntry.getAssetRenderer().getArticle().getContentByLocale(locale)).getRootElement()> 
37		<#assign descricao = []> 
38		 
39		<#list rootElement.elements() as dynamicElement> 
40			<#if dynamicElement.attributeValue("name") == "LabelTituloDoFiltro"> 
41				<#assign titulo = dynamicElement.element('dynamic-content').getText()> 
42			</#if> 
43			<#if dynamicElement.attributeValue("name") == "LabelViagem"> 
44				<#assign viagem = dynamicElement.element('dynamic-content').getText()> 
45			</#if> 
46			<#if dynamicElement.attributeValue("name") == "LabelDestino"> 
47				<#assign destino = dynamicElement.element('dynamic-content').getText()> 
48			</#if> 
49			<#if dynamicElement.attributeValue("name") == "LabelNacional"> 
50				<#assign nacional = dynamicElement.element('dynamic-content').getText()> 
51			</#if> 
52			<#if dynamicElement.attributeValue("name") == "LabelInternacional"> 
53				<#assign internacional = dynamicElement.element('dynamic-content').getText()> 
54			</#if> 
55			<#if dynamicElement.attributeValue("name") == "TextoDoBotao"> 
56				<#assign botao = dynamicElement.element('dynamic-content').getText()> 
57			</#if> 
58			<#if dynamicElement.attributeValue("name") == "Placeholder"> 
59				<#assign placeholder = dynamicElement.element('dynamic-content').getText()> 
60			</#if> 
61		</#list> 
62	</#list> 
63</#if> 
64 
65<#assign c_city_names = [] > 
66<#assign c_city_destinoParam = [] > 
67<#assign c_city_nacionalidade = [] > 
68<#assign c_city_urlDestinoEspecifico = [] > 
69 
70 
71<#assign has_nacional = false> 
72<#assign has_international = false> 
73 
74<#if entries?has_content> 
75	<#assign listaSelectFCAssunto=[ ]> 
76	 
77	<#list entries as curEntry> 
78		<#assign rootElement= saxReaderUtil.read(curEntry.getAssetRenderer().getArticle().getContentByLocale(locale)).getRootElement()> 
79 
80		<#list rootElement.elements() as dynamicElement> 
81			<#if dynamicElement.attributeValue("name")=="NomeDestino"> 
82				<#assign NomeDestino = dynamicElement.element('dynamic-content').getText()> 
83				<#assign c_city_names = c_city_names + [NomeDestino]> 
84			</#if> 
85			<#if dynamicElement.attributeValue("name")=="destinoParam"> 
86				<#assign destinoParam = dynamicElement.element('dynamic-content').getText()> 
87				<#assign c_city_destinoParam = c_city_destinoParam + [destinoParam]> 
88			</#if> 
89			<#if dynamicElement.attributeValue("name")=="Nacionalidade"> 
90				<#assign nacionalidade = dynamicElement.element('dynamic-content').getText()> 
91				<#assign c_city_nacionalidade = c_city_nacionalidade + [nacionalidade]> 
92					<#if nacionalidade == "nac"> 
93						<#assign has_nacional = true> 
94					</#if> 
95					<#if nacionalidade == "int"> 
96						<#assign has_international = true> 
97					</#if> 
98			</#if> 
99			<#if dynamicElement.attributeValue("name")=="urlDestinoEspecifico"> 
100				<#assign url = dynamicElement.element('dynamic-content').getText()> 
101				<#assign c_city_urlDestinoEspecifico = c_city_urlDestinoEspecifico + [url]> 
102			</#if> 
103		</#list> 
104	</#list> 
105</#if>  
106 
107<div> 
108	<div class="container"> 
109		<h5 roling="heading" aria-level="5" tabindex="100" class="txt">${titulo}</h5> 
110	</div> 
111	<div class="col-xs-12"> 
112		<div class="col-xs-12 col-sm-12"> 
113			<div class="form-group select"> 
114				<div class="content-select"> 
115					<div class="row"> 
116						<label class="fz-14" for="origemStatus" tabindex="100">${viagem}</label> 
117						<div class="text-input"> 
118							<input type="text" id="origemStatus" name="origem" aria-label="${placeholder}" class="form-control txt-center" placeholder="${placeholder}" tabindex="100" readonly> 
119							<span class="current-value fz-20 tac" data-value="">${nacional}</span> 
120							<span class="ico glyphicon glyphicon-chevron-down"></span> 
121							<span class="ico glyphicon glyphicon-chevron-up "></span> 
122							<div class="dropdown col-xs-12 col-md-12"> 
123								<ul class="row nacionalidadeBusca"> 
124									<#if has_nacional == true> 
125										<li> 
126											<a href="#" class="fz-20 tac" data-value="nac" role="link" title="${nacional}" tabindex="100">${nacional}</a> 
127										</li> 
128									</#if> 
129 
130									<#if has_international == true> 
131										<li> 
132											<a href="#" class="fz-20 tac" data-value="int" role="link" title="${internacional}" tabindex="100">${internacional}</a> 
133										</li> 
134									</#if> 
135								</ul> 
136							</div> 
137						</div> 
138					</div> 
139				</div> 
140			</div> 
141		</div> 
142		<div class="col-xs-12 col-sm-12"> 
143			<div class="form-group select filtered-select"> 
144				<div class="content-select"> 
145					<div class="row"> 
146						<label for="destino" class="fz-14" tabindex="100">${destino}</label> 
147						<div class="text-input"> 
148							<input type="text" name="destino" id="destino" class="form-control txt-center" placeholder="${placeholder}" arial-label="${destino}" tabindex="100"> 
149							<span class="current-value fz-20 tac" data-value="">${placeholder}</span> 
150							<span class="ico glyphicon glyphicon-chevron-down"></span> 
151							<span class="ico glyphicon glyphicon-chevron-up"></span> 
152							<div class="dropdown col-xs-12 col-md-12"> 
153								<ul class="row cidadesBusca"><#-- Popular aqui com os destinos!!! --> 
154								<#assign num = c_city_names?size> 
155								<#if num gt 0><#assign num = c_city_names?size - 1> 
156									<#list 0..num as x> 
157										<li> 
158											<a href="javascript:;" class="fz-20 tac" data-value="${c_city_destinoParam[x]}" role="link" title="${c_city_names[x]}" data-nacionalidade="${c_city_nacionalidade[x]}" data-url="${c_city_urlDestinoEspecifico[x]}">${c_city_names[x]}</a> 
159										</li> 
160									</#list> 
161								</#if> 
162								</ul> 
163							</div> 
164						</div> 
165					</div> 
166				</div> 
167			</div> 
168		</div> 
169		<div class="col-xs-12 col-sm-12"> 
170			<button type="button" name="button" class="red-btn col-xs-12" role="button" aria-pressed="true" tabindex="100">${botao}</button> 
171		</div> 
172	</div> 
173</div> 
174 
175<script> 
176$(function(){ 
177 
178// polyfill 
179		if (!Array.prototype.find) { 
180			Object.defineProperty(Array.prototype, 'find', { 
181				value: function (predicate) { 
182					if (this == null) { 
183						throw new TypeError('"this" is null or not defined'); 
184
185 
186					var o = Object(this); 
187 
188					var len = o.length >>> 0; 
189 
190					if (typeof predicate !== 'function') { 
191						throw new TypeError('predicate must be a function'); 
192
193 
194					var thisArg = arguments[1]; 
195 
196					var k = 0; 
197 
198					while (k < len) { 
199						// a. Let Pk be ! ToString(k). 
200						// b. Let kValue be ? Get(O, Pk). 
201						// c. Let testResult be ToBoolean(? Call(predicate, T, « kValue, k, O »)). 
202						// d. If testResult is true, return kValue. 
203						var kValue = o[k]; 
204						if (predicate.call(thisArg, kValue, k, o)) { 
205							return kValue; 
206
207						// e. Increase k by 1. 
208						k++; 
209
210 
211					// 7. Return undefined. 
212					return undefined; 
213
214			}); 
215
216 
217 
218		$(".nacionalidadeBusca").on("click", "li a", function () { 
219			if ($(this).attr("data-value") == "nac") { 
220				$("*[data-nacionalidade='nac']").removeAttr("style"); 
221				$("*[data-nacionalidade='int']").hide(); 
222			} else { 
223				$("*[data-nacionalidade='int']").removeAttr("style"); 
224				$("*[data-nacionalidade='nac']").hide(); 
225
226		}); 
227 
228		$(".cidadesBusca").on("click", "li a", function () { 
229			var url_destino = $(this).attr("data-url"); 
230 
231			$('input[name=destino]').attr("data-url", url_destino); 
232		}); 
233 
234		$("*[data-nacionalidade='int']").hide(); 
235 
236 
237		$('button[name=button]').on("click", function () { 
238			/*var destino_param = $('input[name=destino]').val(); 
239			var url =  $('input[name=destino]').attr("data-url") + "?destino=" + destino_param;*/ 
240			var url = $('input[name=destino]').attr("data-url"); 
241			$(window.location).attr('href', url); 
242		}); 
243	}); 
244</script> 

Choose your next destination

Are you wondering where to go? Or what to do for your next trip? Brazil has suitable destinations for all kinds of travelers. Avianca Brasil flies to over 20 cities in Brazil. Just choose some and read more about each city to help you find the best ones for you!

The most searched destinations

International Destinations

Avianca Brasil operates international flights, too! We flyes the route Fortaleza – Bogota, Salvador - Bogota, São Paulo - Miami and São Paulo - Santiago. We have sharing arrangements for flights to Canada, Spain, Ethiopia, the United Arab Emirates, South Africa and Turkey. We also cover six domestic airports in Colombia: Bucaramanga, Cali, Cartagena, Pereira, Medellín, and Santa Marta. If you need more choice, we have more partner arrangements with over 30 airlines - 27 of them Star Alliance members. Fly further!



Node: haceprdas5:8080