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

Bolsonaro renova concessão da Globo por mais 15 anos

Jair Bolsonaro renova concessão da Globo e outras emissoras - Reprodução/TV Brasil
Jair Bolsonaro renova concessão da Globo e outras emissoras Imagem: Reprodução/TV Brasil

Colaboração para Splash, de São Paulo*

20/12/2022 19h41Atualizada em 21/12/2022 13h17

Enquanto Jair Bolsonaro renovou a concessão do SBT do Rio de Janeiro no dia 12 de dezembro, no aniversário de Silvio Santos, apenas ontem ele renovou a concessão da Globo por 15 anos. A notícia foi publicada hoje no Diário Oficial da União.

O decreto é assinado pelo presidente da República e pelo ex-ministro das Comunicações, Fábio Faria, que teve a exoneração publicada na mesma edição do Diário Oficial. No texto, Bolsonaro renova as concessões da Globo em São Paulo, Rio, Distrito Federal, Minas Gerais e Pernambuco; da rádio e da TV Bandeirantes em Minas Gerais, e da rádio e da TV Record em São Paulo.

No Jornal Nacional da noite de ontem, ao anunciar a renovação, a Rede Globo quebrou o protocolo ao noticiar sobre outras emissoras . "Foram renovadas também as concessões da TV Bandeirantes, em Minas Gerais, e da Record, em São Paulo. De acordo com o artigo 223, da Constituição, os processos serão agora enviados por mensagem presidencial ao Congresso Nacional para análise e deliberação", disse a jornalista Ana Paula Araújo.

"Segundo a secretaria, o processo de renovação seguiu os ritos previstos no decreto que regulamenta os serviços de radiodifusão, que contém uma série de requisitos que devem ser cumpridos pelos interessados", esclareceu a jornalista.

Ao longo do governo, Jair Bolsonaro ameaçou em diversas ocasiões não renovar a concessão da TV Globo. Ele também insinuou que poderia impor critérios rígidos para autorizar a continuidade da operação da emissora. Um dos chavões utilizados pelo presidente para se referir ao grupo de comunicação foi "a mamata vai acabar".

"Vocês têm que estar arrumadinhos para 2022, hein, eu estou dando o aviso antes!", disse ele em 2019, depois da veiculação de uma reportagem sobre a morte da vereadora Marielle Franco, a partir do depoimento do porteiro do condomínio Vivendas da Barra, no Rio, onde Bolsonaro tem casa.

A última renovação da concessão das emissoras havia sido em 2008, ainda durante o governo Lula. A lei brasileira exige que as concessões públicas de radiodifusão sejam renovadas a cada 15 anos.

* Com Estadão Conteúdo