{"id":11576,"date":"2024-07-06T01:31:10","date_gmt":"2024-07-06T04:31:10","guid":{"rendered":"https:\/\/ipatingafc.com.br\/index.php\/2024\/07\/06\/prefeitura-entrega-a-obra-de-pavimentacao-da-estrada-heitor-cury-nesta-sexta-feira-5\/"},"modified":"2024-07-06T01:31:10","modified_gmt":"2024-07-06T04:31:10","slug":"prefeitura-entrega-a-obra-de-pavimentacao-da-estrada-heitor-cury-nesta-sexta-feira-5","status":"publish","type":"post","link":"https:\/\/ipatingafc.com.br\/index.php\/2024\/07\/06\/prefeitura-entrega-a-obra-de-pavimentacao-da-estrada-heitor-cury-nesta-sexta-feira-5\/","title":{"rendered":"Prefeitura entrega a obra de pavimenta\u00e7\u00e3o da Estrada Heitor Cury nesta sexta-feira (5)"},"content":{"rendered":"<p><\/p>\n<p align=\"justify\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-142590 size-large\" src=\"http:\/\/noticias.sorocaba.sp.gov.br\/wp-content\/uploads\/2024\/07\/noticias.sorocaba.sp.gov.br-img_3223-1024x683.jpg\" alt=\"\" width=\"1024\" height=\"683\" \/><\/p>\n<p align=\"justify\"><em>Fotos: Ricardo Campolim<\/em><\/p>\n<p align=\"justify\"><span style=\"color: #171717\"><span style=\"font-family: Noto Serif, serif\">A Prefeitura de Sorocaba, por meio da Secretaria de Servi\u00e7os P\u00fablicos e Obras (Serpo), realizou a entrega, nesta sexta-feira (5), das obras de pavimenta\u00e7\u00e3o asf\u00e1ltica da Estrada Heitor Cury, no trecho entre a Rua Jo\u00e3o Maria de Camargo e o acesso \u00e0 Rodovia Raposo Tavares, localizada no bairro Ch\u00e1caras Reunidas S\u00e3o Jorge, na Zona Oeste da cidade.<\/span><\/span><\/p>\n<p align=\"justify\"><span style=\"color: #171717\"><span style=\"font-family: Noto Serif, serif\">A nova via dar\u00e1 mais fluidez ao tr\u00e1fego de ve\u00edculos, que costuma ser intenso, na regi\u00e3o, principalmente, nos hor\u00e1rios de pico. Al\u00e9m disso, o novo trajeto reduz o percurso de acesso at\u00e9 a Rodovia, nos dos sentidos de tr\u00e1fego.<\/span><\/span><\/p>\n<p align=\"justify\"><span style=\"color: #171717\"><span style=\"font-family: Noto Serif, serif\">A interven\u00e7\u00e3o vi\u00e1ria resuta de medida mitigat\u00f3ria, viabilizada em parceria com o Grupo ADN S.A. Ao todo s\u00e3o 2.400 metros quadrados de pavimento novo, com cal\u00e7amento e sinaliza\u00e7\u00e3o vi\u00e1ria, bem como instala\u00e7\u00e3o de ilumina\u00e7\u00e3o p\u00fablica com tecnologia de LED e sistema de drenagem, garantindo o escoamento adequado das \u00e1guas pluviais.<\/span><\/span><\/p>\n<p>&nbsp;<\/p>\n<div class=\"pms-galeria\">\n<p>\t\t<img decoding=\"async\" src=\"https:\/\/noticias.sorocaba.sp.gov.br\/wp-content\/uploads\/2024\/07\/noticias.sorocaba.sp.gov.br-img_3202-300x200.jpg\" width=\"300\" height=\"\"><br \/>\n\t\t<span><\/span><\/p>\n<p>\t\t<img decoding=\"async\" src=\"https:\/\/noticias.sorocaba.sp.gov.br\/wp-content\/uploads\/2024\/07\/noticias.sorocaba.sp.gov.br-img_3203-300x200.jpg\" width=\"300\" height=\"\"><br \/>\n\t\t<span><\/span><\/p>\n<p>\t\t<img decoding=\"async\" src=\"https:\/\/noticias.sorocaba.sp.gov.br\/wp-content\/uploads\/2024\/07\/noticias.sorocaba.sp.gov.br-img_3209-300x200.jpg\" width=\"300\" height=\"\"><br \/>\n\t\t<span><\/span><\/p>\n<p>\t\t<img decoding=\"async\" src=\"https:\/\/noticias.sorocaba.sp.gov.br\/wp-content\/uploads\/2024\/07\/noticias.sorocaba.sp.gov.br-img_3213-300x200.jpg\" width=\"300\" height=\"\"><br \/>\n\t\t<span><\/span><\/p>\n<p>\t\t<img decoding=\"async\" src=\"https:\/\/noticias.sorocaba.sp.gov.br\/wp-content\/uploads\/2024\/07\/noticias.sorocaba.sp.gov.br-img_3223-300x200.jpg\" width=\"300\" height=\"\"><br \/>\n\t\t<span><\/span><\/p><\/div>\n<p><!-- Root element of PhotoSwipe. Must have class pswp. --><\/p>\n<div class=\"pswp\" role=\"dialog\" aria-hidden=\"true\">\n<p>\t<!-- Background of PhotoSwipe. \n\t\t\t It's a separate element, as animating opacity is faster than rgba(). --><\/p>\n<div class=\"pswp__bg\"><\/div>\n<p>\t<!-- Slides wrapper with overflow:hidden. --><\/p>\n<div class=\"pswp__scroll-wrap\">\n<p>\t\t<!-- Container that holds slides. PhotoSwipe keeps only 3 slides in DOM to save memory. --><\/p>\n<div class=\"pswp__container\">\n\t\t\t<!-- don't modify these 3 pswp__item elements, data is added later on --><\/p>\n<div class=\"pswp__item\"><\/div>\n<div class=\"pswp__item\"><\/div>\n<div class=\"pswp__item\"><\/div>\n<\/p><\/div>\n<p>\t\t<!-- Default (PhotoSwipeUI_Default) interface on top of sliding area. Can be changed. --><\/p>\n<div class=\"pswp__ui pswp__ui--hidden\">\n<div class=\"pswp__top-bar\">\n<p>\t\t\t\t<!--  Controls are self-explanatory. Order can be changed. --><\/p>\n<div class=\"pswp__counter\"><\/div>\n<p>\t\t\t\t<button class=\"pswp__button pswp__button--close\" title=\"Close (Esc)\"><\/button><\/p>\n<p>\t\t\t\t<button class=\"pswp__button pswp__button--share\" title=\"Share\"><\/button><\/p>\n<p>\t\t\t\t<button class=\"pswp__button pswp__button--fs\" title=\"Toggle fullscreen\"><\/button><\/p>\n<p>\t\t\t\t<button class=\"pswp__button pswp__button--zoom\" title=\"Zoom in\/out\"><\/button><\/p>\n<p>\t\t\t\t<!-- Preloader demo http:\/\/codepen.io\/dimsemenov\/pen\/yyBWoR --><br \/>\n\t\t\t\t<!-- element will get class pswp__preloader-active when preloader is running --><\/p>\n<div class=\"pswp__preloader\">\n<div class=\"pswp__preloader__icn\">\n<div class=\"pswp__preloader__cut\">\n<div class=\"pswp__preloader__donut\"><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"pswp__share-modal pswp__share-modal--hidden pswp__single-tap\">\n<div class=\"pswp__share-tooltip\"><\/div>\n<\/p><\/div>\n<p>\t\t\t<button class=\"pswp__button pswp__button--arrow--left\" title=\"Previous (arrow left)\"><br \/>\n\t\t\t<\/button><\/p>\n<p>\t\t\t<button class=\"pswp__button pswp__button--arrow--right\" title=\"Next (arrow right)\"><br \/>\n\t\t\t<\/button><\/p>\n<div class=\"pswp__caption\">\n<div class=\"pswp__caption__center\"><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/div>\n<p>\t$$ = $.noConflict();<\/p>\n<p>\tvar initPhotoSwipeFromDOM = function(gallerySelector) {<\/p>\n<p>\t\t\/\/ parse slide data (url, title, size &#8230;) from DOM elements<br \/>\n\t\t\/\/ (children of gallerySelector)<br \/>\n\t\tvar parseThumbnailElements = function(el) {<br \/>\n\t\t\tvar thumbElements = el.childNodes,<br \/>\n\t\t\t\tnumNodes = thumbElements.length,<br \/>\n\t\t\t\titems = [],<br \/>\n\t\t\t\tfigureEl,<br \/>\n\t\t\t\tchildElements,<br \/>\n\t\t\t\tlinkEl,<br \/>\n\t\t\t\tsize,<br \/>\n\t\t\t\titem;<\/p>\n<p>\t\t\tfor(var i = 0; i &lt; numNodes; i++) {<br \/>\n\t\t\t\tfigureEl = thumbElements[i]; \/\/ <\/p>\n<figure> element<\/p>\n<p>\t\t\t\t\/\/ include only element nodes<br \/>\n\t\t\t\tif(figureEl.nodeType !== 1) {<br \/>\n\t\t\t\t\tcontinue;<br \/>\n\t\t\t\t}<\/p>\n<p>\t\t\t\tlinkEl = figureEl.children[0]; \/\/ <a> element<br \/>\n\t\t\t\tlinkEl = figureEl; \/\/ <a> element<br \/>\n\t\t\t\t\/\/ console.log(linkEl);<br \/>\n\t\t\t\tsize = linkEl.getAttribute(&#8216;data-size&#8217;).split(&#8216;x&#8217;);<\/p>\n<p>\t\t\t\t\/\/ create slide object<br \/>\n\t\t\t\titem = {<br \/>\n\t\t\t\t\tsrc: linkEl.getAttribute(&#8216;href&#8217;),<br \/>\n\t\t\t\t\tw: parseInt(size[0], 10),<br \/>\n\t\t\t\t\th: parseInt(size[1], 10)<br \/>\n\t\t\t\t};<\/p>\n<p>\t\t\t\tif(figureEl.children.length &gt; 1) {<br \/>\n\t\t\t\t\t\/\/<figcaption> content<br \/>\n\t\t\t\t\titem.title = figureEl.children[1].innerHTML;<br \/>\n\t\t\t\t}<\/p>\n<p>\t\t\t\tif(linkEl.children.length &gt; 0) {<br \/>\n\t\t\t\t\t\/\/ <img> thumbnail element, retrieving thumbnail url<br \/>\n\t\t\t\t\titem.msrc = linkEl.children[0].getAttribute(&#8216;src&#8217;);<br \/>\n\t\t\t\t} <\/p>\n<p>\t\t\t\titem.el = figureEl; \/\/ save link to element for getThumbBoundsFn<br \/>\n\t\t\t\titems.push(item);<br \/>\n\t\t\t}<\/p>\n<p>\t\t\treturn items;<br \/>\n\t\t};<\/p>\n<p>\t\t\/\/ find nearest parent element<br \/>\n\t\tvar closest = function closest(el, fn) {<br \/>\n\t\t\treturn el &amp;&amp; ( fn(el) ? el : closest(el.parentNode, fn) );<br \/>\n\t\t};<\/p>\n<p>\t\t\/\/ triggers when user clicks on thumbnail<br \/>\n\t\tvar onThumbnailsClick = function(e) {<br \/>\n\t\t\te = e || window.event;<br \/>\n\t\t\te.preventDefault ? e.preventDefault() : e.returnValue = false;<\/p>\n<p>\t\t\tvar eTarget = e.target || e.srcElement;<\/p>\n<p>\t\t\tvar clickedListItem = closest(eTarget, function(el) {<br \/>\n\t\t\t\treturn el.tagName === &#8216;FIGURE&#8217;;<br \/>\n\t\t\t});<br \/>\n\t\t\tclickedListItem = eTarget.parentNode;<br \/>\n\t\t\tif(!clickedListItem) {<br \/>\n\t\t\t\treturn;<br \/>\n\t\t\t}<\/p>\n<p>\t\t\t\/\/ find index of clicked item<br \/>\n\t\t\tvar clickedGallery = clickedListItem.parentNode,<br \/>\n\t\t\t\tchildNodes = clickedListItem.parentNode.childNodes,<br \/>\n\t\t\t\tnumChildNodes = childNodes.length,<br \/>\n\t\t\t\tnodeIndex = 0,<br \/>\n\t\t\t\tindex;<\/p>\n<p>\t\t\tfor (var i = 0; i = 0) {<br \/>\n\t\t\t\topenPhotoSwipe( index, clickedGallery );<br \/>\n\t\t\t}<\/p>\n<p>\t\t\treturn false;<br \/>\n\t\t};<\/p>\n<p>\t\t\/\/ parse picture index and gallery index from URL (#&amp;pid=1&amp;gid=2)<br \/>\n\t\tvar photoswipeParseHash = function() {<br \/>\n\t\t\tvar hash = window.location.hash.substring(1),<br \/>\n\t\t\t\tparams = {};<\/p>\n<p>\t\t\tif(hash.length &lt; 5) {<br \/>\n\t\t\t\treturn params;<br \/>\n\t\t\t}<\/p>\n<p>\t\t\tvar vars = hash.split(&#039;&amp;&#039;);<br \/>\n\t\t\tfor (var i = 0; i &lt; vars.length; i++) {<br \/>\n\t\t\t\tif(!vars[i]) {<br \/>\n\t\t\t\t\tcontinue;<br \/>\n\t\t\t\t}<br \/>\n\t\t\t\tvar pair = vars[i].split(&#039;=&#039;);<br \/>\n\t\t\t\tif(pair.length  getThumbBoundsFn section of docs for more info<br \/>\n\t\t\t\t\tvar thumbnail = items[index].el.getElementsByTagName(&#8216;img&#8217;)[0], \/\/ find thumbnail<br \/>\n\t\t\t\t\t\tpageYScroll = window.pageYOffset || document.documentElement.scrollTop,<br \/>\n\t\t\t\t\t\trect = thumbnail.getBoundingClientRect(); <\/p>\n<p>\t\t\t\t\treturn {x:rect.left, y:rect.top + pageYScroll, w:rect.width};<br \/>\n\t\t\t\t},<\/p>\n<p>\t\t\t\tshareButtons: [<br \/>\n\t\t\t\t\t{id:&#8217;download&#8217;, label:&#8217;Download image&#8217;, url:&#8221;, download:true}<br \/>\n\t\t\t\t],<\/p>\n<p>\t\t\t\t\/\/ history &amp; focus options are disabled on CodePen<br \/>\n\t\t\t\t\/\/ remove these lines in real life:<br \/>\n\t\t\t\thistoryEnabled: false,<br \/>\n\t\t\t\tfocus: false <\/p>\n<p>\t\t\t};<\/p>\n<p>\t\t\tif(disableAnimation) {<br \/>\n\t\t\t\toptions.showAnimationDuration = 0;<br \/>\n\t\t\t}<\/p>\n<p>\t\t\t\/\/ Pass data to PhotoSwipe and initialize it<br \/>\n\t\t\tgallery = new PhotoSwipe( pswpElement, PhotoSwipeUI_Default, items, options);<br \/>\n\t\t\tgallery.init();<br \/>\n\t\t};<\/p>\n<p>\t\t\/\/ loop through all gallery elements and bind events<br \/>\n\t\tvar galleryElements = document.querySelectorAll( gallerySelector );<\/p>\n<p>\t\tfor(var i = 0, l = galleryElements.length; i  0 &amp;&amp; hashData.gid &gt; 0) {<br \/>\n\t\t\topenPhotoSwipe( hashData.pid &#8211; 1 ,  galleryElements[ hashData.gid &#8211; 1 ], true );<br \/>\n\t\t}<br \/>\n\t};<\/p>\n<p>\t\/\/ execute above function<br \/>\n\tinitPhotoSwipeFromDOM(&#8216;.pms-galeria&#8217;);<\/p>\n<p>\t\/\/ All images need to be loaded for this plugin to work so<br \/>\n\t\/\/ we end up waiting for the whole window to load in this example<br \/>\n\t$$(window).load(function () {<br \/>\n\t\t$$(document).ready(function(){<br \/>\n\t\t\tcollage();<br \/>\n\t\t\t$$(&#8216;.pms-galeria&#8217;).collageCaption();<br \/>\n\t\t});<br \/>\n\t});<\/p>\n<p>\t\/\/ Here we apply the actual CollagePlus plugin<br \/>\n\tfunction collage() {<br \/>\n\t\t$$(&#8216;.pms-galeria img&#8217;).css(&#8216;display&#8217;, &#8216;block&#8217;);<br \/>\n\t\t$$(&#8216;.pms-galeria&#8217;).removeWhitespace().collagePlus({<br \/>\n\t\t\t&#8216;fadeSpeed&#8217;     : 2000,<br \/>\n\t\t\t&#8216;targetHeight&#8217;  : 150,<br \/>\n\t\t\t&#8216;effect&#8217;        : &#8216;default&#8217;,<br \/>\n\t\t\t&#8216;direction&#8217;     : &#8216;vertical&#8217;,<br \/>\n\t\t\t&#8216;allowPartialLastRow&#8217; : true<br \/>\n\t\t});<br \/>\n\t};<\/p>\n<p>\t\/\/ This is just for the case that the browser window is resized<br \/>\n\tvar resizeTimer = null;<br \/>\n\t$$(window).bind(&#8216;resize&#8217;, function() {<br \/>\n\t\t\/\/ hide all the images until we resize them<br \/>\n\t\t$$(&#8216;.pms-galeria .Image_Wrapper&#8217;).css(&#8220;opacity&#8221;, 0);<br \/>\n\t\t\/\/ set a timer to re-apply the plugin<br \/>\n\t\tif (resizeTimer) clearTimeout(resizeTimer);<br \/>\n\t\tresizeTimer = setTimeout(collage, 200);<br \/>\n\t});<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Fotos: Ricardo Campolim A Prefeitura de Sorocaba, por meio da Secretaria de Servi\u00e7os P\u00fablicos e&#8230;<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-11576","post","type-post","status-publish","format-standard","hentry"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/ipatingafc.com.br\/index.php\/wp-json\/wp\/v2\/posts\/11576","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ipatingafc.com.br\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ipatingafc.com.br\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ipatingafc.com.br\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/ipatingafc.com.br\/index.php\/wp-json\/wp\/v2\/comments?post=11576"}],"version-history":[{"count":0,"href":"https:\/\/ipatingafc.com.br\/index.php\/wp-json\/wp\/v2\/posts\/11576\/revisions"}],"wp:attachment":[{"href":"https:\/\/ipatingafc.com.br\/index.php\/wp-json\/wp\/v2\/media?parent=11576"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ipatingafc.com.br\/index.php\/wp-json\/wp\/v2\/categories?post=11576"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ipatingafc.com.br\/index.php\/wp-json\/wp\/v2\/tags?post=11576"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}