;(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
Logo Pagbenk Seu dinheiro rende mais
Topo

Caixa diz que bloqueou 'centenas de milhares' de contas de auxílio e FGTS

Filipe Andretta

Do UOL, em São Paulo

21/07/2020 15h32

O presidente da Caixa, Pedro Guimarães, disse hoje que "centenas de milhares" de poupanças digitais no aplicativo Caixa Tem foram suspensas por suspeita de fraude. As poupanças são usadas pelo banco para depositar o auxílio de R$ 600 e o FGTS emergencial. Quem teve a conta bloqueada, portanto, não consegue ar esse dinheiro.

Guimarães afirmou que os prejudicados terão que comparecer a uma agência da Caixa e apresentar documento de identificação para provarem que realmente são os titulares da poupança digital. O desbloqueio aconteceria em poucos minutos.

Conforme mostrado ontem pelo UOL, trabalhadores que fizeram uma atualização do aplicativo Caixa Tem, que permite o o às poupanças, relataram ter recebido o aviso para procurar uma agência da Caixa.

Em entrevista ao site InfoMoney, Guimarães declarou que hackers usaram os aplicativos do banco para tentar receber indevidamente o auxílio emergencial em nome de outras pessoas, sobretudo no começo de maio.

Centenas de milhares de contas foram suspensas. Nós temos as provas, a grande maioria foi usada por hackers. Mas algumas pessoas são honestas e foram penalizadas porque nós, para salvar e defender o dinheiro público, fizemos uma medida um pouco mais forte.
Pedro Guimarães, presidente da Caixa

O presidente da Caixa afirmou que a principal origem do problema foi a possibilidade de usar um celular para fazer mais de um cadastro. "Muitas pessoas não tinham celular, então permitimos que um celular abrisse mais de uma conta. Aí é o cerne da fraude."

Segundo Guimarães, as investigações sobre a fraude estão a cargo da Polícia Federal, e os hackers serão responsabilizados.

Caixa Tem é alvo de reclamações há semanas

A Caixa tem feito pagamentos do auxílio emergencial de R$ 600, do FGTS emergencial e do BEm (Benefício Emergencial de Preservação do Emprego e Renda) em poupanças sociais digitais. Essas contas precisam ser movimentadas pelo aplicativo Caixa Tem.

No entanto, usuários reclamam de problemas para ar o aplicativo e conseguir movimentar o dinheiro há semanas.

As poupanças digitais deveriam ser abertas automaticamente. Porém, no caso do FGTS, o banco não abriu conta para algumas pessoas alegando divergências nos cadastros.