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

PDT pede cassação da chapa de Bolsonaro por usar Planalto para pedir voto em live

Brasília

22/08/2022 17h05

O presidente Jair Bolsonaro teria cometido crime eleitoral ao pedir votos para 17 candidatos a vários cargos durante a sua tradicional "live" da última quinta-feira, dia 18, gravada dentro do Palácio do Planalto. Esta é a tese de uma ação judicial apresentada pelo PDT, partido do presidenciável Ciro Gomes, ao Tribunal Superior Eleitoral nesta segunda-feira, dia 22. A ação é assinada pelo presidente da sigla, Carlos Lupi.

Geralmente, as "lives" de Bolsonaro são gravadas na biblioteca do Palácio da Alvorada, a residência oficial do presidente da República, local que em tese poderia ser usado para fins particulares. Para os advogados do PDT, porém, Bolsonaro cometeu crime eleitoral ao utilizar um prédio público que é seu local de trabalho - o Palácio do Planalto - para fazer campanha eleitoral de terceiros. A prática é proibida pelo artigo 73 da Lei das Eleições, de 1997. Pelo texto, é proibido usar "em benefício de candidato, partido ou coligação (...) móveis ou imóveis pertencentes à istração direta ou indireta da União", diz um trecho.

No texto, a equipe jurídica do PDT pede a retirada imediata do vídeo da "live" do ar, e a retirada de Bolsonaro e de seu vice, o general Walter Braga Netto, da corrida eleitoral, pela prática do abuso do poder político.

Durante a "live", Bolsonaro chegou a dizer que voltaria a fazer campanha para novos candidatos na próxima transmissão ao vivo, marcada para esta semana. "Vamos lá para o horário eleitoral gratuito. Vai faltar gente, vamos reclamar, mas vamos deixar para semana que vem. Algumas candidaturas pelo Brasil que eu peço apoio", disse ele, antes de apresentar os candidatos.

No texto da ação, o PDT lembra ainda que a "live" contou com o apoio de um tradutor da Língua Brasileira de Sinais (Libras) bancado com recursos públicos. "As transmissões ao vivo ocorrem dentro das dependências privativas do Palácio do Planalto, com a utilização de todo o aparato e mobiliário do prédio público na consecução desse fim, bem como do intérprete de libras custeado pelo Erário", diz um trecho.

"A referida 'live', transmitida de dentro das dependências privativas do Palácio do Planalto, durou quase uma hora e foi publicada no canal do Youtube e do Facebook do ora demandado, que possui aproximadamente 3,8 milhões de seguidores. A referida 'live' conta com mais de 346 mil visualizações", diz o texto dos advogados do PDT.

Esta não é a primeira ação judicial eleitoral do PDT sobre a conduta de Jair Bolsonaro. Na semana ada, a equipe jurídica do partido acionou a campanha de Jair Bolsonaro por conta da reunião promovida pelo presidente com embaixadores no Palácio da Alvorada para repetir a tese, nunca comprovada, de que há fraude nas urnas eletrônicas.