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

Vaga de Deltan na Câmara fica com PL de Bolsonaro, que terá 100 deputados

Pastor Itamar Paim (PL) durante culto em Curitiba, em julho de 2022 - Reprodução/Facebook
Pastor Itamar Paim (PL) durante culto em Curitiba, em julho de 2022 Imagem: Reprodução/Facebook

Do UOL, em São Paulo e Brasília

17/05/2023 16h01Atualizada em 17/05/2023 17h26

O TRE-PR (Tribunal Regional Eleitoral no Paraná) confirmou que o pastor Itamar Paim (PL) ficará com a vaga de Deltan Dallagnol (Podemos) na Câmara dos Deputados.

O que aconteceu

Paim teve 47 mil votos e foi apenas o sexto mais votado entre os não eleitos no Paraná, mas se beneficiou do quociente eleitoral de seu partido. Leia a íntegra do íntegra do relatório de totalização de votos.

Podemos perdeu a vaga, mesmo com a decisão do TSE de manter os 345 mil votos recebidos por Dallagnol.

Segundo mais votado do partido, o suplente Luiz Carlos Hauly teve menos de 12 mil votos e não atingiu a cláusula de desempenho. Por essa razão, a vaga ficará com o PL.

A sigla do ex-presidente Jair Bolsonaro a a ter cem parlamentares na Câmara. É o partido com a maior bancada da Casa.

Deltan ainda espera que vaga vá para Hauly

A jornalistas o deputado cassado disse ainda ter esperança que, se o mandato for perdido, sua vaga seja preenchida por Hauly. Para Deltan, Hauly saberia "honrar" a sua cadeira na Câmara.
Hauly, porém, tem dito a interlocutores que já considerava difícil substituir Deltan em razão de não ter recebido votos suficientes para preencher o quociente eleitoral.
A equipe do ex-procurador já tomou ciência da decisão do TRE-PR e tem dito que o caso ficará com o diretório nacional do Podemos.

Herdeiro da vaga nunca teve cargo eletivo

Este será o primeiro cargo eletivo de Itamar Paim. Hoje com 47 anos, ele nunca havia disputado eleições até tentar uma vaga na Câmara em outubro ado.

Nascido em Paranaguá (PR), Paim vive em São José dos Pinhais (PR), na região metropolitana de Curitiba. Ele é membro da Igreja do Evangelho Quadrangular.