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

Esse conteúdo é antigo

Moraes parabeniza PF e se solidariza com agentes "covardemente feridos"

4.ago.2022 - O ministro Alexandre de Moraes, do STF, durante sessão plenária - Nelson Jr./SCO/STF
4.ago.2022 - O ministro Alexandre de Moraes, do STF, durante sessão plenária Imagem: Nelson Jr./SCO/STF

Do UOL, em São Paulo

23/10/2022 19h24

Após a rendição do ex-deputado federal Roberto Jefferson (PTB), o ministro do STF (Supremo Tribunal Federal) Alexandre de Moraes parabenizou o trabalho realizado pela PF (Polícia Federal) e prestou solidariedades a dois agentes feridos ao tentar cumprir o mandado de prisão.

Parabéns pelo competente e profissional trabalho da Polícia Federal, orgulho de todos nós brasileiros e brasileiras. Inissível qualquer agressão contra os policiais. Me solidarizo com a agente Karina Oliveira e com o delegado Marcelo Vilella que foram, covardemente, feridos. Mensagem de Alexandre de Moraes

Mais cedo, policiais que cumpriam o primeiro mandado de prisão na residência de Roberto Jefferson em Levy Gasparian, no Rio de Janeiro, a pedido do STF, foram recebidos a tiros. A operação ocorreu um dia após Jefferson xingar a ministra do STF e a comparar a "prostitutas", "arrombadas" e "vagabundas".

O ex-deputado, que é aliado do presidente Jair Bolsonaro (PL), gravou vídeos em que confirma ter reagido à prisão contra agentes da PF. Em um vídeo gravado dentro de sua casa, Jefferson disse que não iria se entregar aos agentes.

"Eu não vou me entregar. Eu não vou me entregar porque acho um absurdo. Chega, me cansei de ser vítima de arbítrio, de abuso. Infelizmente, eu vou enfrentá-los", disse ele, instantes depois do ataque. "Eles atiraram em mim, eu atirei neles. Estou dentro de casa, mas eles estão me cercando. Vai piorar, vai piorar muito. Mas eu não me entrego."

A PF informou que agentes foram à casa de Jefferson para cumprir a ordem de prisão e o alvo reagiu à abordagem, quando os agentes se preparavam para entrar na residência. Dois policiais, sendo uma mulher, foram atingidos por estilhaços, mas am bem.

Padre Kelmon negociou rendição de Jefferson

O Padre Kelmon (PTB), candidato à Presidência da República derrotado, chegou na tarde de hoje à residência de Jefferson, em Levy Gasparian (RJ), para negociar a rendição do aliado político. Ele chegou ao local acompanhado de outras pessoas não identificadas, sendo ovacionado por um grupo de apoiadores.

Kelmon só se tornou candidato na eleição presidencial após Jefferson ter a sua candidatura barrada, por unanimidade, pelo TSE (Tribunal Superior Eleitoral). O motivo da impugnação foi a inelegibilidade do ex-deputado até dezembro de 2023, uma vez que foi condenado pelo STF por corrupção iva e lavagem de dinheiro em 2013, no caso do mensalão.

Em um vídeo que circula pelas redes sociais, Kelmon aparece negociando com o Bope (Batalhão de Operações Policiais Especiais) e entregando duas supostas armas que seriam de Jefferson à polícia. (Veja o vídeo abaixo)