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

Alvo da PF, Otoni de Paula fez de polêmica trampolim para carreira política

Otoni de Paula (PSC-RJ) discursa em sessão na Câmara dos Deputados - Michel Jesus/Câmara dos Deputados
Otoni de Paula (PSC-RJ) discursa em sessão na Câmara dos Deputados Imagem: Michel Jesus/Câmara dos Deputados

Ruben Berta

Do UOL, no Rio

20/08/2021 15h53

Eleito em 2016 pela primeira vez como vereador na cidade do Rio de Janeiro com 7.801 votos —foi o 49º entre os 51 que conseguiram uma vaga na Casa—, o deputado federal Otoni de Paula (PSC), 44, tem feito da polêmica um trampolim para a carreira política. Ele foi hoje alvo de mandado de busca e apreensão juntamente com o cantor Sérgio Reis por determinação do STF (Supremo Tribunal Federal).

Na sua agem pela Câmara do Rio, o pastor da igreja Assembleia de Deus soltou frases como "o Carnaval se tornou um verdadeiro culto aos orixás com dinheiro público". Nas redes, publicou a pergunta "cantora ou garota de programa?", usando fotos de um show de Anitta. Resultado: em 2018, recebeu 120.498 votos, sendo o 7º mais votado do estado à Câmara dos Deputados.

Somente em sua página no Facebook, o parlamentar possui 536 mil seguidores. Apesar disso, já teve postagens bloqueadas, como em 2017, quando publicou um vídeo discursando no plenário da Câmara de Vereadores em que associava a exposição de arte Queermuseu à pedofilia.

Dança homofóbica

Otoni começou a ganhar mais projeção em julho de 2018. Durante uma sessão de votação do impeachment do então prefeito Marcelo Crivella (Republicanos), fez uma dança mexendo o pulso e os ombros para o então vereador David Miranda (PSOL). O gesto foi classificado como homofóbico.

Miranda havia chamado Otoni de "hipócrita" no meio de uma discussão em que o pastor tinha feito um gesto de "banana" para pessoas que estavam nas galerias pedindo o afastamento de Crivella. Nas redes, o então vereador ironizou e adotou a expressão "dancinha do Otoni".

Se nos últimos tempos concentrou os ataques no STF (Supremo Tribunal Federal), no início de sua trajetória política, seus principais alvos eram políticos do PSOL.

Também como vereador, Otoni de Paula foi o único a votar contra a proposta que deu à tribuna da Casa o nome de Marielle Franco, vereadora do PSOL assassinada em março de 2018. À época da votação, afirmou que "era temerário votar o projeto com as investigações ainda em aberto".

Na campanha eleitoral de 2020, o parlamentar esteve ao lado de Crivella quando o então prefeito gravou um vídeo afirmando que seu adversário Eduardo Paes colocaria na Secretaria de Educação um integrante do PSOL —partido que sempre fez oposição a Paes. Crivella então perguntou: "Nós vamos aceitar pedofilia na escola no ensino infantil?". A Justiça Eleitoral obrigou o então prefeito a conceder direito de resposta ao PSOL.

Em abril daquele ano, Otoni e outras dez pessoas, incluindo o deputado federal Daniel Silveira (PSL), foram alvo de uma ação civil do Ministério Público do Rio por anunciarem uma carreata contra medidas restritivas de circulação que auxiliassem na contenção de casos de covid-19.

Trocas de lado

Na sua curta trajetória política, Otoni também não se importou de mudar rapidamente de aliados políticos. Antes de apoiar Crivella na campanha de 2020, o parlamentar chegou a romper com o ex-prefeito e o acusou de ser um "péssimo ".

"A incompetência do prefeito Crivella é o que mata a sua gestão", disse em um vídeo, publicado em setembro de 2020, em que ainda afirmou que o ex-prefeito não era "um homem de palavra".

Em 2018, Otoni de Paula chegou a gravar vídeos rasgando elogios ao candidato ao governo do Rio e ex-juiz federal Wilson Witzel, seu colega no PSC.

Em 2019, após o rompimento de Witzel e da família Bolsonaro, o parlamentar ou a se posicionar como um dos principais adversários do então governador no estado, ainda no primeiro ano de gestão.

No ano ado, Witzel entrou com uma queixa-crime contra Otoni por calúnia, difamação e injúria, que não foi aceita pelo STF.

Atualmente, o deputado tem boa inserção no governo de Cláudio Castro (PL) e teria influência principalmente no Instituto Vital Brazil, laboratório estatal que chegou a fazer uma parceria com uma empresa privada para trazer uma vacina chinesa contra a covid, cujas negociações não evoluíram.

Apesar da boa relação com Castro, Otoni de Paula estaria nos bastidores sendo um dos articuladores de uma possível candidatura do vice-presidente Hamilton Mourão (PRTB) ao governo do Rio.