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

Balaio do Kotscho

Robinho se enforca sozinho, Casagrande ataca e Caio Ribeiro a o pano

Robinho concede entrevista ao UOL em 16 de outubro de 2020 - Marcelo Ferraz/UOL
Robinho concede entrevista ao UOL em 16 de outubro de 2020 Imagem: Marcelo Ferraz/UOL

Colunista do UOL

17/10/2020 14h21

Em tempo (atualizado às 17h50): fiz uma enquete entre meus leitores no Facebook para saber de que lado eles ficam nesta história do Robinho.

Resultado até agora: Casagrande 304 X Caio Ribeiro 0.

***

Na entrevista exclusiva concedida aos repórteres Eder Traskini e Talyta Vespa, do UOL, Robinho fugiu de todas as perguntas e se enforcou sozinho, ao não conseguir dar uma versão verossímil sobre o crime de violência sexual contra uma jovem a que responde na Itália, em que há três anos já foi condenado na primeira instância e agora aguarda julgamento de recurso.

Cercado por advogados, assessores e dirigentes do Santos, que desistiram da sua contratação após a reação de patrocinadores, o jogador parecia um menino assustado, caindo em contradições por não ter como se defender, diante das provas apresentadas no processo e reveladas pelo Globo Esporte na sexta-feira.

Robinho itiu contato íntimo com a vítima, "mas sem penetração", e só itiu um erro: "Meu crime foi trair minha esposa".

Diante da forte repercussão negativa da torcida feminina nas redes sociais e da ameaça de perder R$ 20 milhões em patrocínios, o Santos se viu obrigado a desistir de trazer Robinho de volta ao time, pela quarta vez.

Em áudio enviado a amigos pelo WhatsApp, o jogador se comparou a Bolsonaro e atacou a Rede Globo, que viu dois dos seus principais comentaristas, ex-jogadores, assumirem posições antagônicas diante do caso, refletindo a guerra desencadeada nas redes sociais.

Casagrande saiu na frente e disparou contra a contratação de Robinho:

"Essa negociação não devia nem ter começado. Foi bom pra mostrar que o futebol faz parte da sociedade, não é um universo separado. Tem que parar de aceitar sacanagem como coisa normal. Lamento muito que tenha que ter pressão dos patrocinadores para o Santos rescindir o contrato. Não vou defender o Robinho de forma nenhuma, neste momento ele é um condenado na justiça italiana. Não tem como defender esse tipo de situação".

Do outro lado do campo, Caio Ribeiro saiu em defesa do jogador, como costuma fazer sempre em seus comentários anódinos, alegando que todo mundo merece o benefício da dúvida.

"A gente não tem todas as informações, então vamos esperar. Quem tem que julgar é a Justiça para decretar se ele é inocente ou culpado. Isso é a primeira coisa e a minha forma de analisar os fatos. Acho um assunto super delicado e fico muito chateado porque conheço o Robinho. Torço ainda pela absolvição dele. O Robinho que eu conheço, que tem três filhos e é casado, eu nunca imaginei que faria isso".

Se Caio não sabe, a justiça italiana já deu a sentença, condenando Robinho a nove anos de prisão e, em dezembro, julgará o recurso da defesa do atleta numa instância superior.

As posições divergentes de Casagrande e Caio Ribeiro refletem a divisão que existe na sociedade brasileira em torno de um personagem onipresente, o presidente Jair Bolsonaro, que agora invadiu até o futebol.

"Você viu o que fizeram com o Bolsonaro antes da eleição? O ataque que fizeram ao cara? Falando que Bolsonaro era isso e aquilo? A gente sabe como a TV Globo é uma emissora do demônio. Vou meter uma camisa quando fizer gol: `Globo lixo, Bolsonaro tem razão´", desabafou o jogador na mensagem aos amigos.

Na conversa com os repórteres do UOL, porém, ele foi bem mais manso para dizer apenas que era inocente.

Quem é inocente não precisa de tropa de choque para dar uma entrevista.

Eu estou com Casagrande. Chega de ar o pano na cabeça de boleiros, "que se julgam deuses, achando que podem fazer tudo e nada acontece".

Vida que segue.