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

Associação de servidores do Inep pede 'atuação urgente' do MEC

Ministro da Educação, Milton Ribeiro, teria relação próxima com presidente do Inep, Danilo Dupas, segundo fontes ouvidas pelo UOL - Luis Fortes/MEC
Ministro da Educação, Milton Ribeiro, teria relação próxima com presidente do Inep, Danilo Dupas, segundo fontes ouvidas pelo UOL Imagem: Luis Fortes/MEC

Ana Paula Bimbati

Do UOL, em São Paulo

08/11/2021 16h04

Após o pedido de demissão em massa de mais de 33 servidores do Inep (Instituto Nacional de Estudos e Pesquisas Educacionais Anísio Teixeira), a Assinep, associação dos servidores do órgão, pediu uma "atuação urgente" do governo federal e do MEC (Ministério da Educação).

Fontes ouvidas pela reportagem afirmaram que o que ainda segura Danilo Dupas, presidente no Inep, no cargo é sua relação pessoal com o ministro da Educação, Milton Ribeiro. No começo da noite, o MEC divulgou nota em que afirma que o Enem "não será afetado" pelas mudanças (leia mais abaixo).

O Inep é um órgão ligado ao MEC responsável por estudos e avaliações educacionais, como o Enem. A prova, considerada a principal porta de entrada ao ensino superior, será aplicada no fim de novembro.

"A Assinep lamenta profundamente que a postura da alta gestão do Inep tenha levado a situação da autarquia a esse ponto dramático", diz nota enviada à imprensa. O UOL entrou em contato com o MEC e o governo federal, mas não obteve resposta.

A associação afirmou que os servidores "seguem trabalhando para produzir as evidências necessárias" para políticas públicas educacionais. "Mas ressaltamos que todas as ações institucionais da autarquia precisam de direcionamento técnico de gestores devidamente capacitados nas temáticas", completou.

Na semana ada, a associação já havia feito denúncias de assédio moral e reclamado da má gestão do presidente Danilo Dupas. Dias antes, dois coordenadores de áreas ligadas ao Enem pediram demissão.

Eduardo Carvalho Sousa, coordenador de Exames para Certificação, protocolou seu pedido de demissão no dia 1º, e Hélio Júnio Rocha Morais, coordenador da Logística de Aplicação, oficializou a decisão no dia 5.

Qual será o impacto no Enem?

O Enem acontece em 21 e 28 de novembro e a prova já está pronta, por isso as datas não devem ser alteradas. Mas as mudanças no organograma em funções estratégicas podem atrapalhar os processos que acontecem após aplicação do exame, como a correção e a divulgação das notas.

Parte dos servidores que se demitiram serviam como uma espécie de "radar", monitorando possíveis problemas e apontando soluções no dia do exame. Na edição de 2020, houve alguns incidentes que precisaram ser contornados, como salas superlotadas, o que impediu diversos alunos de fazerem o Enem.

No início da noite desta segunda, o MEC divulgou nota afirmando que o cronograma está mantido e que "não será afetado" pelos pedidos de exoneração.

"Cabe esclarecer que os servidores colocaram à disposição os cargos em comissão ou funções comissionadas das quais são titulares, mas que continuam à disposição para exercer as atribuições dos cargos até o momento da publicação do ato no Diário Oficial da União", diz o texto.

O ministro Milton Ribeiro replicou a nota no Twitter. Ele não fez mais comentários sobre a crise no Inep.