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

BBB 23: Após eliminação, mãe de Cara de Sapato publica Stories sobre o caso

BBB 23: Cara de Sapato com a mãe - Reprodução/Globo
BBB 23: Cara de Sapato com a mãe Imagem: Reprodução/Globo

Colaboração para Splash, em São PauloWil

17/03/2023 02h34

Wilma Monteiro, mãe de Cara de Sapato, publicou um Stories após a saída do filho do BBB 23 (Globo).

Junto com Guimê, o lutador foi eliminado após os episódios de importunação sexual acontecidos na última Festa do Líder.

Wilma compartilhou no Instagram um trecho do momento em que Dania foi chamada ao confessionário para conversar com a produção do La Casa de Los Famosos.

No trecho, a mexicana se emociona bastante, chora e diz que está se sentindo mal com a situação acontecida.

Como foi a conversa?

Dania contou ainda estar se sentindo mal com a situação.

Dania: "Me sinto mal porque tu me conhece, sabe que eu sou coração e essas duas pessoas para mim... Me receberam muito bem, tem uma energia muito bonita e eram muito queridos aqui, Sapatito em especial foi uma pessoa muito boa comigo, independente do beijo que roubou".

Me sinto mal por eles, porque como eu, eles tem sonhos e vieram aqui para ter a melhor exposição. Me sinto um pouco mal por eles, porque sei que são boas pessoas. Entendo que aqui eles protegem as mulheres e eu valorizo e agradeço muito isso. Espero com fé em Deus que estejam bem. Dania

O que aconteceu?

MC Guimê e Cara de Sapato foram acusados de avançar sobre Dania Mendez e importuná-la sexualmente. O funkeiro acariciou o bumbum e as costas da influencer algumas vezes, mesmo sem o seu consentimento.

Já Sapato forçou um beijo na mexicana e avançou sobre ela na cama do quarto Fundo do Mar. A produção do BBB chegou a chamar sua atenção.

ENQUETE UOL BBB 23: A Globo acertou em eliminar Cara de Sapato e MC Guimê?

Resultado parcial

Total de 19637 votos
56,80%
Reprodução/Globoplay