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

Internacional

Verdade ou mito? Medina diz que "mandamentos" são "lenda urbana"

Alexander Medina (de branco) é apresentado como técnico do Internacional - Ricardo Duarte/Inter
Alexander Medina (de branco) é apresentado como técnico do Internacional Imagem: Ricardo Duarte/Inter

Marinho Saldanha

Do UOL, em Porto Alegre

07/01/2022 12h43

Tão logo Alexander Medina foi contratado como técnico do Inter, tomou a internet uma lista de "mandamentos" atribuídos a ele. O nome da relação de condutas ficou famoso: "Os Mandamentos de Medina em Clássicos". No entanto, a história é melhor do que o fato. Em entrevista coletiva, o treinador disse que isso não a de uma "lenda urbana".

Entre as ordens atribuídas a ele estão: "Não cumprimentar jogadores do rival, exceto o capitão", "Não levantar jogadores do rival do gramado, exceto por uma pancada muito forte", "Ganhar todas as divididas", "A primeira pancada é nossa", "Ter sempre mais jogadores nossos em caso de tumulto", entre outras.

"Mandamentos de Medina em Clássicos" são atribuídos a técnico do Inter - Reprodução - Reprodução
Imagem: Reprodução

Muitos torcedores gostariam que tudo isso fosse verdade, mas não é, segundo Medina.

"Há muitas lendas urbanas que me atribuem e não são reais. Neste caso, me atribuem os mandamentos. Não é assim, eu não escrevi. Sem dúvida que, depois de ler, há algumas situações que refletem nossa forma de sentir os jogos. Mas quero dizer que está longe do que fazemos, não tenho nada a ver com o que está escrito", falou o treinador em sua apresentação.

No entanto, o uruguaio reconheceu a importância dos jogos contra o Grêmio para trajetória de qualquer profissional no Inter. Quando questionado sobre o Gre-Nal, explicou o que pensa da partida.

"Sem dúvida, que sabemos da importância que tem o clássico. Sabemos da história que tem esta classe de partida, e sabemos, porque a torcida nos faz saber, que é um jogo muito importante para o clube. Temos isso bem presente. A partir daí, temos que, obviamente, nos conscientizar e focar nossos jogadores para estar mais perto de ganhar a partida. É muito importante para nós, jogadores, torcida... Aqui temos muita paixão neste tipo de jogo. Obviamente, tem que ser assim, com paixão, coração, cabeça e futebol. Para vencer, temos que jogar melhor, e sem dúvida temos muito presente este jogo", finalizou.

Internacional