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

TSE lança canal para alerta de desinformações sobre eleições em plataformas

O TSE disponibilizou um canal para alerta de desinformações sobre as eleições de 2022 em plataformas - Christian Wiediger/Unsplash
O TSE disponibilizou um canal para alerta de desinformações sobre as eleições de 2022 em plataformas Imagem: Christian Wiediger/Unsplash

Colaboração para o UOL, em Maceió

21/06/2022 20h46

O TSE (Tribunal Superior Eleitoral) lançou o Sistema de Alerta de Desinformação Contra as Eleições, um canal que servirá como ferramenta para alertar sobre fake news que envolvam o pleito geral deste ano nas múltiplas plataformas disponíveis. A medida tem o intuito de coibir possíveis tentativas de burlar o processo eleitoral.

O canal, que pode ser ado no site do TSE, é indicado para denunciar violações dos termos de uso de plataformas digitais, sobretudo para veicular conteúdo inverídico, ou disparo de mensagens em massa sobre o processo eleitoral.

Conforme a Justiça Eleitoral, se enquadram nos pré-requisitos de desinformações que podem ser denunciadas as notícias equivocadas sobre a participação nas Eleições 2022, distorcendo dados relativos a horários, locais de votação e documentos exigidos.

A Justiça Eleitoral também ressalta que o uso de contas falsas com o uso da imagem do TSE para compartilhar fake news, ameaças aos locais de votação, informações não verificadas sobre fraude eleitoral, adulteração de votos, contagem de votos ou certificação dos resultados da eleição, bem como a veiculação de discurso de ódio e incitação a violência para atacar a integridade eleitoral e agentes públicos envolvidos no processo podem ser denunciados.

Já para denunciar possíveis infrações eleitorais, como propagandas ilícitas, devem ser feitas por meio do sistema Pardal.

Bolsonaro tem feito ataques sucessivos ao TSE

Desde o ano ado, o presidente Jair Bolsonaro (PL) tem feito intensas críticas ao TSE e aos ministros da Corte, especialmente Luís Roberto Barroso, Luiz Fux e Alexandre de Moraes, em busca de descredibilizar o processo eleitoral do país, sobretudo em relação às urnas eletrônicas. No entanto, até o momento o político não apresentou qualquer prova que corrobore suas acusações infundadas.

As investidas de Bolsonaro contra o processo eleitoral têm causado incômodo até dentro da campanha do mandatário, que buscará a reeleição. Conforme o UOL mostrou, aliados do presidente alertam que essa postura pode enfraquecer a candidatura.

Na semana ada, ao ser eleito novo presidente do TSE, Alexandre de Moraes, o principal alvo dos bolsonaristas, afirmou que a Justiça Eleitoral não vai tolerar a atuação de milícias.

"Nossas eleitoras e eleitores não merecem a proliferação de discurso de ódio, de notícias fraudulentas e da criminosa tentativa de cooptação, por coação e medo, de seus votos por verdadeiras milícias digitais. A Justiça Eleitoral não tolerará que milícias pessoais ou digitais desrespeitem a vontade soberana do povo e atentem contra a democracia do Brasil", declarou.