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

Collor: Propor invasão de hospitais incentiva a desordem e o caos

"Invadir hospitais arrisca a saúde e a vida de pacientes, profissionais da saúde e dos próprios invasores", disse o ex-presidente da República - Kleyton Amorim/UOL
"Invadir hospitais arrisca a saúde e a vida de pacientes, profissionais da saúde e dos próprios invasores", disse o ex-presidente da República Imagem: Kleyton Amorim/UOL

Do UOL, em São Paulo

12/06/2020 11h14

O senador Fernando Collor de Mello (Pros-AL) criticou o presidente Jair Bolsonaro (sem partido) por incentivar a invasão de hospitais para checar a ocupação de leitos.

"Invadir hospitais arrisca a saúde e a vida de pacientes, profissionais da saúde e dos próprios invasores. É também grave violação dos direitos dos internados", disse o ex-presidente em uma publicação feita hoje em seu perfil no Twitter.

"Propor algo assim é incentivar a desordem e o caos. Há objetivos mais nobres e úteis para o governo se ocupar!", finalizou.

Durante uma live na noite de ontem, Bolsonaro incentivou que as pessoas entrassem com câmeras em hospitais de campanha dedicados ao combate ao novo coronavírus para checar a ocupação dos leitos.

"Muita gente tá fazendo isso, mas mais gente tem que fazer, para mostrar se os leitos estão ocupados ou não, se os gastos são compatíveis ou não. Isso nos ajuda", disse o presidente na transmissão.

Sem mencionar os riscos de contaminação nos hospitais de campanha, Bolsonaro pediu que os vídeos sejam enviados para ele através das redes sociais para que, em seguida, possa enviá-los para a Agência Brasileira de Inteligência (Abin) e para a Polícia Federal (PF) para posterior investigação.

O Brasil saltou de 10 mil para 40 mil mortes causadas pelo novo coronavírus em apenas 33 dias, segundo dados divulgados ontem do Ministério da Saúde.

Segundo dados divulgados ontem pelo Ministério da Saúde, o Brasil já registra 40.919 mortes oficiais decorrentes do novo coronavírus, número pouco menor ao que foi contabilizado pelo consórcio de veículos de imprensa do qual o UOL faz parte (41.058).

Em resposta à decisão do governo Jair Bolsonaro de restringir o o a dados sobre a pandemia de covid-19, os veículos de comunicação UOL, O Estado de S. Paulo, Folha de S.Paulo, O Globo, G1 e Extra formaram um consórcio para trabalhar de forma colaborativa para buscar as informações necessárias diretamente nas secretarias estaduais de Saúde das 27 unidades da Federação

O governo federal, por meio do Ministério da Saúde, deveria ser a fonte natural desses números, mas atitudes recentes de autoridades e do próprio presidente colocam em dúvida a disponibilidade dos dados e sua precisão.