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

MPE apura suposto uso eleitoral da PRF a favor de Bolsonaro

PRF abre apuração interna contra servidor que declarou voto em Lula. Pedido foi realizado na semana ada pelo setor de ações preventivas do órgão federal para apurar "possível desvio funcional" - Reprodução
PRF abre apuração interna contra servidor que declarou voto em Lula. Pedido foi realizado na semana ada pelo setor de ações preventivas do órgão federal para apurar "possível desvio funcional" Imagem: Reprodução

Weudson Ribeiro

Colaboração para o UOL, em Brasília

28/10/2022 16h19Atualizada em 28/10/2022 19h04

O MPE (Ministério Público Eleitoral) abriu apuração preliminar sobre o possível uso eleitoral da PRF (Polícia Rodoviária Federal) a favor da reeleição do presidente Jair Bolsonaro (PL).

A medida ocorre depois de a corporação instaurar processo contra um servidor que declarou voto no ex-presidente Luiz Inácio Lula da Silva (PT) por meio de suas redes sociais.

O diretor-geral do órgão é o inspetor Silvinei Vasques, que foi indicado ao cargo pelo senador Flávio Bolsonaro (PL) e tomou posse em abril de 2021, quando o ministro da Justiça e Segurança Pública, Anderson Torres, executava uma série de trocas no comando da corporação.

Ao UOL, a PRF disse apenas que, no período eleitoral, trabalha para combater os crimes eleitorais nas rodovias federais.

"Aguardamos a remessa das informações para imediata apuração no âmbito da comissão de ética, controle interno e corregedoria da corporação".

Ampliação da categoria

Parte da base eleitoral de Bolsonaro, a PRF, no início deste mês, autorizou a nomeação de até 625 novos policiais rodoviários federais concursados. A convocatória vem em período eleitoral, em que são proibidas nomeações. A justificativa é que as contratações se encaixam na exceção da Lei Eleitoral, que permite a ação em casos em que haja a necessidade de garantia de funcionamento de serviços públicos essenciais.

"O ministério ponderou que devido às demandas do período eleitoral e às demandas das viagens no período de feriados e férias do final de 2022 e início de 2023, além de outras questões, a não nomeação imediata de pessoal para a PRF comprometeria o funcionamento inadiável das atividades de segurança pública e segurança viária", afirmou a assessoria da Secretaria-Geral da Presidência da República.

Investigação também na Polícia Federal

No início deste mês, o ministro Alexandre de Moraes, do STF (Supremo Tribunal Federal), arquivou um pedido para abertura de inquérito sobre a atuação dos institutos de pesquisas eleitorais, enviado à PF (Polícia Federal) a pedido do ministro Anderson Torres.

A CGE (Corregedoria-Geral Eleitoral) e a PGE (Procuradoria-Geral Eleitoral) investigam possível prática de abuso de poder político, além do crime de abuso de autoridade pelo órgão.