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

Campanha de Ciro cobra no TSE explicações de Bolsonaro por voos da FAB

7.set.2022 | Jair Bolsonaro saúda apoiadores no Monumento dos Pracinhas, em Copacabana - Folhapress
7.set.2022 | Jair Bolsonaro saúda apoiadores no Monumento dos Pracinhas, em Copacabana Imagem: Folhapress

Do UOL,em Brasília

18/09/2022 18h48Atualizada em 18/09/2022 18h48

A campanha do ex-ministro Ciro Gomes, candidato do PDT à Presidência, pediu ao TSE (Tribunal Superior Eleitoral) que mande o presidente Jair Bolsonaro (PL) explicar o uso de voos da FAB durante sua campanha à reeleição. O pededista alega que não está ocorrendo transparência na divulgação dos trajetos e seus custos.

A legislação eleitoral permite ao presidente da República utilizar voos da FAB durante a campanha eleitoral, desde que haja um ressarcimento das despesas da viagem pelo partido e/ou coligação.

Na representação assinada pelos advogados Walber Agra e Ezikelly Barros, a campanha de Ciro Gomes afirma que a FAB não estaria dando publicidade a todos os voos feitos por Bolsonaro no período de agosto e setembro, que engloba a campanha oficial do presidente à reeleição.

Por isso, o partido pede ao TSE que obrigue Bolsonaro a informar:

  • Quais aviões da FAB estão sendo utilizados na campanha eleitoral;
  • Quais os trajetos realizados pelas aeronaves
  • A lista completa de pessoas da comitiva que viajaram junto de Bolsonaro nestes voos
  • A tarifa de mercado cobrada nos trechos correspondentes de cada trajeto
  • Em caso de uso de avião presidencial, qual o valor tomado como base para reembolso
  • Quantos voos foram realizados e os custos de cada viagem, além do custo total

"A absoluta ausência de informações relativas às viagens do Senhor Jair Bolsonaro, durante esse período de campanha eleitoral, realizadas com as aeronaves da FAB — sem que seja feita a devida identificação dos voos para a participação de atos oficiais e dos eventos de caráter eleitoral — dificultará o controle do devido ressarcimento das despesas com o uso do transporte oficial", afirma a ação.

O PDT questiona ainda a ausência publicidade na lista de pessoas que acompanham Bolsonaro nas viagens. Isso porque o partido afirma que a presença de candidatos a outros cargos eletivos, como deputado ou senador, pode ferir a lei eleitoral.

"Importante ressaltar que a eventual presença de outros candidatos nesses voos, cujo transporte oficial é permitido apenas ao Presidente da República candidato à reeleição e aos membros de sua comitiva que não estejam disputando mandato eletivo, configura, ainda, o crime eleitoral", afirma o partido.

A reportagem do UOL entrou em contato com a campanha do presidente Jair Bolsonaro e aguarda resposta. O espaço está aberto a manifestações.