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

Bolsonaro assina MP que livra agentes públicos de erros no combate à covid

20.mar.2020 - De máscara, presidente Jair Bolsonaro (sem partido) participa de videoconferência com empresários - Isac Nóbrega/PR
20.mar.2020 - De máscara, presidente Jair Bolsonaro (sem partido) participa de videoconferência com empresários Imagem: Isac Nóbrega/PR

Do UOL, em São Paulo

14/05/2020 02h23Atualizada em 14/05/2020 10h03

O presidente Jair Bolsonaro (sem partido) editou uma medida provisória que dispõe sobre a responsabilização de agentes públicos por ação e omissão em atos relacionados com a pandemia do novo coronavírus. O texto foi publicado no Diário Oficial da União de hoje.

Por se tratar de uma MP, o texto já está em vigor, mas precisa ser apreciado pela Câmara e pelo Senado posteriormente para não perder a validade.

Segundo a MP 966, os agentes públicos só poderão ser responsabilizados nas esferas civil e istrativa se agirem ou se omitirem com dolo ou erro grosseiro pela prática de atos relacionados, direta ou indiretamente, com as medidas de:

  • enfrentamento da emergência de saúde pública decorrente da pandemia da covid-19; e
  • combate aos efeitos econômicos e sociais decorrentes da pandemia da covid-19

O primeiro parágrafo da MP informa que "a responsabilização pela opinião técnica não se estenderá de forma automática ao decisor que a houver adotado como fundamento de decidir e somente se configurará:

  • se estiverem presentes elementos suficientes para o decisor aferir o dolo ou o erro grosseiro da opinião técnica; ou
  • se houver conluio entre os agentes

Segundo a MP considera-se erro grosseiro "o erro manifesto, evidente e inescusável praticado com culpa grave, caracterizado por ação ou omissão com elevado grau de negligência, imprudência ou imperícia".

Há, no entanto, a ressalva de que serão considerados na análise da ocorrência do erro fatores como:

  • os obstáculos e as dificuldades reais do agente público;
  • a complexidade da matéria e das atribuições exercidas pelo agente público;
  • a circunstância de incompletude de informações na situação de urgência ou emergência;
  • as circunstâncias práticas que houverem imposto, limitado ou condicionado a ação ou a omissão do agente público; e
  • o contexto de incerteza acerca das medidas mais adequadas para enfrentamento da pandemia da covid-19 e das suas consequências, inclusive as econômicas.

Além de Bolsonaro, o ministro da Economia, Paulo Guedes, e o ministro da (CGU) Controladoria-Geral da União, Wagner de Campos Rosário assinam a medida provisória.

Presidente não responde sobre o tema

Questionado sobre o assunto em entrevista coletiva concedida nesta manhã na portaria do Palácio da Alvorada, Bolsonaro não respondeu.

"Vou ver isso quando chegar lá agora", disse.

Ao ser informado pelos jornalistas de que o texto já havia sido publicado no Diário Oficial da União, o presidente desconversou: "Mais alguma pergunta aí, pessoal?"