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

Corinthians

Fagner relembra história de quase morte: 'Médicos salvaram minha vida'

Fagner conta como um acidente no prédio em que morava fez com que asse por duas cirurgias - Rodrigo Coca/Ag. Corinthians
Fagner conta como um acidente no prédio em que morava fez com que asse por duas cirurgias Imagem: Rodrigo Coca/Ag. Corinthians

Do UOL, em São Paulo

01/09/2022 16h41

Neste 1º de setembro, dia do aniversário de 112 anos do Corinthians, o lateral Fagner publicou uma carta aberta à torcida para falar sobre sua relação com o clube. A certa altura do texto, o jogador conta sobre um acidente na infância que o fez ar por duas cirurgias.

"Quando eu tinha sete anos, entrei numa porta de vidro. Estava brincando no prédio onde morava e simplesmente entrei na porta. Rompeu todos os ligamentos, a pele descolou do braço, cortou artéria, tudo", escreve Fagner em texto publicado pelo site The Players Tribune. Ele já havia falado sobre o acidente outras vezes, explicando a gravidade.

Ele recebeu os primeiros socorros de uma vizinha, que era enfermeira, e em seguida foi levado ao hospital. Foram quatro horas e 15 minutos na cirurgia de emergência. Os médicos disseram à família que a perda de sangue foi tamanha que ele poderia ter morrido caso tivesse demorado um pouco mais para chegar ao hospital.

"Aqueles médicos salvaram minha vida", agradece Fagner. No entanto a recuperação não foi como o esperado, e o então garoto precisou de outra operação.

"Com o ar do tempo, meu braço esquerdo começou a atrofiar. Meu pai suspeitou que aquilo não era normal e me levou na AACD. Na cirurgia de emergência, alguns ligamentos tinham ficado grudados na pele, por isso eu teria que ser operado de novo. Meu pai vendeu o carro, pagou todos os exames, a operação e, graças a Deus, eu pude ter uma vida normal", completa o lateral direito.

Ele revela que até hoje tem "um pequeno déficit de coordenação": o braço esquerdo não é tão firme quando o direito. "O lado é mais fraco, não consigo nem fechar minha mão e, na musculação, preciso de um aparelho especial para conseguir fazer os exercícios", diz Fagner, que esclarece que as adaptações não atrapalham na rotina de atleta.

No Corinthians desde 2014, Fagner é um pilar defensivo do time de Vítor Pereira. Ele já tem 467 partidas pelo clube e está a poucos jogos de entrar no Top 10 de jogadores que mais atuaram na história do clube. O próximo jogo deve ser neste domingo (4), na Neo Química Arena, quando o Alvinegro encara o Internacional pelo Brasileirão.

Corinthians