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

Notícias em primeira mão dos bastidores do futebol, informações exclusivas sobre o seu time, novidades do mercado da bola e o melhor do jornalismo esportivo em um só lugar. Só para s UOL!

CBF e Ambev processam patrocinador de Neymar por uso de marca da seleção

Neymar estrela campanha da Proibida, alvo de processo da CBF e da Ambev - Reprodução
Neymar estrela campanha da Proibida, alvo de processo da CBF e da Ambev
Imagem: Reprodução

Do UOL, em São Paulo

15/02/2018 04h00

A Confederação Brasileira de Futebol e a Ambev, sua patrocinadora, acionaram na Justiça a cerveja Proibida, parceira de Neymar, por uma campanha publicitária estrelada pelo jogador. Tanto a CBF quanto a Ambev alegam que a propaganda utiliza, de forma irregular, a imagem da seleção. As cinco estrelas referentes às conquistas da Copa do Mundo e as semelhanças com a marca Brahma, da Ambev, são citadas na ação. O caso ainda não foi julgado, mas uma liminar pedindo a suspensão das propagandas foi rejeitada.

Tanto Ambev quanto CBF fazem questão de dizer, no processo, que o pedido não tem a ver com Neymar. Procurada pela reportagem, a Ambev, a CBF e o estafe de Neymar disse que não irão se manifestar sobre a ação. A De Primeira tentou contato por todos os canais disponibilizados pela Proibida e não obteve resposta até a publicação da matéria. (Por Pedro Lopes)

SP briga para reaver R$ 260 mil em ações trabalhistas

O São Paulo acionou três empresas na Justiça para tentar recuperar R$ 260 mil gastos em ações trabalhistas. O clube contratou as empresas para terceirizar mão de obra de cozinheiros e funcionários do Morumbi e do CT da Barra Funda – os funcionários eram empregados das empresas.

Oito deles, entretanto, decidiram mover ações trabalhistas diretamente contra o São Paulo e obtiveram vitórias na Justiça do Trabalho. (Por Pedro Lopes)

SP: Lugano chefia delegação na Libertadores Sub-20

Contratado para ser superintendente de relações institucionais, Diego Lugano terá seu primeiro compromisso oficial como uma espécie de "embaixador" do São Paulo. O agora dirigente viajará nesta sexta-feira para acompanhar a delegação do time sub-20 na disputa da Copa Libertadores da América. O Tricolor enfrenta os argentinos do Talleres no mesmo dia, às 17h30 (de Brasília), e precisa de um empate para se classificar em primeiro para a semifinal. Nos eios e treinos na rua que a comissão técnica tem promovido em Montevidéu, os moradores locais sempre reconhecem o escudo do São Paulo e gritam o nome de Lugano. A ideia é que o ídolo também ajude o Tricolor a se relacionar com os cartolas da Conmebol durante o torneio. (Por Bruno Grossi)

SP: Luís Fabiano reencontra “anjo da guarda”

Além do fato de Luís Fabiano ter carinho pelo São Paulo, pesaram a indicação do médico Rene Abdalla e a confiança no Reffis para ele querer fazer no clube o processo de recuperação de cirurgia no joelho direito. No Tricolor, o jogador reencontrou o fisioterapeuta Ricardo Sasaki, que ficou conhecido como uma espécie de “anjo da guarda” do artilheiro. Os dois mantêm excelente relação. Em 2011, o funcionário são-paulino chegou até a viajar para Sevilha para acompanhar o atleta. No São Paulo, no mesmo ano, ele participou durante sete meses de outro trabalho para a recuperação de lesão no joelho direito do atacante. Como recompensa, Sasaki, que é também fisioterapeuta da seleção, ganhou até dedicatória de gol do ídolo. (Por José Eduardo Martins)

Corinthians e Vasco divergem sobre Giovanni Augusto

Selado no Conselho Técnico da CBF na última semana entre Andrés Sanchez e Alexandre Campello, o empréstimo de Giovanni Augusto, do Corinthians ao Vasco, tem uma divergência importante no discurso dos dois clubes. A diferença diz respeito ao pagamento dos salários de Giovanni, estimados em R$ 350 mil mensais e um dos maiores do elenco corintiano na temporada ada. Em entrevista à Espn Brasil, o diretor executivo vascaíno Paulo Pelaipe declarou que a maior parte seria paga pelo Corinthians. Em contato com a reportagem, o departamento de futebol corintiano negou a versão e disse que os vencimentos seriam divididos em 50% entre as partes. Para dar segurança a Giovanni Augusto, a direção do Corinthians também assegurou que, caso o Vasco não honrasse com algum pagamento, ele teria respaldo dos paulistas para receber os vencimentos. (Por Dassler Marques)

Renovação de Kardec na China não avança

Em sua última temporada de contrato com o Chongqing Lifan-CHN, Alan Kardec ainda não conseguiu estender o vínculo. De olho nessa possibilidade, o empresário Marcos Casseb recentemente viajou à Espanha, onde o clube fazia pré-temporada, para tratar de renovação. Não houve, porém, êxito nessa tentativa inicial. Há duas temporadas na China e bem adaptado ao país, Kardec prioriza a permanência no país e mira eventual transferência para uma equipe de ponta da Superliga Chinesa. Do outro lado do mundo, o Corinthians tem o jogador como um dos nomes bem cotados para substituir Jô, mas ainda não avançou em tratativas. (Por Dassler Marques)