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

Marcel Rizzo

Clubes da Globo se movimentam e podem acionar Turner na Justiça

CBF divulga tabela da Série A do Brasileiro e maratona marca o primeiro mês - GettyImages
CBF divulga tabela da Série A do Brasileiro e maratona marca o primeiro mês Imagem: GettyImages

Colunista do UOL

23/07/2020 04h00

Com Gabriel Vaquer

Parte dos clubes que tem contrato exclusivo com o Grupo Globo para os direitos de transmissão do Campeonato Brasileiro se mobiliza para apoiar a emissora no que promete ser uma briga jurídica com a Turner e que tem como protagonista a Medida Provisória 984 assinada em junho pelo presidente Jair Bolsonaro (sem partido).

O movimento deve tomar forma maior até o fim de semana, mas já há manifestações, inclusive públicas, de alguns dirigentes a favor da Globo. O blog apurou que alguns clubes estudam até mesmo acionar judicialmente a empresa norte-americana caso transmita em TV fechada alguma de suas partidas sem ter contrato assinado.

A CBF divulgou nesta quarta-feira (22) a tabela detalhada até a décima rodada da Série A, que começa dia 8 de agosto (atraso de três meses por causa da pandemia do coronavírus). Na divisão dos jogos que serão transmitidos, a Turner enviou à entidade que pretende ar confrontos de times que têm sob contrato que atuarão como mandantes contra equipes que tem acordo com a Globo, baseado no texto da MP 984. A regra anterior não permitia isso.

Pela tabela divulgada, a Turner projeta exibir no canal a cabo TNT 13 partidas que tenha algum clube com contrato com a Globo, incluindo o clássico Santos x São Paulo e jogos de Vasco, Flamengo, Grêmio e Atlético-MG, todas equipes que têm acordo de exclusividade com a emissora concorrente para transmissão em TV fechada no SporTV.

A emissora carioca reagiu e avisou que acionará a Justiça para impedir isso, por entender que os contratos assinados têm que respeitar o que dizia a Lei Pelé antes da MP - que, inclusive, só tem validade até meados de outubro e caso não seja votada pela Câmara caduca e a regra anterior volta a valer.

Num movimento semelhante, e que num primeiro momento até parece contraditório já que a maioria dos participantes da Série A declarou apoio à Medida Provisória, clubes vão falar que têm contratos de exclusividade com a Globo e que a regra anterior à MP deve valer nesses casos.

"O Atlético Goianiense apoia a Medida Provisória 984/2020, que dá maior autonomia aos clubes para negociar os direitos de transmissão dos jogos. Porém, respeitamos também os vínculos assinados anteriormente e iremos cumpri-los com total rigor", escreveu no Twitter Adson Batista, presidente do Atlético-GO, um dos 12 times que têm contrato exclusivo com a Globo.

Lásaro Cândido, vice-presidente do Atlético-MG, foi até mais duro também em rede social: disse que o clube mineiro não pode aceitar que sua imagem seja explorada por uma emissora que não pagou pelos direitos em um contrato celebrado antes da MP.

Essas duas posições são fortes porque são dois clubes que declararam apoio à MP. Há algumas semanas, 16 participantes da Série A am documento apoiando o texto da Medida Provisória. Somente Grêmio, São Paulo, Botafogo e Fluminense, todos exclusivos da Globo, não firmaram o documento e também estarão no movimento pró-Globo contra a Turner.

O blog apurou que a Globo pretende agradecer aos clubes que manifestaram apoio a sua demanda e que não cogita rescindir o contrato do Brasileiro, como fez no Campeonato Carioca depois de o Flamengo, com quem não tinha acordo, transmitir partidas após o retorno do torneio, em junho. O clube da Gávea, por sinal, principal articulador da MP não deve participar do movimento pró-Globo apesar de ter contrato exclusivo com a emissora para o Brasileiro.