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

Paralisação deve atingir 75 instituições federais; MEC não descarta novos cortes

Lígia Formenti e Isabela Palhares

Brasília e São Paulo

15/05/2019 08h58

Pelo menos 75 das 102 universidades e institutos federais do País convocaram protestos para esta quarta-feira (15) em resposta ao bloqueio de 30% dos orçamentos determinado pelo Ministério da Educação (MEC). Eles terão apoio de universidades públicas estaduais de diversos Estados - incluindo São Paulo, onde os reitores de USP, Unicamp e Unesp convocaram docentes e alunos para "debater" os rumos da área.

Um dos alvos do protesto, o ministro da Educação, Abraham Weintraub, disse na terça que as universidades precisam deixar de ser tratadas como "torres de marfim" e não descartou novos contingenciamentos.

Cientistas e pesquisadores de diversas instituições e estudantes de faculdades privadas também vão aos protestos convocados. É o caso, por exemplo, de PUC-SP e Mackenzie.

Além da comunidade do ensino superior, a rede básica também aderiu à paralisação. Pelo menos 33 dos principais colégios particulares de São Paulo vão integrar o movimento, apesar da federação nacional das escolas sugerir corte de ponto de funcionários faltosos. A Apeoesp, sindicato dos professores da rede estadual pública de São Paulo, o maior da América Latina, convocou os professores a paralisarem - o mesmo foi feito pelos sindicatos da rede paulistana.

Atos em todos os Estados vêm sendo chamados pelas maiores entidades estudantis e sindicais do País, incluindo a União Nacional dos Estudantes (UNE) e a Confederação Nacional dos Trabalhadores em Educação (CNTE). Em Brasília, o prédio do MEC já amanheceu nesta terça-feira cercado por homens da Força Nacional de Segurança Pública. O secretário executivo da pasta, Antoni Paulo Vogel, afirmou que a proteção foi pedida pelo governo federal.

"Temos de estar preparados para evitar qualquer tipo de problema. Simples assim."

Autonomia e custos

O ministro Weintraub afirmou na terça ser favorável até à entrada da polícia nas universidades. "Autonomia universitária não é soberania", disse, durante café da manhã com jornalistas. Ele argumentou que, no ado, a regra pode ter feito sentido, "mas atualmente é dispensável".

Ele destacou ainda que a autonomia das instituições deve se dar também na área financeira, com a criação de mecanismos que permitam a busca de recursos e patrocínios.

"Hoje elas não podem... Não estou falando em cobrar, sou contra cobrar dos alunos de graduação." Mas, emendou, "o ideal seria a criação de mecanismos para que empresas se tornem patronas de instituições, possam construir prédios, colocar nomes nas novas instalações", disse. "Essas torres de marfim que a gente criou impedem que renda possa ser gerada para ser usada na pesquisa."

O ministro se esquivou de fazer comentários sobre a greve, mas condicionou a liberação dos recursos bloqueados à aprovação da reforma da Previdência e não descartou novos cortes. Weintraub procurou ainda reduzir a importância do bloqueio sofrido pela pasta que lidera, citando outros ministérios que tiveram contingenciamentos maiores, como a Defesa.

O ministro disse ter recebido 50 reitores desde que assumiu e, de acordo com os relatos, a conta das universidades está em dia e "a vida segue normal". Ele reiterou que o bloqueio só deve ser sentido no segundo semestre. "Se tiver algum problema, vou até o Ministério da Economia, para abrir exceção."

À tarde, em entrevista à Rádio Jovem Pan, Weintraub voltou a negar o contingenciamento de 30% - anunciado pelo próprio MEC. "Mostrem os números. Parem de mentir. Estamos contingenciando 3,5%."

Pela manhã, ele havia sido dramático ao falar sobre seu curto período à frente do Ministério da Educação. Transcorridos menos de dois meses da sua posse, ele se queixa de perseguição. "Estou sendo caçado com taco de beisebol e machadinha. O inimigo número 1 de tudo", disse. "Estou sendo moído."

Justiça

A juíza Renata Almeida de Moura Isaac, titular da 7.ª Vara Cível de Salvador, solicitou que a União justifique, em até cinco dias, cada um dos bloqueios orçamentários que impôs às instituições de ensino superior no País. O pedido é consequência da ação popular impetrada pelo deputado federal Jorge Solla (PT-BA), no dia 30 de abril, que pediu a "anulação imediata" dos cortes, sob alegação de que o ministro Abraham Weintraub (Educação) atribuiu publicamente a decisão à uma reprimenda às instituições que "promoviam balbúrdia". As informações são do jornal O Estado de S. Paulo.