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

Marcel Rizzo

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.

Fifa vai discutir realizar a Copa do Mundo a cada dois anos

Presidente da Fifa, Gianni Infantino, quer mudar o calendário do futebol em 2024 - LEONHARD FOEGER
Presidente da Fifa, Gianni Infantino, quer mudar o calendário do futebol em 2024 Imagem: LEONHARD FOEGER

Colunista do UOL

19/05/2021 10h23

A direção da Fifa colocou na pauta de seu Congresso, que ocorre de maneira virtual nesta sexta-feira (21), discussão para criação de um grupo de estudo que avalie a possibilidade de que as Copas do Mundo masculina e feminina sejam realizadas a cada dois anos e não quatro, como é atualmente.

Dessa maneira, todo ano haveria um dos dois eventos, um ano a Copa dos homens e no outro, das mulheres. Em meio às negociações da Fifa para aumentar a importância dos torneios de clubes na remodelação do calendário que pretende fazer a partir de 2024, essa ideia na direção contrária tem rejeição interna, mas de qualquer modo será debatida.

A proposta foi feita pela Federação da Arábia Saudita. Alguns meses antes do Congresso anual, a secretaria-geral da Fifa pede aos 211 filiados que enviem sugestões de alterações em qualquer área da organização do futebol para que se possa debater no encontro. Em 2021 foram enviadas três, todas relacionadas à competições.

Normalmente, essas propostas são direcionadas, ou seja, as federações apresentam ideias que foram debatidas nos últimos meses em comissões da Fifa e que a cúpula da entidade tem interesse que sejam discutidas pelo Congresso. É o caso das três de 2021:

- Proposta da Federação de Futebol da Jamaica solicitando a preparação de um conceito de competição global de futebol feminino;
- Proposta da Federação Saudita de Futebol solicitando a realização de um estudo de viabilidade sobre o impacto de disputar a Copa do Mundo e a Copa do Mundo Feminina a cada dois anos;
- Proposta da Associação de Futebol da Libéria solicitando um projeto para o futuro das competições juvenis da FIFA.

As três solicitações atendem ideias da Fifa para remodelar o calendário. A entidade quer criar mais torneios femininos, que englobem seleções e clubes, e também modificar suas competições de base, que hoje tem Mundiais de seleções a cada dois anos, mas sem campeonatos de times relevantes.

O futuro da Copa do Mundo, entretanto, é o mais importante. Para encaixar novos torneios de clubes, qual será o impacto que isso teria no campeonato de seleções, principalmente o masculino, de onde a Fifa tira a maior parte de sua receita?

Seria possível ter uma Copa masculina a cada dois anos, intercalada por um Super Mundial de Clubes com 24 participantes, ou até mais, disputado nos anos ímpares? É isso que a Fifa quer começar a discutir com seus filiados.

O Congresso também aprovará as contas da Fifa em 2020 — como a coluna mostrou, a Fifa teve um prejuízo de US$ 683 milhões e perda de US$ 500 milhões em receitas comparado com 2019. Efeito da pandemia.

A reunião também elegerá novos membros de comissões, como o de Ética, de Disciplina, de Apelação e de Governança.