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

Puxador de votos, Carlos Bolsonaro se torna cacique no partido de Crivella

O vereador Carlos Bolsonaro tentará o sexto mandato na Câmara Municipal do Rio de Janeiro - Divulgação/Câmara Municipal do Rio de Janeiro
O vereador Carlos Bolsonaro tentará o sexto mandato na Câmara Municipal do Rio de Janeiro Imagem: Divulgação/Câmara Municipal do Rio de Janeiro

Gabriel Sabóia

Do UOL, no Rio

10/04/2020 04h00

Vereador mais votado da história no Rio de Janeiro, com 106.657 votos nas eleições de 2016, Carlos Bolsonaro tentará o seu sexto mandato na Câmara Municipal, nas eleições deste ano — pelo mesmo partido, o prefeito Marcelo Crivella tentará a reeleição. A ida do filho 02 de Jair Bolsonaro (sem partido) para o Republicanos indica o papel inédito de líder de bancada que ele pretende assumir na próxima legislatura.

Para isso, a legenda monta uma "tropa de choque" para concorrer às 51 cadeiras da Câmara: o partido, que até o mês ado contava com apenas três nomes no plenário, tem a meta de eleger ao menos dez vereadores puxados pelos votos de Carlos Bolsonaro e, dessa forma, compor uma base sólida de apoio a Crivella.

Para isso, além da chegada de Bolsonaro à aliança, o Republicanos conta com candidaturas de ex-secretários municipais e de lideranças comunitárias. A mãe de Carlos Bolsonaro, Rogéria Bolsonaro, também será candidata.

Na visão dos estrategistas da campanha de Crivella, a falta de uma base de apoio foi um dos pontos cruciais para o insucesso do prefeito em importantes votações. Além disso, ele sofreu um processo de impeachment, ou por várias Is e amargou índices de impopularidade ao longo do mandato. Por isso, em caso de reeleição do prefeito, caberia a Carlos o papel de liderar essa articulação entre os poderes Executivo e Legislativo.

No entanto, mesmo que Crivella não vença o pleito, o Republicanos pensa na oportunidade de construir uma bancada sólida de oposição a uma eventual eleição de Marcelo Freixo (PSOL) e de defesa dos valores cristãos. Em outro cenário projetado, com uma eventual eleição de Eduardo Paes (DEM), a ideia é dialogar e usar os votos do partido como barganha para conseguir cargos e indicações para postos estratégicos.

O plano de crescimento do partido, aliás, tem como inspiração o antigo PMDB, durante os dois mandatos de Paes: com maioria na Câmara, o partido deu ao então prefeito — que era da legenda — a base necessária para uma gestão minimamente tranquila quanto aos seus interesses.

Candidatos escolhidos a dedo

Desde o último mês, o partido de Crivella ou a contar com seis vereadores que pretendem disputar a reeleição: além de Carlos Bolsonaro (que estava no PSC), o partido ou a contar com Leandro Lyra (antes no Novo) e Zico (que era do PTB).

O partido já tinha em sua base Tânia Bastos, Inaldo Silva e João Mendes de Jesus — esses três ligados à igreja Universal do Reino de Deus, da qual Crivella é bispo licenciado.

Mas, para alcançar a meta de dez eleitos a reboque da votação de Carlos Bolsonaro, o Republicanos tem escolhido os seus candidatos de maneira estratégica. Pelo menos dois membros do secretariado de Crivella foram pinçados para concorrer às cadeiras do Palácio Pedro Ernestro: a ex-inspetora geral da Guarda Municipal, Tatiana Mendes, e a ex-secretária municipal de Educação Talma Suane.

Tatiana faria frente ao eleitorado do vereador Jones Moura (PSD), que possui forte influência na Guarda. Caso eleita, ela assumiria esse papel de porta-voz da Guarda na Casa Legislativa, derrubando a atuação que atualmente é feita por um político de outro partido.

Já Talma, que comandou a pasta da Educação, é vista como potencial "fisgadora" dos votos de Felipe Ramalho (MDB), que se candidatará com o apoio do professor Paulo Messina (MDB).

Uma eventual candidatura pelo Republicanos do ex-árbitro de futebol e coordenador de campanha de Crivella, Guttemberg de Paula Fonseca, também não está descartada.

Jair Bolsonaro pretende se manter neutro

Berço do bolsonarismo, o Rio de Janeiro tem se mostrado um suspiro para a popularidade do presidente da República. Sem poder lançar candidatos para concorrer pelo Aliança pelo Brasil (partido criado por ele, mas com registro ainda não aprovado pelo Tribunal Superior Eleitoral), Bolsonaro vê seu apoio ser disputado no Rio por Crivella e pelo deputado federal Otoni de Paula (PSC).

No entanto, ele segue firme na decisão de não manifestar apoio no primeiro turno e só pedir votos para um candidato, caso Freixo vá para o segundo. Apesar da sintonia com Crivella na política de combate ao novo coronavírus, o presidente segue firma na decisão de não fazer o aceno definitivo.

Já os filhos Carlos e Flávio Bolsonaro, senador também pelo Republicanos/RJ, pretendem pedir votos para o correligionário e, dessa forma, seguir a fórmula de sucesso vista em 2018, quando Wilson Witzel (PSC) se elegeu governador do estado.

Apesar de não contar com o apoio expresso do patriarca da família Bolsonaro, o ex-juiz federal saltou nas intenções de votos depois de participar de atividades de campanha ao lado de Flávio e se declarar politicamente alinhado aos ideais da família.