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

Papa diz que tecnologia e globalização ameaçam individualidade de jovens

Papa Francisco - AFP
Papa Francisco Imagem: AFP

Da Reuters, em Bangcoc

22/11/2019 10h45

O papa Francisco alertou nesta sexta-feira (22) que a tecnologia e a globalização estão homogeneizando os jovens de todo o mundo a ponto de sua singularidade e sua individualidade cultural estarem se tornando espécies ameaçadas.

O papa, de 82 anos, apelou para que os jovens preservem as culturas que herdaram de seus ancestrais e valorizem suas raízes durante um encontro com líderes de outras religiões no encerramento de seu último dia completo de visita à Tailândia.

Ele criticou "uma tendência crescente de desmerecer valores e culturas locais pela imposição de um modelo unitário" de valores para os jovens, aparentemente se referindo à influência ocidental em filmes, anúncios e redes sociais.

"Isto produz uma devastação cultural que é tão grave quanto o desaparecimento de espécies de animais e plantas", disse.

A preservação de culturas locais também foi um tema da visita desta sexta-feira ao vilarejo predominantemente católico de Wat Roman, nos arredores de Bancoc, onde o pontífice exortou os tailandeses dos dias atuais a não considerarem o cristianismo uma religião "estrangeira".

A cultura dominante da Tailândia é ligada intimamente ao budismo, mas de maneira geral a minoria católica de menos de um por cento da população vem sendo bem tratada nos tempos modernos.

Em uma conversa com padres e freiras reunidos na igreja do vilarejo, Francisco prestou homenagem àqueles que foram mortos no ado por causa de sua fé.

Entre eles estão sete católicos, incluindo três meninas adolescentes, que foram mortos pela polícia tailandesa em 1940 em Nakhon Phanom, província do nordeste do país.

A Segunda Guerra Mundial e outros períodos de perseguição são considerados aberrações, e hoje as relações entre budistas e católicos são muito boas em geral.

Durante o reinado do rei Narai, 350 anos atrás, o Vaticano estabeleceu formalmente sua "Missão de Siam".

Embora os missionários não tenham conseguido realizar conversões em massa, foram essencialmente tolerados pela maioria budista, e particularmente pela corte real.

Francisco parte nesta sexta-feira para o Japão, onde o principal objetivo de sua viagem é chamar a atenção global para as armas nucleares quando visitar os locais dos ataques atômicos de Hiroshima e Nagasaki.