;(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

Tati sela paz com Rico: 'Você foi verdadeiro comigo em todo momento'

A Fazenda 2021: Tati Quebra Barraco faz as pazes com Rico Melquiades no "Hora do Faro" - Reprodução/PlayPlus
A Fazenda 2021: Tati Quebra Barraco faz as pazes com Rico Melquiades no 'Hora do Faro' Imagem: Reprodução/PlayPlus

Colaboração para Splash, em São Paulo

29/10/2021 17h35Atualizada em 29/10/2021 18h34

Tati Quebra Barraco, a sexta eliminada de "A Fazenda 13" (RecordTV), detonou Gui Araujo na gravação do "Hora do Faro", mas adotou um tom de paz e reconciliação ao falar sobre Rico Melquiades, peão que se livrou da berlinda que eliminou a funkeira e com quem ela discutiu na casa.

A carioca deu as plaquinhas de "barraqueiro", "manipulador", "encrenqueiro", "inável", "animado" e "verdadeiro" ao humorista e anunciou que a paz está selada entre eles dois:

Ô, Rico, o ponto melhor disso tudo é que pelo menos você falava na minha cara. Pior coisas são as pessoas que estavam do meu lado, eu ouvi coisas aqui que eu fiquei surpresa. Você nunca me enganou, sempre falou na minha cara. Isso aí é o ponto inicial de tudo, você foi verdadeiro comigo em todo momento. Eu não ouvi você falando pelas costas de mim coisas que eu ouvi de pessoas que estavam do meu lado. Então, zerado. Tudo de bom para você, para todo mundo que está aí. Sejam fortes, que o melhor vença, fiquem com Deus. Tati Quebra Barraco

"Boa sorte aí, Tati. Homem é para sentar", brincou Rico, que concordou com as plaquinhas recebidas, apontando apenas que Gui Araujo e Arcrebiano são os peões que mais se encaixam como manipuladores no jogo.

"Não, mas pera aí, só para gente despedir dessa. Rico, o que você acha da Tati, só para a gente fechar?

"Barraqueira", disparou o humorista, arrancando risos dos colegas. "Come e dorme", acrescentou a funkeira, e o peão concordou. "Come e dorme, preguiçosa", continuou ele, com bom humor.

'A Fazenda 13': Os peões que foram eliminados ou saíram do reality rural

Após eliminação de Tati Quebra Barraco, quem merece vencer o reality?

Enquete encerrada

Total de 59405 votos
27,42%
Antonio Chahestian/Record TV