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

O que é stalking? Prática comum na web agora é crime que prevê prisão

iStock
Imagem: iStock

Marcella Duarte

Colaboração para Tilt

01/04/2021 13h55

Stalkear, ou perseguir alguém no meio online ou físico, agora é crime, sob pena de até três anos de cadeia, em regime fechado. A lei contra "stalking" foi sancionada pelo presidente Jair Bolsonaro (sem partido) na quarta-feira (31) e publicada nesta quinta no Diário Oficial, após aprovação unânime do Senado no dia 9 de março.

O abrasileiramento do verbo inglês "to stalk" significa uma perseguição obsessiva, que interfere na liberdade, na privacidade e até na segurança da vítima. Até a sanção da lei, não havia nada na nossa legislação que definisse como crime especificamente o "stalking". Casos do tipo acabavam sendo enquadrados como crime de "perturbação da tranquilidade alheia".

Na internet, formas comuns de "ciberstalking" são deixar comentários em excesso por email, nos serviços de mensagens como WhatsApp e redes sociais da vítima, geralmente com teor obsessivo ou intimidatório.

Outras formas, segundo a ONG Safernet, são:

  • Divulgar na web as informações pessoais da pessoa, incluindo nome e endereço completo;
  • Invadir aparelhos eletrônicos para ar contas pessoais
  • Preencher a caixa de entrada dos emails com spam
  • Enviar vírus ou outros programas nocivos aos computadores de suas vítimas.

Apesar de o termo ter ficado famoso no âmbito digital, as novas regras valem também para meios físicos. Segundo o texto sancionado pelo presidente, é crime perseguir alguém repetidas vezes e por qualquer meio (digital e físico), ameaçando sua integridade física ou psicológica, restringindo a capacidade de locomoção dessa pessoa, invadindo ou perturbando de qualquer forma sua liberdade e privacidade.

Quem o fizer pode pegar de seis meses a dois anos de prisão em regime fechado, mais multa. Além disso, há três situações em que podem aumentar a punição em 50% se o crime for cometido:

  • Contra crianças, adolescentes ou idosos;
  • Contra mulheres por pura razão de seu gênero;
  • Por duas ou mais pessoas ou com emprego de arma.

Se houver outro tipo de violência associada, a pena de perseguição será somada à do ato violento.

Com a sua aprovação, o PL não criou uma nova lei, mas sim adicionou um novo artigo a o Código Penal brasileiro, instituindo o "crime de perseguição". Também revogou o artigo 65 da Lei de Contravenções Penais, que previa o crime de "perturbação da tranquilidade alheia", punível com prisão de 15 dias a dois meses e multa - no qual até agora eram enquadrados os casos de stalking.

Para proteger as mulheres

O novo texto sancionado por Bolsonaro foi aprovado pelo Senado Federal por unanimidade, com 74 votos favoráveis e nenhum contrário, em uma sessão dedicada a questões femininas, comemorativa ao Dia Internacional da Mulher.

O principal objetivo do projeto é proteger as mulheres, que costumam ser os principais alvos deste tipo de crime e de outras violências de gênero. O Brasil é o quinto país com maior número de feminicídios no mundo - 76% deles cometidos por alguém próximo da vítima.

Durante o isolamento social, muitas mulheres se viram trancadas dentro de suas próprias casas com seus agressores, seja de violências físicas ou psicológicas, como confiscar o celular ou vigiar as redes sociais. Muitas agressões mais graves têm seu gatilho no ambiente virtual.

Em tramitação desde 2019, um projeto de lei de autoria da senadora Leila Barros (PSB/DF) inicialmente previa punir os stalkers com detenção (regime aberto ou semiaberto) de seis meses a dois anos, podendo ser convertida em multa. As penas foram agravadas durante a tramitação pela Câmara dos Deputados.

A mudança na lei supre uma lacuna na nossa legislação penal, a exemplo do que já foi feito em diversos países, como França, Itália, Alemanha, Índia, Holanda, Canadá, Portugal e Reino Unido, onde há anos stalkear é crime.