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

Paulista - 2021

"O que está ocorrendo é o que estava acordado", diz presidente do Mirassol

Jogo do Paulistão acontecerá em Volta Redonda - Divulgação/Prefeitura de Volta
Jogo do Paulistão acontecerá em Volta Redonda Imagem: Divulgação/Prefeitura de Volta

Do UOL, em São Paulo

22/03/2021 20h07

A Federação Paulista de Futebol (FPF) confirmou no início desta noite (22) que o duelo entre Mirassol x Corinthians, válido pela 5ª rodada do Campeonato Paulista, vai acontecer em Volta Redonda, no Rio de Janeiro, e o presidente do clube do interior, Edson Ermenegildo, afirmou que o clube está alinhado com a decisão.

"Hoje foi decidido que não haveria rodada em São Paulo, se houvesse em outro estado, já estaria acertado. O que está ocorrendo é aquilo que estava acertado. Se não está no comunicado, estou ando o que foi combinado. Havendo a possibilidade de jogos em outros estados, concordamos que faríamos esse esforço, como estamos fazendo, dando continuidade ao Campeonato", disse, em entrevista à "Rádio Bandeirantes".

Ermenegildo disse que, por ora, os custos da viagem confirmada às pressas será bancada integralmente pelo Mirassol.

"Minha delegação sai às 8h, com voo fretado, vai ao Rio de Janeiro, uma hora e meia de voo e depois nos dirigimos a Volta Redonda, uma hora e meia de ônibus, pelo que fui informado. Quem paga? Por ora, o Mirassol. Acho que outras situações vão surgir e tenho certeza de que a FPP vai fazer esforço pra nos ajudar", afirmou.

O cartola acredita que manter os jogadores concentrados é a forma mais eficaz de prevenir que novos casos de covid-19 apareçam na equipe. Em 2021, o Mirassol não teve casos da doença.

"Nossos atletas estão mais prevenidos conosco do que em qualquer outro lugar. Este ano, por incrível que pareça, temos um só [caso] de falso positivo, nenhum caso nessa temporada."

Também à Rádio Bandeirantes, o prefeito de Volta Redonda, Antônio Francisco Neto, afirmou que todos os protocolos sanitários serão respeitados para que os jogos aconteçam. A cidade também deve receber quatro jogos da Copa do Brasil, segundo informou a CBF.