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

RMP: "Abel Braga é o técnico ideal para o Corinthians"

Do UOL, em São Paulo

17/05/2021 04h00

A agem de Vagner Mancini pelo Corinthians terminou neste domingo (16), logo após a derrota por 2 a 0 para o Palmeiras em Itaquera. A eliminação na semifinal do Campeonato Paulista para o arquirrival custou o emprego do treinador, que já vinha pressionado no cargo. A diretoria do clube do Parque São Jorge procura um substituto.

No Fim de Papo, live pós-rodada do UOL Esporte - com os jornalistas Isabela Labate, Renato Maurício Prado, Rodrigo Mattos e Menon - foram analisados os motivos que levaram à queda de Mancini, e quem poderia assumir o cargo para a disputa do Campeonato Brasileiro. Vale lembrar que o Corinthians foi eliminado da Copa Sul-Americana de forma antecipada após ser goleado por 4 a 0 pelo Peñarol na última quinta-feira (13), em Montevidéu.

Renato apontou dois possíveis candidatos que, na visão dele, seriam os mais adequados para o momento vivido pelo clube hoje. "Sabe qual é o técnico ideal para o Corinthians? Abel Braga. Ele ia montar o time todo lá atrás, defender fechando a casinha e tentando um contra-ataque para ganhar de 1 a 0. Ou o Carille. Não adianta pensar em um treinador inovador, moderno, que vai jogar para frente. Não adianta. Ele não tem os jogadores", disse.

Menon concorda. "O Mancini não compreendeu onde estava. Acho que ele deve ter pensado que era aquele time com Edilson, Vampeta... Se fosse um time poderoso, o técnico não seria ele. Ele só é técnico porque o time é ruim. No atual momento, o Corinthians é um time para jogar de modo reativo. Como um time frágil desse permite ao Palmeiras fazer gol de contra-ataque? O Mancini tentou fazer o Corinthians jogar de uma forma que o time não tinha capacidade técnica para isso", comentou.

Mattos usou o clássico com o Palmeiras para exemplificar as dificuldades que o agora ex-treinador enfrentou. "O Mancini inventou uma escalação. Enfrentou um time com três zagueiros e de novo espelhou, sendo que os zagueiros dele são João Victor e Raul, que são jovens, inseguros e que não estavam sabendo se posicionar nem sair jogando. O Palmeiras roubou um monte de bolas para sair na cara do gol. Foi um atropelamento. O elenco do Corinthians é fraco", apontou.

Questionado se Renato Gaúcho não seria um candidato para assumir o comando do Corinthians, Renato foi enfático. "Eu acho que ele não vem. Ele não vai pegar esse rabo de foguete, é uma loucura. Renato está no Rio, esperando para ver o que acontece com o Rogério Ceni. Ele sabe que, se houver alguma confusão com o Rogério, ele ainda é um bom candidato. E ele está acostumado a treinar time com bons jogadores, não vai ser o Corinthians", completou.