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

Cruzeiro

Cruzeiro: candidato derrotado em eleição do Conselho fala em "traição"

Giovanni Baroni citou também "hipocrisia" após perder eleição no clube - Igor Sales/Cruzeiro
Giovanni Baroni citou também "hipocrisia" após perder eleição no clube Imagem: Igor Sales/Cruzeiro

Guilherme Piu

Do UOL, em Belo Horizonte

01/12/2020 14h36

Os bastidores do Cruzeiro ganharam mais um ingrediente apimentado e continuam inflamados pela intensa divergência política e ideológica. Um dia após a eleição de Nagib Simões para o cargo de presidente do Conselho Deliberativo da Raposa, o candidato derrotado Giovanni Baroni citou "hipocrisia e traição".

"Bom dia, Nação Azul. Mais uma vez, a hipocrisia se estabeleceu. Tapinhas nas costas e traição... Pois saibam: Eu não desistirei. IMPOSSÍVEL VENCER QUEM NUNCA DESISTE. O Cruzeiro voltará (será) para a torcida (sic)", escreveu o empresário em sua conta particular no Twitter.

Segundo apurou o UOL Esporte, integrantes da chapa de Baroni fizeram contagem de votos com os apoiadores e, dentro dos votos programados, aqueles que foram computados durante a campanha eleitoral como "garantidos", houve quem "mudou de lado" na beirada da urna.

Dentre essas mudanças está uma substancial na "casta" dos beneméritos, conselheiros que já ocuparam ou ocupam cargos de presidência, seja no executivo ou no próprio Conselho. Esse fato teria desagradado muito ao próprio Baroni e seus apoiadores.

Na contagem oficial, Nagib somou 5 votos de beneméritos, enquanto Baroni apenas três.

Apoio contestado

Nagib Simões foi eleito como o cabeça da chapa "Somos Todos Cruzeiro" e recebeu 149 votos, contra 125 de Giovanni Baroni, da chapa "Renovação e Transparência". Houve ainda três votos brancos, dois nulos, em uma somatória de 279 votantes. A ausência de conselheiros foi alta, já que 123 pessoas com direito a voto não compareceram às urnas.

Atual vice do presidente do Conselho Paulo Pedrosa, Simões é conselheiro da base que apoiou Wagner Pires de Sá, presidente afastado do cargo em 2019, e que atualmente é réu na Justiça por crimes de falsidade ideológica, apropriação indébita e formação de organização criminosa.

Em julho do ano ado o atual presidente do Conselho Deliberativo do Cruzeiro gerou polêmica ao dizer que Wagner Pires de Sá e os demais membros de sua diretoria eram inocentes, após denúncias de forte impacto feitas pelo programa da TV Globo, Fantástico.

"Acreditar na inocência não, eu tenho certeza que até o momento eles (membros da diretoria do clube) são inocentes. Não foram condenados, não respondem a processos, é só pela imprensa", falou, durante a posse no Conselho Fiscal, o qual também presidiu apoiado pelo presidente deposto.

"Tem Polícia Civil apurando, Polícia Federal apurando, Ministério Público apurando, então tenho certeza da inocência deles, até que me provem o contrário. Sou totalmente contra o afastamento, mas se quiserem pedir licença, problema é deles. Agora, tem que haver um amplo direito de defesa", completou Pedrosa à época.

Cruzeiro