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

Gabriel Vaquer

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.

Ana Paula cobra da Globo maior exposição a carta em que rebate Casagrande

Ana Paula Henkel: jogadora quer divulgação de carta pela Globo - TV Câmara/Reprodução
Ana Paula Henkel: jogadora quer divulgação de carta pela Globo Imagem: TV Câmara/Reprodução

Colunista do UOL

29/04/2021 19h33

A ex-jogadora de vôlei e comentarista da Rádio Jovem Pan Ana Paula Henkel quer que a Globo divulgue em suas redes sociais e plataformas, com destaque, o texto de direito de resposta que foi publicado no GE no último dia 13 de março, em resposta a um post com críticas feito pelo comentarista Walter Casagrande. A emissora terá que explicar na Justiça, em 24 horas, por que não fez esta divulgação.

O problema faz parte de um conjunto de brigas judiciais envolvendo Ana Paula, Casagrande e o apresentador e comentarista Neto, que foi revelado pela coluna na semana ada. A reportagem teve o à ação (veja a íntegra), na qual Ana Paula pede indenização de R$ 10 mil e o mesmo espaço e divulgação que a opinião de Casagrande teve - entenda a disputa entre os ex-atletas.

No pedido, o advogado da medalhista de Atlanta 1996 afirma que a emissora precisa explicar os motivos de não ter divulgado o assunto com relevância. A coluna apurou que o texto de Ana Paula não foi chamado nas redes sociais como o Twitter e o Facebook e não teve destaque de capa na homepage do site no dia em que foi ao ar.

Isso incomodou Ana Paula. Seus representantes querem uma nova publicação ou uma atualização do texto publicado, mas com o destaque igual ao que teve o texto de Casagrande. A Globo usa o argumento de que o direito de resposta solicitado por Ana Paula Henkel já foi publicado e que fez o que lhe cabia.

Oficialmente, a emissora tem 24 horas para explicar a falta de divulgação, e três dias para apresentar sua contestação na ação.

Band também é alvo

Por causa da mesma história, Ana Paula Henkel está processando também a Rede Bandeirantes. Ela quer a leitura do direito de resposta no programa "Os Donos da Bola", do apresentador Neto, e a postagem dele no YouTube e site da atração, além de outros R$ 10 mil de indenização. Neto repercutiu o post de Casagrande e apoiou o comentarista da Globo publicamente.

Procurada para falar sobre o assunto, a Globo ratificou que "não comentamos casos sub judice, porém, em março, o ge.globo publicou carta de Ana Paula Henkel sobre o assunto". A coluna procurou Ana Paula Henkel, mas ela não respondeu aos contatos.