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

Autuori diz que público nos estádios no Carioca é um 'grande absurdo'

Paulo Autuori, técnico do Botafogo - Vítor Silva/Botafogo
Paulo Autuori, técnico do Botafogo Imagem: Vítor Silva/Botafogo

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

29/06/2020 22h46

Treinador do Botafogo, Paulo Autuori afirmou que o decreto da prefeitura do Rio de Janeiro que permite a volta do público aos estádios no Campeonato Carioca é um grande absurdo. Na opinião do técnico, o futebol tem sido utilizado politicamente.

"Um grande absurdo (o decreto que permite o público nos estádios dia 10). Se pararmos para ver, os desencontros já vêm desde que começamos a conviver com o vírus. Deixamos de lado pessoas que estavam conduzindo com clareza a situação e essa decisão da prefeitura nem sei dizer se me pegou de surpresa. Há toda uma lógica por essas tomadas de decisão. O futebol, que é um fenômeno sócio-econômico está sendo usado politicamente. A data para o retorno do público é justamente a data da final do Carioca, então a gente encaixa as coisas. Falaram que eu ofendi as pessoas, mas não ofendi. Os fatos ofendem as pessoas", disse em entrevista ao Bem, Amigos!, do SporTV, hoje.

Autuori afirmou que suas recentes críticas à Federação de Futebol do Rio de Janeiro (Ferj) não são apenas pelas decisões deste ano, mas pelo que a instituição tem sido nos últimos anos. O treinador acredita ainda que não há argumentos que sustentem a volta do futebol carioca neste momento.

"Eu parto sempre da seguinte premissa: falo de conceitos, não de pessoas. Infelizmente no Brasil, quando você discorda de alguém, imediatamente você vira inimigo pessoal. (...) amos por momentos muito difíceis, muitos sofreram, vários perderam a vida e não queremos ar por isso de novo ou prolongar esse momento. E quando eu falo, eu não quero apenas soltar palavras sem sentido. E a minha crítica é o que tem sido a Ferj nos últimos tempos. O Luxemburgo também foi suspenso por ter falado contra. Acho que, na falta de argumentos, usa-se a força. (...) O que eu mais falei na entrevista foi no intuito de salvaguardar a integridade física dos jogadores. Acho que é um descaso enorme aos protagonistas do futebol: jogadores e torcedores. Esse relacionamento faz o futebol ser a magia que é no mundo todo. Não há argumentos para que o Campeonato Carioca volte agora", disse.

O treinador do Botafogo ainda questionou o protocolo estabelecido para o retorno do futebol, já que três jogadores do Volta Redonda testaram positivo para a Covid-19 e ainda assim o time foi a campo contra o Fluminense - e venceu por 3 a 0.

"Dentro deste protocolo, do qual falam maravilhas, três jogadores testaram positivo. Então, eles tiveram contato com os outros. Logicamente que eles não iriam para o jogo, mas em alguns países, o time não poderia ir para o jogo. Um dos argumentos para a volta rápida do futebol carioca era a necessidade dos clubes pequenos dos valores dos contratos televisivos. Mas e os outros estados? Não têm clubes pequenos?", complementou.