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

Em Santos, protesto contra aumento da tarifa para sessão da Câmara Municipal

Santistas também protestaram contra o atual valor da tarifa de ônibus (R$ 2,90) no litoral de São Paulo - Divulgação
Santistas também protestaram contra o atual valor da tarifa de ônibus (R$ 2,90) no litoral de São Paulo Imagem: Divulgação

Do UOL, em Santos (SP)

13/06/2013 21h11

Cerca de 300 pessoas protestaram contra o atual valor da tarifa de ônibus (R$ 2,90) em Santos, litoral de São Paulo. Diferentemente do que ocorreu em outros locais do país, não houve confronto com Polícia Militar. Porém, os manifestantes causaram grandes transtornos no trânsito do Centro da Cidade. Eles também invadiram a sessão da Câmara dos Vereadores, que chegou a ser suspensa por alguns minutos.

A eata começou por volta das 17h em frente à prefeitura, na Praça Mauá. Munidos de apitos, sinalizadores, fogos de artifícios, faixas e cartazes com os dizeres “Aumento das tarifas não” e aos gritos de “Se a tarifa não baixar, Santos vai parar” e “Você aí parado também foi explorado”, eles subiram a rampa do Paço Municipal.

Como lá acontecia uma apresentação de teatral em homenagem em comemoração ao aniversário de 250 do nascimento de José Bonifácio, patriarca da Independência, houve um princípio de tumulto com agentes da Guarda Municipal, que foi controlado rapidamente.

Logo depois, caminharam pelas ruas em direção ao terminal de ônibus municipais. No trajeto, sentaram na rua João Pessoa, parando o trânsito de uma das vias mais movimentadas de Santos e que faz parte do principal o para a via Anchieta, que liga o litoral à capital. No terminal, interromperam a operação dos circulares local por alguns minutos.

Os manifestantes seguiram para a Câmara Municipal. Durante o protesto na Casa, que durou cerca de 10 minutos, a sessão foi interrompida. Depois, retornaram para a porta da prefeitura.

Uma professora que fazia parte do grupo, mas não quis se identificar, defendia a redução da atual tarifa. “Pra mim, o ideal será R$ 2. Do trabalho para casa, gasto quatro conduções diariamente”.

Houve também quem protestasse contra o valor da agem intermunicipal. “Moro em São Vicente, trabalho na Praia Grande e aos finais de semana visito parentes em Santos. Em cada agem desembolso R$ 4”, afirma o professor Absolon Soares da Silva.

Além da tarifa, muitos se queixaram da medida implantada no dia 23 de maio pelo prefeito da cidade, Paulo Alexandre Barbosa, que proíbe que o pagamento em dinheiro dentro dos ônibus a não ser em casos considerados excepcionais, como uma emergência de saúde, por exemplo. O ageiro tem que usar um cartão transporte, adquirido antecipadamente em postos de venda espalhados pela cidade.

A agem no município não sofre reajuste desde fevereiro de 2012. Não houve ainda anúncio de uma possível nova tarifa. O tema está em análise pela CET (Companhia de Engenharia de Tráfego) em conjunto com a Viação Piracicabana, concessionária do transporte público.

Em Santos, não existe bilhete único. A expectativa é que o sistema seja implantado em 2014, quando está previsto a o início da operação do VLT (Veículo Leve sobre Trilhos).