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

Times assinam texto favorável à 'MP do Mandante'; São Paulo fica de fora

Clubes publicaram manifesto em suas redes sociais e sites - Reprodução/Twitter
Clubes publicaram manifesto em suas redes sociais e sites Imagem: Reprodução/Twitter

Do UOL, em São Paulo

16/07/2020 14h14Atualizada em 16/07/2020 16h13

Quase todos os times da Série A do Campeonato Brasileiro 2020 publicaram, na tarde de hoje, um comunicado se manifestando favoravelmente à medida provisória sobre direitos de transmissão, assinada no mês ado pelo presidente Jair Bolsonaro (sem partido) e encabeçada pelo Flamengo.

A iniciativa responsabiliza os clubes mandantes de cada partida sobre toda a exibição do evento, com "prerrogativa exclusiva de negociar, autorizar ou proibir a captação, fixação, a emissão ou transmissão, a retransmissão ou a reprodução dos direitos de imagem, por meio ou processo, do espetáculo desportivo".

Além do Flamengo, o manifesto é assinado por outros 15 clubes da Série A — só Botafogo, Fluminense, Grêmio e São Paulo não fazem parte.

Os clubes dão quatro motivos para concordarem com a medida, entre eles o fim dos "apagões" - ou seja, jogos sem transmissão devido a negociações individuais, fato recorrente no ano ado.

O manifesto ainda pede que a medida provisória vire lei para que a concorrência aumente e viabilize, consequentemente, a entrada de novos investidores.

Veja o texto publicado pelos clubes:

Por que os Clubes apoiam a MP 984 e a criação da Lei de Democratização das Transmissões de Futebol

1. Porque o torcedor é diretamente beneficiado. A MP acaba com os "apagões", isto é, os jogos sem nenhuma transmissão, que ocorriam quando um canal tem o direito de um time e outro canal tinha o direito do outro. A situação anterior impedia, por exemplo, que mais da metade dos jogos do Campeonato Brasileiro fossem exibidos na TV fechada. Com mais partidas sendo exibidas, teremos um futebol mais democrático, mais ível e mais barato.

2. Porque ela empodera os clubes a negociar seus direitos e incentiva a união entre as equipes. Esse formato prevalece nos principais mercados de futebol do mundo. O Brasil está pronto para esse o libertador, que certamente será o ponto de partida para outros aprimoramentos. Com a MP, quanto mais os clubes estiverem unidos, mais vão ganhar.

3. Porque a concorrência vai aumentar. O modelo que vigorava no Brasil gerou concentração do futebol nas mãos de poucos investidores. Consequentemente, não alcançou todo o seu potencial e ainda gerou distorções no seu modelo de distribuição. A MP viabiliza a entrada de novos investidores no mercado, sem afastar os atuais, aumentando a disputa. E isso é bom para os clubes e melhor ainda para o torcedor.

4. Porque devemos seguir o exemplo de quem fez e deu certo. A legislação anterior tinha mais de 50 anos e não refletia uma forma moderna de negociação dos direitos esportivos. A ampliação de investimentos gera aumento de receitas para os clubes, viabilizando a manutenção dos nossos craques por mais tempo no país, além do investimento em estrelas internacionais.

EM RESUMO

Os torcedores ganham com o fim dos apagões de jogos, com mais craques em campo e com um melhor espetáculo no Brasil. Os clubes ganham com mais liberdade e receitas. E o país ganha com os clubes mais sólidos financeiramente, maior geração de empregos e crescimento de impostos pagos aos governos.

Por todas estas razões, APOIAMOS a MP 984/2020 e pedimos a sua CONVERSÃO imediata em Lei!