1<!doctype html> 2<html lang="es-AR"> 3<head> 4 <meta charset="utf-8"> 5 <link rel="dns-prefetch" href="//fonts.gstatic.com"> 6<link rel="dns-prefetch" href="//www.gstatic.com"> 7<link rel="dns-prefetch" href="//openweathermap.org"> 8<link rel="dns-prefetch" href="//ajax.cloudflare.com"> 9<link rel="dns-prefetch" href="//cdnjs.cloudflare.com"> 10<link rel="dns-prefetch" href="//connect.facebook.net"> 11<link rel="dns-prefetch" href="//platform.twitter.com"> 12<link rel="dns-prefetch" href="//syndication.twitter.com"> 13<link rel="dns-prefetch" href="//platform.instagram.com"> 14<link rel="dns-prefetch" href="//www.instagram.com"> 15<link rel="dns-prefetch" href="//www.tiktok.com"> 16<link rel="dns-prefetch" href="//google-analytics.com"> 17<link rel="dns-prefetch" href="//www.google-analytics.com"> 18<link rel="dns-prefetch" href="//ssl.google-analytics.com"> 19<link rel="dns-prefetch" href="//www.googletagmanager.com"> 20<link rel="dns-prefetch" href="//cdn.syndication.twimg.com"> 21<link rel="dns-prefetch" href="//youtube.com"> 22 23 <link rel="dns-prefetch" href="//enfoqueuno-s3.cdn.net.ar"> 24 25 26
27<script data-cfasync="false" src="/javascripts/functionsSync.js?_v=v3-76"></script>
27 28 29 30 31 32 <!-- Google Tag Manager --> 33
33<script type="241f3d933342c4da266314bd-text/javascript">
vendor: 343 bytes, lines 33-37
33(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 34 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 35 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 36 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 37 })(window,document,'script','dataLayer','
37GTM-MZ6LVGN5
vendor: 3 bytes, line 37
37');
37</script>
37 38 <!-- End Google Tag Manager --> 39 40 41 42 43 44 <!-- Analytics - GA4 -->
vendor: 90 bytes, lines 44-45
44 45 <script data-cfasync="false" async src="https://www.googletagmanager.com/gtag/js?id=
45G-B0FK4PXLET
vendor: 16 bytes, lines 45-46
45"></script> 46
46<script data-cfasync="false" > 47
vendor: 162 bytes, lines 47-52
47window.dataLayer = window.dataLayer || []; 48 function gtag() { 49 dataLayer.push(arguments); 50 } 51 gtag('js', new Date()); 52 gtag('config', '
52G-B0FK4PXLET
vendor: 8 bytes, lines 52-53
52'); 53
53</script>
53 54 <!-- End Analytics - GA4 --> 55 56 57 58 59<title>Pronóstico extendido | Enfoque Uno</title> 60 61<meta name="description" content="Noticias de la Primera sección electoral. Información, videos y fotos sobre los hechos más relevantes de la zona norte y oeste del conurbano bonaerense."> 62<meta name="keywords" content=""> 63 64<!-- Required meta tags --> 65<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> 66<meta name="robots" content="max-image-preview:large"> 67 68 69<!-- Meta canonicals--> 70<link rel="canonical" href="https://www.enfoqueuno.com.ar/clima"> 71 72<link rel="icon" href="/images/custom/favicon/favicon.ico?_v=v3-76"> 73<link rel="apple-touch-icon" sizes="180x180" href="/images/custom/favicon/apple-touch-icon.png?_v=v3-76"> 74<link rel="icon" type="image/png" sizes="32x32" href="/images/custom/favicon/favicon-32x32.png?_v=v3-76"> 75<link rel="icon" type="image/png" sizes="16x16" href="/images/custom/favicon/favicon-16x16.png?_v=v3-76"> 76<link rel="manifest" href="/images/custom/favicon/site.webmanifest?_v=v3-76"> 77<link rel="shortcut icon" href="/images/custom/favicon/favicon.ico?_v=v3-76"> 78<meta name="msapplication-TileColor" content="#541670"> 79<meta name="theme-color" content="#541670"> 80<meta name="msapplication-config" content="/images/custom/favicon/browserconfig.xml?_v=v3-76"> 81 82<meta property="fb:app_id" content=""> 83<meta property="og:image" content="https://www.enfoqueuno.com.ar/images/custom/logo-social.png?_v=v3-76"> 84<meta property="og:title" content="Pronóstico extendido | Enfoque Uno"> 85<meta property="og:description" content="Noticias de la Primera sección electoral. Información, videos y fotos sobre los hechos más relevantes de la zona norte y oeste del conurbano bonaerense."> 86<meta property="og:locale" content="es-AR"> 87<meta property="og:type" content="website"> 88<meta property="og:url" content="https://www.enfoqueuno.com.ar/clima"> 89<meta property="og:site_name" content="Enfoque Uno"> 90<meta property="article:section" content="noticias"> 91 92<meta name="twitter:card" content="summary_large_image"> 93<meta name="twitter:site" content="@enfoqueunook "> 94<meta name="twitter:creator" content="@enfoqueunook "> 95<meta name="twitter:title" content="Pronóstico extendido | Enfoque Uno"> 96<meta name="twitter:description" content="Noticias de la Primera sección electoral. Información, videos y fotos sobre los hechos más relevantes de la zona norte y oeste del conurbano bonaerense."> 97<meta name="twitter:image" content="https://www.enfoqueuno.com.ar/images/custom/logo-social.png?_v=v3-76"> 98 99<link rel='stylesheet' href='/styles/styles.css?_v=v3-76'> 100 101 102 103 <!-- COOKIE BANNERS --> 104
104<script type="241f3d933342c4da266314bd-text/javascript"> 105 const cookiesBanners = {"zonaBannerZocalo":{"nombre":"zona-banner-zocalo-1","minutosExpire":60},"zonaBannerPopup":{"nombre":"zona-banner-popup-1","minutosExpire":60}}; 106 </script>
106 107 108 <!-- AD_SERVERS --> 109 110 111 112 113 114
115<script type="241f3d933342c4da266314bd-text/javascript"> 116 var facebookWidgetLoaded = false; 117</script>
117 118 119 120 121 122 123 124</head> 125<body class="page-clima flex flex-col antialiased h-screen p-0 m-0"> 126
127<script data-cfasync="false"> 128 129 const apiURL = '/api/'; 130 const BANNER_DEFAULT_EVENT_CATEGORY = 'Anunciante-General | Campaña-General'; 131 const BANNER_NOMBRE = 'Banner'; 132 const ZONA_BANNER_NOMBRE = 'Zona'; 133 var isMobile = false; 134 var facebookSDKLoaded = false; 135 136 // Función para verificar si es un dispositivo móvil 137 function esDispositivoMovil() { 138 const desktopBreakpointWidth = 1279 139 140 if(window.innerWidth <= desktopBreakpointWidth){ 141 return true; 142 } 143 return /Mobi|Android/i.test(navigator.userAgent); 144 } 145 function updateDispositivo(){ 146 // Verificar si es un dispositivo móvil 147 if (esDispositivoMovil()) { 148 document.body.classList.add("mobile-version"); 149 isMobile = true; 150 }else{ 151 document.body.classList.remove("mobile-version"); 152 isMobile = false; 153 } 154 } 155 156 updateDispositivo(); 157 158 function trackImpresion({ event_category = '', event_label = '' }) { 159 if (typeof gtag !== "function") { 160 setTimeout(() => trackImpresion({ event_category, event_label }), 1000); // Esperar 1 segundo (1000 milisegundos) antes de volver a evaluar. 161 } else { 162 gtag('event', 'cms_banner_impression', { event_category, event_label }); 163 } 164 } 165 166 function trackClick({ event_category = '', event_label = '' }) { 167 if (typeof gtag !== "function") { 168 setTimeout(() => trackClick({ event_category, event_label }), 1000); // Esperar 1 segundo (1000 milisegundos) antes de volver a evaluar. 169 } else { 170 gtag('event', 'cms_banner_click', { event_category, event_label }); 171 } 172 } 173 function trackAuthor( author ) { 174 175 if (typeof gtag !== "function") { 176 setTimeout(() => trackAuthor(author), 1000); // Esperar 1 segundo (1000 milisegundos) antes de volver a evaluar. 177 } else { 178 gtag('event', `Author: ${author}`); 179 } 180 } 181 182 183 </script>
183 184 185 186
186<script defer src="https://cdnjs.cloudflare.com/ajax/libs/postscribe/2.0.6/postscribe.min.js" type="241f3d933342c4da266314bd-text/javascript"></script>
186 187 188 <header class="text-black relative"> 189 <div class="container mx-auto flex justify-between pt-2 px-0 xl:px-4"> 190 <div class="flex justify-center md:justify-start items-center "> 191 <div class="text-left text-gray-700 hidden lg:block"> 192 <span class="uppercase pr-1">sábado 3</span> de <span class="uppercase px-1">octubre</span> <span> de 2026 </span> <span class="px-2"> | </span> 193 </div> 194 <div class="uppercase hidden lg:block items-center"> 195 196<a href="/clima"> 197 <div class="flex items-center"> 198 <img loading="lazy" height="50" width="50" src="https://openweathermap.org/img/w/04d.png" alt="Nubes"> 199 <span class="pl-2">15.2ºc | Argentina</span> 200 </div> 201</a> 202 203 </div> 204 </div> 205 <div class="flex justify-center md:justify-end items-center hidden lg:block pt-4"> 206 207<a aria-label="Facebook" href="https://www.facebook.com/enfoqueunook" target="_blank" 208 class="inline-block mx-2"> 209 <svg width="24" height="24" class="bi bi-facebook text-primary" xmlns="http://www.w3.org/2000/svg" 210 fill="currentColor" viewBox="0 0 16 16"> 211 <path 212 d="M16 8.049c0-4.446-3.582-8.05-8-8.05C3.58 0-.002 3.603-.002 8.05c0 4.017 2.926 7.347 6.75 7.951v-5.625h-2.03V8.05H6.75V6.275c0-2.017 1.195-3.131 3.022-3.131.876 0 1.791.157 1.791.157v1.98h-1.009c-.993 0-1.303.621-1.303 1.258v1.51h2.218l-.354 2.326H9.25V16c3.824-.604 6.75-3.934 6.75-7.951z" 213 fill="currentColor"></path> 214 </svg> 215</a> 216 217 218 219 <a aria-label="Instagram" href="https://www.instagram.com/enfoqueunook/" target="_blank" class="inline-block mx-2"> 220 <svg class="text-primary" width="24" 221 height="24" aria-hidden="true" focusable="false" data-prefix="fab" data-icon="instagram" 222 role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"> 223 <path fill="currentColor" 224 d="M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z" /> 225 226 </svg> 227 </a> 228 229 230 231 <a aria-label="Twitter" href="https://twitter.com/enfoqueunook" target="_blank" 232 class="inline-block mx-2"> 233 <svg class="text-primary" width="24" height="24" aria-hidden="true" focusable="false" data-prefix="fab" 234 data-icon="twitter" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"> 235 236 <path fill="currentColor" d="M389.2 48h70.6L305.6 224.2 487 464H345L233.7 318.6 106.5 464H35.8L200.7 275.5 26.8 48H172.4L272.9 180.9 389.2 48zM364.4 421.8h39.1L151.1 88h-42L364.4 421.8z"/> 237 238 </svg> 239</a> 240 241 242 </div> 243 </div> 244 <div class="container mx-auto grid grid-cols-12 items-center py-2 px-0 xl:px-4"> 245 <div class="col-span-12 md:col-span-3"> 246 <div class="flex justify-right md:justify-start"> 247 <a href="/"> 248 <img src="/images/custom/logo-header.webp?_v=v3-76" alt="Pronóstico extendido | Enfoque Uno" class="mx-auto object-scale-down h-auto w-4/5 md:w-[400px]"> 249 </a> 250 251 </div> 252 253 </div> 254 <div class="col-span-12 md:col-span-6"> 255 256 </div> 257 <div class="col-span-12 md:col-span-3"> 258 <div class="flex justify-center md:justify-end"> 259 260 </div> 261 </div> 262 </div> 263</header> 264<div id="header-scrolled" class="header-scrolled fixed z-40 pt-2 left-4" 265style="display: none; "> 266<a href="/"> 267<img loading="lazy" id="header-logo-scrolled" 268 src="/images/custom/logo-header-scrolled.webp?_v=v3-76" 269 alt="Pronóstico extendido | Enfoque Uno" height="40" width="160"> 270</a> 271</div> 272 <nav id="nav" class="z-20 bg-nav flex-col items-center justify-between flex-wrap menu-no-scrolled"> 273 <div class="block xl:hidden"> 274 <button id='boton' class="nav-menu-button text-nav-link text-nav-link flex items-center nav-link color-nav-icon "> 275 <svg class="fill-current" xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 448 512"><title>Menu</title><path d="M0 96C0 78.3 14.3 64 32 64H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32C14.3 128 0 113.7 0 96zM0 256c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32zM448 416c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 14.3 32 32z"/></svg> 276 </button> 277 </div> 278 <div id='menu' class="container mx-0 xl:mx-auto w-full hidden block flex-grow xl:flex xl:items-center xl:w-auto overflow-y-auto xl:overflow-y-visible max-h-screen xl:max-h-none"> 279 <div class="listado bg-nav text-sm xl:flex xl:flex-grow items-center justify-between" > 280 <div id="logo-nav-menu-scroll" style="display: none"> 281 <a href="/"> 282 <img src="/images/custom/logo-nav-menu-scroll.webp?_v=v3-76" alt="Pronóstico extendido | Enfoque Uno" class="mx-auto object-scale-down h-[30px] w-[130px]"> 283 </a> 284 </div> 285 286 <div class="nav-item block xl:inline-block xl:mt-0" 287 style="background: white;color: #541670 "> 288 289 <a href="/noticias" 290 class="text-nav-link font-nav-link py-3 px-3 block xl:inline-block" 291 style="color: #541670"> 292 Ultimas noticias 293 </a> 294 295 296 </div> 297 298 299 <div class="nav-item block xl:inline-block xl:mt-0" 300 style="background: white;color: #541670 "> 301 302 <a href="/nacionales" 303 class="text-nav-link font-nav-link py-3 px-3 block xl:inline-block" 304 style="color: #541670"> 305 Nacionales 306 </a> 307 308 309 </div> 310 311 312 <div class="nav-item block xl:inline-block xl:mt-0" 313 style="background: white;color: #541670 "> 314 315 <a href="/provinciales" 316 class="text-nav-link font-nav-link py-3 px-3 block xl:inline-block" 317 style="color: #541670"> 318 Provinciales 319 </a> 320 321 322 </div> 323 324 325 <div class="nav-item block xl:inline-block xl:mt-0" 326 style="background: white;color: #541670 "> 327 328 <a href="/regionales" 329 class="text-nav-link font-nav-link py-3 px-3 block xl:inline-block" 330 style="color: #541670"> 331 Regionales 332 </a> 333 334 335 </div> 336 337 338 <div class="nav-item block xl:inline-block xl:mt-0" 339 style="background: white;color: #541670 "> 340 341 <a href="/ciudad" 342 class="text-nav-link font-nav-link py-3 px-3 block xl:inline-block" 343 style="color: #541670"> 344 Ciudad 345 </a> 346 347 348 </div> 349 350 351 <div class="nav-item block xl:inline-block xl:mt-0" 352 style="background: white;color: #541670 "> 353 354 <a href="/informacion-general" 355 class="text-nav-link font-nav-link py-3 px-3 block xl:inline-block" 356 style="color: #541670"> 357 Información General 358 </a> 359 360 361 </div> 362 363 364 <div class="item-buscador block xl:inline-block xl:mt-0"> 365 <a href="#" aria-label="Buscar" class="showMainSearch text-nav-link font-nav-link py-3 px-3 block xl:inline-block cursor-pointer"> 366 <svg aria-hidden="true" class="w-5 h-5 block xl:inline-block" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"></path></svg> 367 </a> 368 </div> 369 </div> 370 <div class="buscador text-sm xl:flex-grow" style="display: none;"> 371 <form action="/buscador/?" method="GET"> 372 <label for="default-search" class="mb-2 text-sm font-medium text-gray-900 sr-only">Buscar</label> 373 <div class="relative flex"> 374 <div class="absolute inset-y-0 left-0 flex items-center pl-3 pointer-events-none"> 375 <svg aria-hidden="true" class="w-5 h-5 text-gray-500" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"> 376 <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"></path> 377 </svg> 378 </div> 379 <input type="search" id="default-search" name="s" class="block w-full p-4 pl-10 text-sm text-gray-900 border border-gray-300 rounded-lg bg-gray-50 focus:ring-yellow-100 focus:border-yellow-100" placeholder="Ingrese el texto a buscar..."> 380 <div class="absolute right-2.5 bottom-2.5"> 381 <button type="submit" class="bg-primary focus:ring-4 focus:outline-none focus:ring-yellow-100 text-white font-medium rounded-lg text-sm px-4 py-2">Buscar</button> 382 <button type="button" class="hideMainSearch bg-primary focus:ring-4 text-white focus:outline-none focus:ring-yellow-100 font-medium rounded-lg text-sm px-4 py-2">X</button> 383 </div> 384 </div> 385 </form> 386 387 </div> 388 </div> 389</nav>
390<script data-cfasync="false"> 391 392(() => { 393 394 const boton = document.querySelector('#boton'); 395 const menu = document.querySelector('#menu'); 396 const links = document.querySelectorAll('.nav-link-parent'); 397 const logo = document.getElementById("header-logo-scrolled"); 398 const logoNavMenuScroll = document.getElementById("logo-nav-menu-scroll"); 399 const nav = document.getElementById("nav"); 400 const searchButtons = document.querySelectorAll('.showMainSearch'); 401 const hideSearchButton = document.querySelector('.hideMainSearch'); 402 403 const headerScrolled = document.getElementById("header-scrolled"); 404 var offsetNavOnStart = nav.getBoundingClientRect().top; 405 406 boton.addEventListener('click', () => { 407 menu.classList.toggle('hidden'); 408 }); 409 410 links.forEach(link => { 411 link.addEventListener('click', () => { 412 const hiddenChild = link.nextElementSibling; 413 hiddenChild.classList.toggle('hidden'); 414 }); 415 }); 416 417 searchButtons.forEach(button => { 418 button.addEventListener('click', () => { 419 showMainSearch(); 420 }); 421 }); 422 hideSearchButton.addEventListener('click', () => { 423 hideMainSearch(); 424 }); 425 426 427var listado = document.querySelector('#menu .listado'); 428var buscador = document.querySelector('#menu .buscador'); 429 430if(offsetNavOnStart == 0){ 431 navScrolledShow(true); 432}else{ 433 window.onscroll = function () { scrollFunction() }; 434} 435 436function showMainSearch(){ 437 listado.style.display = 'none'; 438 buscador.style.display = 'block'; 439} 440 441function hideMainSearch(){ 442 if(isMobile){ 443 listado.style.display = 'block'; 444 }else{ 445 listado.style.display = 'flex'; 446 } 447 buscador.style.display = 'none'; 448} 449 450function scrollFunction(){ 451 452 var scrollDistance = document.documentElement.scrollTop; 453 454 if (scrollDistance > offsetNavOnStart) { 455 456 navScrolledShow(false); 457 458 } else { 459 navScrolledHide(); 460 } 461 462} 463 464function navScrolledShow(init){ 465 let navMedidas = nav.getBoundingClientRect(); 466 let headerScrolledLeft = isMobile ? parseInt(navMedidas.width / 2) - parseInt(logo.width / 2) : false; 467 468 nav.classList.remove("menu-no-scrolled"); 469 nav.classList.add("menu-scrolled"); 470 document.body.classList.add('body-scrolled'); 471 if(isMobile){ 472 headerScrolled.style.display = 'flex'; 473 headerScrolled.style.left = `${headerScrolledLeft}px`; 474 }else{ 475 logoNavMenuScroll.style.display = 'block'; 476 } 477} 478function navScrolledHide(){ 479 let navMedidas = nav.getBoundingClientRect(); 480 let headerScrolledLeft = isMobile ? parseInt(navMedidas.width / 2) - parseInt(logo.width / 2) : false; 481 nav.classList.remove("menu-scrolled"); 482 nav.classList.add("menu-no-scrolled"); 483 if(isMobile){ 484 headerScrolled.style.display = 'none'; 485 }else{ 486 logoNavMenuScroll.style.display = 'none'; 487 } 488} 489})(); 490 491</script>
491 492 493 494 495 <!-- Contenido --> 496 <div class="flex-grow" id="main"> 497 498 <!-- PLANTILLA --> 499 500 501 <!-- SLOT-100 --> 502 503 504 <!-- SLOT--> 505 506 507 508 509 510 511 512 <!-- SLOT-66-33 --> 513<div class="slot-66-33 grid grid-cols-1 md:grid-cols-3 items-start default-gap default-padding container mx-auto"> 514 <div class="col-span-1 md:col-span-2"> 515 516 <!-- SLOT RESERVADO--> 517 <article class="pagina clima"> 518 <h1 class="h1">Pronóstico extendido</h1> 519 520 521 <div class="contenido"><div id="cont_89eee9bf17c17dd56c8a9f62879a4258">
521<script type="241f3d933342c4da266314bd-text/javascript" async src="https://www.meteored.com.ar/wid_loader/89eee9bf17c17dd56c8a9f62879a4258"></script>
521</div></div> 522</article> 523 524 </div> 525 <div class="col-span-1"> 526 527 <!-- SLOT--> 528 529 530 </div> 531</div> 532 533 534 535 <!-- SLOT-100 --> 536 537 538 <!-- SLOT--> 539 540 541 542 543 544 545 546 </div> 547 548 549 <footer class="text-sm bg-footer text-light"> 550 <div class="container mx-auto grid grid-cols-12 items-center py-4 py-2 px-0 xl:px-4"> 551 552 <!-- COL IZQ --> 553 <div class="col-span-12 md:col-span-6 h-full"> 554 <div class="flex flex-col h-full pt-2"> 555 <div class="text-center md:text-left flex-grow"> 556 <img 557 loading="lazy" 558 src="/images/custom/logo-footer.webp?_v=v3-76" 559 alt="Pronóstico extendido | Enfoque Uno" 560 class="mx-auto md:mx-0" width="240" height="80"> 561 562 </div> 563 <div class="text-center md:text-left"> 564 ENFOQUE UNO es un producto de MEDIOS BUENOS AIRES<br> 565 Todos los derechos reservados | Prohibida su reproducción total o parcial sin expresa autorización.<br> 566 Email: <a href="/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="99faf6f7edf8faedf6d9fcf7fff6e8ecfcecf7f6b7faf6f4b7f8eb">[email protected]</a>. 567 </div> 568 </div> 569 </div> 570 571 572 573 <!-- COL DER --> 574 <div class="col-span-12 md:col-span-6 h-full text-center md:text-right"> 575 <div class="flex flex-col h-full pt-2 text-center md:text-right"> 576 577 <div class="flex justify-center md:justify-end items-center pt-8"> 578 579 580<a aria-label="Facebook" href="https://www.facebook.com/enfoqueunook" target="_blank" 581 class="inline-block mx-2"> 582 <svg width="32" height="32" class="bi bi-facebook text-light" xmlns="http://www.w3.org/2000/svg" 583 fill="currentColor" viewBox="0 0 16 16"> 584 <path 585 d="M16 8.049c0-4.446-3.582-8.05-8-8.05C3.58 0-.002 3.603-.002 8.05c0 4.017 2.926 7.347 6.75 7.951v-5.625h-2.03V8.05H6.75V6.275c0-2.017 1.195-3.131 3.022-3.131.876 0 1.791.157 1.791.157v1.98h-1.009c-.993 0-1.303.621-1.303 1.258v1.51h2.218l-.354 2.326H9.25V16c3.824-.604 6.75-3.934 6.75-7.951z" 586 fill="currentColor"></path> 587 </svg> 588</a> 589 590 591 592 <a aria-label="Instagram" href="https://www.instagram.com/enfoqueunook/" target="_blank" class="inline-block mx-2"> 593 <svg class="text-light" width="32" 594 height="32" aria-hidden="true" focusable="false" data-prefix="fab" data-icon="instagram" 595 role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"> 596 <path fill="currentColor" 597 d="M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z" /> 598 599 </svg> 600 </a> 601 602 603 604 <a aria-label="Twitter" href="https://twitter.com/enfoqueunook" target="_blank" 605 class="inline-block mx-2"> 606 <svg class="text-light" width="32" height="32" aria-hidden="true" focusable="false" data-prefix="fab" 607 data-icon="twitter" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"> 608 609 <path fill="currentColor" d="M389.2 48h70.6L305.6 224.2 487 464H345L233.7 318.6 106.5 464H35.8L200.7 275.5 26.8 48H172.4L272.9 180.9 389.2 48zM364.4 421.8h39.1L151.1 88h-42L364.4 421.8z"/> 610 611 </svg> 612</a> 613 614 615 616 617 618 <a href="/notificationstatus" id="mainIconNotificacionStatus"> 619 <div id="mainIconNotificationsEnabled"><svg class="text-light" width="32" 620 height="32" aria-hidden="true" focusable="false" data-prefix="fab" data-icon="notificaciones" 621 role="img" 622 xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512">
623 <path fill="currentColor" d="M224 0c-17.7 0-32 14.3-32 32V51.2C119 66 64 130.6 64 208v18.8c0 47-17.3 92.4-48.5 127.6l-7.4 8.3c-8.4 9.4-10.4 22.9-5.3 34.4S19.4 416 32 416H416c12.6 0 24-7.4 29.2-18.9s3.1-25-5.3-34.4l-7.4-8.3C401.3 319.2 384 273.9 384 226.8V208c0-77.4-55-142-128-156.8V32c0-17.7-14.3-32-32-32zm45.3 493.3c12-12 18.7-28.3 18.7-45.3H224 160c0 17 6.7 33.3 18.7 45.3s28.3 18.7 45.3 18.7s33.3-6.7 45.3-18.7z"/> 624</svg> 625</div> 626 <div id="mainIconNotificationsDisabled" class="hidden"><svg class="text-light" width="32" 627 height="32" aria-hidden="true" focusable="false" data-prefix="fab" data-icon="notificaciones" 628 role="img" 629 xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"> 630 <path fill="currentColor" d="M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L542.6 400c2.7-7.8 1.3-16.5-3.9-23l-14.9-18.6C495.5 322.9 480 278.8 480 233.4V208c0-77.4-55-142-128-156.8V32c0-17.7-14.3-32-32-32s-32 14.3-32 32V51.2c-42.6 8.6-79 34.2-102 69.3L38.8 5.1zM224 150.3C243.6 117.7 279.3 96 320 96c61.9 0 112 50.1 112 112v25.4c0 32.7 6.4 64.8 18.7 94.5L224 150.3zM406.2 416l-60.9-48H168.3c21.2-32.8 34.4-70.3 38.4-109.1L160 222.1v11.4c0 45.4-15.5 89.5-43.8 124.9L101.3 377c-5.8 7.2-6.9 17.1-2.9 25.4s12.4 13.6 21.6 13.6H406.2zM384 448H320 256c0 17 6.7 33.3 18.7 45.3s28.3 18.7 45.3 18.7s33.3-6.7 45.3-18.7s18.7-28.3 18.7-45.3z"/> 631</svg> 632</div> 633 </a> 634 635 </div> 636 637 <div class="text-center md:text-right mt-4"> 638 639 640 <a href="/paginas/p1-quienes-somos">Quienes somos</a> | <a href="/rss">Rss</a> <br><a href="/contacto">Contáctenos</a> | <a href="/archivo">Archivo</a> <br><br> 641 642 643 <a href="https://www.cmsparamedios.com.ar" target="_blank">CMS para medios</a> by <a 644 href="https://www.troopsf.com" target="_blank">Troop</a> 645 </div> 646 647 </div> 648 </div> 649 </div> 650</footer>
vendor: 113 bytes, lines 650-653
650 651 652 653<script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>
653<script defer="" data-cfasync="false" src="/javascripts/functions.js?_v=v3-76"></script>
653 654 655
656<script type="241f3d933342c4da266314bd-text/javascript"> 657 658 function shareOnFacebook() { 659 660 var encodedUrl = encodeURIComponent(window.location.href); 661 var facebookUrl = 'https://www.facebook.com/sharer/sharer.php?u=' + encodedUrl; 662 window.open(facebookUrl); 663 } 664 665 function shareOnTwitter() { 666 var encodedUrl = encodeURIComponent(window.location.href); 667 var twitterUrl = 'https://twitter.com/intent/tweet?url=' + encodedUrl; 668 window.open(twitterUrl); 669 } 670 671 function shareByEmail() { 672 var encodedUrl = encodeURIComponent(window.location.href); 673 var subject = 'Echa un vistazo a este enlace'; 674 var body = '¡Hola! He encontrado este enlace interesante: ' + window.location.href; 675 var mailtoUrl = 'mailto:?subject=' + encodeURIComponent(subject) + '&body=' + encodeURIComponent(body); 676 window.location.href = mailtoUrl; 677 } 678 679 function shareOnWhatsApp() { 680 var encodedUrl = encodeURIComponent(window.location.href); 681 var whatsappUrl = isMobile == true ? 'https://api.whatsapp.com/send?text=' + encodedUrl : 'https://web.whatsapp.com/send?text=' + encodedUrl; 682 window.open(whatsappUrl); 683 } 684 685 function copyToClipboard() { 686 var tempInput = document.createElement("input"); 687 tempInput.value = window.location.href; 688 document.body.appendChild(tempInput); 689 tempInput.select(); 690 tempInput.setSelectionRange(0, 99999); 691 document.execCommand("copy"); 692 document.body.removeChild(tempInput); 693 alert("Enlace copiado al portapapeles: " + window.location.href); 694 } 695 696 697 698 699</script>
699 700 701 702
703<script type="module" data-cfasync="false"> 704 705 706 707 // Import the functions you need from the SDKs you need 708 import { initializeApp } from "https://www.gstatic.com/firebasejs/10.11.0/firebase-app.js"; 709 import { getMessaging, getToken, onMessage } from "https://www.gstatic.com/firebasejs/10.11.0/firebase-messaging.js"; 710 711 const notificationsStatusBadge = document.getElementById("notificationsStatusBadge"); 712 const notificationsSubscriptionForceEnable = document.getElementById("notificationsSubscriptionForceEnable"); 713 const mainIconNotificacionStatus = document.getElementById("mainIconNotificacionStatus"); 714 const mainIconNotificacionStatusEnabled = document.getElementById("mainIconNotificationsEnabled"); 715 const mainIconNotificacionStatusDisabled = document.getElementById("mainIconNotificationsDisabled"); 716 717 718 const firebaseConfig = {"apiKey":"AIzaSyDZFJ6VePebiqmYh3_oMEt3GYUToXChr7s","authDomain":"enfoque-uno.firebaseapp.com","projectId":"enfoque-uno","storageBucket":"enfoque-uno.appspot.com","messagingSenderId":"505841143993","appId":"1:505841143993:web:6fe470c1372c2c67c98b68","measurementId":"G-F7NEXH3YKY"}; 719 const firebaseVersion = 2; 720 721 // Initialize Firebase 722 const app = initializeApp(firebaseConfig); 723 const messaging = getMessaging(app); 724 725 var messagingNeedUpdate = false; 726 727 if ('serviceWorker' in navigator) { 728 navigator.serviceWorker.register('/firebase-messaging-sw.js?_v=v3-76').then(function(registration) { 729 }).catch(function(error) { 730 731 }); 732 } 733 function checkSubscriptionDate(date, days) { 734 let dateObject = new Date(date); 735 736 if (isNaN(dateObject.getTime())) { 737 return false; 738 } 739 740 let currentDate = new Date(); 741 742 let pastDate = new Date(dateObject); 743 pastDate.setDate(pastDate.getDate() + days); 744 745 return currentDate >= pastDate; 746 } 747 748 function checkSubscriptionNotification(){ 749 750 let localToken = pushSubscriptionLocalGet(); 751 752 if(localToken == null){ 753 754 return { subscribed: false, ask: true }; 755 }else{ 756 757 try { 758 let tokenObj = JSON.parse(localToken); 759 760 if(tokenObj?.date == null){ 761 // VERSION ANTERIOR 762 messagingNeedUpdate = true; 763 764 tokenObj.date = '2026-10-03'; 765 pushSubscriptionLocalSave(tokenObj); 766 767 return { subscribed: true, ask: true, token: tokenObj?.token, firebaseVersion: tokenObj?.firebaseVersion }; 768 } 769 770 if(tokenObj?.subscribed == 1 || tokenObj?.subscribed == true){ 771 // Subscrito 772 if(tokenObj?.firebaseVersion != firebaseVersion){ 773 if(checkSubscriptionDate(tokenObj?.date, 7)){ 774 messagingNeedUpdate = true; 775 tokenObj.date = '2026-10-03'; 776 pushSubscriptionLocalSave(tokenObj); 777 return { subscribed: true, ask: true, token: tokenObj?.token, firebaseVersion: tokenObj?.firebaseVersion }; 778 }else{ 779 return { subscribed: true, ask: false, token: tokenObj?.token, firebaseVersion: tokenObj?.firebaseVersion }; 780 } 781 }else{ 782 return { subscribed: true, ask: false, token: tokenObj?.token, firebaseVersion: tokenObj?.firebaseVersion }; 783 } 784 }else{ 785 // NO subscrito 786 787 if(checkSubscriptionDate(tokenObj?.date, 7)){ 788 return { subscribed: false, ask: true, token: tokenObj?.token, firebaseVersion: tokenObj?.firebaseVersion }; 789 } 790 return { subscribed: false, ask: false, token: tokenObj?.token, firebaseVersion: tokenObj?.firebaseVersion }; 791 } 792 } catch (error) { 793 // Token incorrecto 794 pushSubscriptionLocalRemove(); 795 return { subscribed: false, ask: false, token: tokenObj?.token, firebaseVersion: tokenObj?.firebaseVersion }; 796 } 797 798 799 } 800 801 } 802 803 804 setTimeout(() => { 805 806 let subscriptionNotificationStatus = checkSubscriptionNotification(); 807
808 if(subscriptionNotificationStatus?.ask){ 809 const pushSubscriptionModal = document.getElementById("pushSubscriptionModal"); 810 const pushSubscriptionModalDetalle = document.getElementById("pushSubscriptionModalDetalle"); 811 const statusPagePushSubscriptionButton = document.getElementById("statusPagePushSubscriptionButton"); 812 const statusPagePushSubscriptionButtonDecline = document.getElementById("statusPagePushSubscriptionButtonDecline"); 813 814 if (pushSubscriptionModal) { 815 statusPagePushSubscriptionButton.classList.add("hidden"); 816 pushSubscriptionModal.classList.remove("hidden"); 817 declinePushSubscription.classList.remove("hidden"); 818 acceptPushSubscription.classList.remove("hidden"); 819 if(messagingNeedUpdate){ 820 pushSubscriptionModalDetalle.classList.remove("hidden"); 821 statusPagePushSubscriptionButton.classList.remove("hidden"); 822 statusPagePushSub
822scriptionButtonDecline.classList.remove("hidden"); 823 declinePushSubscription.classList.add("hidden"); 824 acceptPushSubscription.classList.add("hidden"); 825 826 } 827 setTimeout(function() { 828 pushSubscriptionModal.classList.add("opacity-100"); 829 }, 100); 830 831 } 832 } 833 834 pushSubscriptionInit(subscriptionNotificationStatus); 835 836 }, 3000 ); 837 838 function pushSubscriptionInit(subscriptionNotificationStatus){ 839 840 if ("Notification" in window) { 841 if(subscriptionNotificationStatus?.subscribed){ 842 switch (Notification.permission) { 843 844 case 'granted': 845 pushSubscriptionOnMessage(); 846 break; 847 848 case 'denied': 849 if(subscriptionNotificationStatus?.token){ 850 savedTokenUnsubscribeAndDelete(subscriptionNotificationStatus?.token); 851 } 852 notificationsStatusBadgeUpdate('disabled'); 853 break; 854 855 default: 856 pushSubscriptionRequestPermission(); 857 break; 858 } 859 }else{ 860 notificationsStatusBadgeUpdate('disabled'); 861 } 862 }else{ 863 notificationsStatusBadgeUpdate('unsupported'); 864 } 865 866 867 } 868 869 function pushSubscriptionRequestPermission(){ 870 Notification.requestPermission().then(function(permission) { 871 872 if (permission === 'granted') { 873 874 getToken(messaging).then(function(token){ 875 876 pushSubscriptionOnMessage(); 877 878 }).catch(function(error) { 879 880 }); 881 882 883 } else { 884 885 let tokenObj = pushSubscriptionLocalGet(); 886 887 if(tokenObj?.token != null){ 888 savedTokenUnsubscribeAndDelete(tokenObj?.token); 889 }else{ 890 let tokenData = { 891 "token": null, 892 "subscribed": false, 893 "date": '2026-10-03' 894 } 895 pushSubscriptionLocalSave(tokenData); 896 } 897 898 } 899 }).catch(function(err) { 900 notificationsStatusBadgeUpdate('error'); 901 }); 902 } 903 904 function pushSubscriptionOnMessage(){ 905 906 getToken(messaging).then(function(token){ 907 908 909 saveTokenAndSubscribe(token); 910 911 notificationsStatusBadgeUpdate('enabled'); 912 913 914 onMessage(messaging, (payload) => { 915 916 if(!payload.data){ 917 return false; 918 919 } 920 921 const toastContainer = document.createElement('div'); 922 toastContainer.style.position = 'fixed'; 923 toastContainer.style.top = '20px'; 924 toastContainer.style.right = '20px'; 925 toastContainer.style.backgroundColor = '#333'; 926 toastContainer.style.color = 'white'; 927 toastContainer.style.padding = '15px'; 928 toastContainer.style.borderRadius = '5px'; 929 toastContainer.style.zIndex = '100'; 930 toastContainer.style.display = 'block'; 931 toastContainer.style.width = '300px'; 932 document.body.appendChild(toastContainer); 933 934 935 const toastTitle = document.createElement('p'); 936 toastTitle.textContent = payload.notification.title; 937 toastTitle.style.marginTop = '0'; 938 toastTitle.style.fontSize = '10px'; 939 toastContainer.appendChild(toastTitle); 940 941 const toastBodyLink = document.createElement('a'); 942 toastBodyLink.href = payload.data.link; 943 const toastBody = document.createElement('h1'); 944 toastBody.textContent = payload.notification.body; 945 toastBody.style.marginBottom = '10px'; 946 toastBodyLink.appendChild(toastBody); 947 toastContainer.appendChild(toastBodyLink); 948 949 const toastImageLink = document.createElement('a'); 950 toastImageLink.href = payload.data.link; 951 const toastImage = document.createElement('img'); 952 toastImage.src = payload.notification.image; 953 toastImage.alt = payload.notification.title; 954 toastImage.style.display = 'block'; 955 toastImage.style.maxWidth = '100%'; 956 toastImage.style.maxHeight = '120px'; 957 toastImageLink.appendChild(toastImage); 958 toastContainer.appendChild(toastImageLink); 959 960 961 const closeButton = document.createElement('span'); 962 closeButton.textContent = 'Ã'; 963 closeButton.className = 'close'; 964 closeButton.style.position = 'absolute'; 965 closeButton.style.top = '5px'; 966 closeButton.style.right = '10px'; 967 closeButton.style.cursor = 'pointer'; 968 closeButton.onclick = hideToast; 969 toastContainer.appendChild(closeButton); 970 971 function hideToast() { 972 document.body.removeChild(toastContainer); 973 } 974 975 function openURL(url) { 976 window.location.href = url; 977 } 978 979 }); 980 981 }).catch(function(error) { 982 983 notificationsStatusBadgeUpdate('error'); 984 985 }); 986 } 987 function notificationsStatusBadgeUpdate(status){ 988 989 if(notificationsStatusBadge){ 990 notificationsStatusError.classList.add("hidden"); 991 notificationsSubscriptionForceEnable.classList.add("hidden"); 992 } 993 if(mainIconNotificacionStatus){ 994 mainIconNotificacionStatusDisabled.classList.add("hidden"); 995 } 996 switch (status) { 997 case "enabled": 998 999 if(notificationsStatusBadge){ 1000 notificationsStatusBadge.innerHTML = 'SUSCRIPTO'; 1001 notificationsStatusBadge.style.backgroundColor = "#1b8724"; 1002 notificationsStatusBadge.style.color = "#ffffff"; 1003 } 1004 if(mainIconNotificacionStatus){ 1005 mainIconNotificacionStatusDisabled.classList.add("hidden"); 1006 mainIconNotificacionStatusEnabled.classList.remove("hidden"); 1007 } 1008 1009 1010 break; 1011 case "disabled": 1012 if(notificationsStatusBadge){ 1013 notificationsStatusBadge.innerHTML = 'NO SUSCRIPTO'; 1014 notificationsStatusBadge.style.backgroundColor = "#DDDDDD"; 1015 notificationsStatusBadge.style.color = "#333333"; 1016 notificationsSubscriptionForceEnable.classList.remove("hidden"); 1017 } 1018 if(mainIconNotificacionStatus){ 1019 mainIconNotificacionStatusEnabled.classList.add("hidden"); 1020 mainIconNotificacionStatusDisabled.classList.remove("hidden"); 1021 } 1022 break; 1023 case "error": 1024 if(notificationsStatusBadge){ 1025 notificationsStatusBadge.innerHTML = 'EN PAUSA'; 1026 notificationsStatusBadge.style.backgroundColor = "#DDDDDD"; 1027 notificationsStatusBadge.style.color = "#333333"; 1028 notificationsStatusError.classList.remove("hidden"); 1029 } 1030 if(mainIconNotificacionStatus){ 1031 mainIconNotificacionStatusEnabled.classList.add("hidden"); 1032 mainIconNotificacionStatusDisabled.classList.remove("hidden"); 1033 } 1034 break; 1035 case "unsupported": 1036 if(notificationsStatusBadge){ 1037 notificationsStatusBadge.innerHTML = 'NO SOPORTADO'; 1038 notificationsStatusBadge.style.backgroundColor = "#DDDDDD"; 1039 notificationsStatusBadge.style.color = "#333333"; 1040 } 1041 if(mainIconNotificacionStatus){ 1042 mainIconNotificacionStatusEnabled.classList.add("hidden"); 1043 mainIconNotificacionStatusDisabled.classList.remove("hidden"); 1044 } 1045 break; 1046 1047 } 1048 1049 1050 } 1051 1052 async function saveTokenAndSubscribe(token) { 1053
1054 let localToken = pushSubscriptionLocalGet(); 1055 1056 try { 1057 let tokenObj = JSON.parse(localToken); 1058 1059 if(tokenObj?.token == token){ 1060 1061 1062 if(tokenObj?.firebaseVersion != firebaseVersion){ 1063 /* Nueva version -> se subscribe */ 1064 return await firebaseSubscribeApi(token, tokenObj); 1065 }else{ 1066 /* Token local igual al token -> Se ignora */ 1067 } 1068 1069 }else{ 1070 /* UNSUBSCRIBE ANTERIOR */ 1071 if(tokenObj?.token != null){ 1072 savedTokenUnsubscribeAndDelete(tokenObj?.token); 1073 } 1074 1075 return await firebaseSubscribeApi(token, tokenObj); 1076 1077 } 1078 1079 } catch (error) { 1080 1081 } 1082 1083 1084 1085 1086 } 1087 1088 async function firebaseSubscribeApi(token, tokenObj){ 1089 1090 // SUBSCRIBE ACTUAL 1091 const formData = new URLSearchParams({ 1092 'token': token 1093 }); 1094 1095 try { 1096 1097 const response = await fetch(apiURL + 'firebase/token-subscribe/', { 1098 method: 'POST', 1099 "headers": { 1100 "content-type": "application/x-www-form-urlencoded; charset=UTF-8", 1101 }, 1102 body: formData 1103 }); 1104 1105 const data = await response.json(); 1106 1107 if (data.success) { 1108 1109 let tokenData = { 1110 "token": token, 1111 "subscribed": true, 1112 "firebaseVersion": data?.data?.firebaseVersion, 1113 "date": '2026-10-03' 1114 } 1115 pushSubscriptionLocalSave(tokenData); 1116 } 1117 1118 return data; 1119 } catch (error) { 1120 1121 return null; 1122 1123 } 1124 } 1125 1126 function pushSubscriptionLocalSave(tokenObj){ 1127 window.localStorage.setItem('firebase-token',JSON.stringify(tokenObj)); 1128 } 1129 function pushSubscriptionLocalGet(){ 1130 return window.localStorage.getItem('firebase-token'); 1131 } 1132 function pushSubscriptionLocalRemove(){ 1133 return window.localStorage.removeItem('firebase-token'); 1134 } 1135 1136 async function savedTokenUnsubscribeAndDelete(token) { 1137 const url = apiURL + 'firebase/token-unsubscribe/'; 1138 const formData = new URLSearchParams({ 1139 'token': token 1140 }); 1141 1142 try { 1143 1144 const response = await fetch(url, { 1145 method: 'POST', 1146 "headers": { 1147 "content-type": "application/x-www-form-urlencoded; charset=UTF-8", 1148 }, 1149 body: formData 1150 }); 1151 1152 const data = await response.json(); 1153 1154 let tokenData = { 1155 "token": null, 1156 "subscribed": false, 1157 "date": '2026-10-03' 1158 } 1159 pushSubscriptionLocalSave(tokenData); 1160 1161 1162 1163 return data; 1164 } catch (error) { 1165 // Handle error if necessary 1166 return null; 1167 } 1168 } 1169 1170 if(notificationsSubscriptionForceEnable){ 1171 notificationsSubscriptionForceEnable.addEventListener("click", function(event) { 1172 1173 notificationsSubscriptionForceEnable.classList.add("hidden"); 1174 pushSubscriptionModal.classList.add("hidden"); 1175 let tokenData = { 1176 "token": null, 1177 "subscribed": true, 1178 "date": '2026-10-03' 1179 } 1180 pushSubscriptionLocalSave(tokenData); 1181 pushSubscriptionRequestPermission(); 1182 }) 1183 } 1184 1185 1186 1187 1188 var declinePushSubscription = document.getElementById("declinePushSubscription"); 1189 1190 declinePushSubscription.addEventListener("click", function(event) { 1191 let pushSubscriptionModal = document.getElementById("pushSubscriptionModal"); 1192 pushSubscriptionModal.classList.add("hidden"); 1193 let tokenData = { 1194 "token": null, 1195 "subscribed": false, 1196 "date": '2026-10-03' 1197 } 1198 pushSubscriptionLocalSave(tokenData); 1199 }); 1200 1201 1202
1203 var acceptPushSubscription = document.getElementById("acceptPushSubscription"); 1204 1205 acceptPushSubscription.addEventListener("click", function(event) { 1206 pushSubscriptionModal.classList.add("hidden"); 1207 let tokenData = { 1208 "token": null, 1209 "subscribed": true, 1210 "date": '2026-10-03' 1211 } 1212 pushSubscriptionLocalSave(tokenData); 1213 pushSubscriptionRequestPermission(); 1214 }); 1215 1216 1217 1218 var statusPagePushSubscriptionButtonDecline = document.getElementById("statusPagePushSubscriptionButtonDecline"); 1219 1220 statusPagePushSubscriptionButtonDecline.addEventListener("click", function(event) { 1221 let pushSubscriptionModal = document.getElementById("pushSubscriptionModal"); 1222 pushSubscriptionModal.classList.add("hidden"); 1223 1224 }); 1225 1226 1227 var statusPagePushSubscriptionButton = document.getElementById("statusPagePushSubscriptionButton"); 1228 1229 statusPagePushSubscriptionButton.addEventListener("click", function(event) { 1230 window.location.href = '/notificationstatus'; 1231 }); 1232 1233 </script>
1233 1234 1235 1236 1237 1238 <div id="bannerPopup" class="hidden fixed inset-0 flex items-center justify-center z-50 bg-black/60" data-src='{"id":0,"zonas_id":1,"label":null,"ancho":"640","zonas_tipos":"1","adserver_externo":false,"codigo":null,"zocalo":false,"popup":true,"banner_alto":false,"banner_ancho":false,"mobile_alto":false,"mobile_ancho":false,"image":false,"image_mobile":false,"banners_versiones_id":null,"url":null,"url_mobile":null,"target":null,"target_mobile":null}'> 1239 <div class="relative"> 1240 <img class="h-auto" src="/images/custom/pixel.webp" alt="Publicidad" style="max-height: 85vh"> 1241 <button type="button" class="cerrar absolute -right-8 -top-4 px-2 end-0 bg-gray-800 inline-flex items-center rounded border border-white text-white text-xl cursor-pointer"> 1242 X 1243 </button> 1244 </div> 1245 </div> 1246 1247
1247<script type="241f3d933342c4da266314bd-text/javascript"> 1248 1249 const modalPopup = document.getElementById("bannerPopup"); 1250 let popup = JSON.parse(modalPopup.dataset.src); 1251 if(!popup?.id){ 1252 popup = popup[Math.floor(Math.random()*popup.length)]; 1253 } 1254 const cookieNamePopup = `popup-${popup.zonas_id}-${popup.id}`; 1255 const cookiePopup = getCookie(cookieNamePopup); 1256 1257 if (!cookiePopup) { 1258 1259 let img = modalPopup.querySelector('img'); 1260 let showPopup = false; 1261 1262 if(isMobile){ 1263 1264 switch (popup.banners_versiones_id) { 1265 case '1': /* Compartida ( Desktop y Mobile ) */ 1266 img.setAttribute('src', popup.image); 1267 img.style.width = `${popup.banner_ancho}.px`; 1268 popup.url = popup.url; 1269 popup.target = popup.target; 1270 showPopup = true; 1271 break; 1272 case '2': /* Diferenciada ( Desktop / Mobile ) */ 1273 img.setAttribute('src', popup.image_mobile); 1274 img.style.width = `${popup.mobile_ancho}.px`; 1275 popup.url = popup.url_mobile; 1276 popup.target = popup.target_mobile; 1277 showPopup = true; 1278 break; 1279 case '3': /* Solo Desktop */ 1280 popup.url = null; 1281 popup.target = null; 1282 break; 1283 case '4': /* Solo Mobile */ 1284 img.setAttribute('src', popup.image_mobile) 1285 img.style.width = `${popup.mobile_ancho}.px`; 1286 popup.url = popup.url_mobile; 1287 popup.target = popup.target_mobile; 1288 showPopup = true; 1289 break; 1290 1291 default: 1292 break; 1293 } 1294 1295 1296 }else{ 1297 1298 switch (popup.banners_versiones_id) { 1299 case '1': /* Compartida ( Desktop y Mobile ) */ 1300 img.setAttribute('src', popup.image); 1301 img.style.height = `${popup.banner_alto}.px`; 1302 img.style.width = `${popup.banner_ancho}.px`; 1303 popup.url = popup.url; 1304 popup.target = popup.target; 1305 showPopup = true; 1306 break; 1307 case '2': /* Diferenciada ( Desktop / Mobile ) */ 1308 img.setAttribute('src', popup.image); 1309 img.style.height = `${popup.banner_alto}.px`; 1310 img.style.width = `${popup.banner_ancho}.px`; 1311 popup.url = popup.url; 1312 popup.target = popup.target; 1313 showPopup = true; 1314 break; 1315 case '3': /* Solo Desktop */ 1316 img.setAttribute('src', popup.image); 1317 img.style.height = `${popup.banner_alto}.px`; 1318 img.style.width = `${popup.banner_ancho}.px`; 1319 popup.url = popup.url; 1320 popup.target = popup.target; 1321 showPopup = true; 1322 break; 1323 case '4': /* Solo Mobile */ 1324 popup.url = null; 1325 popup.target = null; 1326 break; 1327 1328 default: 1329 break; 1330 } 1331 1332 } 1333 1334 if(showPopup){ 1335 1336 if(popup.url_mobile || popup.url){ 1337 1338 var enlace = document.createElement('a'); 1339 1340 if(popup.target){ 1341 enlace.target = popup.target; 1342 } 1343 enlace.href = popup.url; 1344 1345 enlace.appendChild(img.cloneNode()); 1346 1347 img.parentNode.replaceChild(enlace, img); 1348 1349 } 1350 1351 modalPopup.classList.remove("hidden"); 1352 1353 let button = modalPopup.querySelector('button'); 1354 1355 button.addEventListener("click", () => { 1356
1357 setCookieMinutes(cookieNamePopup, 'closed', cookiesBanners.zonaBannerPopup.minutosExpire); 1358 }); 1359 1360 /**** Tracking Analytics ****/ 1361 // Banner 1362 //trackImpresion({ event_category: BANNER_DEFAULT_EVENT_CATEGORY, event_label: `${popup.label} | ${popup.id}` }); 1363 // Zona 1364 trackImpresion({ event_category: `${ZONA_BANNER_NOMBRE} | PopUp | ${popup.zonas_id}`, event_label: `${BANNER_NOMBRE} | ${popup.label} | ${popup.id}` }); 1365 1366 1367 modalPopup.addEventListener("click", () => { 1368 // banner 1369 //trackClick({ event_category: BANNER_DEFAULT_EVENT_CATEGORY, event_label: `${popup.label} | ${popup.id}` }); 1370 // zona 1371 trackClick({ event_category: `${ZONA_BANNER_NOMBRE} | PopUp | ${popup.zonas_id}`, event_label: `${BANNER_NOMBRE} | ${popup.label} | ${popup.id}` }); 1372 1373 modalPopup.classList.add("hidden"); 1374 }); 1375 1376 1377 } 1378 1379 1380 } 1381 1382 </script>
1382 1383 1384 1385 1386 1387 1388 <div id="bannerZocalo" class="hidden fixed bottom-0 inset-x-0 flex items-center justify-center z-50" data-src='{"id":0,"zonas_id":2,"label":null,"ancho":"1000","zonas_tipos":"1","adserver_externo":false,"codigo":null,"zocalo":true,"popup":false,"banner_alto":false,"banner_ancho":false,"mobile_alto":false,"mobile_ancho":false,"image":false,"image_mobile":false,"banners_versiones_id":null,"url":null,"url_mobile":null,"target":null,"target_mobile":null}'> 1389 <div class="relative"> 1390 1391 <img class="h-auto" src="/images/custom/pixel.webp" alt="Publicidad"> 1392 1393 <button type="button" class="cerrar absolute -right-8 -top-4 px-2 end-0 bg-gray-800 inline-flex items-center rounded border border-white text-white text-xl cursor-pointer"> 1394 X 1395 </button> 1396 </div> 1397 1398 </div> 1399
1399<script type="241f3d933342c4da266314bd-text/javascript"> 1400 1401 const modalZocalo = document.getElementById("bannerZocalo"); 1402 let zocalo = JSON.parse(modalZocalo.dataset.src); 1403 if(!zocalo?.id){ 1404 zocalo = zocalo[Math.floor(Math.random()*zocalo.length)]; 1405 } 1406 const cookieNameZocalo = `zocalo-${zocalo.zonas_id}-${zocalo.id}`; 1407 const cookieZocalo = getCookie(cookieNameZocalo); 1408 1409 if (!cookieZocalo) { 1410 1411 let img = modalZocalo.querySelector('img'); 1412 let showZocalo = false; 1413 1414 if(isMobile){ 1415 1416 switch (zocalo.banners_versiones_id) { 1417 case '1': /* Compartida ( Desktop y Mobile ) */ 1418 img.setAttribute('src', zocalo.image); 1419 img.style.width = `${zocalo.banner_ancho}.px`; 1420 zocalo.url = zocalo.url; 1421 zocalo.target = zocalo.target; 1422 showZocalo = true; 1423 break; 1424 case '2': /* Diferenciada ( Desktop / Mobile ) */ 1425 img.setAttribute('src', zocalo.image_mobile); 1426 img.style.width = `${zocalo.mobile_ancho}.px`; 1427 zocalo.url = zocalo.url_mobile; 1428 zocalo.target = zocalo.target_mobile; 1429 showZocalo = true; 1430 break; 1431 case '3': /* Solo Desktop */ 1432 zocalo.url = null; 1433 zocalo.target = ''; 1434 break; 1435 case '4': /* Solo Mobile */ 1436 img.setAttribute('src', zocalo.image_mobile) 1437 img.style.width = `${zocalo.mobile_ancho}.px`; 1438 zocalo.url = zocalo.url_mobile; 1439 zocalo.target = zocalo.target_mobile; 1440 showZocalo = true; 1441 break; 1442 1443 default: 1444 break; 1445 } 1446 1447 }else{ 1448 1449 switch (zocalo.banners_versiones_id) { 1450 case '1': /* Compartida ( Desktop y Mobile ) */ 1451 img.setAttribute('src', zocalo.image); 1452 img.style.height = `${zocalo.banner_alto}.px`; 1453 img.style.width = `${zocalo.banner_ancho}.px`; 1454 zocalo.url = zocalo.url; 1455 zocalo.target = zocalo.target; 1456 showZocalo = true; 1457 break; 1458 case '2': /* Diferenciada ( Desktop / Mobile ) */ 1459 img.setAttribute('src', zocalo.image); 1460 img.style.height = `${zocalo.banner_alto}.px`; 1461 img.style.width = `${zocalo.banner_ancho}.px`; 1462 zocalo.url = zocalo.url; 1463 zocalo.target = zocalo.target; 1464 showZocalo = true; 1465 break; 1466 case '3': /* Solo Desktop */ 1467 img.setAttribute('src', zocalo.image); 1468 img.style.height = `${zocalo.banner_alto}.px`; 1469 img.style.width = `${zocalo.banner_ancho}.px`; 1470 zocalo.url = zocalo.url; 1471 zocalo.target = zocalo.target; 1472 showZocalo = true; 1473 break; 1474 case '4': /* Solo Mobile */ 1475 zocalo.url = null; 1476 break; 1477 1478 default: 1479 break; 1480 } 1481 1482 } 1483 1484 if(showZocalo){ 1485 1486 if(zocalo.url){ 1487 1488 var enlace = document.createElement('a'); 1489 1490 if(zocalo.target){ 1491 enlace.target = zocalo.target; 1492 } 1493 enlace.href = zocalo.url; 1494 1495 enlace.appendChild(img.cloneNode()); 1496 1497 img.parentNode.replaceChild(enlace, img); 1498 1499 } 1500 1501 modalZocalo.classList.remove("hidden"); 1502 1503 let button = modalZocalo.querySelector('button'); 1504 1505 button.addEventListener("click", () => {
1506 setCookieMinutes(cookieNameZocalo, 'closed', cookiesBanners.zonaBannerZocalo.minutosExpire); 1507 }); 1508 1509 /**** Tracking Analytics ****/ 1510 // Banner 1511 //trackImpresion({ event_category: BANNER_DEFAULT_EVENT_CATEGORY, event_label: `${zocalo.label} | ${zocalo.id}` }); 1512 // Zona 1513 trackImpresion({ event_category: `${ZONA_BANNER_NOMBRE} | Zocalo | ${zocalo.zonas_id}`, event_label: `${BANNER_NOMBRE} | ${zocalo.label} | ${zocalo.id}` }); 1514 1515 1516 modalZocalo.addEventListener("click", () => { 1517 // banner 1518 // trackClick({ event_category: BANNER_DEFAULT_EVENT_CATEGORY, event_label: `${zocalo.label} | ${zocalo.id}` }); 1519 // zona 1520 trackClick({ event_category: `${ZONA_BANNER_NOMBRE} | Zocalo | ${zocalo.zonas_id}`, event_label: `${BANNER_NOMBRE} | ${zocalo.label} | ${zocalo.id}` }); 1521 1522 modalZocalo.classList.add("hidden"); 1523 }); 1524 } 1525 1526 } 1527 1528 </script>
1528 1529 1530 1531 1532 1533 1534 1535 <div class="background-on-popup"></div> 1536 1537 <div id="pushSubscriptionModal" class="fixed mx-auto top-0 z-50 hidden opacity-0 transition-opacity duration-500 ease-in-out w-full max-w-2xl max-h-full inset-x-0 shadow-2xl"> 1538 <!-- Modal content --> 1539 <div class="relative bg-white rounded-lg shadow"> 1540 <!-- Modal header --> 1541 <div class="flex items-center justify-between p-4 md:p-5 border-b rounded-t"> 1542 <h3 class="text-xl font-medium text-gray-900"> 1543 ¿Querés recibir nuestras notificaciones? 1544 </h3> 1545 <svg class="mr-2" width="28" height="28" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"> 1546 <path d="M224 0c-17.7 0-32 14.3-32 32V51.2C119 66 64 130.6 64 208v18.8c0 47-17.3 92.4-48.5 127.6l-7.4 8.3c-8.4 9.4-10.4 22.9-5.3 34.4S19.4 416 32 416H416c12.6 0 24-7.4 29.2-18.9s3.1-25-5.3-34.4l-7.4-8.3C401.3 319.2 384 273.9 384 226.8V208c0-77.4-55-142-128-156.8V32c0-17.7-14.3-32-32-32zm45.3 493.3c12-12 18.7-28.3 18.7-45.3H224 160c0 17 6.7 33.3 18.7 45.3s28.3 18.7 45.3 18.7s33.3-6.7 45.3-18.7z"/> 1547 </svg> 1548 </div> 1549 <div id="pushSubscriptionModalDetalle" class="hidden flex items-center p-4 md:p-5 border-t border-gray-200 rounded-b text-md font-medium text-gray-900"> 1550 Notificaciones Pausadas. Reactiva tus notificaciones. Hace clic en Reactivar y segui las instrucciones. 1551 1552 </div> 1553 <div class="flex items-center p-4 md:p-5 border-t border-gray-200 rounded-b"> 1554 <button id="declinePushSubscription" data-modal-hide="top-left-modal" type="button" class="py-2.5 px-5 text-sm font-medium text-gray-900 focus:outline-none bg-white rounded-lg border border-gray-200 hover:bg-gray-100 hover:text-blue-700 focus:z-10 focus:ring-4 focus:ring-gray-100"> NO, GRACIAS</button> 1555 <button id="acceptPushSubscription" data-modal-hide="top-left-modal" type="button" class="ml-2 text-white bg-primary focus:ring-4 focus:outline-none focus:ring-blue-300 font-medium rounded-lg text-sm px-5 py-2.5 text-center"> ACEPTAR</button>
1556 <button id="statusPagePushSubscriptionButtonDecline" data-modal-hide="top-left-modal" type="button" class="hidden py-2.5 px-5 text-sm font-medium text-gray-900 focus:outline-none bg-white rounded-lg border border-gray-200 hover:bg-gray-100 hover:text-blue-700 focus:z-10 focus:ring-4 focus:ring-gray-100"> NO, GRACIAS</button> 1557 <button id="statusPagePushSubscriptionButton" data-modal-hide="top-left-modal" type="button" class="hidden ml-2 text-white bg-primary focus:ring-4 focus:outline-none focus:ring-blue-300 font-medium rounded-lg text-sm px-5 py-2.5 text-center"> REACTIVAR</button> 1558 </div> 1559 </div> 1560 </div> 1561 1562 <div id="_cache_version" data-rel="1"></div>
vendor: 143 bytes, lines 1562-1563
1562 1563<script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="241f3d933342c4da266314bd-|49" defer></script>
1563<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"b822f3e177144ed792525d5488bafdb2","r":1,"spa":2}' crossorigin="anonymous"></script>
1563 1564</body> 1565</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.