;(function() {
window.createMeasureObserver = (measureName) => {
var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`;
performance.mark(`${markPrefix}-start`);
return {
end: function() {
performance.mark(`${markPrefix}-end`);
performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`);
performance.clearMarks(`${markPrefix}-start`);
performance.clearMarks(`${markPrefix}-end`);
}
}
};
/**
* Gerenciador de eventos
*/
window.gevent = {
stack: [],
RUN_ONCE: true,
on: function(name, callback, once) {
this.stack.push([name, callback, !!once]);
},
emit: function(name, args) {
for (var i = this.stack.length, item; i--;) {
item = this.stack[i];
if (item[0] === name) {
item[1](args);
if (item[2]) {
this.stack.splice(i, 1);
}
}
}
}
};
var runningSearch = false;
var hadAnEvent = true;
var elementsToWatch = window.elementsToWatch = new Map();
var innerHeight = window.innerHeight;
// timestamp da última rodada do requestAnimationFrame
// É usado para limitar a procura por elementos visíveis.
var lastAnimationTS = 0;
// verifica se elemento está no viewport do usuário
var isElementInViewport = function(el) {
var rect = el.getBoundingClientRect();
var clientHeight = window.innerHeight || document.documentElement.clientHeight;
// renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content
if(el.className.includes('related-content-front')) return true;
// garante que usa ao mínimo 280px de margem para fazer o lazyload
var margin = clientHeight + Math.max(280, clientHeight * 0.2);
// se a base do componente está acima da altura da tela do usuário, está oculto
if(rect.bottom < 0 && rect.bottom > margin * -1) {
return false;
}
// se o topo do elemento está abaixo da altura da tela do usuário, está oculto
if(rect.top > margin) {
return false;
}
// se a posição do topo é negativa, verifica se a altura dele ainda
// compensa o que já foi scrollado
if(rect.top < 0 && rect.height + rect.top < 0) {
return false;
}
return true;
};
var asynxNextFreeTime = () => {
return new Promise((resolve) => {
if(window.requestIdleCallback) {
window.requestIdleCallback(resolve, {
timeout: 5000,
});
} else {
window.requestAnimationFrame(resolve);
}
});
};
var asyncValidateIfElIsInViewPort = function(promise, el) {
return promise.then(() => {
if(el) {
if(isElementInViewport(el) == true) {
const cb = elementsToWatch.get(el);
// remove da lista para não ser disparado novamente
elementsToWatch.delete(el);
cb();
}
}
}).then(asynxNextFreeTime);
};
// inicia o fluxo de procura de elementos procurados
var look = function() {
if(window.requestIdleCallback) {
window.requestIdleCallback(findByVisibleElements, {
timeout: 5000,
});
} else {
window.requestAnimationFrame(findByVisibleElements);
}
};
var findByVisibleElements = function(ts) {
var elapsedSinceLast = ts - lastAnimationTS;
// se não teve nenhum evento que possa alterar a página
if(hadAnEvent == false) {
return look();
}
if(elementsToWatch.size == 0) {
return look();
}
if(runningSearch == true) {
return look();
}
// procura por elementos visíveis apenas 5x/seg
if(elapsedSinceLast < 1000/5) {
return look();
}
// atualiza o último ts
lastAnimationTS = ts;
// reseta status de scroll para não entrar novamente aqui
hadAnEvent = false;
// indica que está rodando a procura por elementos no viewport
runningSearch = true;
const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve());
// obtém todos os elementos que podem ter view contabilizados
//elementsToWatch.forEach(function(cb, el) {
// if(isElementInViewport(el) == true) {
// // remove da lista para não ser disparado novamente
// elementsToWatch.delete(el);
// cb(el);
// }
//});
done.then(function() { runningSearch = false; });
// reinicia o fluxo de procura
look();
};
/**
* Quando o elemento `el` entrar no viewport (-20%), cb será disparado.
*/
window.lazyload = function(el, cb) {
if(el.nodeType != Node.ELEMENT_NODE) {
throw new Error("element parameter should be a Element Node");
}
if(typeof cb !== 'function') {
throw new Error("callback parameter should be a Function");
}
elementsToWatch.set(el, cb);
}
var setEvent = function() {
hadAnEvent = true;
};
window.addEventListener('scroll', setEvent, { capture: true, ive: true });
window.addEventListener('click', setEvent, { ive: true });
window.addEventListener('resize', setEvent, { ive: true });
window.addEventListener('load', setEvent, { once: true, ive: true });
window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true });
window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE);
// inicia a validação
look();
})();
Seleções da Copa ficarão em castelo, hotéis de luxo, ilha e resort; conheça
Entrada do Al Samriya Autograph Collection Hotel, que hospedará a seleção de Portugal no Qatar
Divulgação
Colaboração para o UOL, em Santos (SP)
17/11/2022 10h52
Se você gosta de luxo, essa reportagem foi feita especialmente para você! E se você não gosta muito e prefere algo mais simples, duvido não se apaixonar por alguns dos hotéis e resorts em que as seleções da Copa do Mundo ficarão hospedados no Qatar. Quer ver?
Tem hotel para todos os gostos. Isolado em uma ilha, parecido com um castelo e, claro, aqueles que brilham por si só de tanto luxo... Qual é o seu preferido? Bora conferir!
Vamos começar a nossa lista com algo bem exótico, além, claro, de muito luxuoso. Cristiano Ronaldo e cia. arão dias hospedados no Al Samriya Autograph Collection Hotel, que é meio castelo meio aquelas fortalezas antigas, sabe?
Imagem: Divulgação
Imagem: Divulgação
No que promete ser a sua última Copa do Mundo, Cristiano Ronaldo, que bem é chegado num luxo, vai se sentir em casa, né?
De um castelo para uma ilha. A seleção dos Estados Unidos ficará sediada no Marsa Malaz Kempinski, hotel localizado no coração de The Pearl, uma ilha artificial de Doha que abriga uma longa lista de hotéis de luxo no Qatar, com direito a restaurantes para lá de sofisticados.
Já a hospedagem da seleção alemã será a mais distante de Doha, a cerca de 100 km da capital, no Zulal Wellness Resort.
Imagem: Divulgação
Os campeões de 2014 optaram mais uma vez por evitar as multidões e ficarão num local que é propriedade da família real do Qatar e tem suítes de R$ 50 mil por noite. Tá fácil?
Imagem: Divulgação
Continua depois da publicidade
A seleção da Inglaterra é outra que preferiu fugir do centro de Doha. A casa dos ingleses no Qatar será o hotel Souq Al Wakra, localizado à beira do Golfo Pérsico.
Imagem: Reprodução
Harry Kane e os demais poderão curtir vistas deslumbrantes do mar e um restaurante em estilo mediterrâneo aberto o dia todo.
Imagem: Eddie Keogh - The FA/The FA via Getty Images
Já a França escolheu para se hospedar o Al Messila, a Luxury Collection Resort & Spa, apontado como um ?oásis de calmaria?.
Imagem: Divulgação
Por lá, temos um spa de 14 mil metros quadrados e vastos jardins perfumados indígenas para manter os atuais campeões focados em mais um título mundial.
Estamos chegando ao fim da nossa lista, mas não sem antes, é claro, darmos uma olhada onde a nossa seleção brasileira vai ficar: Westin Doha Hotel & Spa, um luxuoso hotel cinco estrelas na capital do país.
Continua depois da publicidade
O hotel tem 264 quartos e 200 deles estarão reservados para a seleção, que terá uma ala exclusiva, sem o dos demais hóspedes, garantindo privacidade aos atletas e comissão.
Imagem: Divulgação/Marriot
O espaço também disponibiliza uma praia artificial e piscina com ondas, que será de uso exclusivo da seleção brasileira.
Imagem: Divulgação/Marriot
As diárias do hotel variam de acordo com o tamanho e luxo de cada acomodação, partindo de R$ 900 e podendo chegar a até R$ 14 mil.
Imagem: Divulgação/Marriot
Por fim, vamos à sede mais 'simples' entre as seleções. E, curiosamente, Argentina e Espanha resolveram se hospedar no mesmo lugar: a Universidade do Qatar.
Imagem: Divulgação
O local pode não ser tão luxuoso quanto os demais, mas tem suas vantagens: Messi, Busquets e cia não vão precisar sair de lá para treinar, já que a universidade conta CT próprio.
ID: {{comments.info.id}}
URL: {{comments.info.url}}
Ocorreu um erro ao carregar os comentários.
Por favor, tente novamente mais tarde.
{{comments.total}} Comentário
{{comments.total}} Comentários
Seja o primeiro a comentar
Essa discussão está encerrada
Não é possivel enviar novos comentários.
Essa área é exclusiva para você, , ler e comentar.
Só s do UOL podem comentar
Ainda não é ? Assine já.
Se você já é do UOL, faça seu .
O autor da mensagem, e não o UOL, é o responsável pelo comentário. Reserve um tempo para ler as Regras de Uso para comentários.