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

Esse conteúdo é antigo

Quem é Ricardo Nunes, vice de Bruno Covas que assume a Prefeitura de SP

Ana Carla Bermúdez

Colaboração para o UOL

16/05/2021 10h28Atualizada em 23/05/2021 02h38

O empresário e ex-vereador Ricardo Nunes (MDB) assume definitivamente a Prefeitura de São Paulo após a morte do prefeito Bruno Covas (PSDB), que lutava contra o câncer. Eleito vice-prefeito em 2020, o novo chefe do Executivo da capital paulista a a ocupar os holofotes após uma campanha em que ficou escondido durante a maior parte do tempo.

Enfrentando denúncias de um suposto envolvimento na máfia das creches e de violência doméstica, o parlamentar quase não deu as caras nos eventos de campanha e se recusou a participar de sabatinas organizadas pelo UOL em conjunto com a Folha de S. Paulo.

Nunes sempre negou as acusações, mas as suspeitas foram a principal pedra no sapato de Covas durante a disputa, especialmente ao ar ao segundo turno contra Guilherme Boulos (PSOL).

O então candidato a vice virou alvo preferido dos adversários, obrigando Covas a sair em sua defesa em diferentes ocasiões. O tucano afirmou que botaria a "mão no fogo" por Nunes e chegou a discutir com repórteres durante uma entrevista.

"Eu não tenho nenhum processo. Nenhum. Vinte e cinco anos de empresa, oito anos de mandato, não tenho um processo. Estão falando que tem denúncia de locação de prédio, não tem uma denúncia", disse Nunes, em novembro de 2020, ao subir à tribuna da Câmara Municipal para se defender das acusações —classificadas por ele como "ataques desleais".

Morre Bruno Covas, prefeito de São Paulo; veja imagens da carreira política

As acusações

Reportagens da Folha mostraram que uma entidade ligada a Nunes pagou, com dinheiro público, empresas investigadas no esquema da máfia das creches e também uma dedetizadora que pertence à família do parlamentar.

A assessoria de Nunes, por sua vez, afirmou que "a relação do vereador com a empresa se deve pelo trabalho social que tem com dezenas de entidades".

Ricardo Nunes e a mulher, Regina Carnovale - Reprodução/Facebook - Reprodução/Facebook
Ricardo Nunes e a mulher, Regina Carnovale
Imagem: Reprodução/Facebook

O jornal também revelou que o vereador foi acusado de violência doméstica, ameaça e injúria pela mulher, Regina Carnovale, que registrou um boletim de ocorrência contra o político em 2011.

À Folha, Carnovale chegou a afirmar que havia dito, na ocasião em que fez o registro do boletim de ocorrência, "coisas que não são reais". Pouco depois, no entanto, a mulher de Nunes mudou a versão e afirmou, ao jornal O Estado de S. Paulo, não se lembrar de ter feito o boletim de ocorrência.

O vereador sempre negou as agressões e chegou a afirmar que a denúncia ocorreu durante um momento em que Carnovale estava "abalada".

Trajetória na Câmara

Filiado ao MDB desde os 18 anos, Nunes foi eleito pela primeira vez para o cargo de vereador em 2012. Foi reeleito em 2016, quando quase dobrou sua votação, ando de 30,7 mil votos para 54,6 mil.

Católico, Nunes atuou contra a "ideologia de gênero" —termo preconceituoso e frequentemente utilizado por segmentos da direita que criticam a abordagem de questões relativas a gênero e sexualidade nas escolas, mas que não é reconhecido pelo meio acadêmico— em sua agem pela Câmara Municipal de São Paulo.

Como vereador, foi coautor de um projeto de lei que pretendia implementar o programa Escola sem Partido na capital paulista e relator do Orçamento Municipal e da LDO (Lei de Diretrizes Orçamentárias) durante seis anos. Participou das Is (Comissões Parlamentares de Inquérito) do Theatro Municipal e da Sonegação Tributária.