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

Carolina Brígido

REPORTAGEM

Texto que relata acontecimentos, baseado em fatos e dados observados ou verificados diretamente pelo jornalista ou obtidos pelo o a fontes jornalísticas reconhecidas e confiáveis.

PT vai pedir inelegibilidade de Bolsonaro ao TSE por atos golpistas no DF

30.out.2022 - Jair Bolsonaro vota no Rio de Janeiro no segundo turno da eleição presidencial - Eduardo Anizelli/Folhapress
30.out.2022 - Jair Bolsonaro vota no Rio de Janeiro no segundo turno da eleição presidencial Imagem: Eduardo Anizelli/Folhapress

Colunista do UOL

11/01/2023 10h06Atualizada em 19/01/2023 17h33

O comando do PT decidiu pedir ao TSE (Tribunal Superior Eleitoral) a inelegibilidade do ex-presidente Jair Bolsonaro, com base nos atos terroristas ocorridos em Brasília no domingo (8). A defesa do partido vai incluir os fatos em ações que já tramitam na Corte contra Bolsonaro, para responsabilizá-lo diretamente.

"No cenário em que estamos, vale a pena apostar nessas ações para deixá-lo inelegível", disse em caráter reservado uma fonte do partido.

Existem 17 Aijes (Ações de Investigação Judicial Eleitoral) abertas contra Bolsonaro hoje no TSE. Elas tratam do uso eleitoreiro do mandato, de discursos antidemocráticos e do uso de informações falsas para atacar o sistema eleitoral brasileiro.

É um processo demorado, que não costuma ser concluído antes de um ano de tramitação. Fontes do TSE acreditam que, depois dos ataques de domingo, as Aijes contra Bolsonaro em a andar de forma mais célere, com chances de condenação.

Uma das ações foi aberta por conta de disparos em massa de mensagens de SMS em defesa de Bolsonaro, feitos em 23 e 24 de setembro por uma empresa paranaense, sem declaração oficial da despesa à Justiça Eleitoral.

As Aijes servem para investigar uso indevido, desvio ou abuso de poder econômico ou político, além do uso indevido dos meios de comunicação social em benefício de candidato. As ações podem ser ajuizadas por partidos políticos, coligações, candidatos ou pelo Ministério Público Eleitoral.

Em caso de punição, o candidato pode ficar inelegível por oito anos. Se tiver vencido a eleição, pode ter o registro cassado.

Segundo a legislação eleitoral, a relatoria da Aije é sempre do corregedor-geral eleitoral. O cargo é hoje exercido pelo ministro Benedito Gonçalves. A primeira fase é de depoimentos de testemunhas e produção de provas, que ainda não foi iniciada. A expectativa é que isso aconteça a partir de fevereiro, quando terminar o recesso do Judiciário.