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

Carlos Bolsonaro fez home office com hospedagem paga por Presidência

O vereador do Rio Carlos Bolsonaro (Republicanos) - Alan Santos/PR
O vereador do Rio Carlos Bolsonaro (Republicanos) Imagem: Alan Santos/PR

Do UOL, no Rio

25/01/2023 04h00

Carlos Bolsonaro aproveitou diárias de hotel pagas com cartão corporativo da Presidência da República para trabalhar em home office em Brasília durante a pandemia.

Foram ao todo 11 diárias em março de 2021 que custaram R$ 2.300 aos cofres públicos. Neste mesmo período, enquanto atuava de maneira remota na Câmara Municipal do Rio de Janeiro, o filho 02 de Jair Bolsonaro foi às redes sociais criticar o isolamento social contra o coronavírus.

Hospedagem com dinheiro público

Nota fiscal paga com cartão corporativo da Presidência da República mostra que Carlos se hospedou no Hotel Nobile Suítes Monumental, em Brasília, entre 12 e 22 de março de 2021.

Na nota fiscal, divulgada pela agência Fiquem Sabendo e publicada pelo jornal "O Estado de S.Paulo", o gasto é justificado como "hospedagem de segurança de familiar do presidente".

Carlos Bolsonaro não tinha cargo formal no governo, mas era figura frequente em reuniões e eventos do governo federal. Ele recebe atualmente salário líquido de R$ 14 mil na Câmara do Rio.

Além dos dados do cartão corporativo, Jair Bolsonaro colocou sob sigilo as visitas de Carlos ao Palácio do Planalto.

Ausência em metade das votações na Câmara

No mesmo dia em que usou as redes sociais para atacar o "fique em casa" —medida recomendada à época por autoridades em saúde pública—, o vereador participou de maneira remota de duas sessões da Câmara em 18 de março de 2021.

Na ocasião, outros colegas —sobretudo os mais jovens, como ele— participaram presencialmente dos trabalhos na Câmara, onde as sessões ocorriam de forma híbrida (presencial e remota).

Na sessão ordinária realizada naquela data, Carlos registrou presença, mas só participou de uma das duas votações realizadas. Na outra, não se manifestou.

Já em uma sessão extraordinária não houve votações nominais, de acordo com as atas divulgadas pelo Legislativo carioca.

Carlos também participou de maneira remota de outras três sessões realizadas durante seu período de hospedagem em Brasília.

Apenas em uma delas, em 16 de março, houve votações nominais e, de novo, Carlos só tomou parte de metade: votou favoravelmente a um projeto de lei, mas não tomou parte na segunda votação de matérias do dia.

Em dezembro daquele mesmo ano, Carlos registrou presença em sessão da Câmara Municipal, mas foi flagrado em Brasília acompanhando a gravação de um vídeo no gabinete de seu pai.

Câmara mudou regra para enquadrar Carlos

Ao longo do período em que as sessões ocorreram de maneira híbrida na Câmara do Rio, Carlos sempre optava por participar remotamente, com a câmera do dispositivo que utilizava fechada e sem participar dos debates.

Por pressão de vereadores do PSOL, a Mesa Diretora da Câmara publicou em 9 de março de 2022 uma resolução contra as práticas de Carlos.

Carlos Bolsonaro colocou poster na frente de câmera durante sessão da Câmara do Rio - Reprodução/ Rio TV Câmara - Reprodução/ Rio TV Câmara
Carlos Bolsonaro colocou poster na frente de câmera durante sessão da Câmara do Rio
Imagem: Reprodução/ Rio TV Câmara

A regra recomenda que os vereadores estejam sempre com a câmera em funcionamento e torna isso obrigatório caso façam qualquer intervenção oral nas sessões, como discursos, apartes e questões de ordem. Atualmente, as sessões extraordinárias e audiências públicas ainda têm regime híbrido.

Para ironizar a medida, Carlos participou da sessão de 23 de março com a câmera direcionada a um banner com sua foto. Assim que ele entrou na transmissão, uma pessoa, que não aparece nas imagens, pendurou o cartaz na parede.

O UOL não localizou o vereador Carlos Bolsonaro. O espaço segue aberto para eventual manifestação.