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

Veruska Donato critica Globo em despedida de Michelle Barros: 'Merece mais'

A repórter Veruska Donato trabalhou na Globo por 21 anos - Reprodução/TV Globo
A repórter Veruska Donato trabalhou na Globo por 21 anos Imagem: Reprodução/TV Globo

De Splash, em São Paulo

12/05/2022 17h12

A repórter Veruska Donato, fora da TV Globo desde novembro de 2021, criticou a Globo ao comentar a postagem de despedida da jornalista Michelle Barros, que anunciou sua saída da emissora.

Jacqueline Brasil, Renato Cury, Marcelo Cosme e outros profissionais da Globo elogiaram Michelle após o anúncio. Veruska aproveitou a publicação para "cutucar" a empresa em que trabalhou por 21 anos.

"Amiga, a Globo é uma escola, mas ela nos empurra para fora. Isso não é para você! Você merece mais, muito mais. A Globo perde", destacou.

Veruska Donato criticou Globo em comentário na publicação de Michelle Barros - Reprodução/Instagram - Reprodução/Instagram
Veruska Donato criticou Globo em comentário na publicação de Michelle Barros
Imagem: Reprodução/Instagram

A mensagem foi criticada por seguidores de Michelle Barros. "Comentário desnecessário, né? A Globo não a demitiu, ela saiu por livre e espontânea vontade! É bonito cuspir no prato onde comeu?", disse uma das pessoas que responderam na sequência.

"Quantos jornalistas queriam ter trabalhado alguns anos na Globo? Vida que segue", apontou outro. Semanas após anunciar que deixou a emissora, Veruska Donato foi contratada pela RecordTV para trabalhar em Mato Grosso do Sul.

agem pela Globo

Veruska Donato se despediu da TV Globo em uma publicação no Instagram feita em 3 de novembro de 2021. Segundo a jornalista, o ódio que recebeu após postar uma foto com o padre Julio Lancellotti influenciou na decisão.

"É a vida cobrando o que é valioso. Precisei fazer escolhas. Deixo vocês e deixo a Globo, e para São Paulo que me acolheu com tanto amor deixo meu bem mais caro", afirmou.

A jornalista começou como estagiária na Globo, em 2000. Foi apresentadora do bloco paulista do "Jornal das Dez" até se fixar como repórter. De 2012 a 2016 ficou como comandante do bloco Sala de Emprego, do "Jornal Hoje".

Em mais de duas décadas como repórter, Veruska viveu algumas situações marcantes e até inusitadas, como o susto quando a porta do "Globocop" abriu em pleno voo.