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

Caso Neymar: Najila é denunciada pelo Ministério Público de SP

Neymar e Najila marcaram um encontro em Paris e, depois disto, a modelo acusou o jogador de estupro - Reuters - Reprodução / Montagem UOL
Neymar e Najila marcaram um encontro em Paris e, depois disto, a modelo acusou o jogador de estupro Imagem: Reuters - Reprodução / Montagem UOL

do UOL, em São Paulo

18/09/2019 08h13

Najila Trindade, que se envolveu em polêmica após acusar Neymar de estupro, entrou na mira do Ministério Público do Estado de São Paulo. A modelo foi denunciada pelos crimes de denunciação caluniosa e extorsão.

A decisão do MP, segundo a jornalista Monica Bergamo, veio após a conclusão de dois inquéritos que estavam na alçada do 11° DP (Santo Amaro) e são desdobramentos do caso já apurado e encerrado na 6ª Delegacia de Defesa da Mulher. Caso a Justiça receba a denúncia, Najila vai ar a ser ré.

O advogado da loira disse à jornalista que só poderia comentar o fato após ler uma cópia da denúncia, mas ressaltou: "Para nós será bom para estarmos perto de um juiz. Têm muitas coisas para esclarecer que vocês vão saber na hora certa".

Na semana ada, ela foi indiciada pela Polícia Civil de São Paulo. Além de Najila, Estivens Alves, ex-marido da modelo, também foi indiciado. No caso dele, os crimes seriam fraude processual e por divulgar material com conteúdo erótico da loira.

O caso de estupro envolvendo o atacante Neymar foi arquivado em 8 de agosto, pela juíza Ana Paula Gomes Galvão Vieira de Moraes, da Vara da Região Sul 2 de Violência Doméstica Familiar. Ela acatou um pedido do Ministério Público de São Paulo.

Durante entrevista coletiva na época, a promotora Flávia Merlini afirmou que os laudos do Instituto Médico Legal (IML) não constataram nenhum sinal de violência em Najila. O único presente seria uma lesão no dedo, ocorrida no dia seguinte ao suposto estupro, quando a modelo brigou com Neymar no quarto do hotel.