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

Esse conteúdo é antigo

'Acredito na Justiça', diz Doria após ter R$ 29 mi em bens desbloqueados

Defesa do governador paulista alegou motivações eleitorais na retomada do processo - DEYVID EDSON/FUTURA PRESS/FUTURA PRESS/ESTADÃO CONTEÚDO
Defesa do governador paulista alegou motivações eleitorais na retomada do processo Imagem: DEYVID EDSON/FUTURA PRESS/FUTURA PRESS/ESTADÃO CONTEÚDO

Allan Brito, Felipe Pereira e Rafael Bragança

Do UOL, em São Paulo, e Colaboração para o UOL, em São Paulo*

26/10/2020 14h11Atualizada em 27/10/2020 12h29

O governador de São Paulo João Doria (PSDB) se manifestou hoje sobre o desbloqueio de R$ 29 milhões em bens seus, determinado pela manhã no TJ-SP (Tribunal de Justiça de São Paulo). Doria fez um breve comentário durante entrevista coletiva no Palácio dos Bandeirantes, em São Paulo, realizada por conta da pandemia do novo coronavírus, e se limitou a dizer que confia na Justiça.

"Acredito na Justiça como sempre acreditei, e sempre confiei", afirmou o governador, que é acusado por improbidade istrativa enquanto era prefeito da capital paulista.

O MP-SP (Ministério Público de São Paulo) aponta irregularidades na forma como Doria usou R$ 29 milhões do programa "Asfalto Novo", que foi realizado entre o final de 2017 e os primeiros meses de 2018. Oficialmente, a verba foi usada para fazer propagada da ação, mas os promotores alegam que o governador fez propaganda de si mesmo com recursos públicos.

A defesa de Doria também divulgou uma nota hoje na qual diz acreditar na Justiça, mas aproveitou para acrescentar uma possível motivação eleitoral na determinação de bloqueio de bens, ocorrida na última terça-feira (20).

"A defesa de João Doria acredita na Justiça e lamenta que a citada ação civil pública, que encontrava-se sem movimento desde julho de 2019, tenha sido retomada agora, curiosamente às vésperas das eleições municipais, e seja utilizada como arma para ataques infundados contra Doria", afirma a nota.

Nas eleições municipais, Doria apoia o atual prefeito Bruno Covas (PSDB) à reeleição na capital. Covas era vice do atual governador na eleição de 2016 e assumiu a Prefeitura de São Paulo quando Doria foi eleito para comandar a istração estadual.

*Com informações da Reuters