;(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(); })();
  • AssineUOL
Topo

Histórico

Fefito

REPORTAGEM

Texto que relata acontecimentos, baseado em fatos e dados observados ou verificados diretamente pelo jornalista ou obtidos pelo o a fontes jornalísticas reconhecidas e confiáveis.

Adiada por causa da covid, 'Um Lugar ao Sol' já tem 80 capítulos escritos

Andreia Horta, Cauã Reymond e Alinne Moraes foram o trio de protagonistas de "Um Lugar ao Sol" - Divulgação/TV Globo
Andreia Horta, Cauã Reymond e Alinne Moraes foram o trio de protagonistas de "Um Lugar ao Sol" Imagem: Divulgação/TV Globo

Colunista do UOL

09/03/2021 09h59

Com a estreia adiada mais uma vez por causa da pandemia, "Um Lugar ao Sol" está em ritmo bem adiantado no que diz respeito aos roteiros.

A coluna apurou que a autora, Licia Manzo, já entregou mais de 80 roteiros para emissora. Ou seja: a próxima novela das nove inédita já ou da metade de seus episódios antes mesmo de entrar no ar. A previsão é que o folhetim tenha 155 capítulos.

Por causa do aumento de casos de coronavírus, as gravações foram diminuídas. Em seu lugar, a Globo exibirá uma reprise de "Império", de Aguinaldo Silva, a partir de abril.

A história da próxima novela das nove vai girar em torno de gêmeos separados no nascimento, papéis que caberão a Cauã Reymond. Com vidas completamente distintas - um rico e um pobre -, eles terão seus destinos cruzados quando um assumir o lugar do outro após um acidente. Caberá a Andreia Horta o posto de mocinha.

Entre as tramas, haverá ainda um casal lésbico. Enfermeira na trama, Natália Lage viverá uma história de amor com a mulher de seu paciente, personagem de Mariana Lima, que, por sua vez, será casada com Marco Ricca.

De volta às novelas, Andréa Beltrão se apaixonará pelo neto de sua terapeuta, papéis de Gabriel Leone e Regina Braga, respectivamente. Já José de Abreu assumiu o papel de Reginaldo Faria e será o dono de uma rede de supermercados que se apaixona por sua personal trainer, vivida por Fernanda de Freitas.

A violência doméstica também será discutida por meio da personagem de Maria Flor, que será agredida pelo marido, vivido por Danilo Grangheia.

O elenco de "Um Lugar ao Sol" conta ainda com nomes como Pathy Dejesus, Marieta Severo, Ana Beatriz Nogueira, Daniel Dantas, Fernanda Nobre, Claudia Mauro, Juliana Schalch, Otávio Muller, Danton Mello e Lara Tremoroux.