1/*! 2 * jquery oembed plugin 3 * 4 * Copyright (c) 2009 Richard Chamorro 5 * Licensed under the MIT license 6 * 7 * Orignal Author: Richard Chamorro 8 * Forked by Andrew Mee to Provide a slightly diffent kind of embedding experience 9 */ 10(function ($) { 11 $.fn.oembed = function (url, options, embedAction) { 12 settings = $.extend(true, $.fn.oembed.defaults, options); 13 var shortURLList = ["0rz.tw", "1link.in", "1url.com", "2.gp", "2big.at", "2tu.us", "3.ly", "307.to", "4ms.me", "4sq.com", "4url.cc", "6url.com", "7.ly", "a.gg", "a.nf", "aa.cx", "abcurl.net", 14 "ad.vu", "adf.ly", "adjix.com", "afx.cc", "all.fuseurl.com", "alturl.com", "amzn.to", "ar.gy", "arst.ch", "atu.ca", "azc.cc", "b23.ru", "b2l.me", "bacn.me", "bcool.bz", "binged.it", 15 "bit.ly", "bizj.us", "bloat.me", "bravo.ly", "bsa.ly", "budurl.com", "canurl.com", "chilp.it", "chzb.gr", "cl.lk", "cl.ly", "clck.ru", "cli.gs", "cliccami.info", 16 "clickthru.ca", "clop.in", "conta.cc", "cort.as", "cot.ag", "crks.me", "ctvr.us", "cutt.us", "dai.ly", "decenturl.com", "dfl8.me", "digbig.com", 17 "http:\/\/digg\.com\/[^\/]+$", "disq.us", "dld.bz", "dlvr.it", "do.my", "doiop.com", "dopen.us", "easyuri.com", "easyurl.net", "eepurl.com", "eweri.com", 18 "fa.by", "fav.me", "fb.me", "fbshare.me", "ff.im", "fff.to", "fire.to", "firsturl.de", "firsturl.net", "flic.kr", "flq.us", "fly2.ws", "fon.gs", "freak.to", 19 "fuseurl.com", "fuzzy.to", "fwd4.me", "fwib.net", "g.ro.lt", "gizmo.do", "gl.am", "go.9nl.com", "go.ign.com", "go.usa.gov", "goo.gl", "goshrink.com", "gurl.es", 20 "hex.io", "hiderefer.com", "hmm.ph", "href.in", "hsblinks.com", "htxt.
20it", "huff.to", "hulu.com", "hurl.me", "hurl.ws", "icanhaz.com", "idek.net", "ilix.in", "is.gd", 21 "its.my", "ix.lt", "j.mp", "jijr.com", "kl.am", "klck.me", "korta.nu", "krunchd.com", "l9k.net", "lat.ms", "liip.to", "liltext.com", "linkbee.com", "linkbun.ch", 22 "liurl.cn", "ln-s.net", "ln-s.ru", "lnk.gd", "lnk.ms", "lnkd.in", "lnkurl.com", "lru.jp", "lt.tl", "lurl.no", "macte.ch", "mash.to", "merky.de", "migre.me", "miniurl.com", 23 "minurl.fr", "mke.me", "moby.to", "moourl.com", "mrte.ch", "myloc.me", "myurl.in", "n.pr", "nbc.co", "nblo.gs", "nn.nf", "not.my", "notlong.com", "nsfw.in", 24 "nutshellurl.com", "nxy.in", "nyti.ms", "o-x.fr", "oc1.us", "om.ly", "omf.gd", "omoikane.net", "on.cnn.com", "on.mktw.net", "onforb.es", "orz.se", "ow.ly", "ping.fm", 25 "pli.gs", "pnt.me", "politi.co", "post.ly", "pp.gg", "profile.to", "ptiturl.com", "pub.vitrue.com", "qlnk.net", "qte.me", "qu.tc", "qy.fi", "r.ebay.com", "r.im", "rb6.me", "read.bi", 26 "readthis.ca", "reallytinyurl.com", "redir.ec", "redirects.ca", "redirx.com", "retwt.me", "ri.ms", "rickroll.it", "riz.gd", "rt.nu", "ru.ly", "rubyurl.com", "rurl.org", 27 "rww.tw", "s4c.in", "s7y.us", "safe.mn", "sameurl.com", "sdut.us", "shar.es", "shink.de", "shorl.com", "short.ie", "short.to", "shortlinks.co.uk", "shorturl.com", 28 "shout.to", "show.my", "shrinkify.com", "shrinkr.com", "shrt.fr", "shrt.st", "shrten.com", "shrunkin.com", "simurl.com", "slate.me", "smallr.com", "smsh.me", "smurl.name", 29 "sn.im", "snipr.com", "snipurl.com", "snurl.com", "sp2.ro", "spedr.com", "srnk.net", "srs.li", "starturl.com", "stks.co", "su.pr", "surl.co.uk", "surl.hu", "t.cn", "t.co", "t.lh.com", 30 "ta.gd", "tbd.ly", "tcrn.ch", "tgr.me", "tgr.ph", "tighturl.com", "tiniuri.com", "tiny.cc", "tiny.ly", "tiny.pl", "tinylink.in", "tinyuri.ca", "tinyurl.com", "tk.", "tl.gd", 31 "tmi.me", "tnij.org", "tnw.to", "tny.com", "to.ly", "togoto.us", "totc.us", "toysr.us", "tpm.ly", "tr.im", "tra.kz", "trunc.it", "twhub.com", "twirl.at", 32 "twitclicks.com", "twitterurl.net", "twitterurl.org", "twiturl.de", "twurl.cc", "twurl.nl", "u.mavrev.com", "u.nu", "u76.org", "ub0.cc", "ulu.lu", "updating.me", "ur1.ca", 33 "url.az", "url.co.uk", "url.ie", "url360.me", "url4.eu", "urlborg.com", "urlbrief.com", "urlcover.com", "urlcut.com", "urlenco.de", "urli.nl", "urls.im", 34 "urlshorteningservicefortwitter.com", "urlx.ie", "urlzen.com", "usat.ly", "use.my", "vb.ly", "vevo.ly", "vgn.am", "vl.am", "vm.lc", "w55.de", "wapo.st", "wapurl.co.uk", "wipi.es", 35 "wp.me", "x.vu", "xr.com", "xrl.in", "xrl.us", "xurl.es", "xurl.jp", "y.ahoo.it", "yatuc.com", "ye.pe", "yep.it", "yfrog.com", "yhoo.it", "yiyd.com", "youtu.be", "yuarel.com", 36 "z0p.de", "zi.ma", "zi.mu", "zipmyurl.com", "zud.me", "zurl.ws", "zz.gd", "zzang.kr", "âº.ws", "â©.ws", "â¿.ws", "â¥.ws", "â.ws", "â.ws", "â¡.ws", "â¨.ws", "â¯.ws", "â¹.ws", "â½.ws"]; 37 38 if ($('#jqoembeddata').length === 0) $('<span id="jqoembeddata"></span>').appendTo('body'); 39 40 return this.each(function () { 41 var container = $(this), 42 resourceURL = (url && (!url.indexOf('http://') || !url.indexOf('https://'))) ? url : container.attr("href"), 43 provider; 44 45 if (embedAction) { 46 settings.onEmbed = embedAction; 47 } 48 else if (!settings.onEmbed) { 49 settings.onEmbed = function (oembedData) { 50 $.fn.oembed.insertCode(this, settings.embedMethod, oembedData); 51 }; 52 } 53 54 if (resourceURL !== null && resourceURL !== undefined) { 55 // Check if shorten URL 56 for (var j = 0, l = shortURLList.length; j < l; j++) { 57 var regExp = new RegExp('://' + shortURLList[j] + '/', "i"); 58 if (resourceURL.match(regExp) !== null) { 59 var ajaxopts = $.extend({ 60 url: "http://api.longurl.org/v2/expand", 61 dataType: 'jsonp', 62 data: { 63 url: resourceURL, 64 format: "json" 65 // callback: "?" 66 }, 67 success: function (data) { 68 // this = $.fn.oembed; 69 resourceURL = data['long-url']; 70 provider = $.fn.oembed.getOEmbedProvider(data['long-url']); 71 72 // remove fallback 73 if (!!settings.fallback === false) { 74 provider = provider.name.toLowerCase() === 'opengraph' ? null : provider; 75 } 76 77 if (provider !== null) { 78 provider.params = getNormalizedParams(settings[provider.name]) || {}; 79 provider.maxWidth = settings.maxWidth; 80 provider.maxHeight = settings.maxHeight; 81 embedCode(container, resourceURL, provider); 82 } else { 83 settings.onProviderNotFound.call(container, resourceURL); 84 } 85 }, 86 error: function () { 87 settings.onError.call(container, resourceURL) 88 } 89 }, settings.longUrlAjaxOptions || settings.ajaxOptions || {}); 90 91 $.ajax(ajaxopts); 92 93 return container; 94 } 95 } 96 provider = $.fn.oembed.getOEmbedProvider(resourceURL); 97 98 // remove fallback 99 if (!!settings.fallback === false) { 100 provider = provider.name.toLowerCase() === 'opengraph' ? null : provider; 101 } 102 if (provider !== null) { 103 provider.params = getNormalizedParams(settings[provider.name]) || {}; 104 provider.maxWidth = settings.maxWidth; 105 provider.maxHeight = settings.maxHeight; 106 embedCode(container, resourceURL, provider); 107 } else { 108 settings.onProviderNotFound.call(container, resourceURL); 109 } 110 } 111 return container; 112 }); 113 }; 114 115 var settings; 116 117 // Plugin defaults 118 $.fn.oembed.defaults = { 119 fallback: true, 120 maxWidth: null, 121 maxHeight: null, 122 includeHandle: false, 123 embedMethod: 'fill', 124 // "auto", "append", "fill" 125 onProviderNotFound: function () { 126 }, 127 beforeEmbed: function () { 128 }, 129 afterEmbed: function () { 130 }, 131 onEmbed: false, 132 onError: function (a, b, c, d) { 133 console.log('err:', a, b, c, d) 134 }, 135 ajaxOptions: {}, 136 longUrlAjaxOptions: {} 137 }; 138 139 /* Private functions */ 140 function rand(length, current) { // Found on 141 // http://stackoverflow.com/questions/1349404/generate-a-string-of-5-random-characters-in-javascript 142 current = current ? current : ''; 143 return length ? rand(--length, "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz".charAt(Math.floor(Math.random() * 60)) + current) : current; 144 } 145 146 function getRequestUrl(provider, externalUrl) { 147 var url = provider.apiendpoint, 148 qs = "", 149 i; 150 url += (url.indexOf("?") <= 0) ? "?" : "&"; 151 url = url.replace('#', '%23'); 152 153 if (provider.maxWidth !== null && (typeof provider.params.maxwidth === 'undefined' || provider.params.maxwidth === null)) { 154 provider.params.maxwidth = provider.maxWidth; 155 } 156 157 if (provider.maxHeight !== null && (typeof provider.params.maxheight === 'undefined' || provider.params.maxheight === null)) { 158 provider.params.maxheight = provider.maxHeight; 159 } 160 161 for (i in provider.params) { 162 // We don't want them to jack everything up by changing the callback 163 // parameter 164 if (i == provider.callbackparameter) 165 continue; 166 167 // allows the options to be set to null, don't send null values to 168 // the server as parameters 169 if (provider.params[i] !== null) 170 qs += "&" + escape(i) + "=" + provider.params[i]; 171 } 172 173 url += "format=" + provider.format + "&url=" + escape(externalUrl) + qs; 174 if (provider.dataType != 'json') 175 url += "&" + provider.callbackparameter + "=?"; 176 177 return url; 178 } 179 180 function success(oembedData, externalUrl, container) { 181 $('#jqoembeddata').data(externalUrl, oembedData.code); 182 settings.beforeEmbed.call(container, oembedData); 183 settings.onEmbed.call(container, oembedData); 184 settings.afterEmbed.call(container, oembedData); 185 } 186 187 function embedCode(container, externalUrl, embedProvider) { 188 if ($('#jqoembeddata').data(externalUrl) != undefined && embedProvider.embedtag.tag != 'iframe') { 189 var oembedData = {code: $('#jqoembeddata').data(externalUrl)}; 190 success(oembedData, externalUrl, container); 191 } else if (embedProvider.yql) { 192 var from = embedProvider.yql.from || 'htmlstring'; 193 var url = embedProvider.yql.url ? embedProvider.yql.url(externalUrl) : externalUrl; 194 var query = 'SELECT * FROM ' + from 195 + ' WHERE url="' + (url) + '"' 196 + " and " + (/html/.test(from) ? 'xpath' : 'itemPath') + "='" + (embedProvider.yql.xpath || '/') + "'"; 197 if (from == 'html') 198 query += " and compat='html5'"; 199 var ajaxopts = $.extend({ 200 url: "//query.yahooapis.com/v1/public/yql", 201 dataType: 'jsonp', 202 data: { 203 q: query, 204 format: "json", 205 env: 'store://datatables.org/alltableswithkeys', 206 callback: "?" 207 }, 208 success: function (data) { 209 var result; 210 211 if (embedProvider.yql.xpath && embedProvider.yql.xpath == '//meta|//title|//link') { 212 var meta = {}; 213 214 if (data.query == null) { 215 data.query = {}; 216 } 217 if (data.query.results == null) { 218 data.query.results = {"meta": []}; 219 } 220 for (var i = 0, l = data.query.results.meta.length; i < l; i++) { 221 var name = data.query.results.meta[i].name || data.query.results.meta[i].property || null; 222 if (name == null)continue; 223 meta[name.toLowerCase()] = data.query.results.meta[i].content; 224 } 225 if (!meta.hasOwnProperty("title") || !meta.hasOwnProperty("og:title")) { 226 if (data.query.results.title != null) { 227 meta.title = data.query.results.title; 228 } 229 } 230 if (!meta.hasOwnProperty("og:image") && data.query.results.hasOwnProperty("link")) { 231 for (var i = 0, l = data.query.results.link.length; i < l; i++) { 232 if (data.query.results.link[i].hasOwnProperty("rel")) { 233 if (data.query.results.link[i].rel == "apple-touch-icon") { 234 if (data.query.results.link[i].href.charAt(0) == "/") { 235 meta["og:image"] = url.match(/^(([a-z]+:)?(\/\/)?[^\/]+\/).*$/)[1] + data.query.results.link[i].href; 236 } else { 237 meta["og:image"] = data.query.results.link[i].href; 238 } 239 } 240 } 241 } 242 } 243 result = embedProvider.yql.datareturn(meta); 244 } else { 245 result = embedProvider.yql.datareturn ? embedProvider.yql.datareturn(data.query.results) : data.query.results.result; 246 } 247 if (result === false)return; 248 var oembedData = $.extend({}, result); 249 oembedData.code = result; 250 success(oembedData, externalUrl, container); 251 }, 252 error: settings.onError.call(container, externalUrl, embedProvider) 253 }, settings.ajaxOptions || {}); 254 $.ajax(ajaxopts); 255 } else if (embedProvider.templateRegex) { 256 if (embedProvider.embedtag.tag !== '') { 257 var flashvars = embedProvider.embedtag.flashvars || ''; 258 var tag = embedProvider.embedtag.tag || 'embed'; 259 var width = embedProvider.embedtag.width || 'auto'; 260 var height = embedProvider.embedtag.height || 'auto'; 261 var src = externalUrl.replace(embedProvider.templateRegex, embedProvider.apiendpoint); 262 263 if (!embedProvider.nocache) { 264 src += '&jqoemcache=' + rand(5); 265 } 266 267 if (embedProvider.apikey) { 268 src = src.replace('_APIKEY_', settings.apikeys[embedProvider.name]); 269 } 270 271 var code = $('<' + tag + '/>').attr('src', src).attr('width', width) 272 .attr('height', height) 273 .attr('allowfullscreen', embedProvider.embedtag.allowfullscreen || 'true') 274 .attr('allowscriptaccess', embedProvider.embedtag.allowfullscreen || 'always') 275 .css('max-height', settings.maxHeight || 'auto') 276 .css('max-width', settings.maxWidth || 'auto'); 277 278 if (tag == 'embed') { 279 code.attr('type', embedProvider.embedtag.type || "application/x-shockwave-flash") 280 .attr('flashvars', externalUrl.replace(embedProvider.templateRegex, flashvars)); 281 } 282 283 if (tag == 'iframe') { 284 code.attr('scrolling', embedProvider.embedtag.scrolling || "no") 285 .attr('frameborder', embedProvider.embedtag.frameborder || "0"); 286 287 } 288 289 success({code: code}, externalUrl, container); 290 } else if (embedProvider.apiendpoint) { 291 // Add APIkey if true 292 if (embedProvider.apikey) 293 embedProvider.apiendpoint = embedProvider.apiendpoint.replace('_APIKEY_', settings.apikeys[embedProvider.name]); 294 295 ajaxopts = $.extend({ 296 url: externalUrl.replace(embedProvider.templateRegex, embedProvider.apiendpoint), 297 dataType: 'jsonp', 298 success: function (data) { 299 var oembedData = $.extend({}, data); 300 oembedData.code = embedProvider.templateData(data); 301 success(oembedData, externalUrl, container); 302 }, 303 error: settings.onError.call(container, externalUrl, embedProvider) 304 }, settings.ajaxOptions || {}); 305 $.ajax(ajaxopts); 306 } else { 307 success({code: externalUrl.replace(embedProvider.templateRegex, embedProvider.template)}, externalUrl, container); 308 } 309 } else { 310 311 var requestUrl = getRequestUrl(embedProvider, externalUrl); 312 ajaxopts = $.extend({ 313 url: requestUrl, 314 dataType: embedProvider.dataType || 'jsonp', 315 success: function (data) { 316 var oembedData = $.extend({}, data); 317 switch (oembedData.type) { 318 case "file": // Deviant Art has this 319 case "photo": 320 oembedData.code = $.fn.oembed.getPhotoCode(externalUrl, oembedData); 321 break; 322 case "video": 323 case "rich": 324 oembedData.code = $.fn.oembed.getRichCode(externalUrl, oembedData); 325 break; 326 default: 327 oembedData.code = $.fn.oembed.getGenericCode(externalUrl, oembedData); 328 break; 329 } 330 success(oembedData, externalUrl, container); 331 }, 332 error: settings.onError.call(container, externalUrl, embedProvider) 333 }, settings.ajaxOptions || {}); 334 $.ajax(ajaxopts); 335 } 336 } 337 338 339 340 function getNormalizedParams(params) { 341 if (params === null) return null; 342 var key, normalizedParams = {}; 343 for (key in params) { 344 if (key !== null) normalizedParams[key.toLowerCase()] = params[key]; 345 } 346 return normalizedParams; 347 } 348 349 /* Public functions */ 350 $.fn.oembed.insertCode = function (container, embedMethod, oembedData) { 351 if (oembedData === null) 352 return; 353 354 if (embedMethod === 'auto' && container.attr('href') !== null) { 355 embedMethod = 'append'; 356 } else if (embedMethod == 'auto') { 357 embedMethod = 'replace'; 358 } 359 switch (embedMethod) { 360 case "replace": 361 container.replaceWith(oembedData.code); 362 break; 363 case "fill": 364 container.html(oembedData.code); 365 break; 366 case "append": 367 container.wrap('<div class="oembedall-container"></div>'); 368 var oembedContainer = container.parent(); 369 if (settings.includeHandle) { 370 $('<span class="oembedall-closehide">↓</span>').insertBefore(container).click(function () { 371 var encodedString = encodeURIComponent($(this).text()); 372 $(this).html((encodedString == '%E2%86%91') ? '↓' : '↑');
373 $(this).parent().children().last().toggle(); 374 }); 375 } 376 oembedContainer.append('<br/>'); 377 try { 378 oembedData.code.clone().appendTo(oembedContainer); 379 } catch (e) { 380 oembedContainer.append(oembedData.code); 381 } 382 /* 383 * Make videos semi-responsive If parent div width less than 384 * embeded iframe video then iframe gets shrunk to fit smaller 385 * width If parent div width greater thans embed iframe use the 386 * max widht - works on youtubes and vimeo 387 */ 388 if (settings.maxWidth) { 389 var post_width = oembedContainer.parent().width(); 390 if (post_width < settings.maxWidth) { 391 var iframe_width_orig = $('iframe', oembedContainer).width(); 392 var iframe_height_orig = $('iframe', oembedContainer).height(); 393 var ratio = iframe_width_orig / post_width; 394 $('iframe', oembedContainer).width(iframe_width_orig / ratio); 395 $('iframe', oembedContainer).height(iframe_height_orig / ratio); 396 } else { 397 if (settings.maxWidth) { 398 $('iframe', oembedContainer).width(settings.maxWidth); 399 } 400 if (settings.maxHeight) { 401 $('iframe', oembedContainer).height(settings.maxHeight); 402 } 403 } 404 } 405 break; 406 } 407 }; 408 409 $.fn.oembed.getPhotoCode = function (url, oembedData) { 410 var code; 411 var alt = oembedData.title ? oembedData.title : ''; 412 alt += oembedData.author_name ? ' - ' + oembedData.author_name : ''; 413 alt += oembedData.provider_name ? ' - ' + oembedData.provider_name : ''; 414 415 if (oembedData.url) { 416 code = '<div><a href="' + url + '" target=\'_blank\'><img src="' + oembedData.url + '" alt="' + alt + '"/></a></div>'; 417 } else if (oembedData.thumbnail_url) { 418 var newURL = oembedData.thumbnail_url.replace('_s', '_b'); 419 code = '<div><a href="' + url + '" target=\'_blank\'><img src="' + newURL + '" alt="' + alt + '"/></a></div>'; 420 } else { 421 code = '<div>Error loading this picture</div>'; 422 } 423 424 if (oembedData.html) { 425 code += "<div>" + oembedData.html + "</div>"; 426 } 427 428 return code; 429 }; 430 431 $.fn.oembed.getRichCode = function (url, oembedData) { 432 return oembedData.html; 433 }; 434 435 $.fn.oembed.getGenericCode = function (url, oembedData) { 436 var title = ((oembedData.title) && (oembedData.title !== null)) ? oembedData.title : url; 437 var code = '<a href="' + url + '">' + title + '</a>'; 438 439 if (oembedData.html) { 440 code += "<div>" + oembedData.html + "</div>"; 441 } 442 443 return code; 444 }; 445 446 $.fn.oembed.getOEmbedProvider = function (url) { 447 for (var i = 0; i < $.fn.oembed.providers.length; i++) { 448 for (var j = 0, l = $.fn.oembed.providers[i].urlschemes.length; j < l; j++) { 449 var regExp = new RegExp($.fn.oembed.providers[i].urlschemes[j], "i"); 450 451 if (url.match(regExp) !== null) { 452 return $.fn.oembed.providers[i]; 453 } 454 } 455 } 456 return null; 457 }; 458 459 // Constructor Function for OEmbedProvider Class. 460 $.fn.oembed.OEmbedProvider = function (name, type, urlschemesarray, apiendpoint, extraSettings) { 461 this.name = name; 462 this.type = type; // "photo", "video", "link", "rich", null 463 this.urlschemes = urlschemesarray; 464 this.apiendpoint = apiendpoint; 465 this.maxWidth = 500; 466 this.maxHeight = 400; 467 extraSettings = extraSettings || {}; 468 469 if (extraSettings.useYQL) { 470 471 if (extraSettings.useYQL == 'xml') { 472 extraSettings.yql = { 473 xpath: "//oembed/html", 474 from: 'xml', 475 apiendpoint: this.apiendpoint, 476 url: function (externalurl) { 477 return this.apiendpoint + '?format=xml&url=' + externalurl 478 }, 479 datareturn: function (results) { 480 return results.html.replace(/.*\[CDATA\[(.*)\]\]>$/, '$1') || '' 481 } 482 }; 483 } else { 484 extraSettings.yql = { 485 from: 'json', 486 apiendpoint: this.apiendpoint, 487 url: function (externalurl) { 488 return this.apiendpoint + '?format=json&url=' + externalurl 489 }, 490 datareturn: function (results) { 491 if (results.json.type != 'video' && (results.json.url || results.json.thumbnail_url)) { 492 return '<img src="' + (results.json.url || results.json.thumbnail_url) + '" />'; 493 } 494 return results.json.html || '' 495 } 496 }; 497 }
498 this.apiendpoint = null; 499 } 500 501 502 for (var property in extraSettings) { 503 this[property] = extraSettings[property]; 504 } 505 506 this.format = this.format || 'json'; 507 this.callbackparameter = this.callbackparameter || "callback"; 508 this.embedtag = this.embedtag || {tag: ""}; 509 510 511 }; 512 513 /* 514 * Function to update existing providers 515 * 516 * @param {String} name The name of the provider @param {String} type The 517 * type of the provider can be "file", "photo", "video", "rich" @param 518 * {String} urlshemesarray Array of url of the provider @param {String} 519 * apiendpoint The endpoint of the provider @param {String} extraSettings 520 * Extra settings of the provider 521 */ 522 $.fn.updateOEmbedProvider = function (name, type, urlschemesarray, apiendpoint, extraSettings) { 523 for (var i = 0; i < $.fn.oembed.providers.length; i++) { 524 if ($.fn.oembed.providers[i].name === name) { 525 if (type !== null) { 526 $.fn.oembed.providers[i].type = type; 527 } 528 if (urlschemesarray !== null) { 529 $.fn.oembed.providers[i].urlschemes = urlschemesarray; 530 } 531 if (apiendpoint !== null) { 532 $.fn.oembed.providers[i].apiendpoint = apiendpoint; 533 } 534 if (extraSettings !== null) { 535 $.fn.oembed.providers[i].extraSettings = extraSettings; 536 for (var property in extraSettings) { 537 if (property !== null && extraSettings[property] !== null) { 538 $.fn.oembed.providers[i][property] = extraSettings[property]; 539 } 540 } 541 } 542 } 543 } 544 }; 545 546// 547 548 /* Native & common providers */ 549 $.fn.oembed.providers = [ 550 // Video 551 new $.fn.oembed.OEmbedProvider("youtube", "video", ["youtube\\.com/watch.+v=[\\w-]+&?", "youtu\\.be/[\\w-]+", "youtube.com/embed"], '//www.youtube.com/embed/$1?rel=0&wmode=transparent', { 552 templateRegex: /.*(?:v\=|be\/|embed\/)([\w\-]+)&?.*/, embedtag: {tag: 'iframe', width: '425', height: '350'} 553 }), 554 new $.fn.oembed.OEmbedProvider("videopoznan", "video", ["video\\.poznan\\.pl/.+", "video\\.poznan\\.pl/player/build_poznanpl/index\\.html\\?id=.+"] 555 , "//video.poznan.pl/player/build_poznanpl/index.html?id=$1&autoplay=false", 556 { 557 templateRegex: /.*build_poznanpl\/index\.html\?id=(\d+).*/, 558 embedtag: {tag: 'iframe', width: '100%', height: '450'}, 559 nocache: 1 560 }), 561 new $.fn.oembed.OEmbedProvider("videopoznanproxy", "video", ["www\\.poznan\\.pl/player/build_poznanpl/index\\.html\\?id=.+"] 562 , "//www.poznan.pl/player/build_poznanpl/index.html?id=$1&autoplay=false", 563 { 564 templateRegex: /.*build_poznanpl\/index\.html\?id=(\d+).*/, 565 embedtag: {tag: 'iframe', width: '100%', height: '450'}, 566 nocache: 1 567 }), 568 new $.fn.oembed.OEmbedProvider("wistia", "video", ["wistia.com/medias/.+", "wistia.com/m/.+", "wistia.com/embed/.+", "wi.st/m/.+", "wi.st/embed/.+"], 'http://fast.wistia.com/oembed', {useYQL: 'json'}), 569 new $.fn.oembed.OEmbedProvider("xtranormal", "video", ["xtranormal\\.com/watch/.+"], "http://www.xtranormal.com/xtraplayr/$1/$2", { 570 templateRegex: /.*com\/watch\/([\w\-]+)\/([\w\-]+).*/, embedtag: {tag: 'iframe', width: '320', height: '269'}}), 571 new $.fn.oembed.OEmbedProvider("scivee", "video", ["scivee.tv/node/.+"], "http://www.scivee.tv/flash/embedCast.swf?", { 572 templateRegex: /.*tv\/node\/(.+)/, embedtag: {width: '480', height: '400', flashvars: "id=$1&type=3"}}), 573 new $.fn.oembed.OEmbedProvider("veoh", "video", ["veoh.com/watch/.+"], "http://www.veoh.com/swf/webplayer/WebPlayer.swf?version=AFrontend.5.7.0.1337&permalinkId=$1&player=videodetailsembedded&videoAutoPlay=0&id=anonymous", { 574 templateRegex: /.*watch\/([^\?]+).*/, embedtag: {width: '410', height: '341'}}), 575 new $.fn.oembed.OEmbedProvider("gametrailers", "video", ["gametrailers\\.com/video/.+"], "http://media.mtvnservices.com/mgid:moses:video:gametrailers.com:$2", { 576 templateRegex: /.*com\/video\/([\w\-]+)\/([\w\-]+).*/, embedtag: {width: '512', height: '288' }}), 577 new $.fn.oembed.OEmbedProvider("funnyordie", "video", ["funnyordie\\.com/videos/.+"], "http://player.ordienetworks.com/flash/fodplayer.swf?", { 578 templateRegex: /.*videos\/([^\/]+)\/([^\/]+)?/, embedtag: {width: 512, height: 328, flashvars: "key=$1"}}), 579 new $.fn.oembed.OEmbedProvider("colledgehumour", "video", ["collegehumor\\.com/video/.+"], "http://www.collegehumor.com/moogaloop/moogaloop.swf?clip_id=$1&use_node_id=true&fullscreen=1", 580 {templateRegex: /.*video\/([^\/]+).*/, embedtag: {width: 600, height: 338}}), 581 new $.fn.oembed.OEmbedProvider("metacafe", "video", ["metacafe\\.com/watch/.+"], "http://www.metacafe.com/fplayer/$1/$2.swf", 582 {templateRegex: /.*watch\/(\d+)\/(\w+)\/.*/, embedtag: {width: 400, height: 345}}), 583 new $.fn.oembed.OEmbedProvider("bambuser", "video", ["bambuser\\.com\/channel\/.*\/broadcast\/.*"], "http://static.bambuser.com/r/player.swf?vid=$1", 584 {templateRegex: /.*bambuser\.com\/channel\/.*\/broadcast\/(\w+).*/, embedtag: {width: 512, height: 339 }}), 585 new $.fn.oembed.OEmbedProvider("twitvid", "video", ["twitvid\\.com/.+"], "http://www.twitvid.com/embed.php?guid=$1&autoplay=0", 586 {templateRegex: /.*twitvid\.com\/(\w+).*/, embedtag: {tag: 'iframe', width: 480, height: 360 }}), 587 new $.fn.oembed.OEmbedProvider("aniboom", "video", ["aniboom\\.com/animation-video/.+"], "http://api.aniboom.com/e/$1", 588 {templateRegex: /.*animation-video\/(\d+).*/, embedtag: {width: 594, height: 334}}), 589 new $.fn.oembed.OEmbedProvider("vzaar", "video", ["vzaar\\.com/videos/.+", "vzaar.tv/.+"], "http://view.vzaar.com/$1/player?", 590 {templateRegex: /.*\/(\d+).*/, embedtag: {tag: 'iframe', width: 576, height: 324 }}), 591 new $.fn.oembed.OEmbedProvider("snotr", "video", ["snotr\\.com/video/.+"], "http://www.snotr.com/embed/$1", 592 {templateRegex: /.*\/(\d+).*/, embedtag: {tag: 'iframe', width: 400, height: 330}, nocache: 1 }), 593 new $.fn.oembed.OEmbedProvider("youku", "video", ["v.youku.com/v_show/id_.+"], "http://player.youku.com/player.php/sid/$1/v.swf", 594 {templateRegex: /.*id_(.+)\.html.*/, embedtag: {width: 480, height: 400}, nocache: 1 }), 595 new $.fn.oembed.OEmbedProvider("tudou", "video", ["tudou.com/programs/view/.+\/"], "http://www.tudou.com/v/$1/v.swf", 596 {templateRegex: /.*view\/(.+)\//, embedtag: {width: 480, height: 400}, nocache: 1 }), 597 new $.fn.oembed.OEmbedProvider("embedr", "video", ["embedr\\.com/playlist/.+"], "http://embedr.com/swf/slider/$1/425/520/default/false/std?", 598 {templateRegex: /.*playlist\/([^\/]+).*/, embedtag: {width: 425, height: 520}}), 599 new $.fn.oembed.OEmbedProvider("blip", "video", ["blip\\.tv/.+"], "//blip.tv/oembed/"),
600 new $.fn.oembed.OEmbedProvider("minoto-video", "video", ["http://api.minoto-video.com/publishers/.+/videos/.+", "http://dashboard.minoto-video.com/main/video/details/.+", "http://embed.minoto-video.com/.+"], "http://api.minoto-video.com/services/oembed.json", {useYQL: 'json'}), 601 new $.fn.oembed.OEmbedProvider("animoto", "video", ["animoto.com/play/.+"], "http://animoto.com/services/oembed"), 602 new $.fn.oembed.OEmbedProvider("hulu", "video", ["hulu\\.com/watch/.*"], "//www.hulu.com/api/oembed.json"), 603 new $.fn.oembed.OEmbedProvider("ustream", "video", ["ustream\\.tv/recorded/.*"], "http://www.ustream.tv/oembed", {useYQL: 'json'}), 604 new $.fn.oembed.OEmbedProvider("videojug", "video", ["videojug\\.com/(film|payer|interview).*"], "http://www.videojug.com/oembed.json", {useYQL: 'json'}), 605 new $.fn.oembed.OEmbedProvider("sapo", "video", ["videos\\.sapo\\.pt/.*"], "http://videos.sapo.pt/oembed", {useYQL: 'json'}), 606 new $.fn.oembed.OEmbedProvider("vodpod", "video", ["vodpod.com/watch/.*"], "http://vodpod.com/oembed.js", {useYQL: 'json'}), 607 new $.fn.oembed.OEmbedProvider("vimeo", "video", ["www\.vimeo\.com\/groups\/.*\/videos\/.*", "www\.vimeo\.com\/.*", "vimeo\.com\/groups\/.*\/videos\/.*", "vimeo\.com\/.*"], "//vimeo.com/api/oembed.json"), 608 new $.fn.oembed.OEmbedProvider("dailymotion", "video", ["dailymotion\\.com/.+"], '//www.dailymotion.com/services/oembed'), 609 new $.fn.oembed.OEmbedProvider("5min", "video", ["www\\.5min\\.com/.+"], 'http://api.5min.com/oembed.xml', {useYQL: 'xml'}), 610 new $.fn.oembed.OEmbedProvider("National Film Board of Canada", "video", ["nfb\\.ca/film/.+"], 'http://www.nfb.ca/remote/services/oembed/', {useYQL: 'json'}), 611 new $.fn.oembed.OEmbedProvider("qik", "video", ["qik\\.com/\\w+"], 'http://qik.com/api/oembed.json', {useYQL: 'json'}), 612 new $.fn.oembed.OEmbedProvider("revision3", "video", ["revision3\\.com"], "http://revision3.com/api/oembed/"), 613 new $.fn.oembed.OEmbedProvider("dotsub", "video", ["dotsub\\.com/view/.+"], "http://dotsub.com/services/oembed", {useYQL: 'json'}), 614 new $.fn.oembed.OEmbedProvider("clikthrough", "video", ["clikthrough\\.com/theater/video/\\d+"], "http://clikthrough.com/services/oembed"), 615 new $.fn.oembed.OEmbedProvider("Kinomap", "video", ["kinomap\\.com/.+"], "http://www.kinomap.com/oembed"), 616 new $.fn.oembed.OEmbedProvider("VHX", "video", ["vhx.tv/.+"], "http://vhx.tv/services/oembed.json"), 617 new $.fn.oembed.OEmbedProvider("bambuser", "video", ["bambuser.com/.+"], "http://api.bambuser.com/oembed/iframe.json"), 618 new $.fn.oembed.OEmbedProvider("justin.tv", "video", ["justin.tv/.+"], 'http://api.justin.tv/api/embed/from_url.json', {useYQL: 'json'}), 619 new $.fn.oembed.OEmbedProvider("vine", "video", ["vine.co/v/.*"], null, 620 { 621 templateRegex: /https?:\/\/w?w?w?.?vine\.co\/v\/([a-zA-Z0-9]*).*/, 622 template: '<iframe src="https://vine.co/v/$1/embed/postcard" width="600" height="600" allowfullscreen="true" allowscriptaccess="always" scrolling="no" frameborder="0"></iframe>' + 623 '<script async src="//platform.vine.co/static/scripts/embed.js" charset="utf-8"></script>', 624 nocache: 1 625 }), 626 new $.fn.oembed.OEmbedProvider("boxofficebuz", "video", ["boxofficebuz\\.com\\/embed/.+"], "http://boxofficebuz.com/embed/$1/$2", {templateRegex: [/.*boxofficebuz\.com\/embed\/(\w+)\/([\w*\-*]+)/], embedtag: {tag: 'iframe', width: 480, height: 360 }}), 627 new $.fn.oembed.OEmbedProvider("clipsyndicate", "video", ["clipsyndicate\\.com/video/play/.+", "clipsyndicate\\.com/embed/iframe\?.+"], "http://eplayer.clipsyndicate.com/embed/iframe?pf_id=1&show_title=0&va_id=$1&windows=1", {templateRegex: [/.*www\.clipsyndicate\.com\/video\/play\/(\w+)\/.*/, /.*eplayer\.clipsyndicate\.com\/embed\/iframe\?.*va_id=(\w+).*.*/], embedtag: {tag: 'iframe', width: 480, height: 360 }, nocache: 1}), 628 new $.fn.oembed.OEmbedProvider("coub", "video", ["coub\\.com/.+"], "http://www.coub.com/embed/$1?muted=false&autostart=false&originalSize=false&hideTopBar=false&noSiteButtons=false&startWithHD=false", {templateRegex: [/.*coub\.com\/embed\/(\w+)\?*.*/, /.*coub\.com\/view\/(\w+).*/], embedtag: {tag: 'iframe', width: 480, height: 360 }, nocache: 1}), 629 new $.fn.oembed.OEmbedProvider("discoverychannel", "video", ["snagplayer\\.video\\.dp\\.discovery\\.com/.+"], "http://snagplayer.video.dp.discovery.com/$1/snag-it-player.htm?auto=no", {templateRegex: [/.*snagplayer\.video\.dp\.discovery\/(\w+).*/], embedtag: {tag: 'iframe', width: 480, height: 360 }}), 630 new $.fn.oembed.OEmbedProvider("telly", "video", ["telly\\.com/.+"], "http://www.telly.com/embed.php?guid=$1&autoplay=0", {templateRegex: [/.*telly\.com\/embed\.php\?guid=(\w+).*/, /.*telly\.com\/(\w+).*/], embedtag: {tag: 'iframe', width: 480, height: 360 }}), 631 new $.fn.oembed.OEmbedProvider("minilogs", "video", ["minilogs\\.com/.+"], "http://www.minilogs.com/e/$1", {templateRegex: [/.*minilogs\.com\/e\/(\w+).*/, /.*minilogs\.com\/(\w+).*/], embedtag: {tag: 'iframe', width: 480, height: 360 }, nocache: 1}), 632 new $.fn.oembed.OEmbedProvider("viddy", "video", ["viddy\\.com/.+"], "http://www.viddy.com/embed/video/$1", {templateRegex: [/.*viddy\.com\/embed\/video\/(\.*)/, /.*viddy\.com\/video\/(\.*)/], embedtag: {tag: 'iframe', width: 480, height: 360 }, nocache: 1}),
633 new $.fn.oembed.OEmbedProvider("worldstarhiphop", "video", ["worldstarhiphop\\.com\/embed/.+"], "http://www.worldstarhiphop.com/embed/$1", {templateRegex: /.*worldstarhiphop\.com\/embed\/(\w+).*/, embedtag: {tag: 'iframe', width: 480, height: 360 }, nocache: 1}), 634 new $.fn.oembed.OEmbedProvider("zapiks", "video", ["zapiks\\.fr\/.+"], "http://www.zapiks.fr/index.php?action=playerIframe&media_id=$1&autoStart=fals", {templateRegex: /.*zapiks\.fr\/index.php\?[\w\=\&]*media_id=(\w+).*/, embedtag: {tag: 'iframe', width: 480, height: 360 }, nocache: 1}), 635 636 // Audio 637 new $.fn.oembed.OEmbedProvider("official.fm", "rich", ["official.fm/.+"], 'http://official.fm/services/oembed', {useYQL: 'json'}), 638 new $.fn.oembed.OEmbedProvider("chirbit", "rich", ["chirb.it/.+"], 'http://chirb.it/oembed.json', {useYQL: 'json'}), 639 new $.fn.oembed.OEmbedProvider("chirbit", "audio", ["chirb\\.it/.+"], "http://chirb.it/wp/$1", {templateRegex: [/.*chirb\.it\/wp\/(\w+).*/, /.*chirb\.it\/(\w+).*/], embedtag: {tag: 'iframe', width: 480, height: 360 }, nocache: 1}), 640 new $.fn.oembed.OEmbedProvider("Huffduffer", "rich", ["huffduffer.com/[-.\\w@]+/\\d+"], "http://huffduffer.com/oembed"), 641 new $.fn.oembed.OEmbedProvider("Spotify", "rich", ["open.spotify.com/(track|album|user)/"], "https://embed.spotify.com/oembed/"), 642 new $.fn.oembed.OEmbedProvider("shoudio", "rich", ["shoudio.com/.+", "shoud.io/.+"], "http://shoudio.com/api/oembed"), 643 new $.fn.oembed.OEmbedProvider("mixcloud", "rich", ["mixcloud.com/.+"], 'http://www.mixcloud.com/oembed/', {useYQL: 'json'}), 644 new $.fn.oembed.OEmbedProvider("rdio.com", "rich", ["rd.io/.+", "rdio.com"], "http://www.rdio.com/api/oembed/"), 645 new $.fn.oembed.OEmbedProvider("Soundcloud", "rich", ["soundcloud.com/.+", "snd.sc/.+"], "//soundcloud.com/oembed", {format: 'js'}), 646 new $.fn.oembed.OEmbedProvider("bandcamp", "rich", ["bandcamp\\.com/album/.+"], null, 647 { 648 yql: { 649 xpath: "//meta[contains(@content, \\'EmbeddedPlayer\\')]", 650 from: 'html', 651 datareturn: function (results) { 652 return results.meta ? '<iframe width="400" height="100" src="' + results.meta.content + '" allowtransparency="true" frameborder="0"></iframe>' : false; 653 } 654 } 655 }), 656 657 // Photo 658 new $.fn.oembed.OEmbedProvider("deviantart", "photo", ["deviantart.com/.+", "fav.me/.+", "deviantart.com/.+"], "//backend.deviantart.com/oembed", {format: 'jsonp'}), 659 new $.fn.oembed.OEmbedProvider("skitch", "photo", ["skitch.com/.+"], null, 660 { 661 yql: { 662 xpath: "json", 663 from: 'json', 664 url: function (externalurl) { 665 return 'http://skitch.com/oembed/?format=json&url=' + externalurl 666 }, 667 datareturn: function (data) { 668 return $.fn.oembed.getPhotoCode(data.json.url, data.json); 669 } 670 } 671 }), 672 new $.fn.oembed.OEmbedProvider("mobypicture", "photo", ["mobypicture.com/user/.+/view/.+", "moby.to/.+"], "http://api.mobypicture.com/oEmbed"), 673 new $.fn.oembed.OEmbedProvider("flickr", "photo", ["flickr\\.com/photos/.+"], "//flickr.com/services/oembed", {callbackparameter: 'jsoncallback'}), 674 new $.fn.oembed.OEmbedProvider("photobucket", "photo", ["photobucket\\.com/(albums|groups)/.+"], "http://photobucket.com/oembed/"), 675 new $.fn.oembed.OEmbedProvider("instagram", "photo", ["instagr\\.?am(\\.com)?/.+"], "//api.instagram.com/oembed"), 676 // new $.fn.oembed.OEmbedProvider("yfrog", "photo", 677 // ["yfrog\\.(com|ru|com\\.tr|it|fr|co\\.il|co\\.uk|com\\.pl|pl|eu|us)/.+"], 678 // "http://www.yfrog.com/api/oembed",{useYQL:"json"}), 679 new $.fn.oembed.OEmbedProvider("SmugMug", "photo", ["smugmug.com/[-.\\w@]+/.+"], "http://api.smugmug.com/services/oembed/"), 680 new $.fn.oembed.OEmbedProvider("dribbble", "photo", ["dribbble.com/shots/.+"], "http://api.dribbble.com/shots/$1?callback=?", 681 { 682 templateRegex: /.*shots\/([\d]+).*/, 683 templateData: function (data) { 684 if (!data.image_teaser_url) { 685 return false; 686 } 687 return '<img src="' + data.image_teaser_url + '"/>'; 688 } 689 }), 690 new $.fn.oembed.OEmbedProvider("chart.ly", "photo", ["chart\\.ly/[a-z0-9]{6,8}"], "http://chart.ly/uploads/large_$1.png", 691 {templateRegex: /.*ly\/([^\/]+).*/, embedtag: {tag: 'img'}, nocache: 1}), 692 // new $.fn.oembed.OEmbedProvider("stocktwits.com", "photo", 693 // ["stocktwits\\.com/message/.+"], 694 // "http://charts.stocktwits.com/production/original_$1.png?", 695 // { templateRegex: /.*message\/([^\/]+).*/, embedtag: { tag: 696 // 'img'},nocache:1 }), 697 new $.fn.oembed.OEmbedProvider("circuitlab", "photo", ["circuitlab.com/circuit/.+"], "https://www.circuitlab.com/circuit/$1/screenshot/540x405/", 698 {templateRegex: /.*circuit\/([^\/]+).*/, embedtag: {tag: 'img'}, nocache: 1}), 699 new $.fn.oembed.OEmbedProvider("23hq", "photo", ["23hq.com/[-.\\w@]+/photo/.+"], "http://www.23hq.com/23/oembed", {useYQL: "json"}), 700 new $.fn.oembed.OEmbedProvider("img.ly", "photo", ["img\\.ly/.+"], "//img.ly/show/thumb/$1", 701 {templateRegex: /.*ly\/([^\/]+).*/, embedtag: {tag: 'img'}, nocache: 1}), 702 new $.fn.oembed.OEmbedProvider("twitgoo.com", "photo", ["twitgoo\\.com/.+"], "http://twitgoo.com/show/thumb/$1", 703 {templateRegex: /.*com\/([^\/]+).*/, embedtag: {tag: 'img'}, nocache: 1}), 704 new $.fn.oembed.OEmbedProvider("imgur.com", "photo", ["imgur\\.com/gallery/.+"], "http://imgur.com/$1l.jpg", 705 {templateRegex: /.*gallery\/([^\/]+).*/, embedtag: {tag: 'img'}, nocache: 1}), 706 new $.fn.oembed.OEmbedProvider("visual.ly", "rich", ["visual\\.ly/.+"], null, 707 { 708 yql: { 709 xpath: "//a[@id=\\'gc_article_graphic_image\\']/img", 710 from: 'htmlstring' 711 } 712 }), 713 new $.fn.oembed.OEmbedProvider("achewood", "photo", ["achewood\\.com\\/index.php\\?date=.+"], "http://www.achewood.com/comic.php?date=$1", {templateRegex: /.*achewood\.com\/index.php\?date=(\w+).*/, embedtag: {tag: 'iframe', width: 480, height: 360 }, nocache: 1}), 714 new $.fn.oembed.OEmbedProvider("fotokritik", "photo", ["fotokritik\\.com/.+"], "http://www.fotokritik.com/embed/$1", {templateRegex: [/.*fotokritik\.com\/embed\/(\w+).*/, /.*fotokritik\.com\/(\w+).*/], embedtag: {tag: 'iframe', width: 480, height: 360 }, nocache: 1}), 715 new $.fn.oembed.OEmbedProvider("giflike", "photo", ["giflike\\.com/.+"], "http://www.giflike.com/embed/$1", {templateRegex: [/.*giflike\.com\/embed\/(\w+).*/, /.*giflike\.com\/a\/(\w+).*/], embedtag: {tag: 'iframe', width: 480, height: 360 }, nocache: 1}), 716 717 // Rich 718 new $.fn.oembed.OEmbedProvider("twitter", "rich", ["twitter.com/.+"], "https://api.twitter.com/1/statuses/oembed.json"), 719 new $.fn.oembed.OEmbedProvider("gmep", "rich", ["gmep.imeducate.com/.*", "gmep.org/.*"], "http://gmep.org/oembed.json"), 720 new $.fn.oembed.OEmbedProvider("urtak", "rich", ["urtak.com/(u|clr)/.+"], "http://oembed.urtak.com/1/oembed"), 721 new $.fn.oembed.OEmbedProvider("cacoo", "rich", ["cacoo.com/.+"], "http://cacoo.com/oembed.json"), 722 new $.fn.oembed.OEmbedProvider("dailymile", "rich", ["dailymile.com/people/.*/entries/.*"], "http://api.dailymile.com/oembed"), 723 new $.fn.oembed.OEmbedProvider("documentcloud", "rich", ["documentcloud.org/documents/.+"], "https://www.documentcloud.org/api/oembed.json"), 724 new $.fn.oembed.OEmbedProvider("dipity", "rich", ["dipity.com/timeline/.+"], 'http://www.dipity.com/oembed/timeline/', {useYQL: 'json'}), 725 new $.fn.oembed.OEmbedProvider("sketchfab", "rich", ["sketchfab.com/show/.+"], 'http://sketchfab.com/oembed', {useYQL: 'json'}), 726 new $.fn.oembed.OEmbedProvider("speakerdeck", "rich", ["speakerdeck.com/.+"], 'http://speakerdeck.com/oembed.json', {useYQL: 'json'}), 727 new $.fn.oembed.OEmbedProvider("popplet", "rich", ["popplet.com/app/.*"], "http://popplet.com/app/Popplet_Alpha.swf?page_id=$1&em=1", 728 { 729 templateRegex: /.*#\/([^\/]+).*/, 730 embedtag: { 731 width: 460, 732 height: 460 733 } 734 }), 735 736 new $.fn.oembed.OEmbedProvider("pearltrees", "rich", ["pearltrees.com/.*"], "http://cdn.pearltrees.com/s/embed/getApp?", 737 { 738 templateRegex: /.*N-f=1_(\d+).*N-p=(\d+).*/, 739 embedtag: { 740 width: 460, 741 height: 460, 742 flashvars: "lang=en_US&embedId=pt-embed-$1-693&treeId=$1&pearlId=$2&treeTitle=Diagrams%2FVisualization&site=www.pearltrees.com%2FF" 743 } 744 }), 745 746 new $.fn.oembed.OEmbedProvider("prezi", "rich", ["prezi.com/.*"], "//prezi.com/bin/preziloader.swf?", 747 { 748 templateRegex: /.*com\/([^\/]+)\/.*/, 749 embedtag: { 750 width: 550, 751 height: 400, 752 flashvars: "prezi_id=$1&lock_to_path=0&color=ffffff&autoplay=no&autohide_ctrls=0" 753 } 754 }), 755 756 new $.fn.oembed.OEmbedProvider("tourwrist", "rich", ["tourwrist.com/tours/.+"], null, 757 { 758 templateRegex: /.*tours.([\d]+).*/, 759 template: function (wm, tourid) { 760 setTimeout(function () { 761 if (loadEmbeds)loadEmbeds(); 762 }, 2000); 763 return "<div id='" + tourid + "' class='tourwrist-tour-embed direct'></div> <script type='text/javascript' src='http://tourwrist.com/tour_embed.js'></script>"; 764 } 765 }), 766 767 new $.fn.oembed.OEmbedProvider("meetup", "rich", ["meetup\\.(com|ps)/.+"], "http://api.meetup.com/oembed"), 768 new $.fn.oembed.OEmbedProvider("ebay", "rich", ["ebay\\.*"], "http://togo.ebay.com/togo/togo.swf?2008013100", 769 { 770 templateRegex: /.*\/([^\/]+)\/(\d{10,13}).*/, 771 embedtag: { 772 width: 355, 773 height: 300, 774 flashvars: "base=http://togo.ebay.com/togo/&lang=en-us&mode=normal&itemid=$2&query=$1" 775 } 776 }), 777 new $.fn.oembed.OEmbedProvider("wikipedia", "rich", ["wikipedia.org/wiki/.+"], "http://$1.wikipedia.org/w/api.php?action=parse&page=$2&format=json§ion=0&callback=?", { 778 templateRegex: /.*\/\/([\w]+).*\/wiki\/([^\/]+).*/, 779 templateData: function (data) { 780 if (!data.parse) 781 return false;
782 var text = data.parse['text']['*'].replace(/href="\/wiki/g, 'href="http://en.wikipedia.org/wiki'); 783 return '<div id="content"><h3><a class="nav-link" href="http://en.wikipedia.org/wiki/' + data.parse['displaytitle'] + '">' + data.parse['displaytitle'] + '</a></h3>' + text + '</div>'; 784 } 785 }), 786 new $.fn.oembed.OEmbedProvider("imdb", "rich", ["imdb.com/title/.+"], "http://www.imdbapi.com/?i=$1&callback=?", 787 { 788 templateRegex: /.*\/title\/([^\/]+).*/, 789 templateData: function (data) { 790 if (!data.Title) 791 return false; 792 return '<div id="content"><h3><a class="nav-link" href="http://imdb.com/title/' + data.imdbID + '/">' + data.Title + '</a> (' + data.Year + ')</h3><p>Rating: ' + data.imdbRating + '<br/>Genre: ' + data.Genre + '<br/>Starring: ' + data.Actors + '</p></div> <div id="view-photo-caption">' + data.Plot + '</div></div>'; 793 } 794 }), 795 new $.fn.oembed.OEmbedProvider("livejournal", "rich", ["livejournal.com/"], "http://ljpic.seacrow.com/json/$2$4?jsonp=?" 796 , { 797 templateRegex: /(http:\/\/(((?!users).)+)\.livejournal\.com|.*users\.livejournal\.com\/([^\/]+)).*/, 798 templateData: function (data) { 799 if (!data.username) 800 return false; 801 return '<div><img src="' + data.image + '" align="left" style="margin-right: 1em;" /><span class="oembedall-ljuser"><a href="http://' + data.username + '.livejournal.com/profile"><img src="http://www.livejournal.com/img/userinfo.gif" alt="[info]" width="17" height="17" /></a><a href="http://' + data.username + '.livejournal.com/">' + data.username + '</a></span><br />' + data.name + '</div>'; 802 } 803 }), 804 new $.fn.oembed.OEmbedProvider("circuitbee", "rich", ["circuitbee\\.com/circuit/view/.+"], "http://c.circuitbee.com/build/r/schematic-embed.html?id=$1", 805 { 806 templateRegex: /.*circuit\/view\/(\d+).*/, 807 embedtag: { 808 tag: 'iframe', 809 width: '500', 810 height: '350' 811 } 812 }), 813 814 new $.fn.oembed.OEmbedProvider("googlecalendar", "rich", ["www.google.com/calendar/embed?.+"], "$1", 815 {templateRegex: /(.*)/, embedtag: {tag: 'iframe', width: '800', height: '600' }}), 816 new $.fn.oembed.OEmbedProvider("jsfiddle", "rich", ["jsfiddle.net/[^/]+/?"], "http://jsfiddle.net/$1/embedded/result,js,resources,html,css/?", 817 {templateRegex: /.*net\/([^\/]+).*/, embedtag: {tag: 'iframe', width: '100%', height: '300' }}), 818 new $.fn.oembed.OEmbedProvider("jsbin", "rich", ["jsbin.com/.+"], "http://jsbin.com/$1/?", 819 {templateRegex: /.*com\/([^\/]+).*/, embedtag: {tag: 'iframe', width: '100%', height: '300' }}), 820 new $.fn.oembed.OEmbedProvider("jotform", "rich", ["form.jotform.co/form/.+"], "$1?", 821 {templateRegex: /(.*)/, embedtag: {tag: 'iframe', width: '100%', height: '507' }}), 822 new $.fn.oembed.OEmbedProvider("reelapp", "rich", ["reelapp\\.com/.+"], "http://www.reelapp.com/$1/embed", 823 {templateRegex: /.*com\/(\S{6}).*/, embedtag: {tag: 'iframe', width: '400', height: '338'}}), 824 new $.fn.oembed.OEmbedProvider("linkedin", "rich", ["linkedin.com/pub/.+"], "https://www.linkedin.com/cws/member/public_profile?public_profile_url=$1&format=inline&isFramed=true", 825 {templateRegex: /(.*)/, embedtag: {tag: 'iframe', width: '368px', height: 'auto'}}), 826 new $.fn.oembed.OEmbedProvider("timetoast", "rich", ["timetoast.com/timelines/[0-9]+"], "http://www.timetoast.com/flash/TimelineViewer.swf?passedTimelines=$1", 827 {templateRegex: /.*timelines\/([0-9]*)/, embedtag: { width: 550, height: 400}, nocache: 1}), 828 new $.fn.oembed.OEmbedProvider("pastebin", "rich", ["pastebin\\.com/[\\S]{8}"], "http://pastebin.com/embed_iframe.php?i=$1", 829 {templateRegex: /.*\/(\S{8}).*/, embedtag: {tag: 'iframe', width: '100%', height: 'auto'}}), 830 new $.fn.oembed.OEmbedProvider("mixlr", "rich", ["mixlr.com/.+"], "http://mixlr.com/embed/$1?autoplay=ae", 831 {templateRegex: /.*com\/([^\/]+).*/, embedtag: {tag: 'iframe', width: '100%', height: 'auto' }}), 832 new $.fn.oembed.OEmbedProvider("pastie", "rich", ["pastie\\.org/pastes/.+"], null, {yql: {xpath: '//pre[@class="textmate-source"]'}}), 833 new $.fn.oembed.OEmbedProvider("github", "rich", ["gist.github.com/.+"], "https://github.com/api/oembed"), 834 new $.fn.oembed.OEmbedProvider("github", "rich", ["github.com/[-.\\w@]+/[-.\\w@]+"], "https://api.github.com/repos/$1/$2?callback=?" 835 , {templateRegex: /.*\/([^\/]+)\/([^\/]+).*/, 836 templateData: function (data) { 837 if (!data.data.html_url)return false;
838 return '<div class="oembedall-githubrepos"><ul class="oembedall-repo-stats"><li>' + data.data.language + '</li><li class="oembedall-watchers"><a title="Watchers" href="' + data.data.html_url + '/watchers">◉ ' + data.data.watchers + '</a></li>' 839 + '<li class="oembedall-forks"><a title="Forks" href="' + data.data.html_url + '/network">ɥ ' + data.data.forks + '</a></li></ul><h3><a href="' + data.data.html_url + '">' + data.data.name + '</a></h3><div class="oembedall-body"><p class="oembedall-description">' + data.data.description + '</p>' 840 + '<p class="oembedall-updated-at">Last updated: ' + data.data.pushed_at + '</p></div></div>'; 841 } 842 }), 843 new $.fn.oembed.OEmbedProvider("facebook", "rich", ["facebook.com"], null 844 , {templateRegex: /.*\/([^\/]+)\/([^\/]+).*/, 845 template: function (url) { 846 // adding script directly to DOM to make sure that it is 847 // loaded correctly. 848 if (!$.fn.oembed.facebokScriptHasBeenAdded) { 849 $('<div id="fb-root"></div>').appendTo('body'); 850 var script = document.createElement('script'); 851 script.type = 'text/javascript'; 852 script.text = '(function(d, s, id) {var js, fjs = d.getElementsByTagName(s)[0];if (d.getElementById(id)) return;js = d.createElement(s); js.id = id;js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.0";fjs.parentNode.insertBefore(js, fjs);}(document, "script", "facebook-jssdk"));'; 853 document.body.appendChild(script); 854 $.fn.oembed.facebokScriptHasBeenAdded = true; 855 } 856 857 // returning template with url of facebook post. 858 return '<div class="fb-post" data-href="' + url + '" data-width="520"><div class="fb-xfbml-parse-ignore"><a href="' + url + '"></div></div>'; 859 860 } 861 }), 862 /* 863 * // Saving old implementation of Facebook in case we will need it as 864 * example in the future. new $.fn.oembed.OEmbedProvider("facebook", 865 * "rich", ["facebook.com/(people/[^\\/]+/\\d+|[^\\/]+$)"], 866 * "https://graph.facebook.com/$2$3/?callback=?" 867 * ,{templateRegex:/.*facebook.com\/(people\/[^\/]+\/(\d+).*|([^\/]+$))/, 868 * templateData : function(data){ if(!data.id)return false; var out = '<div 869 * class="oembedall-facebook1"><div class="oembedall-facebook2"><a 870 * href="http://www.facebook.com/">facebook</a> '; if(data.from) out += '<a 871 * href="http://www.facebook.com/'+data.from.id+'">
871'+data.from.name+'</a>'; 872 * else if(data.link) out += '<a href="'+data.link+'">'+data.name+'</a>'; 873 * else if(data.username) out += '<a 874 * href="http://www.facebook.com/'+data.username+'">'+data.name+'</a>'; 875 * else out += '<a 876 * href="http://www.facebook.com/'+data.id+'">'+data.name+'</a>'; out += '</div><div 877 * class="oembedall-facebookBody"><div class="contents">'; 878 * if(data.picture) out += '<a href="'+data.link+'"><img 879 * src="'+data.picture+'"></a>'; else out += '<img 880 * src="https://graph.facebook.com/'+data.id+'/picture">'; if(data.from) 881 * out += '<a href="'+data.link+'">'+data.name+'</a>'; 882 * if(data.founded) out += 'Founded: <strong>'+data.founded+'</strong><br>'; 883 * if(data.category) out += 'Category: <strong>'+data.category+'</strong><br>'; 884 * if(data.website) out += 'Website: <strong><a 885 * href="'+data.website+'">'+data.website+'</a></strong><br>'; 886 * if(data.gender) out += 'Gender: <strong>'+data.gender+'</strong><br>'; 887 * if(data.description) out += data.description + '<br>'; out += '</div></div>'; 888 * return out; } }), 889 */ 890 new $.fn.oembed.OEmbedProvider("stackoverflow", "rich", ["stackoverflow.com/questions/[\\d]+"], "http://api.stackoverflow.com/1.1/questions/$1?body=true&jsonp=?" 891 , {templateRegex: /.*questions\/([\d]+).*/, 892 templateData: function (data) { 893 if (!data.questions) 894 return false; 895 var q = data.questions[0]; 896 var body = $(q.body).text(); 897 var out = '<div class="oembedall-stoqembed"><div class="oembedall-statscontainer"><div class="oembedall-statsarrow"></div><div class="oembedall-stats"><div class="oembedall-vote"><div class="oembedall-votes">' 898 + '<span class="oembedall-vote-count-post"><strong>' + (q.up_vote_count - q.down_vote_count) + '</strong></span><div class="oembedall-viewcount">vote(s)</div></div>' 899 + '</div><div class="oembedall-status"><strong>' + q.answer_count + '</strong>answer</div></div><div class="oembedall-views">' + q.view_count + ' view(s)</div></div>' 900 + '<div class="oembedall-summary"><h3><a class="oembedall-question-hyperlink" href="http://stackoverflow.com/questions/' + q.question_id + '/">' + q.title + '</a></h3>' 901 + '<div class="oembedall-excerpt">' + body.substring(0, 100) + '...</div><div class="oembedall-tags">'; 902 for (i in q.tags) { 903 out += '<a title="" class="oembedall-post-tag" href="http://stackoverflow.com/questions/tagged/' + q.tags[i] + '">' + q.tags[i] + '</a>'; 904 } 905 906 out += '</div><div class="oembedall-fr"><div class="oembedall-user-info"><div class="oembedall-user-gravatar32"><a href="http://stackoverflow.com/users/' + q.owner.user_id + '/' + q.owner.display_name + '">' 907 + '<img width="32" height="32" alt="" src="http://www.gravatar.com/avatar/' + q.owner.email_hash + '?s=32&d=identicon&r=PG"></a></div><div class="oembedall-user-details">' 908 + '<a href="http://stackoverflow.com/users/' + q.owner.user_id + '/' + q.owner.display_name + '">' + q.owner.display_name + '</a><br><span title="reputation score" class="oembedall-reputation-score">' 909 + q.owner.reputation + '</span></div></div></div></div></div>'; 910 return out; 911 } 912 }), 913 new $.fn.oembed.OEmbedProvider("wordpress", "rich", ["wordpress\\.com/.+", "blogs\\.cnn\\.com/.+", "techcrunch\\.com/.+", "wp\\.me/.+"], "http://public-api.wordpress.com/oembed/1.0/?for=jquery-oembed-all"), 914 new $.fn.oembed.OEmbedProvider("screenr", "rich", ["screenr\.com"], "http://www.screenr.com/embed/$1", 915 {templateRegex: /.*\/([^\/]+).*/, embedtag: {tag: 'iframe', width: '650', height: 396}}) , 916 new $.fn.oembed.OEmbedProvider("gigpans", "rich", ["gigapan\\.org/[-.\\w@]+/\\d+"], "http://gigapan.org/gigapans/$1/options/nosnapshots/iframe/flash.html", 917 {templateRegex: /.*\/(\d+)\/?.*/, embedtag: {tag: 'iframe', width: '100%', height: 400 }}), 918 new $.fn.oembed.OEmbedProvider("scribd", "rich", ["scribd\\.com/.+"], "http://www.scribd.com/embeds/$1/content?start_page=1&view_mode=list", 919 {templateRegex: /.*doc\/([^\/]+).*/, embedtag: {tag: 'iframe', width: '100%', height: 600}}), 920 new $.fn.oembed.OEmbedProvider("kickstarter", "rich", ["kickstarter\\.com/projects/.+"], "$1/widget/card.html", 921 {templateRegex: /([^\?]+).*/, embedtag: {tag: 'iframe', width: '220', height: 380}}), 922 new $.fn.oembed.OEmbedProvider("amazon", "rich", ["amzn.com/B+", "amazon.com.*/(B\\S+)($|\\/.*)"], "http://rcm.amazon.com/e/cm?t=_APIKEY_&o=1&p=8&l=as1&asins=$1&ref=qf_br_asin_til&fc1=000000&IS2=1<1=_blank&m=amazon&lc1=0000FF&bc1=000000&bg1=FFFFFF&f=ifr", 923 { 924 apikey: true, 925 templateRegex: /.*\/(B[0-9A-Z]+)($|\/.*)/, 926 embedtag: { 927 tag: 'iframe', 928 width: '120px', 929 height: '240px'} 930 }), 931 new $.fn.oembed.OEmbedProvider("slideshare", "rich", ["slideshare\.net"], "//www.slideshare.net/api/oembed/2", {format: 'jsonp'}), 932 new $.fn.oembed.OEmbedProvider("roomsharejp", "rich", ["roomshare\\.jp/(en/)?post/.*"], "http://roomshare.jp/oembed.json"), 933 new $.fn.oembed.OEmbedProvider("lanyard", "rich", ["lanyrd.com/\\d+/.+"], null, 934 { 935 yql: { 936 xpath: '(//div[@class="primary"])[1]', 937 from: 'htmlstring', 938 datareturn: function (results) { 939 if (!results.result) 940 return false;
941 return '<div class="oembedall-lanyard">' + results.result + '</div>'; 942 } 943 } 944 }), 945 new $.fn.oembed.OEmbedProvider("asciiartfarts", "rich", ["asciiartfarts.com/\\d+.html"], null, 946 { 947 yql: { 948 xpath: '//pre/font', 949 from: 'htmlstring', 950 datareturn: function (results) { 951 if (!results.result) 952 return false; 953 return '<pre style="background-color:#000;">' + results.result + '</div>'; 954 } 955 } 956 }), 957 new $.fn.oembed.OEmbedProvider("coveritlive", "rich", ["coveritlive.com/"], null, { 958 templateRegex: /(.*)/, 959 template: '<iframe src="$1" allowtransparency="true" scrolling="no" width="615px" frameborder="0" height="625px"></iframe>'}), 960 new $.fn.oembed.OEmbedProvider("polldaddy", "rich", ["polldaddy.com/"], null, { 961 templateRegex: /(?:https?:\/\/w?w?w?.?polldaddy.com\/poll\/)([0-9]*)\//, 962 template: '<script async type="text/javascript" charset="utf-8" src="http://static.polldaddy.com/p/$1.js"></script>', 963 nocache: 1 964 }), 965 new $.fn.oembed.OEmbedProvider("360io", "rich", ["360\\.io/.+"], "http://360.io/$1", {templateRegex: /.*360\.io\/(\w+).*/, embedtag: {tag: 'iframe', width: 480, height: 360 }, nocache: 1}), 966 new $.fn.oembed.OEmbedProvider("bubbli", "rich", ["on\\.bubb\\.li/.+"], "http://on.bubb.li/$1", {templateRegex: /.*on\.bubb\.li\/(\w+).*/, embedtag: {tag: 'iframe', width: 480, height: 360}, nocache: 1 }), 967 new $.fn.oembed.OEmbedProvider("cloudup", "rich", ["cloudup\\.com/.+"], "http://cloudup.com/$1?chromeless", {templateRegex: [/.*cloudup\.com\/(\w+).*/], embedtag: {tag: 'iframe', width: 480, height: 360 }}), 968 new $.fn.oembed.OEmbedProvider("codepen", "rich", ["codepen.io/.+"], "http://codepen.io/$1/embed/$2", {templateRegex: [/.*io\/(\w+)\/pen\/(\w+).*/, /.*io\/(\w+)\/full\/(\w+).*/], embedtag: {tag: 'iframe', width: '100%', height: '300'}, nocache: 1 }), 969 new $.fn.oembed.OEmbedProvider("googleviews", "rich", ["(.*maps\\.google\\.com\\/maps\\?).+(output=svembed).+(cbp=(.*)).*"], "https://maps.google.com/maps?layer=c&panoid=$3&ie=UTF8&source=embed&output=svembed&cbp=$5", {templateRegex: /(.*maps\.google\.com\/maps\?).+(panoid=(\w+)&).*(cbp=(.*)).*/, embedtag: {tag: 'iframe', width: 480, height: 360}, nocache: 1 }), 970 new $.fn.oembed.OEmbedProvider("googlemaps", "rich", ["google\\.com\/maps\/place/.+"], "http://maps.google.com/maps?t=m&q=$1&output=embed", {templateRegex: /.*google\.com\/maps\/place\/([\w\+]*)\/.*/, embedtag: {tag: 'iframe', width: 480, height: 360 }, nocache: 1}), 971 new $.fn.oembed.OEmbedProvider("imajize", "rich", ["embed\\.imajize\\.com/.+"], "http://embed.imajize.com/$1", {templateRegex: /.*embed\.imajize\.com\/(.*)/, embedtag: {tag: 'iframe', width: 480, height: 360 }, nocache: 1}), 972 new $.fn.oembed.OEmbedProvider("mapjam", "rich", ["mapjam\\.com/.+"], "http://www.mapjam.com/$1", {templateRegex: /.*mapjam\.com\/(.*)/, embedtag: {tag: 'iframe', width: 480, height: 360 }, nocache: 1}), 973 new $.fn.oembed.OEmbedProvider("polar", "rich", ["polarb\\.com/.+"], "http://assets-polarb-com.a.ssl.fastly.net/api/v4/publishers/unknown/embedded_polls/iframe?poll_id=$1", {templateRegex: /.*polarb\.com\/polls\/(\w+).*/, embedtag: {tag: 'iframe', width: 480, height: 360 }, nocache: 1}), 974 new $.fn.oembed.OEmbedProvider("ponga", "rich", ["ponga\\.com/.+"], "https://www.ponga.com/embedded?id=$1", {templateRegex: [/.*ponga\.com\/embedded\?id=(\w+).*/, /.*ponga\.com\/(\w+).*/], embedtag: {tag: 'iframe', width: 480, height: 360 }, nocache: 1}), 975 976 // Use Open Graph Where applicable 977 new $.fn.oembed.OEmbedProvider("opengraph", "rich", [".*"], null, 978 { 979 yql: { 980 xpath: "//meta|//title|//link", 981 from: 'html', 982 datareturn: function (results) { 983 if (!results['og:title'] && results['title'] && results['description']) 984 results['og:title'] = results['title']; 985 986 if (!results['og:title'] && !results['title']) 987 return false; 988 989 var code = $('<p/>'); 990 if (results['og:video']) { 991 var embed = $('<embed src="' + results['og:video'] + '"/>'); 992 embed.attr('type', results['og:video:type'] || "application/x-shockwave-flash") 993 .css('max-height', settings.maxHeight || 'auto') 994 .css('max-width', settings.maxWidth || 'auto'); 995 if (results['og:video:width']) 996 embed.attr('width', results['og:video:width']); 997 if (results['og:video:height']) 998 embed.attr('height', results['og:video:height']); 999 code.append(embed); 1000 } else if (results['og:image']) { 1001 var img = $('<img src="' + results['og:image'] + '">'); 1002 img.css('max-height', settings.maxHeight || 'auto').css('max-width', settings.maxWidth || 'auto'); 1003 if (results['og:image:width']) 1004 img.attr('width', results['og:image:width']); 1005 if (results['og:image:height']) 1006 img.attr('height', results['og:image:height']); 1007 code.append(img); 1008 } 1009 1010 if (results['og:title']) 1011 code.append('<b>' + results['og:title'] + '</b><br/>'); 1012 1013 if (results['og:description']) 1014 code.append(results['og:description'] + '<br/>'); 1015 else if (results['description']) 1016 code.append(results['description'] + '<br/>'); 1017 1018 return code; 1019 } 1020 } 1021 } 1022 ) 1023 1024 ]; 1025})(jQuery); 1026// This is needed for gravatar :( 1027String.prototype.md5=function(){var a=function(a,b){var c=(a&65535)+(b&65535);var d=(a>>16)+(b>>16)+(c>>16);return d<<16|c&65535};var b=function(a,b){return a<<b|a>>>32-b};var c=function(c,d,e,f,g,h){return a(b(a(a(d,c),a(f,h)),g),e)};var d=function(a,b,d,e,f,g,h){return c(b&d|~b&e,a,b,f,g,h)};var e=function(a,b,d,e,f,g,h){return c(b&e|d&~e,a,b,f,g,h)};var f=function(a,b,d,e,f,g,h){return c(b^d^e,a,b,f,g,h)};var g=function(a,b,d,e,f,g,h){return c(d^(b|~e),a,b,f,g,h)};var h=function(b){var c,h,i,j,k,l=b.length;var m=1732584193;var n=-271733879;var o=-1732584194;var p=271733878;for(k=0;k<l;k+=16){c=m;h=n;i=o;j=p;m=d(m,n,o,p,b[k+0],7,-680876936);p=d(p,m,n,o,b[k+1],12,-389564586);o=d(o,p,m,n,b[k+2],17,606105819);n=d(n,o,p,m,b[k+3],22,-1044525330);m=d(m,n,o,p,b[k+4],7,-176418897);p=d(p,m,n,o,b[k+5],12,1200080426);o=d(o,p,m,n,b[k+6],17,-1473231341);n=d(n,o,p,m,b[k+7],22,-45705983);m=d(m,n,o,p,b[k+8],7,1770035416);p=d(p,m,n,o,b[k+9],12,-1958414417);o=d(o,p,m,n,b[k+10],17,-42063);n=d(n,o,p,m,b[k+11],22,-1990404162);m=d(m,n,o,p,b[k+12],7,1804603682);p=d(p,m,n,o,b[k+13],12,-40341101);o=d(o,p,m,n,b[k+14],17,-1502002290);n=d(n,o,p,m,b[k+15],22,1236535329);m=e(m,n,o,p,b[k+1],5,-165796510);p=e(p,m,n,o,b[k+6],9,-1069501632);o=e(o,p,m,n,b[k+11],14,643717713);n=e(n,o,p,m,b[k+0],20,-373897302);m=e(m,n,o,p,b[k+5],5,-701558691);p=e(p,m,n,o,b[k+10],9,38016083);o=e(o,p,m,n,b[k+15],14,-660478335);n=e(n,o,p,m,b[k+4],20,-405537848);m=e(m,n,o,p,b[k+9],5,568446438);p=e(p,m,n,o,b[k+14],9,-1019803690);o=e(o,p,m,n,b[k+3],14,-187363961);n=e(n,o,p,m,b[k+8],20,1163531501);m=e(m,n,o,p,b[k+13],5,-1444681467);p=e(p,m,n,o,b[k+2],9,-51403784);o=e(o,p,m,n,b[k+7],14,1735328473);n=e(n,o,p,m,b[k+12],20,-1926607734);m=f(m,n,o,p,b[k+5],4,-378558);p=f(p,m,n,o,b[k+8],11,-2022574463);o=f(o,p,m,n,b[k+11],16,1839030562);n=f(n,o,p,m,b[k+14],23,-35309556);m=f(m,n,o,p,b[k+1],4,-1530992060);p=f(p,m,n,o,b[k+4],11,1272893353);o=f(o,p,m,n,b[k+7],16,-155497632);n=f(n,o,p,m,b[k+10],23,-1094730640);m=f(m,n,o,p,b[k+13],4,681279174);p=f(p,m,n,o,b[k+0],11,-358537222);o=f(o,p,m,n,b[k+3],16,-722521979);n=f(n,o,p,m,b[k+6],23,76029189);m=f(m,n,o,p,b[k+9],4,-640364487);p=f(p,m,n,o,b[k+12],11,-421815835);o=f(o,p,m,n,b[k+15],16,530742520);n=f(n,o,p,m,b[k+2],23,-995338651);m=g(m,n,o,p,b[k+0],6,-198630844);p=g(p,m,n,o,b[k+7],10,1126891415);o=g(o,p,m,n,b[k+14],15,-1416354905);n=g(n,o,p,m,b[k+5],21,-57434055);m=g(m,n,o,p,b[k+12],6,1700485571);p=g(p,m,n,o,b[k+3],10,-1894986606);o=g(o,p,m,n,b[k+10],15,-1051523);n=g(n,o,p,m,b[k+1],21,-2054922799);m=g(m,n,o,p,b[k+8],6,1873313359);p=g(p,m,n,o,b[k+15],10,-30611744);o=g(o,p,m,n,b[k+6],15,-1560198380);n=g(n,o,p,m,b[k+13],21,1309151649);m=g(m,n,o,p,b[k+4],6,-145523070);p=g(p,m,n,o,b[k+11],10,-1120210379);o=g(o,p,m,n,b[k+2],15,718787259);n=g(n,o,p,m,b[k+9],21,-343485551);m=a(m,c);n=a(n,h);o=a(o,i);p=a(p,j)}return[m,n,o,p]};var i=function(a){var b="0123456789abcdef",c="",d,e=a.length*4;for(d=0;d<e;d++){c+=b.charAt(a[d>>2]>>d%4*8+4&15)+b.charAt(a[d>>2]>>d%4*8&15)}return c};var j=function(a){var b=(a.length+8>>6)+1;var c=[],d,e=b*16,f,g=a.length;for(d=0;d<e;d++){c.push(0)}for(f=0;f<g;f++){c[f>>
10272]|=(a.charCodeAt(f)&255)<<f%4*8}c[f>>2]|=128<<f%4*8;c[b*16-2]=g*8;return c};return i(h(j(this)))}; 1028 1029 1030/*! Loading Overlay - v1.0.2 - 2014-02-19 1031* http://jgerigmeyer.github.io/jquery-loading-overlay/ 1032* Copyright (c) 2014 Jonny Gerig Meyer; Licensed MIT */ 1033!function(a){"use strict";var b={init:function(b){var c=a.extend({},a.fn.loadingOverlay.defaults,b),d=a(this).addClass(c.loadingClass),e='<div class="'+c.overlayClass+'"><p class="'+c.spinnerClass+'"><span class="'+c.iconClass+'"></span><span class="'+c.textClass+'">'+c.loadingText+"</span></p></div>";return d.data("loading-overlay")||d.prepend(a(e)).data("loading-overlay",!0),d},remove:function(b){var c=a.extend({},a.fn.loadingOverlay.defaults,b),d=a(this).data("loading-overlay",!1);return d.find("."+c.overlayClass).detach(),d.hasClass(c.loadingClass)?d.removeClass(c.loadingClass):d.find("."+c.loadingClass).removeClass(c.loadingClass),d},exposeMethods:function(){return b}};a.fn.loadingOverlay=function(c){return b[c]?b[c].apply(this,Array.prototype.slice.call(arguments,1)):"object"!=typeof c&&c?void a.error("Method "+c+" does not exist on jQuery.loadingOverlay"):b.init.apply(this,arguments)},a.fn.loadingOverlay.defaults={loadingClass:"loading",overlayClass:"loading-overlay",spinnerClass:"loading-spinner",iconClass:"loading-icon",textClass:"loading-text",loadingText:""}}(jQuery); 1034 1035var COOKIE = { 1036 set: function(key, val, o){ 1037 o = o||{}; 1038 val = encodeURIComponent(val); 1039 if (o.domain) { 1040 val += '; domain=' + o.domain; 1041 } 1042 if (o.path) { 1043 val += '; path=' + o.path; 1044 } 1045 else { 1046 val += '; path=/'; 1047 } 1048 if (o.duration) { 1049 var date = new Date(); 1050 date.setTime(date.getTime() + o.duration*24*60*60*1000); 1051 val += '; expires=' + date.toGMTString(); 1052 } 1053 if (o.secure) { 1054 val += '; secure'; 1055 } 1056 document.cookie = key + '=' + val; 1057 }, 1058 1059 get: function(key){ 1060 var m = document.cookie.match('(?:^|;)\\s*?' + key + '=([^;]*)'); 1061 return (m) ? decodeURIComponent(m[1]) : null; 1062 }, 1063 1064 remove: function(key){ 1065 return this.set(key, "", {duration: -1}); 1066 } 1067} 1068 1069$jq(document).ready(function() { 1070 $jq("a.oembed").oembed();
1071 var hcfSetCSS = function(el) { 1072 var css = $jq(el).attr('data-css'); 1073 $oldCSS = $jq('body').attr('className'); 1074 if ($oldCSS != undefined) { 1075 $jq('body').removeClass($oldCSS); 1076 } 1077 1078 $jq('body').attr('className', ''); 1079 if (css != 'default') { 1080 $jq('body').addClass('hc_'+css); 1081 $jq('body').attr('className', 'hc_'+css); 1082 } 1083 COOKIE.set('poznanpl_hc_style', $jq('body').attr('className')); 1084 } 1085 1086 $jq('#catalog_contrast ul li a').click(function(e) { e.preventDefault(); hcfSetCSS(this); }); 1087 $jq('.icon-high-contrast-big').click(function(e){ e.preventDefault(); $jq('#ln_high_contrast > a').click(); $jq('#catalog_contrast').focus(); }); 1088 1089/** 1090* ZARZÄDZANIE COOKIES BEGIN MIM 1091**/ 1092 // po klikniÄciu na tekst w footerze strona siÄ przeÅaduje i resetuje ciastka 1093 $jq('.footer_links').on('click', '#change-cookies-label', function() { 1094 COOKIE.remove('poznanpl_hc_style') 1095 COOKIE.remove('poznanpl_cookies_ok') 1096 COOKIE.remove('poznanpl_videos_autoplay') 1097 COOKIE.remove('poznanpl_cookies_accepted') 1098 location.reload(true); 1099 }); 1100 1101 if(COOKIE.get('poznanpl_cookies_accepted')) { 1102 $jq("#cookies-box-content").css('display', 'none'); 1103 $jq('body').removeClass('body-not-accepted-cookies'); 1104 } 1105 else { 1106 $jq("#cookies-box-content").css('display', 'block'); 1107 $jq('body').addClass('body-not-accepted-cookies'); 1108 1109 var pickedCookiesOption = 0; 1110 1111 var cookiesValidator = function() { 1112 if(pickedCookiesOption >= 1) { 1113 COOKIE.set("poznanpl_hc_style", "true", {duration: 99999}); 1114 } 1115 if(pickedCookiesOption >= 2) { 1116 COOKIE.set("poznanpl_cookies_ok", "true", {duration: 99999}); 1117 COOKIE.set("poznanpl_videos_autoplay", "true", {duration: 99999}) 1118 } 1119 COOKIE.set("poznanpl_cookies_accepted", "true", {duration: 99999}); 1120 $jq('body').removeClass('body-not-accepted-cookies'); 1121 $jq('#cookies_box_top').hide(); 1122 $jq("#cookies-box-content").slideUp(); 1123 } 1124 1125 $jq("#cookies-button-ok").click(function(e) { 1126 cookiesValidator() 1127 }); 1128 1129 $jq("#cookies-exit").click(function(e) { 1130 cookiesValidator() 1131 }); 1132 1133 var appendCookiesTopText = function(text) { 1134 $jq("#cookies-top-text").append(text) 1135 } 1136 1137 var emptyCookiesText = function() { 1138 $jq("#cookies-top-text").empty() 1139 } 1140 1141 var displayCookiesWrapper = function(display_value) { 1142 $jq("#cookies-checkboxes-wrapper").css("display", display_value) 1143 } 1144 1145 var displayCookiesLaws = function(display_value) { 1146 $jq("#cookies-laws-wrapper").css("display", display_value) 1147 } 1148 1149 //zmiana kontentu cookies klikniecie na button Powrót / SzczegóÅowe Infromacje 1150 $jq('#cookies-button-desc').on('click', function(e) { 1151 e.stopImmediatePropagation(); 1152 1153 var button_type = $jq("#cookies-button-desc").html(); 1154 if (button_type.indexOf("Powr") >= 0) { 1155 $jq("#cookies-button-desc").html('Ustawienia') 1156 displayCookiesWrapper("none") 1157 displayCookiesLaws("inline-block") 1158 //wyÅwietlanie tekstu nagÅówka 1159 $jq('#text_1').css('display', 'block') 1160 $jq('#text_2').css('display', 'none') 1161 //ustawienie elementow '#cookies-laws ul li' na domyslne - opcja rozwiÅ i brak tÅa 1162 $jq('#cookies-laws .more').html('<sub>rozwiÅ</sub>') 1163 $jq('#cookies-laws > ul > li').css('background-color', '') 1164 } 1165 if (button_type.indexOf("Ustawienia") >= 0) { 1166 $jq("#cookies-button-desc").html('Powrót') 1167 1168 //wyÅwietlanie tekstu nagÅówka 1169 $jq('#text_2').css('display', 'block') 1170 $jq('#text_1').css('display', 'none') 1171 1172 displayCookiesWrapper("inline-block") 1173 displayCookiesLaws("none") 1174 } 1175 }); 1176 1177 //wybór zakresu plików cookies 1178 var all_cookies = 4 1179 var pickedOptions = function(id) { 1180 var for_i = 0 1181 if(id === '1') { 1182 for_i = all_cookies 1183 pickedCookiesOption = 2 1184 } 1185 if(id === '2') { 1186 for_i = 3 1187 pickedCookiesOption = 1 1188 } 1189 if(id === '3') { 1190 for_i = 2 1191 pickedCookiesOption = 0 1192 } 1193 1194 for(i = 1; i <= all_cookies; i++) { 1195 id = $jq('#agreed-cookies > li:nth-child(' + i +') > div') 1196 $jq(id).removeClass('agreed') 1197 $jq(id).addClass('blocked') 1198 } 1199 1200 for(i = 0; i < for_i; i++) { 1201 id = $jq('#agreed-cookies > li:nth-child(' + (all_cookies - parseInt(i)) + ') > div') 1202 $jq(id).removeClass('blocked') 1203 $jq(id).addClass('agreed') 1204 } 1205 } 1206 1207 $jq('.styled-checkbox').on('change', function() { 1208 var isChecked = $jq(this).is(":checked"); 1209 1210 if(isChecked) { 1211 var id = $jq(this).attr('id').substring(16) 1212 $jq('.styled-checkbox').not($jq(this)).prop('checked', false); 1213 pickedOptions(id) 1214 } else { 1215 $jq('.styled-checkbox').not($jq(this)).prop('checked', false); 1216 for(i = 1; i <= all_cookies - 1; i++) { //agreed ustawione zawsze dla ostatniego elementu listy 1217 id = $jq('#agreed-cookies > li:nth-child(' + i +') > div') 1218 $jq(id).removeClass('agreed') 1219 $jq(id).addClass('blocked') 1220 pickedCookiesOption = 0 1221 } 1222 } 1223 }); 1224 1225 1226 /** 1227 * window.width < 1024 1228 **/ 1229 if ($jq(window).width() < 1024) { 1230 $jq('.law-number').on("click", function() { 1231 var id = $jq(this).attr('id').substring(14) 1232 var elem = $jq('#law-content-id-' + id) 1233 if(elem.attr('value') == 'open') { 1234 elem.css('display', 'none') 1235 elem.attr('value', 'hidden') 1236 } 1237 else { 1238 $jq('.law-content').css('display', 'none') 1239 elem.attr('value', 'open') 1240 elem.css('display', 'block') 1241 } 1242 }) 1243 } 1244 } 1245/** 1246* ZARZÄDZANIE COOKIES END MIM 1247**/ 1248 1249 var openJobIntroElement = function(elem, content_element){ 1250 if (elem.hasClass('list-opened')) { 1251 elem.removeClass('list-opened'); 1252 elem.addClass('list-closed'); 1253 content_element.hide(); 1254 return; 1255 } 1256 elem.removeClass('list-closed'); 1257 elem.addClass('list-opened'); 1258 content_element.show(); 1259 } 1260 1261 $jq('footer.footer-container').on('click', "h1.footer_header", function (e) { 1262 openJobIntroElement($jq(this), $jq(this).parent().find('.footer_links')) 1263 }); 1264 1265 var css = COOKIE.get('poznanpl_hc_style'); 1266 css ? $jq('body').attr('className', css) : null; 1267 $jq('body').addClass(css); 1268 1269 var showQr = function(e) { 1270 e.preventDefault(); 1271 var img = $jq(this).attr('data-qrcode-url'); 1272 showWithModal('<img src="' + img + '" />'); 1273 } 1274 var showWithModal = function(content) { 1275 if ($jq('.modal').length == 0) 1276 { 1277 $jq('body').append('<div class="modal"><div id="modalcontent"></div><div class="modalbg"></div></div>'); 1278 $jq('.modal').on('click', function() { $jq(this).remove(); }) 1279 } 1280 $jq('#modalcontent').html(content); 1281 var w = $jq('#modalcontent').width();
1282 var h = $jq('#modalcontent').height(); 1283 $jq('#modalcontent').css({ 1284 'marginLeft': Math.round(w/-2) + 'px', 1285 'marginTop': Math.round(h/-2) + 'px' 1286 }) 1287 } 1288 1289 var gotoFunc = function(e) { 1290 var goto = "" + $jq(this).data("target").replace(/[!"$%&'()*+,./:;<=>?@[\]^`{|}~]/g, "\\$&"), 1291 menuOffset = 0, extraOffset = $jq(this).data("extraOffset"); 1292 1293 if (extraOffset === undefined) extraOffset = 0; 1294 if($jq(window).width() > 768) { 1295 menuOffset = $jq("div.header-container").height(); 1296 } 1297 $jq("html, body").animate({ 1298 scrollTop: $jq(goto).offset().top - menuOffset + extraOffset 1299 }, 500); 1300 $jq(goto).focus(); 1301 if(e) e.preventDefault(); 1302 }; 1303 1304 $jq(".goto-anchor").click(gotoFunc); 1305 1306 var menuHiderConfig = { 1307 top: $jq(window).scrollTop(), 1308 show: false, 1309 login: $jq('.with-login').length > 0 ? $jq('body > .login').height() : 0, 1310 header: $jq('.header-container').length > 0 ? $jq('.header-container').height() : 0 1311 } 1312 var menuHider = function() { 1313 var top = $jq(window).scrollTop(); 1314 1315 if (top != menuHiderConfig.top) 1316 { 1317 menuHiderConfig.show = top < menuHiderConfig.top; 1318 menuHiderConfig.top = top; 1319 } 1320 1321 if (top > menuHiderConfig.header + menuHiderConfig.login) 1322 $jq('body').addClass('fixed-menu'); 1323 else 1324 $jq('body').removeClass('fixed-menu'); 1325 1326 if (menuHiderConfig.show) 1327 $jq('body').addClass('show-fixed-menu'); 1328 else 1329 $jq('body').removeClass('show-fixed-menu'); 1330 } 1331 1332 $jq(window).scroll(function(){ 1333 var wrap = $jq("div.menu-container"); 1334 var aTop = $jq('div.header-container').height(); 1335 if($jq(this).scrollTop() > aTop) { 1336 1337 mhq = $jq('.header-container'); 1338 if (mhq.length !== 0) { 1339 mim_headers = mhq.height(); 1340 } 1341 if (wrap.css("position") === "fixed") { 1342 mim_headers = 0; 1343 $jq(".menu-container-fixed").css("top", mim_headers + "px"); 1344 } 1345 } else { 1346 if (document.querySelectorAll('.menu-container-fixed').length !== 0) { 1347 $jq(".menu-container-fixed").css("top", "0"); 1348 wrap.removeClass("menu-container-fixed"); 1349 } 1350 } 1351 }); 1352 1353 // rolled up / down elements 1354 $jq('[data-blockroll]').blockRoll ? $jq('[data-blockroll]').blockRoll() : null; 1355 1356 var filterResults = function() { 1357 if ($jq('.inline-filter input').length) 1358 { 1359 var _filter_input = $jq('.inline-filter input'); 1360 var _filter_pattern = $jq(_filter_input.attr('data-filter-pattern')); 1361 var _filter = function(e) { 1362 e.preventDefault(); 1363 var val = _filter_input.val(); 1364 if (val != '') 1365 { 1366 $jq('[data-blockroll]').blockRollDisable(); 1367 } 1368 else 1369 { 1370 $jq('[data-blockroll]').blockRollEnable(); 1371 } 1372 _filter_to(val); 1373 } 1374 var _filter_to = function(val) { 1375 var val = val; 1376 var pattern = new RegExp(val, 'gi'); 1377 _filter_pattern.each(function() { 1378 var el = $jq(this); 1379 if (el.text().match(pattern)) 1380 { 1381 el.parent().show(); 1382 } 1383 else 1384 { 1385 el.parent().hide(); 1386 } 1387 }); 1388 } 1389 $jq('.inline-filter').submit(_filter); 1390 $jq('.inline-filter input').keyup(_filter); 1391 } 1392 } 1393 filterResults(); 1394 1395 var pozResizeFonts = function(e) { 1396 e.preventDefault(); 1397 var body = $jq('body'); 1398 if (body.hasClass('font-size-1')) { body.removeClass('font-size-1').addClass('font-size-2'); COOKIE.set('poznanpl_font_size', 2); } 1399 else if (body.hasClass('font-size-2')) { body.removeClass('font-size-2'); COOKIE.remove('poznanpl_font_size'); } 1400 else { body.addClass('font-size-1'); COOKIE.set('poznanpl_font_size', 1); } 1401 } 1402 1403 1404 var toggleMainMenu = function (e) { 1405 e.preventDefault(); 1406 $jq('body').addClass('open-main-menu-mobile'); 1407 if($jq('#head-sticky-main-page').length >0){ 1408 var headerTop = setMenuMobileTop(); 1409 1410 } 1411 $jq("#menu-mobile-poznan").css({'top':headerTop,'height': `calc(100vh - ${headerTop}px)`}); 1412 $jq("#menu-mobile-poznan").addClass('open-main-menu'); 1413 } 1414 $jq('.menu-navigation .main-menu, .header-container nav > .main-menu > .close').on('click', toggleMainMenu); 1415 1416 var pozResizeMenu = function() { 1417 $jq('.wrapper.submenu').each(function() { 1418 var s = $jq(this); 1419 var h = s.css('height', 'auto').height() + 100; 1420 s.css('height', '0').attr('data-maxh', h); 1421 }); 1422 } 1423 1424 var pozRollup = function(e) 1425 { 1426 e.preventDefault(); 1427 $jq(this).parents('.rollup').toggleClass('open'); 1428 } 1429 1430 var pozToolset = function(e) 1431 { 1432 e.preventDefault(); 1433 $jq(this).parents('.toolset').toggleClass('open'); 1434 } 1435 1436 var pozSlider = function(context) 1437 { 1438 var context = $jq(context); 1439 var slider = $jq(context).find('.slider'); 1440 var is_looped = context.hasClass('loop'); 1441 var blocked = slider.hasClass('blocked'); 1442 1443 if(blocked){ 1444 return; 1445 } 1446 1447 if (is_looped) 1448 { 1449 slider.html(slider.html() + slider.html()); 1450 } 1451 1452 var nav = context.find('nav'); 1453 var nav_button = nav.find('a'); 1454 var max, max_width, step, slide = 1, page = 0, init = Number(slider.css('marginLeft').replace('px', '')); 1455 var is_big_slider = context.hasClass('slider-big');
1456 var timeout = Number(context.attr('data-slider-timeout')), interval, vis; 1457 var max_step = Number(context.attr('data-slider-step')); 1458 var step_margin_right = 0, vis_wrapper = 0; 1459 1460 var _fn_resize = function() { 1461 step = slider.find('.column:not(.big)').width() + 0; 1462 if (slider.find('.column:not(.big)').length > 0) { 1463 step_margin_right = parseInt(slider.find('.column:not(.big)').css('marginRight').replace('px', '')); 1464 } 1465 step = step + step_margin_right; 1466 if (document.querySelectorAll('.first-slider-big').length !== 0) { 1467 } 1468 vis_wrapper = Math.ceil((context.find('.wrapper').width() - 2 * init)); 1469 vis = Math.ceil((context.find('.wrapper').width() - 2 * init) / step); 1470 max = -1 * Math.ceil(slider.find('.column').length + slider.find('.column.big').length - vis); 1471 slide = max_step > 0 ? max_step : vis; 1472 if (step * 2 > vis_wrapper) { 1473 max = max - 1; 1474 } 1475 if(document.getElementById('slider-mobile')){ 1476 1477 slide=1; 1478 } 1479 } 1480 1481 var _fn_break_timeout = function(e) { 1482 if (interval) 1483 { 1484 clearInterval(interval); 1485 interval = null; 1486 } 1487 } 1488 1489 var _fn_navigate_swipe = function(context, direction) 1490 { 1491 $jq(context).prev().find('a').get(direction).click(); 1492 } 1493 1494 var _fn_navigate = function(e) { 1495 if (slider.find('.column').length < 5){ 1496 if (e) { 1497 e.preventDefault(); 1498 } 1499 return; 1500 } 1501 var e = e || null; 1502 e && e.preventDefault ? e.preventDefault() : null; 1503 var _t = e && e.currentTarget ? $jq(e.currentTarget) : $jq(nav); 1504 1505 1506 var isExist = document.getElementsByClassName('icon icon-prev hide-text'); 1507 var isExist2 = document.getElementsByClassName('icon icon-prev-black hide-text'); 1508 if (isExist.length > 0 || isExist2.length > 0) { 1509 if (isExist.length > 0) { 1510 page += (_t.hasClass('icon-prev') ? slide : -slide); 1511 } else if (isExist2.length > 0) { 1512 page += (_t.hasClass('icon-prev-black') ? slide : -slide); 1513 } 1514 } 1515 1516 slider.removeClass('reset-easing'); 1517 1518 if (is_looped && page > 0) 1519 { 1520 page = (max - 1) / 2 - 2; 1521 slider.addClass('reset-easing'); 1522 var pos = (step * page) + init; 1523 slider.css('marginLeft', pos + 'px'); 1524 setTimeout(function() { _fn_navigate(); }, 10) 1525 return false; 1526 } 1527 else if (is_looped && page < max) 1528 { 1529 page = (max - 1) / 2 + 3; // ?? 1530 slider.addClass('reset-easing'); 1531 var pos = (step * page) + init; 1532 slider.css('marginLeft', pos + 'px'); 1533 setTimeout(function() { _fn_navigate(); }, 10) 1534 return false; 1535 } 1536 1537 if (page > 0) {page = 0;} 1538 else if (is_big_slider && page == -1 && $jq(this).hasClass('icon-prev')) {page = 0;} 1539 else if (is_big_slider && page == -1 && $jq(this).hasClass('icon-prev-black')) {page = 0;} 1540 else if (is_big_slider && page == -1 && !document.getElementById('slider-mobile')) {page = -2;} 1541 else if (page <= max) {page = max;} 1542 1543 if (step * page === 0){ 1544 var pos = init; 1545 slider.css('marginLeft', pos + 'px'); 1546 } else { 1547 var pos = (step * page) + init; 1548 slider.css('marginLeft', pos + 'px'); 1549 } 1550 var scrollBar = document.querySelector('.scrollbar-slider-big'); 1551 var scrollBarBackground = (page / max) * 100; 1552 if(scrollBar){ 1553 scrollBar.style.setProperty('background-position', scrollBarBackground + '% 100%'); 1554 } 1555 var progressBar = document.querySelector('.progress-bar-slider-big'); 1556 if(progressBar){
1557 var progressBarBackground = (page / (max+1)) * 100; 1558 progressBar.style.setProperty('background-size', progressBarBackground + '% 100%'); 1559 } 1560 } 1561 1562 var _fn_init_slider = function() { 1563 var wWidth = $jq(window).width(); 1564 _fn_resize(); 1565 nav_button.on('click', function(e) { 1566 _fn_break_timeout(e); 1567 _fn_navigate(e); 1568 }); 1569 if (wWidth > 700) { 1570 slider.on("swipeleft", function (e) { 1571 _fn_break_timeout(e); 1572 _fn_navigate_swipe(this, 1); 1573 }).on("swiperight", function (e) { 1574 _fn_break_timeout(e); 1575 _fn_navigate_swipe(this, 0); 1576 }); 1577 } 1578 } 1579 1580 if (timeout) { 1581 interval = setInterval(_fn_navigate, timeout); 1582 } 1583 1584 _fn_init_slider(); 1585 } 1586 1587 var pozBlock = function(context) { 1588 var context = $jq(context); 1589 var parent = context.parent().parent().parent(); 1590 1591 var url = context.attr('data-pzn-url'); 1592 var val = context.val(); 1593 var page = 1; 1594 1595 var pozBlockPaginator = function(context) { 1596 1597 var context = $jq(context); 1598 page = context.find('.column-container').attr('data-pzn-rotator-page'); 1599 var pmax = context.find('.column-container').attr('data-pzn-rotator-pages'); 1600 var nav = context.find('nav'); 1601 nav.html(''); 1602 1603 var links = Array(); 1604 for (var i = 1; i <= pmax; i++) 1605 { 1606 links.push('<a href="#strona' + i + '" data-page="' + i + '" armin-label="Strona ' + i + '"' + (i == page ? ' class="active" ' : '') + '>' + i + '</a>'); 1607 } 1608 nav.html(links.join(' ')); 1609 1610 nav.find('a').on('click', function(e) { 1611 e.preventDefault(); 1612 $jq(this).parent().find('a').removeClass('active'); 1613 $jq(this).addClass('active'); 1614 page = $jq(this).attr('data-page'); 1615 _fn_change(e); 1616 }); 1617 } 1618 1619 var _fn_change_with_page = function(e) { 1620 page = 1; 1621 _fn_change(e); 1622 }; 1623 1624 var _fn_change = function(e) { 1625 val = context.val(); 1626 1627 parent.find('.column-container').hide(); 1628 parent.find('.column-loader').show(); 1629 1630 var _fn_restore = function() { 1631 parent.find('.column-container').show(); 1632 parent.find('.column-loader').hide(); 1633 } 1634 1635 if (url !== undefined) { 1636 if (url === '#main_news_'){ 1637 parent.find('.column-container').html($jq("#main_news_" + val).html()); 1638 pozBlockPaginator(parent); 1639 _fn_restore(); 1640 $jq(".box-aktualnosci .box-container div.column-container .column .dotdotdot").dotdotdot(); 1641 } else if (url === '#wydarzenia_'){ 1642 if (page === undefined) { 1643 page = 1; 1644 } 1645 var id = "#wydarzenia_paginator_" + val + "_" + page; 1646 var content = $jq("#wydarzenia_paginator_" + val + "_" + page).html(); 1647 if (content === undefined) { 1648 content = "<div class=\"column-container clearfix\" data-pzn-rotator-pages=\"0\" data-pzn-rotator-page=\"0\"><span class=\"no-data\">Brak danych</span></div>"; 1649 } 1650 var test = parent.find('.column-container'); 1651 parent.find('.column-container').replaceWith(content); 1652 pozBlockPaginator(parent); 1653 _fn_restore(); 1654 $jq("div.box-container div.column-container .column.column-event .dotdotdot").dotdotdot(); 1655 } else { 1656 $jq.ajax({ 1657 url: url, 1658 data: { 1659 id: val, 1660 page: page 1661 }, 1662 complete: function() { 1663 pozBlockPaginator(parent); 1664 _fn_restore(); 1665 }, 1666 success: function(res) { 1667 parent.find('.column-container').remove(); 1668 parent.append(res); 1669 pozBlockPaginator(parent); 1670 _fn_restore(); 1671 }, 1672 error: function() { 1673 alert('WystÄ piÅ bÅÄ d'); 1674 } 1675 }); 1676 } 1677 } 1678 }; 1679 context.on('change', _fn_change_with_page); 1680 pozBlockPaginator(parent); 1681 } 1682 1683 var pozCatalog = function(e) { 1684 $jq('.main-header-row1 div').removeClass('opened'); 1685 $jq('#backdrop-menu-desktop').css('display','none'); 1686 $jq('body').removeClass('open-main-menu'); 1687 $jq(".main_categories > li").css("border-right","2px solid black"); 1688 $jq(".first_column_menu li").css("border-right","0px solid black"); 1689 1690 $jq(".dropdown-vertically ul").css("border-top", "0px solid black"); 1691 $jq(".dropdown-vertically ul li").css({ 1692 "visibility": "visible", 1693 "display" : "block" 1694 }); 1695 $jq(".dropdown-vertically ul li").removeClass("bolded-rows"); 1696 $jq(".dropdown-vertically ul li").css("display", "flex"); 1697 $jq(".dropdown-vertically ul li").css("font-size", "12px"); 1698 1699 $jq(".dropdown-vertically ul li ul").css("visibility", "hidden"); 1700 $jq(".dropdown-vertically ul li ul").css("display", "none"); 1701 1702 $jq(".line").css("display", "none"); 1703 $jq(".line_menu2").css("display", "none"); 1704 1705 for (let i = 0; i < 12; i++){ 1706 $jq("ul.sub-menu_" +i).css("visibility","hidden"); 1707 } 1708 if (search_dialog_opened) return; 1709 1710 var $t = $jq(e.target); 1711 if ($t.is('[data-css]') || $t.closest('li').hasClass('opened')) { 1712 return; 1713 } 1714 $jq('.header-container nav ul > li').removeClass('opened'); 1715 $jq('#backdrop-menu-desktop').css('display','none'); 1716 $jq('body').removeClass('open-main-menu'); 1717 var cl = $jq(e.currentTarget).data("pzn-menu"); 1718 var wWidth = $jq(window).width(); 1719 1720 $jq("li[data-pzn-menu =" + cl + "]").addClass("bolded-rows") 1721 1722 $jq("a.links-header").removeClass("bolded-rows"); 1723 1724 $jq("a[data-pzn-menu =" + cl + "]").addClass("bolded-rows") 1725 1726 if (wWidth >=1100) { 1727 var line = $jq("li[data-pzn-menu =" + cl + "]"); 1728 line.children('.line').each(function () { 1729 $jq(this).css("display", "block"); 1730 }); 1731 } 1732 1733 $jq('.wrapper.submenu').css('height', '0'); 1734 $jq('#' + cl).height("650px"); 1735 1736 if (cl == "catalog_1" || cl == "catalog_2") { 1737 $jq('#' + cl).height("350px"); 1738 } 1739 1740 if (wWidth <1100) { 1741 $jq('.main_categories').css('display', 'none'); 1742 } else $jq('.main_categories').css('display', 'block'); 1743 1744 1745 if (wWidth <= 830) { 1746 $jq(".dropdown-vertically ul li").css("display", "block"); 1747 $jq(".close-submenu").css("display", "none"); 1748 $jq(".dropdown-vertically .close").css("display", "block"); 1749 $jq('#' + cl).height("auto"); 1750 } else $jq('#' + cl).css("z-index", "2"); 1751 1752 _additional_header_height = $jq("div.header-container header").outerHeight(); 1753 if( _additional_header_height <180){ 1754 _additional_header_height = $jq("div.header-container header").offset().top + $jq("div.header-container header").outerHeight(); 1755 } 1756 1757 $jq('#' + cl).css("top", _additional_header_height + "px"); 1758 $jq('#' + cl).css("z-index", "25"); 1759 $jq('#' + cl).css("overflow-y", "auto"); 1760 1761 if ($jq(e.currentTarget).parent().hasClass('opened')) { 1762 $jq(e.currentTarget).parent().removeClass('opened'); 1763 $jq('#backdrop-menu-desktop').css('display','none'); 1764 $jq('body').removeClass('open-main-menu'); 1765 $jq(e.currentTarget).children('div.links-menu-header-arrow').removeClass('links-menu-header-arrow-opened').addClass('links-menu-header-arrow-closed'); 1766 $jq('.wrapper.submenu').css('display', 'none'); 1767 1768 1769 } else { 1770 var mobileHrefLinkDivs = document.querySelectorAll('.mobile-href-link-div');
1771 mobileHrefLinkDivs.forEach(function(element) { 1772 element.classList.remove('opened'); 1773 var arrowElement = element.querySelector('div.links-menu-header-arrow'); 1774 if (arrowElement) { 1775 arrowElement.classList.remove('links-menu-header-arrow-opened'); 1776 arrowElement.classList.add('links-menu-header-arrow-closed'); 1777 1778 }}); 1779 1780 $jq(e.currentTarget).parent().addClass('opened'); 1781 $jq('#backdrop-menu-desktop').css('display','block'); 1782 $jq('body').addClass('open-main-menu'); 1783 $jq(e.currentTarget).children('div.links-menu-header-arrow').removeClass('links-menu-header-arrow-closed').addClass('links-menu-header-arrow-opened'); 1784 1785 1786 var wWidth = $jq(window).width(); 1787 var offsetTop; 1788 if(wWidth<=700){ 1789 offsetTop = $jq(e.currentTarget).offset().top - 143; 1790 $jq('.wrapper.submenu').css('display', 'block'); 1791 $jq('.wrapper.submenu').css('top', offsetTop + 'px'); 1792 } 1793 1794 1795 $jq('.wrapper.submenu').css('display', 'block'); 1796 1797 } 1798 1799 1800 e.preventDefault(); 1801 }; 1802 1803 $jq('.close-submenu').on('click', function(e) { 1804 $jq(".dropdown-vertically ul").css("border-top", "0px solid black"); 1805 1806 $jq(".dropdown-vertically ul li").removeClass("bolded-rows"); 1807 $jq(".dropdown-vertically ul li").css("visibility", "visible"); 1808 $jq(".dropdown-vertically ul li").css("display", "block"); 1809 $jq(".dropdown-vertically ul li").css("font-size", "12px"); 1810 1811 $jq(".dropdown-vertically ul li ul").css("visibility", "hidden"); 1812 $jq(".dropdown-vertically ul li ul").css("display", "none"); 1813 1814 $jq(".close-submenu").css("display", "none"); 1815 $jq(".dropdown-vertically .close").css("display", "block"); 1816 }); 1817 1818 1819 1820 $jq('.dropdown-vertically .close').on('click', function(e) { 1821 e.preventDefault(); 1822 $jq('.wrapper.submenu').css('height', '0').css('top',''); 1823 $jq('.header-container nav ul li').removeClass('opened'); 1824 $jq('.main-header-row1 div').removeClass('opened'); 1825 $jq('#backdrop-menu-desktop').css('display','none'); 1826 $jq('body').removeClass('open-main-menu'); 1827 $jq("a.links-header").removeClass("bolded-rows"); 1828 $jq('.main-header-row1 div a').removeClass("bolded-rows"); 1829 $jq('.main-header-row1 div > a').css("font-weight","400") 1830 }); 1831 1832 $jq('.header-container .submenu-container > .close').on('click', function(e) { 1833 e.preventDefault(); 1834 $jq('.header-container nav ul li').removeClass('opened'); 1835 $jq('.wrapper.submenu').css('height', '0').css('min-height', ''); 1836 1837 $jq('.wrapper.submenu').css('height', '0').css('top',''); 1838 1839 $jq('.main-header-row1 div').removeClass('opened'); 1840 $jq('.main-header-row1 div a').removeClass("bolded-rows"); 1841 $jq('.main-header-row1 div > a').css("font-weight","400"); 1842 }); 1843 1844 var pozSubMenu = function (e) { 1845 var wWidth = $jq(window).width(); 1846 1847 if(wWidth >830) $jq(".first_column_menu > li").css("border-right","2px solid black"); 1848 $jq(".dropdown-vertically ul li ul").css("display", "none"); 1849 $jq(".dropdown-vertically ul li").css("font-weight", "400"); 1850 $jq(".dropdown-vertically ul li").removeClass("bolded-rows"); 1851 $jq(".dropdown-vertically ul").css("border-top", "0px solid black"); 1852 1853 if (wWidth <= 830){ 1854 $jq(".dropdown-vertically .close").css("display", "none"); 1855 1856 $jq(".dropdown-vertically ul li").css("visibility", "hidden"); 1857 $jq(".dropdown-vertically ul li").css("display", "none"); 1858 $jq(".dropdown-vertically ul").css("border-top", "2px solid black"); 1859 $jq(".dropdown-vertically ul li ul").css("border-top", "0px solid black"); 1860 1861 $jq("div.opened .close-submenu").css("display", "block"); 1862 } 1863 1864 $jq(e.currentTarget).css("visibility", "visible"); 1865 $jq(e.currentTarget).css("display", "flex"); 1866 $jq('.main-header-row1 div > a').css("font-weight","400") 1867 $jq(e.currentTarget).addClass("bolded-rows") 1868 1869 var cl = $jq(e.currentTarget).data("pzn-menu"); 1870 1871 for (let i = 0; i < 12; i++){ 1872 $jq("ul.sub-menu_" +i).css("visibility","hidden"); 1873 } 1874 1875 $jq('.' + cl).css("visibility", "visible"); 1876 $jq('.' + cl).css("display", "block"); 1877 $jq('.' + cl).removeClass("bolded-rows"); 1878 $jq('.' + cl).css("position","absolute"); 1879 1880 $jq('.' + cl + ' li').css("visibility", "visible"); 1881 $jq('.' + cl + ' li').css("display", "block"); 1882 1883 var catalog_number = $jq(e.currentTarget.offsetParent.parentNode.parentNode).attr('id'); 1884 $jq("li[data-pzn-menu =" + catalog_number + "]").addClass("bolded-rows") 1885 $jq("a[data-pzn-menu =" + catalog_number + "]").addClass("bolded-rows") 1886 1887 $jq(".line_menu2").css("display", "none"); 1888 if (wWidth >=840) $jq(e.currentTarget).children('.line_menu2').css("display","block"); 1889 1890 if (wWidth <= 830) { 1891 $jq(e.currentTarget).css("display", "block"); 1892 $jq('.' + cl).css("position","sticky"); 1893 $jq(e.currentTarget).css("font-size","15px"); 1894 } else if (wWidth <= 915) { 1895 $jq('.' + cl).css("left","100%"); 1896 } else if (wWidth <= 1100) { 1897 $jq('.' + cl).css("left", "90%"); 1898 } 1899 }; 1900 1901 $jq('[data-pzn-bind]').each(function() { 1902 1903 switch($jq(this).attr('data-pzn-bind')) { 1904 case 'catalog': 1905 /* otwieramy / zamykamy blok po kliknieciu w link katalogu */ 1906 $jq(this).on('click', pozCatalog); 1907 break; 1908 1909 case 'rollup': 1910 $jq(this).on('click', pozRollup); 1911 break; 1912 1913 case 'toolset': 1914 $jq(this).on('click', pozToolset); 1915 break; 1916 1917 case 'slider': 1918 /* slider */ 1919 pozSlider(this); 1920 break; 1921 1922 case 'font': 1923 /* zmiena wielkoÅci czcionki */ 1924 $jq(this).on('click', pozResizeFonts); 1925 break; 1926 case 'print': 1927 $jq(this).on('click', function(){window.print();}); 1928 break; 1929 case 'qr': 1930 $jq(this).on('click', showQr); 1931 break; 1932 1933 case 'option': 1934 /* przeladowanie bloku wydarzen itp. */ 1935 pozBlock(this); 1936 break; 1937 1938 case 'language': 1939 $jq(this).find('a').on('click', function(e) { 1940 e.preventDefault(); 1941 $jq(this).parent().parent().find('li').removeClass('active'); 1942 $jq(this).parent().addClass('active'); 1943 }); 1944 break; 1945 1946 case 'sub-menu': 1947 $jq(this).on('click', pozSubMenu).on('focus',pozSubMenu); 1948 break; 1949 } 1950 1951 pozResizeMenu(); 1952 }); 1953 1954 var search_dialog_opened = false, last_focus; 1955 var _fn_search_menu_open = function(e) { 1956 e.preventDefault(); 1957 $jq('link[href$="forms.css"]').prop('disabled', true); 1958 1959 $search = $jq('.search-container'); 1960 $search.attr('tabindex', '-1'); 1961 $jq('body').css('overflow','hidden'); 1962 search_dialog_opened = true; 1963 last_focus = document.activeElement; 1964 1965 $search.css('top', 0).addClass('visible'); 1966 $jq('#string').focus(); 1967 setTimeout(function() { $search.css('opacity', 1) }, 10); 1968 $jq(document).on('focusin', function(e) { 1969 if (search_dialog_opened && !$jq.contains($search.get(0), e.target)) { 1970 e.stopPropagation(); 1971 $jq('#string').focus(); 1972 } 1973 }); 1974 }; 1975 1976 var _fn_search_menu_close = function(e) { 1977 e.preventDefault(); 1978 $jq('link[href$="forms.css"]').prop('disabled', false); 1979 1980 $jq('.search-container').css('opacity', 0); 1981 setTimeout(function() { $jq('.search-container').removeClass('visible') }, 350); 1982 $jq('body').css('overflow','visible'); 1983 search_dialog_opened = false;
1984 last_focus.focus(); 1985 $jq(document).off('focusin'); 1986 } 1987 1988 $jq('#main_search').on('click', _fn_search_menu_open); 1989 1990 $jq(document).on('click','.search-container a.close', _fn_search_menu_close); 1991 $jq(document).on('keydown','.search-container', function(e) { 1992 if (e.keyCode === 27) { 1993 _fn_search_menu_close(e); 1994 } 1995 e.stopPropagation(); 1996 }); 1997 1998 var resizeInterval; 1999 2000 var _fn_boxResize = function() { 2001 $jq('.content-container .menu-container > .container').each(function() { 2002 if($jq(this).parent().width() < 250 && $jq(this).attr('style') !== undefined) { 2003 $jq(this).removeAttr('style'); 2004 } 2005 }); 2006 }; 2007 2008 var _adjust_body_padding = function() { 2009 var winWidth = $jq(window).width(); 2010 var _additional_height = 0; 2011 var _header_container_height = 0; 2012 2013 if ($jq("body.with-login section.login").length > 0) { 2014 _additional_height = $jq("body.with-login section.login").height(); 2015 } 2016 if ($jq("body div.header-container").length > 0) { 2017 _header_container_height = $jq("body div.header-container").height(); 2018 } 2019 if ($jq("#eto_header").length > 0 && $jq("#eto_body").length > 0) { 2020 var kiosk_header_height = $jq("#eto_header").height(); 2021 var kiosk_body_height = $jq("#eto_body").height(); 2022 kiosk_body_height = kiosk_body_height - kiosk_header_height - 50; 2023 $jq("#eto_body").css("height", (kiosk_body_height) + "px"); 2024 var kiosk_iframe_height = kiosk_body_height - kiosk_header_height; 2025 if (kiosk_iframe_height < 100) { 2026 kiosk_iframe_height = 100; 2027 } 2028 $jq("#eto_iframe").css("height", kiosk_iframe_height + "px"); 2029 } 2030 2031 if ($jq('section.top-container').length > 0) { 2032 mw0 = $jq('section.top-container').innerWidth() - 25; 2033 mw1 = $jq('section.top-container div.wrapper h2').width(); 2034 if (mw0 < mw1) { 2035 $jq('section.top-container div.wrapper h2 > a').css('font-size', '24px'); 2036 } else { 2037 $jq('section.top-container div.wrapper h2 > a').css('font-size', 'unset'); 2038 } 2039 } 2040 2041 changeBodyPadding(); 2042 } 2043 2044 2045 $jq(window).on('resize', function(e) { 2046 if (resizeInterval) 2047 { 2048 clearTimeout(resizeInterval); 2049 resizeInterval = null; 2050 }; 2051 resizeInterval = setTimeout(function() { 2052 _fn_boxResize(); 2053 _adjust_body_padding(); 2054 slickSliderWuiaUpdate(); 2055 }, 500); 2056 }).resize(); 2057 2058 2059 $jq('a.att_openkiosk').on('click', function(e) { 2060 var att_local_link = $jq(this).attr('data-att_local_link'); 2061 var preview_id = $jq(this).attr('data-preview_id'); 2062 e.preventDefault(); 2063 2064 var div_preview = $jq("div#" + preview_id); 2065 div_preview.html(''); 2066 div_preview.loadingOverlay(); 2067 2068 //var view_link = 'https://docs.google.com/viewer?embedded=true&url=' + att_local_link; 2069 var view_link = 'https://www.poznan.pl/pdfviewer/?url_address=' + att_local_link; 2070 2071 $jq("div#" + preview_id).append('<iframe scrolling="no" class="" src="' + view_link + '" style="border: 0; width:100%; height:500px;overflow: hidden;"></iframe>'); 2072 var div_preview_iframe = $jq("div#" + preview_id + " iframe"); 2073 2074 var timerId = setInterval(function() { 2075 div_preview_iframe.attr('src', view_link); 2076 }, 3000); 2077 2078 div_preview_iframe.on('load', function() { 2079 div_preview.loadingOverlay('remove'); 2080 clearInterval(timerId); 2081 }); 2082 }); 2083 2084 2085 $jq("button[data-theme]").click(function() { 2086 $jq("head link#css_font_theme").attr("href", $jq(this).data("theme")); 2087 return false; 2088 }); 2089 2090 if (lightbox) { 2091 // add content for lightbox navigation keys 2092 lightbox.$lightbox.find('.lb-next').append('<span class="visuallyhidden">%1</span>'.replace(/%1/g, lightbox.options.nextLabel)); 2093 lightbox.$lightbox.find('.lb-prev').append('<span class="visuallyhidden">%1</span>'.replace(/%1/g, lightbox.options.prevLabel)); 2094 } 2095 2096 var $body = $jq('body'), f_size = COOKIE.get('poznanpl_font_size'); 2097 if (f_size !== null) 2098 $body.addClass('font-size-' + f_size); 2099 2100 slickSlider(); 2101 2102 // Workaround for Chrome not marking download links with :visited 2103 $jq('a').click(function(){ 2104 markLinkAsVisited($jq(this).attr('href')); 2105 }); 2106}); 2107 2108function isHistoryAPISupported() { 2109 if(!window.history) return false; 2110 if(!history.replaceState) return false; 2111 return true; 2112} 2113 2114/** Remembers a href as visited, causing any <a> tags 2115 with the same href to have the :visited pseudoclass. 2116 2117 Returns true on success, false on failure. 2118*/ 2119function markLinkAsVisited(href) { 2120 2121 if(!isHistoryAPISupported()) { 2122 return false;
2123 } 2124 // note: replaceState(_,_,href) fails with an exception 2125 // if href has different origin from current URL 2126 try { 2127 const oldState = window.history.state; 2128 const oldHref = window.location.href; 2129 window.history.replaceState({},"",href); 2130 window.history.replaceState(oldState,"",oldHref); 2131 return true; 2132 } catch(e) { 2133 return false; 2134 } 2135} 2136 2137$jq(window).load(function() { 2138 $jq(".content-container .body-container article .description.dotdotdot .news-list-item-abstract p").dotdotdot({ 2139 watch: "window", 2140 tolerance: 4 2141 }); 2142 $jq(".slider-box-name .slider-box-name-text").dotdotdot({ 2143 watch: "window", 2144 tolerance: 1 2145 }); 2146 $jq(".content-container .body-container .slider-big-v02 .column article a h2").dotdotdot({ 2147 watch: "window", 2148 tolerance: 4 2149 }); 2150 $jq(".content-container .body-container .slider-big-v02 .column article a .slider-header-mobile").dotdotdot({ 2151 watch: "window", 2152 tolerance: 1 2153 }); 2154 $jq(".slider-abstract-mobile").dotdotdot({ 2155 watch: "window", 2156 tolerance: 1 2157 }); 2158 $jq(".content-container .body-container .slider-big-v02 .column article a span").dotdotdot({ 2159 watch: "window", 2160 tolerance: 4 2161 }); 2162 $jq(".content-container .body-container .events-list .events-block .event-box .description-event .description-event-title-link .description-event-title").dotdotdot({ 2163 watch: "window", 2164 tolerance: 4 2165 }); 2166 $jq(".content-container .body-container .events-list .events-block .event-box .description-event .description-event-place").dotdotdot({ 2167 watch: "window", 2168 tolerance: 4 2169 }); 2170 2171 $jq(".content-container .body-container .all-news-container .side-news-container .main-news-container .main-news-text-box .main-news-text .main-text-H3").dotdotdot({ 2172 watch: "window", 2173 tolerance: 2 2174 }); 2175 $jq(".content-container .body-container .all-news-container .side-news-container .main-news-container .main-news-text-box .main-news-text .main-text p").dotdotdot({ 2176 watch: "window", 2177 tolerance: 2 2178 }); 2179 $jq(".content-container .body-container .all-news-container .side-news-container .main-news-container .main-news-text-box .main-news-text .main-text ").dotdotdot({ 2180 watch: "window", 2181 tolerance: 2 2182 }); 2183 2184 2185 $jq(".content-container .body-container .all-news-container .side-news-container .news-title-container .news-title-box a").dotdotdot({ 2186 watch: "window", 2187 tolerance: 2 2188 }); 2189 2190 $jq(".content-container .body-container .all-news-container .side-news-container .side-news-container .news-second-textbox .news-second-text .main-text-H4").dotdotdot({ 2191 watch: "window", 2192 tolerance: 2 2193 }); 2194 2195 2196 2197 $jq(".content-container .body-container .all-news-container .side-news-container .side-news-container .news-second-textbox .news-second-text .main-text").dotdotdot({ 2198 watch: "window", 2199 tolerance: 2 2200 }); 2201 2202 $jq(".content-container .body-container .all-news-container .side-news-container .side-news-container .news-second-textbox .news-second-text .main-text p").dotdotdot({ 2203 watch: "window", 2204 tolerance: 2 2205 }); 2206 $jq(".content-container .body-container .events-list .events-block .event-box .description-event .description-event-category-label").dotdotdot({ 2207 watch: "window", 2208 tolerance: 4 2209 }); 2210 2211 $jq(".content-container .body-container article.event-box section.description-event div.description-event-category-label-after-click div.description-event-category-label").dotdotdot({ 2212 watch: "window", 2213 tolerance: 4 2214 }); 2215 $jq(".awarie-textbox .smartcity-text").dotdotdot({ 2216 watch: "window", 2217 tolerance:1 2218 }); 2219 2220 $jq(".zam-pub-title").dotdotdot({ 2221 watch: "window", 2222 tolerance:1 2223 }); 2224 $jq(".news_list_head").dotdotdot({ 2225 watch: "window", 2226 tolerance:1 2227 }); 2228 $jq(".video-new-desc").dotdotdot({ 2229 watch: "window", 2230 tolerance:1 2231 }); 2232 $jq(".different_news_box .news_box_textbox .text-caption").dotdotdot({ 2233 watch: "window", 2234 tolerance:1 2235 }); 2236 $jq(".see_more_news_text").dotdotdot({ 2237 watch: "window", 2238 tolerance: 1 2239 }); 2240 $jq(".seemore_news_H4").dotdotdot({ 2241 watch: "window", 2242 tolerance: 1 2243 }); 2244 $jq(".main-text-H3.slider-header-mobile").dotdotdot({ 2245 watch: "window", 2246 tolerance: 1 2247 }); 2248 $jq(".slider-banner-title").dotdotdot({ 2249 watch: "window", 2250 tolerance:1 2251 }); 2252 $jq(".curiosities_textbox.flex_column .text_body_small p").dotdotdot({ 2253 watch: "window", 2254 tolerance:1 2255 }); 2256 $jq(".wol_oferty div.work-place.dotdotdot").dotdotdot({ 2257 watch: "window", 2258 tolerance:1 2259 }); 2260 2261 $jq(".wol_oferty div.work-position.dotdotdot").dotdotdot({ 2262 watch: "window", 2263 tolerance:1 2264 }); 2265 $jq(".video-box .a_hover").dotdotdot({ 2266 watch: "window", 2267 tolerance:1 2268 }); 2269}); 2270 2271function openReservationLink(new_url) { 2272 windowprops = "width=1000,height=700,resizable=yes,scrollbars=yes,toolbar=no,location=no,directories=no,status=no,menubar=no,copyhistory=no"; 2273 window.open(new_url, 'Appoint', windowprops); 2274} 2275 2276$jq('a.tree-toggler').click(function () { 2277 var $me = $jq(this); 2278 var $ul = $me.parent().children('ul.tree'); 2279 2280 if($me.attr("aria-expanded") === "true") 2281 $me.attr("aria-expanded", "false"); 2282 else 2283 $me.attr("aria-expanded", "true"); 2284 2285 $jq('ul.tree').not($ul).hide(300); 2286 $jq('.tree-toggler').not($me).attr("aria-expanded", "false"); 2287 $ul.toggle(300); 2288 return false;
2289}); 2290 2291var val = $jq("#sm_zgloszenia_odpowiedz").find("input[name='uz_odpowiedz']"); 2292if(val.is(':checked')) { 2293 $jq("#sm_zgloszenia_odpowiedz_section").show(); 2294} else { 2295 $jq("#sm_zgloszenia_odpowiedz_section").hide(); 2296 $jq("input[name='uz_imie_nazwisko']").val(''); 2297 $jq("input[name='uz_adres']").val(''); 2298} 2299$jq("#sm_zgloszenia_odpowiedz").find("input[name='uz_odpowiedz']:checkbox").change(function() { 2300 if($jq(this).is(":checked")) { 2301 $jq("#sm_zgloszenia_odpowiedz_section").show(); 2302 } else { 2303 $jq("#sm_zgloszenia_odpowiedz_section").hide(); 2304 $jq("input[name='uz_imie_nazwisko']").val(''); 2305 $jq("input[name='uz_adres']").val(''); 2306 } 2307}); 2308 2309var backgrounds = [{bg: "#ffffff", fonts:"black"}, {bg: "#00aeef", fonts:"white"}, {bg: "#d34500", fonts:"white"}, 2310 {bg: "#9F3B84", fonts:"white"}, {bg: "#C8004C", fonts:"white"}, {bg: "#D34400", fonts:"white"}, 2311 {bg: "#007DA0", fonts:"white"}, {bg: "#005678", fonts:"white"}, {bg: "#008933", fonts:"white"}, 2312 {bg: "#00846E", fonts:"white"}, {bg: "#454344", fonts:"white"}, {bg: "#0b1c5b", fonts:"white"}, 2313 {bg: "#0054a6", fonts:"white"}, {bg: "#efc500", fonts:"white"}, {bg: "#7d0579", fonts:"white"}, 2314 {bg: "#74b620", fonts:"white"}, {bg: "#ba1319", fonts:"white"}, {bg: "#0755e3", fonts:"white"}]; 2315$jq('.box.bg-switcher').click(function () { 2316 var $this = $jq(this); 2317 var idx = $this.data("bg-index"); // background index 2318 if (idx === undefined || idx >= backgrounds.length - 1) idx = -1; 2319 idx++; 2320 $this.data("bg-index", idx); 2321 var opt = backgrounds[idx]; 2322 if(opt.fonts !== "white") { 2323 $this.removeClass("fonts-white"); 2324 } else { 2325 $this.addClass("fonts-white"); 2326 } 2327 var bg = $this.find(".background-color"); 2328 bg.prop("style", "background-color:"+opt.bg); 2329 bg.text(opt.bg); 2330}); 2331 2332$jq('#botwise-input').on( "keypress", function(event) { 2333 if (event.keyCode == 13 && !event.shiftKey) { 2334 event.preventDefault(); 2335 $jq('#botwise-form').submit(); 2336 } 2337}); 2338 2339$jq('.kontakt-botwise-button').click(function (e) { 2340 var botwise_question = $jq('.botwise-input').val(); 2341 if(botwise_question) { 2342 let botwise_link = $jq('.kontakt-botwise-button').data('bothref'); 2343 $jq('.kontakt-botwise-button').attr('href', botwise_link + '?question=' + encodeURIComponent(botwise_question)); 2344 } 2345}); 2346 2347$jq('.faq-question').on('click', '.faq-arrow-down', function(e) { 2348 var id = $jq(this).attr("id").substring(13); 2349 $jq('#answer-number-'+id).addClass('opened'); 2350 $jq('#faq-arrow-id-'+id).removeClass('faq-arrow-down').addClass('faq-arrow-up'); 2351}); 2352 2353$jq('.faq-question').on('click', '.faq-arrow-up', function(e) { 2354 var id = $jq(this).attr("id").substring(13); 2355 $jq('#answer-number-'+id).removeClass('opened'); 2356 $jq('#faq-arrow-id-'+id).removeClass('faq-arrow-up').addClass('faq-arrow-down'); 2357}); 2358 2359$jq('#sitemap_list').on('click', '.open-element', function(e) { 2360 openSitemapElement($jq(this)); 2361}); 2362$jq('#sitemap_list .open-element').keypress(function(e) { 2363 openSitemapElement($jq(this)); 2364}); 2365var openSitemapElement = function(elem){ 2366 var counter = elem.attr('counter'); 2367 var element = $jq('#elem_' + counter); 2368 2369 if(elem.hasClass('list-opened')) { 2370 elem.removeClass('list-opened'); 2371 elem.addClass('list-closed'); 2372 element.css('display', 'none'); 2373 return; 2374 } 2375 2376 elem.removeClass('list-closed'); 2377 elem.addClass('list-opened'); 2378 element.css('display', 'block'); 2379} 2380 2381var changeBodyPadding = function(){ 2382 let mim_headers = 0; 2383 let wWidth = $jq(window).width(); 2384 mhq = $jq('.header-container'); 2385 if (wWidth > 0) { 2386 //mhq.css("position", "fixed"); 2387 } 2388 if (mhq.length !== 0) { 2389 mim_headers = mhq.height(); 2390 } 2391 if (document.querySelectorAll('.vortal-header').length !== 0 && document.querySelectorAll('.top-bar').length !== 0) { 2392 if (mhq.css("position") === "fixed" || mhq.css("position") === "absolute") { 2393 $jq(".content-container").css("margin-top", mim_headers + "px"); 2394 } 2395 } else if (document.querySelectorAll('.top-container').length !== 0) { 2396 if (mhq.css("position") === "fixed" || mhq.css("position") === "absolute") { 2397 $jq(".top-container").css("margin-top", mim_headers + "px"); 2398 } 2399 } else { 2400 if (mhq.css("position") === "fixed" 2401 || mhq.css("position") === "absolute") { 2402 $jq(".content-container").css("margin-top", mim_headers + "px"); 2403 } 2404 }
2405 slickSliderUpdate(); 2406} 2407 2408$jq('.popup').on('click', '.close', function(){ 2409 $jq('.popup').css("display","none"); 2410}); 2411 2412// iad baza-referencyjna 2413$jq('#baza-referencyjna-list').on('click', '.faq-arrow-down', function(e) { 2414 var id = $jq(this).attr("id").substring(15); 2415 $jq('#baza_referencyjna_elem_'+id).css("display", "block"); 2416 $jq('#baza-ref-lista-'+id).removeClass('faq-arrow-down').addClass('faq-arrow-up'); 2417}); 2418 2419$jq('#baza-referencyjna-list').on('click', '.faq-arrow-up', function(e) { 2420 var id = $jq(this).attr("id").substring(15); 2421 $jq('#baza_referencyjna_elem_'+id).css("display", "none"); 2422 $jq('#baza-ref-lista-'+id).removeClass('faq-arrow-up').addClass('faq-arrow-down'); 2423}); 2424 2425var slickSlider = function (){ 2426 2427 if ($jq(".slick-box-container-new-wortal .slick-slider").length > 0) { 2428 var wWidth = $jq('.slick-box-container-new-wortal .slick-slider').width(); 2429 var noWidth = Math.floor(wWidth/200); 2430 try { 2431 $jq('.slick-box-container-new-wortal .slick-slider').slick({ 2432 slidesToShow: noWidth, 2433 slidesToScroll: 1, 2434 autoplay: false, 2435 arrows: true, 2436 variableWidth:false, 2437 lazyLoad: 'ondemand', 2438 infinite: false, 2439 responsive: [ 2440 { 2441 breakpoint: 600, 2442 settings: { 2443 variableWidth:true 2444 } 2445 } 2446 ] 2447 }); 2448 } catch (e) { 2449 2450 } 2451 } 2452 if ($jq(".slick-box-container-new-wortal.slick-box-container .slick-slider").length > 0) { 2453 var wWidth = $jq('.slick-box-container-new-wortal.slick-box-container .slick-slider').width(); 2454 var noWidth = Math.floor(wWidth/200); 2455 try { 2456 $jq('.slick-box-container-new-wortal.slick-box-container .slick-slider').slick({ 2457 slidesToShow: noWidth, 2458 slidesToScroll: 1, 2459 autoplay: false, 2460 arrows: true, 2461 lazyLoad: 'ondemand', 2462 centerMode:false, 2463 infinite: true, 2464 responsive: [{ 2465 breakpoint: 1282, 2466 settings: { 2467 variableWidth: true, 2468 prevArrow: '<button class="slickslider-mobile-banner-arrow-box left"></button>', 2469 nextArrow: '<button class="slickslider-mobile-banner-arrow-box right"></button>' 2470 }}] 2471 }); 2472 } catch (e) { 2473 } 2474 2475 } 2476 if ($jq(".slick-slider-new").length > 0) { 2477 var wWidth = $jq('.slick-slider-new').width(); 2478 var noWidth = Math.floor(wWidth/200); 2479 try { 2480 2481 var slider = $jq('.slick-slider-new'); 2482 2483 2484 slider.on('init', function(event, slick) { 2485 let currentSlide = slick.currentSlide; 2486 let visibleCount = slick.$slides.filter('.slick-active').length; 2487 2488 let totalVisible = currentSlide + visibleCount; 2489 if (totalVisible > slick.slideCount) { 2490 totalVisible = slick.slideCount; 2491 } 2492 2493 let calc = (totalVisible / slick.slideCount) * 100; 2494 let progressBarNews = $jq(this).closest('.slick-box-container').siblings('.progress-bar-news'); 2495 2496 progressBarNews 2497 .css('background-size', calc + '% 100%') 2498 .attr('aria-valuenow', calc); 2499 }); 2500 $jq('.slick-slider-new').slick({ 2501 slidesToShow: noWidth, 2502 slidesToScroll: 1, 2503 autoplay: false, 2504 arrows: true, 2505 variableWidth: false, 2506 lazyLoad: 'ondemand', 2507 centerMode: false , 2508 infinite: false, 2509 responsive: [{ 2510 breakpoint: 350, 2511 settings: { 2512 variableWidth: true 2513 }}] 2514 }); 2515 2516 2517 } catch (e) { 2518 2519 console.log('error:',e); 2520 } 2521 2522 } 2523 2524 2525 if ($jq("section.video-poznan-vertical-slider").length > 0) { 2526 $jq(".video-poznan-vertical-slider").slick({ 2527 slidesToShow: 3, 2528 slidesToScroll: 1, 2529 variableWidth: false, 2530 swipeToSlide: true, 2531 touchMove: true, 2532 autoplay: false, 2533 infinite: true, 2534 vertical: true}); 2535 } 2536 if ($jq(".slick-box-container.news_slider_container .slick-slider-news-index").length > 0) { 2537 2538 2539 var wWidth = $jq('.slick-box-container.news_slider_container .slick-slider-news-index').width(); 2540 var elementWidth = $jq(".slick-box-container.news_slider_container .slick-slider-news-index .news-column-smartcity").width(); 2541 2542 var noWidth = Math.floor(wWidth/elementWidth); 2543 try { 2544 2545 2546 $jq('.slick-box-container.news_slider_container .slick-slider-news-index').css('display','block'); 2547 2548 $jq('.slick-box-container.news_slider_container .slick-slider-news-index').slick({ 2549 slidesToShow: noWidth, 2550 slidesToScroll: 3, 2551 autoplay: false, 2552 variableWidth: true, 2553 arrows: true, 2554 initialSlide: 0, 2555 lazyLoad: 'ondemand', 2556 infinite: true, 2557 responsive: [{ 2558 breakpoint: 1024, 2559 settings: { 2560 slidesToScroll: 1, 2561 slidesToShow: 2 2562 } 2563 }, { 2564 breakpoint: 600, 2565 settings: { 2566 slidesToScroll: 1, 2567 slidesToShow: 1, 2568 prevArrow: '<button class="slickslider-mobile-arrow-box left"></button>', 2569 nextArrow: '<button class="slickslider-mobile-arrow-box right"></button>' 2570 } 2571 }, { 2572 breakpoint: 421, 2573 settings: { 2574 slidesToScroll: 1, 2575 slidesToShow: 1, 2576 variableWidth: false, 2577 prevArrow: '<button class="slickslider-mobile-arrow-box left"></button>', 2578 nextArrow: '<button class="slickslider-mobile-arrow-box right"></button>' 2579 }, 2580 } 2581 2582 ] 2583 }); 2584 $jq('.slick-box-container.news_slider_container .slick-slider-news-index').css('overflow','unset'); 2585 } catch (e) { 2586 } 2587 2588 } 2589}; 2590
2591var slickSliderUpdate = function (){ 2592 if ($jq(".slick-box-container-new-wortal.slick-box-container .slick-slider").length > 0) { 2593 var wWidth = $jq('.slick-box-container-new-wortal.slick-box-container .slick-slider').width(); 2594 var noWidth = Math.floor(wWidth/190); 2595 try{ 2596 $jq('.slick-box-container-new-wortal.slick-box-container .slick-slider').slick('slickSetOption', 'slidesToShow', noWidth, true); 2597 } catch (e) { 2598 } 2599 } 2600 2601 var newsSliderMainPage=$jq(".slider-news-mainpage"); 2602 2603 if (newsSliderMainPage.length > 0 && $jq( window ).width()<994) { 2604 var wWidth = newsSliderMainPage.width(); 2605 var elementWidth = $jq(".slider-news-mainpage .column").width(); 2606 var noWidth = Math.floor(wWidth/400); 2607 try{ 2608 newsSliderMainPage.slick('slickSetOption', 'slidesToShow', noWidth, true); 2609 } catch (e) { 2610 } 2611 } 2612 var curisitiesSlider=$jq(".curiosities_container"); 2613 2614 if (curisitiesSlider.length > 0 && $jq( window ).width()<725) { 2615 var wWidth = curisitiesSlider.width(); 2616 var elementWidth = $jq(".curiosities_container .curiosities_box").width(); 2617 var noWidth = Math.floor(wWidth/400); 2618 try{ 2619 curisitiesSlider.slick('slickSetOption', 'slidesToShow', noWidth, true); 2620 } catch (e) { 2621 } 2622 } 2623 if ($jq(".slick-slider-new").length > 0) { 2624 var wWidth = $jq('.slick-slider-new').width(); 2625 var noWidth = Math.floor(wWidth/190); 2626 try{ 2627 $jq('.slick-slider-new').slick('slickSetOption', 'slidesToShow', noWidth, true); 2628 } catch (e) { 2629 console.log('error:',e); 2630 2631 } 2632 } 2633 if ($jq(".box.box-2-column.box-mapa.box-youtube-player.slider-video .slick-list").length > 0) { 2634 var wWidth = $jq('.box.box-2-column.box-mapa.box-youtube-player.slider-video .box-container.video_box').width(); 2635 var noWidth = Math.floor(wWidth/400); 2636 try{ 2637 $jq('.box.box-2-column.box-mapa.box-youtube-player.slider-video').slick('slickSetOption', 'slidesToShow', noWidth, true); 2638 } catch (e) { 2639 console.log('error:',e); 2640 2641 } 2642 } 2643 if ($jq(".different_news_container .slick-list").length > 0) { 2644 var wWidth = $jq('.different_news_container .different_news_box').width(); 2645 var noWidth = Math.floor(wWidth/400); 2646 try{ 2647 $jq('.different_news_container').slick('slickSetOption', 'slidesToShow', noWidth, true); 2648 } catch (e) { 2649 console.log('error:',e); 2650 2651 } 2652 } 2653 if ($jq(".slick-box-container.news_slider_container .slick-slider-news-index").length > 0) { 2654 var wWidth = $jq('.slick-box-container.news_slider_container .slick-slider-news-index').width(); 2655 var noWidth = Math.floor(wWidth/400); 2656 try{ 2657 $jq('.slick-box-container.news_slider_container .slick-slider-news-index').slick('slickSetOption', 'slidesToShow', noWidth, true); 2658 } catch (e) { 2659 } 2660 } 2661}; 2662 2663var slider = $jq('.slick-slider-new'); 2664 2665slider.on('beforeChange', function(event, slick, currentSlide, nextSlide){ 2666 var calc = ( (nextSlide) / (slick.slideCount-1) ) * 100; 2667 var visibleCount = slick.$slides.filter('.slick-active').length; 2668 let progressBarNews = $jq(this).parent().parent().parent().siblings('.progress-bar-news'); 2669 var calc = ( (visibleCount+nextSlide) / (slick.slideCount) ) * 100; 2670 progressBarNews 2671 .css('background-size', calc + '% 100%') 2672 .attr('aria-valuenow', calc ); 2673}); 2674var sliderDfrnt = $jq('.different_news_container'); 2675var progressBarNewsDfrnt = $jq('#progress-bar-slider-news-dfrnt'); 2676sliderDfrnt.on('beforeChange', function(event, slick, currentSlide, nextSlide){ 2677 var calc = ( (nextSlide) / (slick.slideCount-1) ) * 100; 2678 progressBarNewsDfrnt 2679 .css('background-size', calc + '% 100%') 2680 .attr('aria-valuenow', calc ); 2681}); 2682 var sliderNewsIndex = $jq('.slick-slider-news-index'); 2683 var progressBarNewsIndex = $jq('#progress-bar-slider-big-news-index'); 2684 sliderNewsIndex.on('beforeChange', function(event, slick, currentSlide, nextSlide){ 2685 var calc = ( (nextSlide) / (slick.slideCount-1) ) * 100; 2686 progressBarNewsIndex 2687 .css('background-size', calc + '% 100%') 2688 .attr('aria-valuenow', calc ); 2689 }); 2690var awarieShowHide = function(elem){ 2691 if (elem.hasClass('awarie-opened')) { 2692 elem.removeClass('awarie-opened'); 2693 elem.addClass('awarie-closed'); 2694 return; 2695 } 2696 elem.removeClass('awarie-closed'); 2697 elem.addClass('awarie-opened'); 2698} 2699 2700$jq('.mobile-awarie-list').click( function (e) { 2701 awarieShowHide($jq('.mobile_news')); 2702}); 2703 2704var mobileAwarieListArrow = function(elem){ 2705 if (elem.hasClass('arrow-opened')) { 2706 elem.removeClass('arrow-opened'); 2707 elem.addClass('arrow-closed'); 2708 $jq('.mobile-awarie-text').text("RozwiÅ"); 2709 return; 2710 } 2711 elem.removeClass('arrow-closed'); 2712 elem.addClass('arrow-opened'); 2713 $jq('.mobile-awarie-text').text("ZwiÅ"); 2714} 2715 2716$jq('.mobile-awarie-list').click( function (e) { 2717 mobileAwarieListArrow($jq('.awarie-pointer')); 2718}); 2719var showSubmitCancel = function() { 2720 $jq('.iaro_edit_categories').hide(); 2721 $jq('.iaro_notifier_submit').css("display", "inline-block"); 2722 $jq('.iaro_cancel_categories').css("display", "inline-block"); 2723} 2724var showEdit = function() { 2725 $jq('.iaro_cancel_categories').hide(); 2726 $jq('.iaro_notifier_submit').hide(); 2727 $jq('.iaro_edit_categories').show(); 2728} 2729 2730$jq('.iaro_edit_categories').click(function (e) { 2731 showSubmitCancel(); 2732}); 2733 2734$jq('.iaro_cancel_categories').click(function (e) { 2735 showEdit(); 2736}); 2737 2738var checkIsLoginBarExistIaro = function () { 2739 var width = $jq(window).width(); 2740 if($jq('.iaro_login_bar')[0] && width > 600){ 2741 $jq('#google-widget-iaro').css("padding-top","30px"); 2742 } else { 2743 $jq('#google-widget-iaro').css("padding-top","0px"); 2744 } 2745} 2746checkIsLoginBarExistIaro(); 2747$jq(window).on('resize', checkIsLoginBarExistIaro); 2748 2749var iaroFilterListArrow = function(elem){ 2750 if (elem.hasClass('filter-opened')) { 2751 elem.removeClass('filter-opened'); 2752 elem.addClass('filter-closed'); 2753 return; 2754 } 2755 elem.removeClass('filter-closed'); 2756 elem.addClass('filter-opened'); 2757} 2758 2759var iaroFilterListToggle = function(elem, elem2){ 2760 if (elem.hasClass('filter-list-opened')) { 2761 elem.removeClass('filter-list-opened'); 2762 elem.addClass('filter-list-closed'); 2763 if (elem2.hasClass('sorter-list-opened')) { 2764 elem2.addClass('sorter-bigger-margin'); 2765 } else { 2766 $jq('.iaro-news-space').css("margin-top", "0px"); 2767 } 2768 return; 2769 } 2770 elem.removeClass('filter-list-closed'); 2771 elem.addClass('filter-list-opened'); 2772 $jq('.iaro-news-space').css("margin-top", "265px"); 2773 if (elem2.hasClass('sorter-list-opened')) { 2774 elem2.removeClass('sorter-bigger-margin'); 2775 } 2776} 2777var iaroSorterListArrow = function(elem){ 2778 if (elem.hasClass('sorter-opened')) { 2779 elem.removeClass('sorter-opened'); 2780 elem.addClass('sorter-closed'); 2781 return; 2782 } 2783 elem.removeClass('sorter-closed'); 2784 elem.addClass('sorter-opened'); 2785} 2786 2787var iaroSorterListToggle = function(elem, elem2){ 2788 if (elem.hasClass('sorter-list-opened')) { 2789 elem.removeClass('sorter-list-opened'); 2790 elem.addClass('sorter-list-closed'); 2791 elem.removeClass("sorter-bigger-margin"); 2792 if (elem2.hasClass('filter-list-closed')) { 2793 $jq('.iaro-news-space').css("margin-top", "0px"); 2794 } 2795 return; 2796 } 2797 elem.removeClass('sorter-list-closed'); 2798 elem.addClass('sorter-list-opened'); 2799 if (elem2.hasClass('filter-list-closed')) { 2800 elem.addClass("sorter-bigger-margin"); 2801 $jq('.iaro-news-space').css("margin-top", "265px"); 2802 } else { 2803 elem.removeClass("sorter-bigger-margin"); 2804 } 2805} 2806 2807$jq('.iaro-filter').click( function (e) { 2808 iaroFilterListArrow($jq('.iaro-filter-arrow')); 2809 iaroFilterListToggle($jq('.iaro-filter-list'), $jq('.iaro-sorter-list')); 2810}); 2811 2812$jq('.iaro-sorter').click( function (e) { 2813 iaroSorterListArrow($jq('.iaro-sorter-arrow')); 2814 iaroSorterListToggle($jq('.iaro-sorter-list'), $jq('.iaro-filter-list')); 2815}); 2816 2817$jq(document).ready(function() { 2818 if(document.getElementById("ws_street") !== null) { 2819 wasteCheckInput(); 2820 } 2821 2822 if(document.getElementById("month_selector_0") !== null ) { 2823 const d = new Date(); 2824 let month = d.getMonth() + 1; 2825 let year = d.getFullYear();
2826 if(!isEmpty($jq('.select_element[value=\'' + month + '.' + year + '\']'))) { 2827 2828 $jq('.select_element[value=\'' + month + '.' + year + '\']').trigger("click"); 2829 } else { 2830 let value = $jq('.select_element').first().attr("value"); 2831 $jq('.select_element[value=\'' + value + '\']').trigger("click"); 2832 } 2833 } 2834}); 2835 2836function showQr(el) { 2837 var os = $jq(el).attr("id").split("-")[2]; 2838 $jq(el).siblings(".qr-button").removeClass("qr-button-active"); 2839 $jq(el).addClass("qr-button-active"); 2840 $jq("#qr-" + os).siblings().removeClass("qr-active"); 2841 $jq("#qr-" + os).addClass("qr-active"); 2842 2843} 2844function hidePopup(button){ 2845 $jq(button).parent().parent().parent().addClass('hidden'); 2846} 2847 2848function closeWasteAlert(){ 2849 $jq('#waste-alert').css("display", "none"); 2850 $jq('.shadow').css("display", "none"); 2851} 2852 2853$jq(document).on('keyup', '#ws_street', wasteCheckInput); 2854$jq('#ws_street').on('autocomplete-click', wasteCheckInput); 2855$jq(document).on('keyup', '#ws_number', wasteCheckInput); 2856$jq('#ws_number').on('autocomplete-click', wasteCheckInput); 2857$jq(document).on('keyup', '#ws_object', wasteCheckInput); 2858$jq('#ws_object').on('autocomplete-click',wasteCheckInput); 2859 2860 2861function wasteCheckInput () { 2862 var street = document.getElementById("ws_street").value; 2863 var number = document.getElementById("ws_number").value; 2864 var object = document.getElementById("ws_object").value; 2865 if ((isEmpty(street) || (isEmpty(number) && isEmpty(object))) && isEmpty(object)) { 2866 $jq('#wasteSubmit').attr('disabled','disabled'); 2867 } else { 2868 wasteCheckAddress() 2869 } 2870} 2871 2872function wasteCheckAddress() { 2873 var street = $jq('#ws_street').val();
2874 var houseNo = $jq('#ws_number').val(); 2875 var objectNo = $jq('#ws_object').val(); 2876 $jq.get(ctxPath + "/wasteapi/get-address-count.json", {street: street, house_no: houseNo, object_no: objectNo}) 2877 .done(function(data) { 2878 if(data > 0) { 2879 $jq('#wasteSubmit').removeAttr('disabled'); 2880 if(!isEmpty(objectNo)) { 2881 $jq('#wasteObjectError').addClass('hidden'); 2882 } 2883 } else { 2884 $jq('#wasteSubmit').attr('disabled','disabled'); 2885 if(!isEmpty(objectNo)) { 2886 $jq('#wasteObjectError').removeClass('hidden'); 2887 } 2888 } 2889 2890 }) 2891 2892} 2893 2894function updateWasteSchedule(el) { 2895 var month = $jq(el).attr('value'); 2896 var index = $jq(el).parent().siblings('.select_div').attr("id").split("_")[2]; 2897 $jq("#schedule_" + index).find(".waste-date").each(function() { 2898 var column = $jq(this).data("value"); 2899 if(month == column){ 2900 $jq(this).removeClass("hidden"); 2901 } else { 2902 if(!$jq(this).hasClass("hidden")){ 2903 $jq(this).addClass("hidden"); 2904 } 2905 } 2906 }) 2907} 2908 2909function showSmartCityQr(el) { 2910 $jq(".waste-smartCity").parent().removeClass("hidden"); 2911 2912} 2913 2914function toggleSelect(element) { 2915 $jq(element).find('.arrow_down_select_input').toggleClass('rotated'); 2916 let selectRows = $jq(element).siblings('#select_rows'); 2917 let elementPosition = $jq(element).position(); 2918 let elementHeight = $jq(element).outerHeight(); 2919 selectRows.css({ 2920 top: elementPosition.top + elementHeight + 'px' 2921 }); 2922 selectRows.toggleClass('visible'); 2923} 2924function toggleSelect(element) { 2925 $jq(element).toggleClass('selected'); 2926 $jq(element).find('.arrow_down_select_input').toggleClass('rotated'); 2927 let selectRows = $jq(element).siblings('#select_rows'); 2928 let elementPosition = $jq(element).position(); 2929 let elementHeight = $jq(element).outerHeight(); 2930 selectRows.css({ 2931 top: elementPosition.top + elementHeight + 'px' 2932 }); 2933 selectRows.toggleClass('visible'); 2934} 2935function changeSelectValue(element){ 2936 let clickedElement = $jq(element); 2937 let name = clickedElement.attr('name'); 2938 let value = clickedElement.attr('value'); 2939 clickedElement.closest('.select_box').find('input').prop('disabled', false); 2940 let selectTextElement = clickedElement.closest('.select_box').find('input'); 2941 let selectTextElementLabel = clickedElement.closest('.select_box').find('#select_text'); 2942 selectTextElementLabel.html(name); 2943 clickedElement.closest('#select_rows').find('.select_element.selected').removeClass('selected'); 2944 clickedElement.addClass('selected'); 2945 selectTextElement.attr('value', value).trigger('change'); 2946 2947} 2948$jq(document).on('click', function(event) { 2949 if (!$jq(event.target).closest('.select_div').length) { 2950 $jq('.select_div').each(function() { 2951 let element = $jq(this); 2952 if (!element.is(event.target) && !element.has(event.target).length && element.hasClass('selected')) { 2953 toggleSelect(element); 2954 } 2955 }); 2956 } 2957}); 2958 2959 2960function isEmpty(el){ 2961 return (el == null || el.length == 0); 2962} 2963 2964var infoListDateToggleDesktop = function(elem) { 2965 if (elem.hasClass('info-list-date-desktop-opened')) { 2966 elem.removeClass('info-list-date-desktop-opened'); 2967 elem.addClass('info-list-date-desktop-closed'); 2968 return; 2969 } 2970 elem.removeClass('info-list-date-desktop-closed'); 2971 elem.addClass('info-list-date-desktop-opened'); 2972} 2973 2974var infoListArrowDateToggleDesktop = function(elem) { 2975 if (elem.hasClass('info-list-arrow-date-desktop-opened')) { 2976 elem.removeClass('info-list-arrow-date-desktop-opened'); 2977 elem.addClass('info-list-arrow-date-desktop-closed'); 2978 return; 2979 } 2980 elem.removeClass('info-list-arrow-date-desktop-closed'); 2981 elem.addClass('info-list-arrow-date-desktop-opened'); 2982} 2983 2984var infoListCountToggleDesktop = function(elem) { 2985 if (elem.hasClass('info-list-count-desktop-opened')) { 2986 elem.removeClass('info-list-count-desktop-opened'); 2987 elem.addClass('info-list-count-desktop-closed'); 2988 return; 2989 } 2990 elem.removeClass('info-list-count-destkop-closed'); 2991 elem.addClass('info-list-count-desktop-opened'); 2992} 2993 2994var infoListArrowCountToggleDesktop = function(elem) { 2995 if (elem.hasClass('info-list-arrow-count-desktop-opened')) { 2996 elem.removeClass('info-list-arrow-count-desktop-opened'); 2997 elem.addClass('info-list-arrow-count-desktop-closed'); 2998 return; 2999 } 3000 elem.removeClass('info-list-arrow-count-desktop-closed'); 3001 elem.addClass('info-list-arrow-count-desktop-opened'); 3002} 3003 3004var infoListDateToggleMobile = function(elem) { 3005 if (elem.hasClass('info-list-date-mobile-opened')) { 3006 elem.removeClass('info-list-date-mobile-opened'); 3007 elem.addClass('info-list-date-mobile-closed'); 3008 return; 3009 } 3010 elem.removeClass('info-list-date-mobile-closed'); 3011 elem.addClass('info-list-date-mobile-opened'); 3012} 3013 3014var infoListArrowDateToggleMobile = function(elem) { 3015 if (elem.hasClass('info-list-arrow-date-mobile-opened')) { 3016 elem.removeClass('info-list-arrow-date-mobile-opened'); 3017 elem.addClass('info-list-arrow-date-mobile-closed'); 3018 return; 3019 } 3020 elem.removeClass('info-list-arrow-date-mobile-closed'); 3021 elem.addClass('info-list-arrow-date-mobile-opened'); 3022} 3023 3024var infoListCountToggleMobile = function(elem) { 3025 if (elem.hasClass('info-list-count-mobile-opened')) { 3026 elem.removeClass('info-list-count-mobile-opened'); 3027 elem.addClass('info-list-count-mobile-closed'); 3028 return; 3029 } 3030 elem.removeClass('info-list-count-mobile-closed'); 3031 elem.addClass('info-list-count-mobile-opened'); 3032} 3033 3034var infoListArrowCountToggleMobile = function(elem) { 3035 if (elem.hasClass('info-list-arrow-count-mobile-opened')) { 3036 elem.removeClass('info-list-arrow-count-mobile-opened'); 3037 elem.addClass('info-list-arrow-count-mobile-closed'); 3038 return; 3039 } 3040 elem.removeClass('info-list-arrow-count-mobile-closed'); 3041 elem.addClass('info-list-arrow-count-mobile-opened'); 3042} 3043 3044var infoListCountToggleMobileBottom = function(elem) { 3045 if (elem.hasClass('info-list-count-mobile-bottom-opened')) { 3046 elem.removeClass('info-list-count-mobile-bottom-opened'); 3047 elem.addClass('info-list-count-mobile-bottom-closed'); 3048 return; 3049 } 3050 var sorterBottomMobile = $jq('.sorter_count_bottom_mobile'); 3051 3052 var sorterBottomMobileBottom = sorterBottomMobile.outerHeight(); 3053 elem.css('top', sorterBottomMobileBottom); 3054 elem.removeClass('info-list-count-mobile-bottom-closed'); 3055 elem.addClass('info-list-count-mobile-bottom-opened'); 3056} 3057 3058var infoListArrowCountToggleMobileBottom = function(elem) { 3059 if (elem.hasClass('info-list-arrow-count-mobile-bottom-opened')) { 3060 elem.removeClass('info-list-arrow-count-mobile-bottom-opened'); 3061 elem.addClass('info-list-arrow-count-mobile-bottom-closed'); 3062 return; 3063 } 3064 elem.removeClass('info-list-arrow-count-mobile-bottom-closed'); 3065 elem.addClass('info-list-arrow-count-mobile-bottom-opened'); 3066} 3067 3068 3069$jq('.info-list-sorter-date-upper-desktop').click( function (e) { 3070 infoListDateToggleDesktop($jq('.info-list-sorter-date-links-desktop')); 3071 infoListArrowDateToggleDesktop($jq('.info-list-sorter-date-arrow-desktop')); 3072}); 3073 3074$jq('.info-list-sorter-count-upper-desktop').click( function (e) { 3075 infoListCountToggleDesktop($jq('.info-list-sorter-count-links-desktop')); 3076 infoListArrowCountToggleDesktop($jq('.info-list-sorter-count-arrow-desktop')); 3077}); 3078 3079$jq('.info-list-sorter-date-upper-mobile').click( function (e) { 3080 infoListDateToggleMobile($jq('.info-list-sorter-date-links-mobile')); 3081 infoListArrowDateToggleMobile($jq('.info-list-sorter-date-arrow-mobile')); 3082}); 3083 3084$jq('.info-list-sorter-date-upper-mobile').on('keydown', function (e) { 3085 if (e.key === 'Enter') { 3086 $jq('.info-list-sorter-date-upper-mobile').trigger( "click" ); 3087 } 3088}); 3089 3090$jq('.info-list-sorter-count-upper-mobile').click( function (e) { 3091 infoListCountToggleMobile($jq('.info-list-sorter-count-links-mobile')); 3092 infoListArrowCountToggleMobile($jq('.info-list-sorter-count-arrow-mobile')); 3093}); 3094 3095$jq('.info-list-sorter-count-upper-mobile').on('keydown', function (e) { 3096 if (e.key === 'Enter') { 3097 $jq('.info-list-sorter-count-upper-mobile').trigger( "click" ); 3098 } 3099}); 3100
3101$jq('.sorter_count_bottom_mobile.flex_row').click( function (e) { 3102 3103 infoListCountToggleMobileBottom($jq('.info-list-sorter-count-links-mobile-bottom')); 3104 infoListArrowCountToggleMobileBottom($jq('.info-list-sorter-count-arrow-mobile-bottom')); 3105}); 3106 3107var cinemaTheaterToggle = function(elem) { 3108 if (elem.hasClass('cinema-theater-opened')) { 3109 elem.removeClass('cinema-theater-opened'); 3110 elem.addClass('cinema-theater-closed'); 3111 return; 3112 } 3113 elem.removeClass('cinema-theater-closed'); 3114 elem.addClass('cinema-theater-opened'); 3115} 3116 3117var cinemaTheaterToggleArrow = function(elem) { 3118 if (elem.hasClass('cinema-theater-arrow-opened')) { 3119 elem.removeClass('cinema-theater-arrow-opened'); 3120 elem.addClass('cinema-theater-arrow-closed'); 3121 $jq('.cinema-theater-button').css("background", "#FFFFFF"); 3122 $jq('.cinema-theater-button-label').css("color", "#01070E"); 3123 $jq('.cinema-theater-button-toggle-label').css("color", "#01407E"); 3124 $jq('.cinema-theater-button-toggle-label').text("RozwiÅ"); 3125 return; 3126 } 3127 elem.removeClass('cinema-theater-arrow-closed'); 3128 elem.addClass('cinema-theater-arrow-opened'); 3129 $jq('.cinema-theater-button').css("background", "#0054A6"); 3130 $jq('.cinema-theater-button-label').css("color", "#FFFFFF"); 3131 $jq('.cinema-theater-button-toggle-label').css("color", "#FFFFFF"); 3132 $jq('.cinema-theater-button-toggle-label').text("ZwiÅ"); 3133} 3134 3135$jq('.cinema-theater-button').click( function (e) { 3136 cinemaTheaterToggle($jq('.cinema-theater-list')); 3137 cinemaTheaterToggleArrow($jq('.cinema-theater-button-toggle-arrow')); 3138}); 3139 3140var eventsFilterMobileToggle = function(elem) { 3141 if (elem.hasClass('events-filter-mobile-opened')) { 3142 elem.removeClass('events-filter-mobile-opened'); 3143 elem.addClass('events-filter-mobile-closed'); 3144 return; 3145 } 3146 elem.removeClass('events-filter-mobile-closed'); 3147 elem.addClass('events-filter-mobile-opened'); 3148 $jq('.events-filter-mobile-button').css("border", "2px solid #009BDB"); 3149} 3150 3151var eventsFilterMobileToggleArrow = function(elem) { 3152 if (elem.hasClass('events-filter-mobile-arrow-opened')) { 3153 elem.removeClass('events-filter-mobile-arrow-opened'); 3154 elem.addClass('events-filter-mobile-arrow-closed'); 3155 return; 3156 } 3157 elem.removeClass('events-filter-mobile-arrow-closed'); 3158 elem.addClass('events-filter-mobile-arrow-opened'); 3159} 3160 3161$jq('.events-filter-mobile').click( function (e) { 3162 eventsFilterMobileToggle($jq('.events-filter-mobile-list')); 3163 eventsFilterMobileToggleArrow($jq('.events-filter-mobile-arrow-toggle')); 3164}); 3165 3166$jq('.event-calendar-button').click( function (e) { 3167 $jq('.calendar-event-modal').css("display", "block") 3168}); 3169 3170 3171$jq('#area').on('change', function() { 3172 $jq('#lvl_1' ).find('option').filter(function () { return $jq(this).html().replace(/\s/g,'').toLowerCase() == $jq('#area').val().replace(/\s/g,'').toLowerCase(); }).prop('selected', 'selected'); 3173}); 3174$jq('#id_ulica_street_lookup_group').on('change', function() { 3175 $jq('#lvl_1' ).find('option').filter(function () { return $jq(this).html().replace(/\s/g,'').toLowerCase() == $jq('#id_ulica_street_lookup_group').val().replace(/\s/g,'').toLowerCase(); }).prop('selected', 'selected'); 3176}); 3177 3178var modal = document.getElementById("calendar-event-modal-id"); 3179window.onclick = function(event) { 3180 if (event.target == modal) { 3181 modal.style.display = "none"; 3182 } 3183} 3184 3185function showCatEventsPage(el) { 3186 let container = el.closest(".description-event-categories"); 3187 $jq(".category-before-click-events", container).css("display","none"); 3188 $jq(".events-cat-counter", container).css("display","none"); 3189 $jq(".category-after-click-events", container).css("display","block"); 3190 let box = el.closest(".event-box"); 3191 $jq('.event-box').css("height", "unset"); 3192} 3193 3194function showCat(el) { 3195 let container = el.closest(".event-mini-container"); 3196 $jq('.events-cat-counter', container).css("display", "none"); 3197 $jq('.category-before-click-events', container).css("display", "none"); 3198 $jq('.category-after-click-events', container).css("display", "flex"); 3199 $jq('.events-block-slider').css("max-height", "unset"); 3200 let miniContainerW = $jq('.events-block-slider').height(); 3201 $jq('.events-slickslider-mobile-arrow-box').css('top', miniContainerW + 39); 3202} 3203 3204$jq('.events-categories-link').on("click", function() { 3205 if($jq('.events-block-slider >.slick-list').width() !== undefined){ 3206 if( $jq( window ).width() > 720) { 3207 $jq('.events-slickslider-mobile-arrow-box').css('top', '392px'); 3208 } else { 3209 $jq('.events-slickslider-mobile-arrow-box').css('top', '405px'); 3210 } 3211 } 3212}); 3213 3214 3215function openCat(){ 3216 $jq('.events-categories-mobile > .overlay').css("display", "block"); 3217 $jq('.events-categories-mobile > .shadow').css("display", "block"); 3218 $jq(document.body).css("overflow", 'hidden'); 3219} 3220 function closeCat(){ 3221 $jq('.events-categories-mobile > .overlay').css("display", "none"); 3222 $jq('.events-categories-mobile > .shadow').css("display", "none"); 3223 $jq(document.body).css("overflow", 'unset'); 3224 } 3225 3226 $jq('.events-categories-link-mobile').on('click', function () { 3227 $jq('#events-categories-select > span').html(this.innerText); 3228 closeCat(); 3229 }); 3230 3231setTimeout(function() { 3232 $jq('.category-after-click-events').css("display", "none"); 3233}, 2500); 3234 3235function openCatNews(){ 3236 $jq('.news-categories-mobile > .overlay').css("display", "block"); 3237 $jq('.news-categories-mobile > .shadow').css("display", "block"); 3238 $jq(document.body).css("overflow", 'hidden'); 3239} 3240 3241 function closeCatNews(){ 3242 $jq('.news-categories-mobile > .overlay').css("display", "none"); 3243 $jq('.news-categories-mobile > .shadow').css("display", "none"); 3244 $jq(document.body).css("overflow", 'unset'); 3245 } 3246 3247 $jq('.news-categories-overlay').on('click','li', function() { 3248 $jq('#news-categories-select > span').html(this.innerText); 3249 closeCatNews(); 3250 }); 3251 3252var languageToggle = function(elem) { 3253 if (elem.hasClass('language-list-opened')) { 3254 elem.removeClass('language-list-opened'); 3255 elem.addClass('language-list-closed'); 3256 return; 3257 } 3258 elem.removeClass('language-list-closed'); 3259 elem.addClass('language-list-opened'); 3260} 3261 var languageToggleMobile = function(elem) { 3262 elem.addClass('active'); 3263 $jq('#backdrop').removeClass('hidden-background'); 3264 $jq('.icon.main-menu.hide-text').hide(); 3265 3266 } 3267 3268 3269var languageArrowToggle = function(elem) { 3270 if (elem.hasClass('language-arrow-opened')) { 3271 elem.removeClass('language-arrow-opened'); 3272 elem.addClass('language-arrow-closed'); 3273 return; 3274 } 3275 elem.removeClass('language-arrow-closed'); 3276 elem.addClass('language-arrow-opened'); 3277} 3278 3279$jq('.language-upper').click( function (e) { 3280 var windowWidth = window.innerWidth; 3281 3282 if(windowWidth>857){ 3283 languageToggle($jq('.language-list')); 3284 languageArrowToggle($jq('.language-arrow')); 3285 }else{ 3286 languageToggleMobile($jq('.language-list-mobile')); 3287 } 3288}); 3289$jq('.language-upper').on("keypress", function(event) { 3290 if (event.key === "Enter") { 3291 event.preventDefault(); 3292 $jq(this).click(); 3293 } 3294}); 3295function hideLangMenu(){ 3296 if ($jq('.language-list').hasClass('language-list-opened')) { 3297 $jq('.language-list').removeClass('language-list-opened'); 3298 $jq('.language-list').addClass('language-list-closed'); 3299 $jq('.language-upper .language-arrow').removeClass('language-arrow-opened'); 3300 $jq('.language-upper .language-arrow').addClass('language-arrow-closed'); 3301 } 3302} 3303 $jq('.language-list-links:last-child a').on('blur', function () { 3304 3305 setTimeout(function () { 3306 var focused = $jq(':focus-visible'); 3307 if (!focused.is('.language-list-links a')) { 3308 hideLangMenu(); 3309 } 3310 }, 30); 3311 }); 3312 3313var accessToggle = function(elem) { 3314 if (elem.hasClass('access-main-page-list-opened')) { 3315 elem.removeClass('access-main-page-list-opened'); 3316 hideContrastMenu();; 3317 3318 elem.addClass('access-main-page-list-closed'); 3319 return; 3320 } 3321 elem.removeClass('access-main-page-list-closed'); 3322 elem.addClass('access-main-page-list-opened'); 3323} 3324 var accessToggleMobile = function(elem) { 3325 elem.addClass('active'); 3326 $jq('.icon.main-menu.hide-text').hide(); 3327 $jq('#backdrop').removeClass('hidden-background'); 3328} 3329var accessArrowToggle = function(elem) { 3330 if (elem.hasClass('access-main-page-arrow-opened')) { 3331 3332 elem.removeClass('access-main-page-arrow-opened'); 3333 elem.addClass('access-main-page-arrow-closed'); 3334 return; 3335 } 3336 3337 elem.removeClass('access-main-page-arrow-closed'); 3338 elem.addClass('access-main-page-arrow-opened'); 3339} 3340 3341$jq('.access-main-page-upper').click( function (e) { 3342 var windowWidth = window.innerWidth; 3343 3344 if(windowWidth>857){ 3345 accessToggle($jq('.access-main-page-list')); 3346 accessArrowToggle($jq('.access-main-page-arrow')); 3347 }else{ 3348 accessToggleMobile($jq('.access-main-page-list-mobile')); 3349 3350 } 3351 3352}); 3353function hideContrastMenu(){ 3354 $jq('.access-main-page-link.bolded-rows').removeClass('bolded-rows'); 3355 $jq('body').removeClass('open-main-menu'); 3356 $jq('#backdrop-menu-desktop').css('display','none'); 3357 $jq('#catalog_contrast').css('display','none') ; 3358} 3359var hideAccessMenu = function(elem) { 3360 if (elem.hasClass('access-main-page-list-opened')) { 3361 elem.removeClass('access-main-page-list-opened'); 3362 $jq('.access-main-page-link.bolded-rows').removeClass('bolded-rows'); 3363 $jq('body').removeClass('open-main-menu'); 3364 $jq('#backdrop-menu-desktop').css('display','none'); 3365 $jq('#catalog_contrast').css('display','none'); 3366 elem.addClass('access-main-page-list-closed'); 3367 $jq('.access-main-page-arrow').removeClass('access-main-page-arrow-opened'); 3368 $jq('.access-main-page-arrow').addClass('access-main-page-arrow-closed'); 3369 return; 3370 } 3371} 3372$jq(document).keydown(function(event) { 3373 if (event.key === "Escape" || event.keyCode === 27) { 3374 hideAccessMenu($jq('.access-main-page-list')); 3375 } 3376}); 3377$jq(document).keydown(function(event) { 3378 if (event.key === "Escape" || event.keyCode === 27) { 3379 hideLangMenu(); 3380 } 3381}); 3382$jq('.access-main-page-link').on("keypress", function(event) { 3383 if (event.key === "Enter") { 3384 if($jq('#catalog_contrast').css('display') === 'block' && $jq(this).attr('data-pzn-menu') && $jq(this).attr('data-pzn-menu') ==='catalog_contrast'){ 3385 event.preventDefault(); 3386 hideContrastMenu(); 3387 } else { 3388 $jq(this).click(); 3389 } 3390 } 3391}); 3392$jq('#ln_high_contrast .access-main-page-link:last').on('blur', function () { 3393 setTimeout(function () { 3394 var focused = $jq(':focus-visible'); 3395 if (!focused.hasClass('access-main-page-link')) { 3396 hideAccessMenu($jq('.access-main-page-list')); 3397 $jq('.access-main-page-list').removeClass('access-main-page-list-opened'); 3398 hideContrastMenu(); 3399 $jq('.access-main-page-list').addClass('access-main-page-list-closed'); 3400 $jq('.access-main-page-upper .access-main-page-arrow').removeClass('access-main-page-arrow-opened'); 3401 $jq('.access-main-page-upper .access-main-page-arrow').addClass('access-main-page-arrow-closed'); 3402 } 3403 }, 30); 3404}); 3405var redBlockToggle = function(elem) { 3406 if (elem.hasClass('block-opened')) { 3407 elem.children('div.red-alert-up').children('div.red-alert-icon').removeClass('red-alert-icon-opened'); 3408 elem.children('div.red-alert-up').children('div.red-alert-icon').addClass('red-alert-icon-closed'); 3409 elem.children('div.red-alert-right-section').children('div.red-alert-collapse').removeClass('red-alert-collapse-opened'); 3410 elem.children('div.red-alert-right-section').children('div.red-alert-collapse').addClass('red-alert-collapse-closed'); 3411 elem.children('div.red-alert-up').children('div.red-alert-title').css('font-size', '12px'); 3412 elem.children('div.red-alert-text').css('display', 'none'); 3413 elem.removeClass('block-opened'); 3414 elem.addClass('block-closed'); 3415 return; 3416 } 3417 elem.children('div.red-alert-up').children('div.red-alert-icon').removeClass('red-alert-icon-closed'); 3418 elem.children('div.red-alert-up').children('div.red-alert-icon').addClass('red-alert-icon-opened'); 3419 elem.children('div.red-alert-right-section').children('div.red-alert-collapse').removeClass('red-alert-collapse-closed'); 3420 elem.children('div.red-alert-right-section').children('div.red-alert-collapse').addClass('red-alert-collapse-opened'); 3421 elem.children('div.red-alert-up').children('div.red-alert-title').css('font-size', '16px'); 3422 elem.children('div.red-alert-text').css('display', 'block'); 3423 elem.removeClass('block-closed'); 3424 elem.addClass('block-opened'); 3425} 3426 3427$jq('.red-alert-collapse').click( function (e) { 3428 redBlockToggle($jq(this).parent()); 3429}); 3430$jq('.red-alert-block').click( function (e) { 3431 redBlockToggle($jq(this)); 3432 3433}); 3434 3435$jq(document).ready(function() { 3436 var searchMainPageButton = document.querySelector('#search-main-page-button'); 3437 var sessionContainer = document.querySelector('.session-container'); 3438 if(searchMainPageButton){ 3439 searchMainPageButton.addEventListener('click', function() { 3440 searchMainPageButton.classList.add('clicked'); 3441 }); 3442 } 3443 if(sessionContainer){ 3444 sessionContainer.addEventListener('click', function() { 3445 sessionContainer.classList.add('clicked'); 3446 }); 3447 } 3448}); 3449$jq('.access-main-page-upper').on("keypress", function(event) { 3450 if (event.key === "Enter") { 3451 event.preventDefault(); 3452 $jq('.access-main-page-upper').click(); 3453 } 3454}); 3455 3456$jq('.red-alert-collapse').on("keypress", function(event) { 3457 if (event.key === "Enter") { 3458 event.preventDefault(); 3459 $jq('.red-alert-collapse').click(); 3460 } 3461}); 3462$jq('.red-alert-block').on("keypress", function(event) { 3463 if (event.key === "Enter") { 3464 event.preventDefault(); 3465 var linkElement = $jq(this).find('a.red-alert-link'); 3466 3467 if (linkElement.length > 0 && typeof linkElement[0].click === 'function') { 3468 linkElement[0].click(); 3469 } 3470} 3471}); 3472$jq(document).ready(function() { 3473//info blue bar menu and weather responsive menu creation 3474function createInformationMenu() { 3475 const screenWidth = window.innerWidth; 3476 3477 if (screenWidth < 470) { 3478 const elementsToMove = []; 3479 var infoMenu= document.getElementById('expand_info_menu'); 3480 var infoMenuButton= document.querySelector('.info_menu_button'); 3481 if(infoMenu && infoMenuButton && $jq('#expand_info_menu').is(':empty')){ 3482 const topBarBlueLinks = document.querySelector(".top-bar-blue-links"); 3483 const children = topBarBlueLinks.children; 3484 let totalWidth = 0; 3485 const maxWidth = topBarBlueLinks.offsetWidth / 1.5; 3486 let isFirst= true; 3487 if(children.length < 3){ 3488 topBarBlueLinks.style.setProperty('display','none','important'); 3489 $jq('.name-lang-box').css('border-bottom','none'); 3490 } 3491 else{ 3492 for (let i = 0; i < children.length-2; i++) { 3493
3494 let cloned= false; 3495 if(isFirst){ 3496 let text = children[i].textContent; 3497 if(text.length > 15){ 3498 var clonedElement = children[i].cloneNode(true); // Tworzenie gÅÄbokiej kopii elementu 3499 elementsToMove.push(clonedElement); 3500 cloned=true; 3501 children[i].textContent = children[i].textContent.substring(0, 15) + '...'; 3502 } 3503 isFirst=false; 3504 } 3505 totalWidth += children[i].offsetWidth; 3506 if (totalWidth >= maxWidth) { 3507 elementsToMove.push(children[i]); 3508 }else if(!cloned){ 3509 var clonedElement = children[i].cloneNode(true); 3510 elementsToMove.push(clonedElement); 3511 } 3512 } 3513 3514 elementsToMove.forEach(element => { 3515 infoMenu.appendChild(element); 3516 }); 3517 3518 if (infoMenu.children.length > 0) { 3519 infoMenuButton.style.display = 'flex'; 3520 } 3521 } 3522 } 3523 } 3524 } 3525 function createWeatherInfoMenu() { 3526 const screenWidth = window.innerWidth; 3527 var infoMenu= document.getElementById('expand_weather_info_menu'); 3528 if (screenWidth < 694 && infoMenu) { 3529 3530 infoMenu.style.setProperty('flex-direction','column'); 3531 var weatherInfoMenuButton= document.querySelector('.weather_info_menu_button'); 3532 const dateWeatherBox = document.querySelector(".date-weather-box"); 3533 3534 const boxAirQualityElements = document.querySelectorAll('.box-air-quality'); 3535 3536 boxAirQualityElements.forEach(element => { 3537 element.style.setProperty('justify-content','flex-start'); 3538 }); 3539 3540 3541 const infoRightElements = document.querySelectorAll('.info-right'); 3542 3543 boxAirQualityElements.forEach(element => { 3544 infoMenu.append(element); 3545 }); 3546 3547 infoRightElements.forEach(element => { 3548 infoMenu.append(element); 3549 }); 3550 3551 weatherInfoMenuButton.style.display = 'flex'; 3552 } 3553 } 3554 createWeatherInfoMenu(); 3555 createInformationMenu(); 3556 3557 window.addEventListener('resize', createInformationMenu); 3558 const infoMenuButton = document.querySelector('.info_menu_button'); 3559 const expandInfoMenu = document.getElementById('expand_info_menu'); 3560 3561 const topBarMainPage = document.querySelector('.top-bar-main-page'); 3562 const blueLinksTopBar =document.querySelector('.top-bar-blue-links'); 3563 if(infoMenuButton){ 3564 var expandInfoMenuArrow = infoMenuButton.querySelector('#arrow-more'); 3565 infoMenuButton.addEventListener('click', function() { 3566 if (expandInfoMenu.style.display === 'flex') { 3567 expandInfoMenuArrow.classList.add('weather-arrow-closed'); 3568 expandInfoMenuArrow.classList.remove('weather-arrow-opened'); 3569 expandInfoMenu.style.display = 'none'; 3570 blueLinksTopBar.style.height ='60px'; 3571 $jq('#info_menu_button_text').text("RozwiÅ"); 3572 $jq('.top-menu-button-link').not('#expand_info_menu .top-menu-button-link').css('display', 'flex'); 3573 $jq('#info_menu_button').css('margin-left','16px'); 3574 } else { 3575 expandInfoMenuArrow.classList.add('weather-arrow-opened'); 3576 expandInfoMenuArrow.classList.remove('weather-arrow-closed'); 3577 expandInfoMenu.style.display = 'flex'; 3578 expandInfoMenu.style.height='auto'; 3579 $jq('.top-menu-button-link').not('#expand_info_menu .top-menu-button-link').css('display', 'none'); 3580 $jq('#info_menu_button_text').text("ZwiÅ"); 3581 3582 $jq('#info_menu_button').css('margin-left','auto'); 3583 topBarMainPage.style.height ='auto';
3584 blueLinksTopBar.style.height ='auto'; 3585 } 3586 }); 3587 } 3588 window.addEventListener('resize', createWeatherInfoMenu); 3589 const weatherInfoMenuButton = document.querySelector('.weather_info_menu_button'); 3590 const expandWeatherInfoMenu = document.getElementById('expand_weather_info_menu'); 3591 if(weatherInfoMenuButton){ 3592 var expandInfoWeatherMenuArrow = weatherInfoMenuButton.querySelector('#arrow-more'); 3593 // const topBarMainPage = document.querySelector('.top-bar-main-page'); 3594 // const blueLinksTopBar =document.querySelector('.top-bar-blue-links'); 3595 3596 weatherInfoMenuButton.addEventListener('click', function() { 3597 if (expandWeatherInfoMenu.style.display === 'flex') { 3598 expandInfoWeatherMenuArrow.classList.add('language-arrow-closed'); 3599 expandInfoWeatherMenuArrow.classList.remove('language-arrow-opened'); 3600 expandWeatherInfoMenu.style.display = 'none'; 3601 // topBarMainPage.style.height ='120px'; 3602 // blueLinksTopBar.style.height ='60px'; 3603 3604 } else { 3605 expandInfoWeatherMenuArrow.classList.add('language-arrow-opened'); 3606 expandInfoWeatherMenuArrow.classList.remove('language-arrow-closed'); 3607 expandWeatherInfoMenu.style.display = 'flex'; 3608 expandWeatherInfoMenu.style.height='auto'; 3609 // topBarMainPage.style.height ='auto'; 3610 // blueLinksTopBar.style.height ='auto'; 3611 } 3612 3613}); 3614} 3615 3616 3617var currentPath = window.location.pathname; 3618const targetNode = document.getElementById("google_translate_element"); 3619console.debug("targetNode:" + targetNode); 3620if (targetNode !== null) { 3621 const config = { attributes: true, childList: true, subtree: true }; 3622 const callback = (mutationList, observer) => { 3623 for (const mutation of mutationList) { 3624 if (mutation.type === "childList") { 3625 mutation.addedNodes.forEach((node) => { 3626 3627 if (node.nodeName === "OPTION") { 3628 if (node.textContent === "Wybierz jÄzyk") { 3629 if (currentPath.includes('/en/') || currentPath.includes('/ua/')) { 3630 node.textContent = "TRANSLATE"; 3631 $jq(".goog-te-combo").css("max-width", "125px"); 3632 } else { 3633 node.textContent = "TÅUMACZ"; 3634 } 3635 } 3636 } 3637 }); 3638 } 3639 } 3640 }; 3641 // Create an observer instance linked to the callback function 3642 const observer = new MutationObserver(callback); 3643 3644 // Start observing the target node for configured mutations 3645 observer.observe(targetNode, config); 3646}; 3647 3648 3649 3650 var accessLabel= document.querySelector('.access-main-page-label'); 3651 3652 if (accessLabel) { 3653 var labelText = accessLabel.textContent; 3654 var uppercasedText = labelText.toUpperCase(); 3655 accessLabel.textContent = uppercasedText; 3656 } 3657 3658 3659 if ($jq('#n-t-necropolis-grupa-icon').length > 0) { 3660 $jq('#n-t-necropolis-grupa-icon').click(function () { 3661 $jq( "#n-t-necropolis-dp" ).dialog( "close" ); 3662 $jq( "#n-t-necropolis-in" ).dialog( "close" ); 3663 $jq( "#n-t-necropolis-grupa" ).dialog( "open" ); 3664 }); 3665 } 3666 3667 if ($jq('#n-t-necropolis-grupa').length > 0) { 3668 $jq( "#n-t-necropolis-grupa" ).dialog({ closeOnEscape: true, autoOpen: false, minHeight: 90, closeText: "zamknij", classes: {"ui-dialog": "necropolis-ui-dialog"} 3669 , position: {my: "right+300 top", at: "left+20 bottom", of: "#n-t-necropolis-grupa-icon"} }); 3670 } 3671 if ($jq('#n-t-necropolis-in-icon').length > 0) { 3672 $jq('#n-t-necropolis-in-icon').click(function () { 3673 $jq( "#n-t-necropolis-grupa" ).dialog( "close" ); 3674 $jq( "#n-t-necropolis-dp" ).dialog( "close" ); 3675 $jq( "#n-t-necropolis-in" ).dialog( "open" ); 3676 }); 3677 } 3678 3679 if ($jq('#n-t-necropolis-in').length > 0) { 3680 $jq( "#n-t-necropolis-in" ).dialog({ closeOnEscape: true, autoOpen: false, minHeight: 90, closeText: "zamknij", classes: {"ui-dialog": "necropolis-ui-dialog"} 3681 , position: {my: "right+300 top", at: "left+20 bottom", of: "#n-t-necropolis-in-icon"} }); 3682 } 3683 if ($jq('#n-t-necropolis-dp-icon').length > 0) { 3684 $jq('#n-t-necropolis-dp-icon').click(function () { 3685 $jq( "#n-t-necropolis-grupa" ).dialog( "close" ); 3686 $jq( "#n-t-necropolis-in" ).dialog( "close" ); 3687 $jq( "#n-t-necropolis-dp" ).dialog( "open" ); 3688 }); 3689 } 3690 if ($jq('#n-t-necropolis-dp').length > 0) { 3691 $jq( "#n-t-necropolis-dp" ).dialog({ closeOnEscape: true, autoOpen: false, minHeight: 90, closeText: "zamknij", classes: {"ui-dialog": "necropolis-ui-dialog"} 3692 , position: {my: "right+300 top", at: "left+20 bottom", of: "#n-t-necropolis-dp-icon"} }); 3693 } 3694}); 3695 3696 3697function setButtonKrajobrazowaEnabled(){ 3698 var buttonNext = document.querySelector('.button_krajobrazowa_next'); 3699 if(buttonNext.disabled){ 3700 buttonNext.disabled = false;
3701 buttonNext.style.setProperty('cursor','pointer','important'); 3702 buttonNext.style.backgroundColor = '#0054A6'; 3703 } 3704} 3705function setButtonKrajobrazowaDisabled(){ 3706 var buttonNext = document.querySelector('.button_krajobrazowa_next'); 3707 var bottomContainer=document.querySelector('.bottom_container_search_krajobrazowa'); 3708 if($jq(window).width()> 820){ 3709 bottomContainer.style.setProperty('margin-top','272px');} 3710 if(!buttonNext.disabled){ 3711 buttonNext.disabled = true; 3712 buttonNext.style.setProperty('cursor','not-allowed','important'); 3713 buttonNext.style.backgroundColor = '#8C8F92'; 3714 } 3715} 3716function setButtonWuiaDisabled(){ 3717 var buttonNext = document.querySelector('.button_krajobrazowa_next'); 3718 var bottomContainer=document.querySelector('.bottom_container_search_krajobrazowa'); 3719 if(!buttonNext.disabled){ 3720 buttonNext.disabled = true; 3721 buttonNext.style.setProperty('cursor','not-allowed','important'); 3722 buttonNext.style.backgroundColor = '#8C8F92'; 3723 } 3724} 3725function getArea() { 3726 var krajobrazowaAttempts=0; 3727 var maxAttempts=5; 3728 var currentPath = window.location.pathname; 3729 var lvl_1 = document.getElementById('lvl_1'); 3730 var foundText=document.getElementById("foundText"); 3731 var krajobrazowaFoundArea=document.querySelector('.krajobrazowa-found-container'); 3732 3733 function performSearch() { 3734 krajobrazowaAttempts++; 3735 if (!lvl_1 || lvl_1.value === null || lvl_1.value === "") { 3736 if(krajobrazowaAttempts<maxAttempts){ 3737 setTimeout(function () { 3738 getArea(); 3739 }, 1000); 3740 } 3741 else { 3742 if($jq(window).width() > 820){ 3743 bottomContainer.style.setProperty('margin-top','225px'); 3744 } 3745 foundText.textContent ="Nie znaleziono obszaru"; 3746 setForAreaIndicatorKrajob(); 3747 krajobrazowaFoundArea.style.setProperty('display', 'flex', 'important'); 3748 var krajobrazowaFoundLocationBox = krajobrazowaFoundArea.querySelector('.krajobrazowa-found-location-box'); 3749 document.getElementById("areaFoundDesc").textContent = ''; 3750 document.getElementById("areaFoundDesc").style.setProperty('display', 'none', 'important'); 3751 if (krajobrazowaFoundLocationBox) { 3752 krajobrazowaFoundLocationBox.style.setProperty('display', 'none', 'important'); 3753 } 3754 } 3755 } 3756 else { 3757 3758 var selectedValue = lvl_1.value; 3759 var dane = { 3760 lvl_1: selectedValue, 3761 co: "getjson", 3762 action: "search" 3763 }; 3764 3765 $jq.ajax({ 3766 method: 'GET', 3767 url: currentPath, 3768 data: dane, 3769 dataType: 'json', 3770 success: function (data) { 3771 3772 if (data && data.lvl_1 && data.areaDesc) { 3773 var idUlica = data.lvl_1; 3774 var area = data.areaDesc; 3775 document.getElementById("areaFoundDesc").textContent = area; 3776 foundText.textContent ="Znaleziono:"; 3777 document.getElementById("areaStreet").textContent = document.getElementById("id_ulica_street_lookup").value; 3778 var selectedOptionText = $jq("#lvl_1 option[value='" + idUlica + "']").text(); 3779 document.getElementById("areaName").textContent=selectedOptionText; 3780 krajobrazowaFoundArea.style.setProperty('display', 'flex', 'important'); 3781 var krajobrazowaFoundLocationBox = krajobrazowaFoundArea.querySelector('.krajobrazowa-found-location-box'); 3782 if (krajobrazowaFoundLocationBox) { 3783 krajobrazowaFoundLocationBox.style.setProperty('display', 'flex', 'important'); 3784 document.getElementById("areaFoundDesc").style.setProperty('display', 'flex', 'important'); 3785 } 3786 var bottomContainer=document.querySelector('.bottom_container_search_krajobrazowa'); 3787 bottomContainer.style.setProperty('margin-top','0px'); 3788 setButtonKrajobrazowaEnabled(); 3789 setForAreaIndicatorKrajob(); 3790 } else { 3791 var bottomContainer=document.querySelector('.bottom_container_search_krajobrazowa'); 3792 if($jq(window).width()> 820){ 3793 bottomContainer.style.setProperty('margin-top','225px'); 3794 } 3795 3796 foundText.textContent ="Nie znaleziono obszaru"; 3797 setForAreaIndicatorKrajob(); 3798 krajobrazowaFoundArea.style.setProperty('display', 'flex', 'important'); 3799 var krajobrazowaFoundLocationBox = krajobrazowaFoundArea.querySelector('.krajobrazowa-found-location-box'); 3800 document.getElementById("areaFoundDesc").textContent = ''; 3801 document.getElementById("areaFoundDesc").style.setProperty('display', 'none', 'important'); 3802 if (krajobrazowaFoundLocationBox) { 3803 krajobrazowaFoundLocationBox.style.setProperty('display', 'none', 'important'); 3804 } 3805 } 3806 3807 }, 3808 error: function (xhr, status, error) { 3809 console.error('BÅÄ d Å¼Ä dania:', status); 3810 } 3811 }); 3812 } 3813 } 3814 performSearch(); 3815} 3816function setForAreaIndicatorKrajob(){ 3817 var ajaxIndicator=document.getElementById("ajax_indicator_area_search"); 3818 var computedStyle = window.getComputedStyle(ajaxIndicator); 3819 var currentDisplay = computedStyle.getPropertyValue('display'); 3820 if (currentDisplay === 'none') { 3821 ajaxIndicator.style.setProperty('display', 'block'); 3822 } 3823 else{ 3824 ajaxIndicator.style.setProperty('display', 'none'); 3825 } 3826 3827} 3828function setForAreaIndicator(id){ 3829 var ajaxIndicator=document.getElementById(id); 3830 var computedStyle = window.getComputedStyle(ajaxIndicator); 3831 var currentDisplay = computedStyle.getPropertyValue('display'); 3832 if (currentDisplay === 'none') { 3833 ajaxIndicator.style.setProperty('display', 'block'); 3834 } 3835 else{ 3836 ajaxIndicator.style.setProperty('display', 'none'); 3837 } 3838 3839} 3840function disableKrajobrazowaSearchBox(){ 3841 3842 var krajobrazowaContainer=document.querySelector('.krajobrazowa-found-container'); 3843 var computedStyle = window.getComputedStyle(krajobrazowaContainer); 3844 var currentDisplay = computedStyle.getPropertyValue('display'); 3845 if (currentDisplay === 'flex') { 3846 krajobrazowaContainer.style.setProperty('display', 'none'); 3847 } 3848 setButtonKrajobrazowaDisabled(); 3849} 3850function changeColorKrajobrazowaButton(element){ 3851 element.style.backgroundColor = "#0054A6"; 3852 element.style.color = "#ffffff"; 3853 var arrowBackElement = element.querySelector('.arrow_back'); 3854 if (arrowBackElement) { 3855 arrowBackElement.classList.remove("arrow_back"); 3856 arrowBackElement.classList.add("arrow_back_white"); 3857 } 3858 3859} 3860function restoreColorKrajobrazowaButton(element){ 3861 3862 element.style.backgroundColor = "#ffffff"; 3863 element.style.color = "#0054A6"; 3864 var arrowBackElement = element.querySelector('.arrow_back_white'); 3865 if (arrowBackElement) { 3866 arrowBackElement.classList.remove("arrow_back_white"); 3867 arrowBackElement.classList.add("arrow_back"); 3868 } 3869} 3870
3871function krajobrazowaGetNextLvl(ele){ 3872 var currentPath = window.location.pathname; 3873 3874 while(ele.closest(".level-krajobrazowa").next() !== undefined){ 3875 ele.closest(".level-krajobrazowa").next().remove(); 3876 } 3877 var dane = { 3878 parentId: ele.value, 3879 lvl_name: ele.name, 3880 co: "getLevel" 3881 }; 3882 3883 $jq.ajax({ 3884 method: 'GET', 3885 url: currentPath, 3886 data: dane, 3887 dataType: 'text', 3888 success: function (data) { 3889 if(data.length > 0) { 3890 $jq(".fieldset-krajobrazowa").append(data); 3891 $jq('.levels-end').addClass('hide'); 3892 $jq('#krajobrazowaSubmit').attr('disabled','disabled'); 3893 } else { 3894 $jq(".levels-end").removeClass("hide"); 3895 $jq('#krajobrazowaSubmit').removeAttr('disabled'); 3896 $jq('#krajobrazowaSubmit').removeClass('disabled'); 3897 } 3898 }, 3899 error: function (xhr, status, error) { 3900 console.error('BÅÄ d Å¼Ä dania:', status); 3901 } 3902 }); 3903} 3904 3905$jq(document).on('click',".option-krajobrazowa", function() { 3906 var element = $jq(":input", this)[0]; 3907 element.checked = true; 3908 krajobrazowaGetNextLvl(element); 3909}) 3910function resizeMapKrajobrazowa(){ 3911 const krajobrazowaMap = document.querySelector('.krajobrazowa_map'); 3912 if(krajobrazowaMap ){ 3913 const mapLocator = document.getElementById('mapLocator'); 3914 if($jq(window).width() <= 1190){ 3915 const mapLocator = document.getElementById('mapLocator'); 3916 const width = mapLocator.offsetWidth; 3917 mapLocator.style.height = width + 'px'; 3918 }else{ 3919 mapLocator.style.height = 495 + 'px'; 3920 3921 } 3922 } 3923} 3924function moveKrajobrazowaBottomButton(){ 3925 3926 const bottomContainer = document.querySelector(".bottom_container_search_krajobrazowa"); 3927 if(bottomContainer){ 3928 if( $jq(window).width() <= 820 ){ 3929 bottomContainer.style.setProperty('margin-top', '21px'); 3930 bottomContainer.style.setProperty('padding-left', '16px'); 3931 bottomContainer.style.setProperty('padding-right', '16px'); 3932 $jq('#signboard-form-step-1').append(bottomContainer); 3933 $jq('.krajobrazowa_searchbox .bottom_container_search_krajobrazowa').remove(); 3934 }else if(!document.querySelector(".krajobrazowa_searchbox .bottom_container_search_krajobrazowa")){ 3935 bottomContainer.style.setProperty('margin-top', '272px'); 3936 bottomContainer.style.removeProperty('padding-left'); 3937 bottomContainer.style.removeProperty('padding-right'); 3938 $jq('.bottom_container_search_krajobrazowa').remove(); 3939 3940 $jq('.krajobrazowa_searchbox').append(bottomContainer); 3941 } 3942 } 3943 3944} 3945 3946 3947 3948$jq(window).on('resize', resizeMapKrajobrazowa).resize(); 3949$jq(window).on('resize', moveKrajobrazowaBottomButton).resize(); 3950 3951function coverNews(element){ 3952 var imgNews1 = element.querySelector('#img_news_1'); 3953 element.classList.add('hovered'); 3954} 3955 3956function uncoverNews(element){ 3957 var imgNews1 = element.querySelector('#img_news_1'); 3958 element.classList.remove('hovered'); 3959} 3960 3961function coverSideNews(element){ 3962 var imgNews1 = element.querySelector('#img_news_side_1'); 3963 var imgNews2 = element.querySelector('#img_news_side_2'); 3964 3965 if (imgNews2) { 3966 element.classList.add('hovered_2'); 3967 } else{ 3968 element.classList.add('hovered'); 3969 } 3970} 3971function uncoverSideNews(element){ 3972 var imgNews1 = element.querySelector('#img_news_side_1'); 3973 var imgNews2 = element.querySelector('#img_news_side_2'); 3974 3975 if (imgNews2) { 3976 element.classList.remove('hovered_2'); 3977 } else{ 3978 element.classList.remove('hovered'); 3979 } 3980} 3981 function collapseRedBlocks(){ 3982 3983 if ($jq(window).width() <= 720) { 3984 3985 var redBlockList=document.querySelectorAll('.red-alert-block'); 3986 if(redBlockList){ 3987 3988 redBlockList.forEach(elem => { 3989 3990 if ($jq(elem).hasClass('block-opened')) { 3991 $jq(elem).children('div.red-alert-up').children('div.red-alert-icon').removeClass('red-alert-icon-opened'); 3992 $jq(elem).children('div.red-alert-up').children('div.red-alert-icon').addClass('red-alert-icon-closed'); 3993 $jq(elem).children('div.red-alert-right-section').children('div.red-alert-collapse').removeClass('red-alert-collapse-opened'); 3994 $jq(elem).children('div.red-alert-right-section').children('div.red-alert-collapse').addClass('red-alert-collapse-closed'); 3995 $jq(elem).children('div.red-alert-up').children('div.red-alert-title').css('font-size', '12px'); 3996 $jq(elem).children('div.red-alert-text').css('display', 'none'); 3997 $jq(elem).removeClass('block-opened'); 3998 $jq(elem).addClass('block-closed'); 3999 return; 4000 } 4001 }); 4002 4003 } 4004 } 4005 4006 } 4007$jq(document).ready(function() { 4008$jq(document).mouseup(function (e) { 4009 var containers = $jq('.wrapper.submenu'); 4010 var buttons = $jq('.mobile-href-link-div'); 4011 4012 containers.each(function () { 4013 var container = $jq(this); 4014 var button = container.closest('.mobile-href-link-div'); 4015 4016 if (!container.is(e.target) && container.has(e.target).length === 0 && container.css('display') === 'block') { 4017 button.removeClass('opened'); 4018 $jq('#backdrop-menu-desktop').css('display','none'); 4019 $jq('body').removeClass('open-main-menu'); 4020 button.children('div.links-menu-header-arrow') 4021 .removeClass('links-menu-header-arrow-opened') 4022 .addClass('links-menu-header-arrow-closed'); 4023 container.css('display', 'none'); 4024 } 4025 }); 4026 4027 if (buttons.has(e.target).length === 0) { 4028 buttons.removeClass('opened'); 4029 $jq('#backdrop-menu-desktop').css('display','none'); 4030 $jq('body').removeClass('open-main-menu'); 4031 buttons.find('div.links-menu-header-arrow') 4032 .removeClass('links-menu-header-arrow-opened') 4033 .addClass('links-menu-header-arrow-closed'); 4034 containers.css('display', 'none'); 4035 } 4036}); 4037
4038var searchColorInput = $jq('.searchColor'); 4039 var searchElement = $jq('.search'); 4040 4041 searchColorInput.focus(function() { 4042 searchElement.css({ 4043 'outline': '2px solid #009BDB', 4044 'border': 'none' 4045 }); 4046 }); 4047 searchColorInput.blur(function() { 4048 // PrzywrÃ³Ä oryginalne style .lupka 4049 searchElement.css({ 4050 'outline': '', 4051 'border': '' 4052 }); 4053 }); 4054 4055collapseRedBlocks(); 4056}); 4057$jq(window).on('resize',function(){ 4058collapseRedBlocks(); 4059}); 4060 4061 4062$jq(document).ready(function() { 4063 4064 4065 var secondaryButtonStyle = document.querySelectorAll('.secondary-button-style'); 4066 4067 if(secondaryButtonStyle){ 4068 secondaryButtonStyle.forEach(function(button) { 4069 button.addEventListener('click', function() { 4070 button.classList.add('clicked'); 4071 }); 4072 }); 4073 } 4074}); 4075var inputWithMagnifier = $jq(' .input-with-magnifier input'); 4076 4077var searchColorInput = $jq(' .input-with-magnifier input'); 4078 var inputWithMagnifier = $jq('.input-with-magnifier'); 4079 var magnifier = $jq('.input-with-magnifier div[type="lupka"]'); 4080 4081 searchColorInput.focus(function() { 4082 inputWithMagnifier.css({ 4083 'border-left': '1px solid #009BDB', 4084 'border-top': '1px solid #009BDB', 4085 'border-bottom': '1px solid #009BDB', 4086 }); 4087 magnifier.css({ 4088 'border-left': '1px solid #009BDB', 4089 'border-top': '1px solid #009BDB', 4090 'border-bottom': '1px solid #009BDB', 4091 }); 4092 }); 4093 searchColorInput.blur(function() { 4094 inputWithMagnifier.css({ 4095 'border-left': '', 4096 'border-top': '', 4097 'border-bottom': '', 4098 }); 4099 magnifier.css({ 4100 'border-left': '', 4101 'border-top': '', 4102 'border-bottom': '', 4103 }); 4104 }); 4105 var sliderSlider = $jq('.slick-slider'); 4106 var progressBar = $jq('.progress-bar'); 4107 sliderSlider.on('beforeChange', function(event, slick, currentSlide, nextSlide){ 4108 var calc = ( (nextSlide) / (slick.slideCount-1) ) * 100; 4109 progressBar 4110 .css('background-size', calc + '% 100%') 4111 .attr('aria-valuenow', calc ); 4112 }); 4113 var newsSliderMainPage=$jq(".slider-news-mainpage"); 4114 var mainPageNewsProgressBar=$jq("#progress-bar-slider-news-main-page"); 4115 newsSliderMainPage.on('beforeChange', function(event, slick, currentSlide, nextSlide){ 4116 var calc = ( (nextSlide) / (slick.slideCount-1) ) * 100; 4117 mainPageNewsProgressBar 4118 .css('background-size', calc + '% 100%') 4119 .attr('aria-valuenow', calc ); 4120 }); 4121 var sliderVideo = $jq('.box.box-2-column.box-mapa.box-youtube-player.slider-video'); 4122 var progressBarVideo = $jq('.progress-bar-slider-big.progress-video'); 4123 sliderVideo.on('beforeChange', function(event, slick, currentSlide, nextSlide){ 4124 4125 var calc = ( (nextSlide) / (slick.slideCount-1) ) * 100; 4126 progressBarVideo 4127 .css('background-size', calc + '% 100%') 4128 .attr('aria-valuenow', calc ); 4129 }); 4130 var sliderVideoWortal = $jq('.video-container-without-images-884 .box.box-2-column.box-mapa.box-youtube-player.slider-video'); 4131 var progressBarVideoWortal = $jq('.video-player-884 .progress-bar-slider-big'); 4132 sliderVideoWortal.on('beforeChange', function(event, slick, currentSlide, nextSlide){ 4133 4134 var calc = ( (nextSlide) / (slick.slideCount-1) ) * 100; 4135 progressBarVideoWortal 4136 .css('background-size', calc + '% 100%') 4137 .attr('aria-valuenow', calc ); 4138 }); 4139 $jq(document).ready(function() { 4140 4141 var mainButtonKrajobrazowa = document.querySelectorAll('.main_button_krajobrazowa'); 4142 var buttonKrajobrazowa = document.querySelectorAll(' .krajobrazowa-button'); 4143 var buttonKrajobrazowaNext = document.querySelectorAll('.button_krajobrazowa_next'); 4144 var boxAwarieButton = document.querySelectorAll('.box_awarie_button'); 4145 if(mainButtonKrajobrazowa){ 4146 mainButtonKrajobrazowa.forEach(function(button) { 4147 button.addEventListener('click', function() { 4148 button.classList.add('clicked'); 4149 }); 4150 }); 4151 } 4152 if(buttonKrajobrazowa){
4153 buttonKrajobrazowa.forEach(function(button) { 4154 button.addEventListener('click', function() { 4155 button.classList.add('clicked'); 4156 }); 4157 }); 4158 } 4159 if(buttonKrajobrazowaNext){ 4160 buttonKrajobrazowaNext.forEach(function(button) { 4161 button.addEventListener('click', function() { 4162 button.classList.add('clicked'); 4163 }); 4164 }); 4165 } 4166 if(boxAwarieButton){ 4167 boxAwarieButton.forEach(function(button) { 4168 button.addEventListener('click', function() { 4169 button.classList.add('clicked'); 4170 }); 4171 }); 4172 } 4173 4174 }); 4175 $jq('.content-container .menu-container > button.menu').on('click', function(e) { 4176 e.preventDefault(); 4177 $jq(this).parent().toggleClass('opened').find('.container').slideToggle(); 4178 var arrow = document.querySelector("#arrow-menu-mobile"); 4179 arrow.classList.toggle("opened"); 4180 }); 4181 4182$jq(window).resize(function() { 4183 var screenWidth = $jq( window ).width(); 4184 if(screenWidth > 871 && $jq('.box.box-2-column.box-mapa.box-youtube-player >.slick-list').length > 0) { 4185 $jq('.box.box-2-column.box-mapa.box-youtube-player').slick('unslick'); 4186 }else if(screenWidth < 871){ 4187 videoSlickSlider(); 4188 } 4189}); 4190$jq(window).resize(function() { 4191 var screenWidth = $jq( window ).width(); 4192 if(screenWidth > 720 && $jq('.different_news_container >.slick-list').length > 0) { 4193 $jq('.different_news_container').slick('unslick'); 4194 }else if(screenWidth < 721){ 4195 newsMainPageDfrntSlickSlider(); 4196 } 4197}); 4198 $jq('.events-block-slider').on('afterChange', function(event, slick, currentSlide){ 4199 var progressBar = $jq('.progress-bar-events'); 4200 var sliderWidth = $jq(".body-section").width() - $jq('.events-categories-container').width(); 4201 $jq('.events-block-slider').css('max-width', sliderWidth); 4202 var wWidth = sliderWidth; 4203 var elementWidth = $jq('.event-mini-container').width(); 4204 var noWidth = Math.floor(wWidth/elementWidth); 4205 var calc = ( (currentSlide+noWidth) / (slick.slideCount) ) * 100; 4206 progressBar 4207 .css('background-size', calc + '% 100%') 4208 .attr('aria-valuenow', calc ) 4209 }); 4210 4211$jq(window).resize(function() { 4212 let screenWidth = $jq( window ).width(); 4213 if ($jq('.events-block-slider').length > 0 ) { 4214 let eventsNumber = $jq('.event-mini-container').not($jq('.event-mini-container.hidden')).length; 4215 let eventWidth = $jq('.event-mini-container').outerWidth(); 4216 let totalWidth = $jq('.events-categories-container:not("hidden")').outerWidth() + eventsNumber * eventWidth + eventsNumber * 8; 4217 if(totalWidth > screenWidth) { 4218 eventsSlickSlider(); 4219 } 4220 else if( $jq('.events-block-slider >.slick-list').width() !== undefined) { 4221 $jq('.events-block-slider').slick('unslick'); 4222 $jq('.progress-bar-events').css("display","none"); 4223 $jq('.events-block-slider').css('display', "flex"); 4224 $jq('.event-mini-container').css('margin-right', "0"); 4225 } 4226 } 4227}); 4228 4229function eventsSlickSlider() { 4230 var sliderWidth = $jq(".body-section").width() - $jq('.events-categories-container').outerWidth(); 4231 $jq('.events-block-slider').css('max-width', sliderWidth); 4232 $jq('.events-block-slider').css('display', "block"); 4233 $jq('.event-mini-container').css('margin-right', "8px"); 4234 var wWidth = sliderWidth; 4235 var elementWidth = $jq('.event-mini-container:not("hidden")').outerWidth(true); 4236 var noWidth = Math.floor(wWidth/elementWidth); 4237 var elementsNumber = $jq('.event-mini-container').not($jq('.event-mini-container.hidden')).length; 4238 try { 4239 $jq('.events-block-slider').slick({ 4240 slidesToShow: noWidth, 4241 slidesToScroll: 2, 4242 autoplay: false, 4243 variableWidth: true, 4244 arrows: true, 4245 initialSlide: 0, 4246 lazyLoad: 'ondemand', 4247 infinite: false, 4248 prevArrow: '<button class="events-slickslider-mobile-arrow-box left"></button>', 4249 nextArrow: '<button class="events-slickslider-mobile-arrow-box right"></button>' 4250 }); 4251 } catch (e) { 4252 console.log(e); 4253 } 4254 var progressBar = $jq('.progress-bar-events'); 4255 var sliderWidth = $jq("body-section").width() - $jq('.events-categories-container').width(); 4256 $jq('.events-block-slider').css('max-width', sliderWidth); 4257 var wWidth = sliderWidth; 4258 var elementWidth = $jq('.event-mini-container').width(); 4259 var noWidth = Math.floor(wWidth/elementWidth); 4260 var calc = ( (noWidth) / elementsNumber ) * 100; 4261 progressBar 4262 .css('background-size', calc + '% 100%') 4263 .attr('aria-valuenow', calc ); 4264 progressBar.css("display","block"); 4265} 4266$jq(document).ready(function() { 4267 let screenWidth = $jq( window ).width(); 4268 if ($jq('.slider-news-mainpage').length > 0 && screenWidth < 994 && $jq('.slider-news-mainpage .slick-list').length === 0) { 4269 newsMainPageSlickSlider(); 4270 } 4271}); 4272 4273$jq(window).resize(function() { 4274 var screenWidth = $jq( window ).width(); 4275 if(screenWidth < 994 && $jq('.slider-news-mainpage .slick-list').length === 0) { 4276 newsMainPageSlickSlider(); 4277 } 4278}); 4279 function setMenuMobileTop(){ 4280 var headerTop; 4281 4282 if ($jq('#h1-header').css('display') !== 'none') { 4283 headerTop = 0; 4284 }else{ 4285 4286 if ($jq('#head-sticky-main-page').css('position') === 'sticky') { 4287 var scrollTop = $jq(window).scrollTop(); 4288 var headerOffsetTop = $jq('#head-sticky-main-page').offset().top; 4289 if (scrollTop >= headerOffsetTop) { 4290 headerTop = 0; 4291 } else { 4292 headerTop = headerOffsetTop - scrollTop; 4293 } 4294 4295 } else { 4296 headerTop = $jq('#head-sticky-main-page').position().top; 4297 } 4298 } 4299 4300 return headerTop; 4301 } 4302function videoSlickSlider() { 4303 if ($jq('.box.box-2-column.box-mapa.box-youtube-player.slider-video').length > 0 && $jq( window ).width()<871) { 4304 $jq('.box.box-2-column.box-mapa.box-youtube-player.slider-video .box-container.video_box').css('max-width',($jq( '.video-new-rows-box').width()+'px')); 4305 var wWidth = $jq('.box.box-2-column.box-mapa.box-youtube-player.slider-video').width();
4306 var bWidth = $jq('.box.box-2-column.box-mapa.box-youtube-player.slider-video .box-container.video_box').width(); 4307 var noWidth = Math.floor(wWidth/bWidth); 4308 try { 4309 4310 $jq('.box.box-2-column.box-mapa.box-youtube-player.slider-video').slick({ 4311 slidesToShow: 1, 4312 slidesToScroll: 1, 4313 autoplay: false, 4314 arrows: true, 4315 variableWidth: false, 4316 lazyLoad: 'ondemand', 4317 centerMode: false , 4318 infinite: true, 4319 responsive: [{ 4320 breakpoint: 871, 4321 settings: { 4322 prevArrow: '<button class="slickslider-mobile-banner-arrow-box video-slider left"></button>', 4323 nextArrow: '<button class="slickslider-mobile-banner-arrow-box video-slider right"></button>' 4324 } 4325 }] 4326 }); 4327 4328 4329 } catch (e) { 4330 4331 console.log('error:',e); 4332 } 4333 4334 } 4335 4336} 4337function newsMainPageDfrntSlickSlider() { 4338 if ($jq(".different_news_container").length > 0 && $jq('.different_news_container .slick-list').length < 1 && $jq( window ).width()<921) { 4339 var wWidth = $jq('.different_news_container').width(); 4340 var boxWidth = $jq('.different_news_box').outerWidth(true); 4341 var noWidth = Math.floor(wWidth/boxWidth); 4342 try { 4343 $jq('.different_news_container').slick({ 4344 slidesToShow: noWidth, 4345 slidesToScroll: 1, 4346 autoplay: false, 4347 arrows: true, 4348 lazyLoad: 'ondemand', 4349 centerMode:false, 4350 infinite: true, 4351 responsive: [{ 4352 breakpoint: 920, 4353 settings: { 4354 variableWidth: true, 4355 prevArrow: '<button class="slickslider-mobile-banner-arrow-box left"></button>', 4356 nextArrow: '<button class="slickslider-mobile-banner-arrow-box right"></button>' 4357 }}, 4358 { 4359 breakpoint: 421, 4360 settings: { 4361 slidesToShow: 1, 4362 variableWidth: false, 4363 prevArrow: '<button class="slickslider-mobile-banner-arrow-box left"></button>', 4364 nextArrow: '<button class="slickslider-mobile-banner-arrow-box right"></button>' 4365 }, 4366 } ] 4367 }); 4368 } catch (e) { 4369 } 4370 4371 } 4372} 4373 4374function newsMainPageSlickSlider() { 4375var newsSliderMainPage=$jq(".slider-news-mainpage"); 4376 if (newsSliderMainPage.length > 0 && $jq( window ).width()<994) { 4377 4378 var wWidth = newsSliderMainPage.width(); 4379 var elementWidth = $jq(".slider-news-mainpage .column").width(); 4380 4381 var noWidth = Math.floor(wWidth/elementWidth); 4382 try { 4383 newsSliderMainPage.slick({ 4384 slidesToShow: noWidth, 4385 slidesToScroll: 1, 4386 autoplay: false, 4387 variableWidth: false, 4388 arrows: true, 4389 initialSlide: 0, 4390 lazyLoad: 'ondemand', 4391 infinite: true, 4392 responsive: [{ 4393 breakpoint: 1024, 4394 settings: { 4395 slidesToShow: 3, 4396 prevArrow: '<button class="slickslider-mobile-main-page-arrow-box left"></button>', 4397 nextArrow: '<button class="slickslider-mobile-main-page-arrow-box right"></button>' 4398 } 4399 }, { 4400 breakpoint: 721, 4401 settings: { 4402 slidesToShow: 2, 4403 variableWidth: false, 4404 prevArrow: '<button class="slickslider-mobile-main-page-arrow-box left"></button>', 4405 nextArrow: '<button class="slickslider-mobile-main-page-arrow-box right"></button>' 4406 } 4407 }, { 4408 breakpoint: 507, 4409 settings: { 4410 slidesToShow: 1, 4411 variableWidth: false, 4412 prevArrow: '<button class="slickslider-mobile-main-page-arrow-box left"></button>', 4413 nextArrow: '<button class="slickslider-mobile-main-page-arrow-box right"></button>' 4414 }, 4415 } 4416 4417 ] 4418 }); 4419 4420 4421 } catch (e) { 4422 } 4423 } 4424} 4425function setCuriositiesArrowsPosition(){ 4426 let boxHeight = $jq('.curiosities_container .curiosities_box').height() +16; 4427 console.log('boxHeight: '+ boxHeight); 4428 $jq('.curiosities_container .slickslider-mobile-main-page-arrow-box.slick-arrow.left').css('top',boxHeight); 4429 $jq('.curiosities_container .slickslider-mobile-main-page-arrow-box.slick-arrow.right').css('top',boxHeight); 4430 4431} 4432function curiositiesSlickSlider() { 4433var newsSliderMainPage=$jq(".curiosities_container"); 4434 if (newsSliderMainPage.length > 0 && $jq( window ).width()<916) { 4435 4436 var wWidth = newsSliderMainPage.width(); 4437 var elementWidth = $jq(".curiosities_container .curiosities_box").width(); 4438 4439 var noWidth = Math.floor(wWidth/elementWidth); 4440 try { 4441 newsSliderMainPage.slick({ 4442 slidesToShow: noWidth, 4443 slidesToScroll: 1, 4444 autoplay: false, 4445 variableWidth: false, 4446 arrows: true, 4447 initialSlide: 0, 4448 lazyLoad: 'ondemand', 4449 infinite: true, 4450 responsive: [ { 4451 breakpoint: 916, 4452 settings: { 4453 slidesToShow: 2, 4454 variableWidth: false, 4455 prevArrow: '<button class="slickslider-mobile-main-page-arrow-box left"></button>', 4456 nextArrow: '<button class="slickslider-mobile-main-page-arrow-box right"></button>' 4457 } 4458 }, { 4459 breakpoint: 507, 4460 settings: { 4461 slidesToShow: 1, 4462 variableWidth: false, 4463 prevArrow: '<button class="slickslider-mobile-main-page-arrow-box left"></button>', 4464 nextArrow: '<button class="slickslider-mobile-main-page-arrow-box right"></button>' 4465 }, 4466 } 4467 4468 ] 4469 }); 4470 4471 } catch (e) { 4472 } 4473 } 4474 4475 4476 4477 var intervalId = setInterval(setCuriositiesArrowsPosition, 500); 4478 4479 setTimeout(function() { 4480 clearInterval(intervalId); 4481 }, 3000); 4482} 4483$jq(document).ready(function() { 4484 let screenWidth = $jq( window ).width(); 4485 if ($jq('.curiosities_container').length > 0 && screenWidth < 916 && $jq('.curiosities_container .slick-list').length === 0) { 4486 curiositiesSlickSlider(); 4487 setCuriositiesArrowsPosition(); 4488 } 4489}); 4490 4491$jq(window).resize(function() { 4492 var screenWidth = $jq( window ).width(); 4493 if(screenWidth < 916 && $jq('.curiosities_container').length > 0) { 4494 curiositiesSlickSlider(); 4495 } else if(screenWidth >= 916 && $jq('.curiosities_container .slick-list').length > 0){ 4496 $jq('.curiosities_container').slick('unslick'); 4497 4498 } 4499}); 4500if(document.getElementById('nextLink') && document.getElementById('previousLink')){ 4501document.getElementById('nextLink').addEventListener('click', function(event) { 4502 event.preventDefault(); 4503 4504 var videoElements = document.querySelectorAll('[id^="wideo_"]'); 4505 var maxIndex =0; 4506 var indexToChange; 4507 for (var i = 0; i < videoElements.length; i++) { 4508 4509 var currentIndex = parseInt(videoElements[i].id.replace('wideo_', ''));; 4510 if (videoElements[i].style.display !== 'none') { 4511 indexToChange = parseInt(videoElements[i].id.replace('wideo_', '')); 4512 } 4513 if (currentIndex > maxIndex) { 4514 maxIndex = currentIndex; 4515 } 4516 } 4517 4518 indexToChange=indexToChange+1; 4519 4520 if(indexToChange>maxIndex){ 4521 indexToChange =0; 4522 } 4523 var progressBar = $jq('#progress-bar-video'); 4524 var calc = ( (indexToChange+1) / (maxIndex+1) ) * 100; 4525 progressBar.css('background-size', calc + '% 100%') 4526 .attr('aria-valuenow', calc ); 4527 var childElement = document.getElementById('video_text_' + indexToChange); 4528 if (childElement) { 4529 document.querySelector('.video-new-H3').innerText = childElement.textContent || childElement.innerText; 4530 } 4531 changeMainVideo(indexToChange, 1); 4532}); 4533document.getElementById('previousLink').addEventListener('click', function(event) { 4534 event.preventDefault(); 4535 var videoElements = document.querySelectorAll('[id^="wideo_"]'); 4536 var maxIndex = 0; 4537 var indexToChange; 4538 for (var i = 0; i < videoElements.length; i++) { 4539 4540 var currentIndex = parseInt(videoElements[i].id.replace('wideo_', ''));; 4541 if (videoElements[i].style.display !== 'none') { 4542 indexToChange = parseInt(videoElements[i].id.replace('wideo_', '')); 4543 } 4544 if (currentIndex > maxIndex) { 4545 maxIndex = currentIndex; 4546 } 4547 } 4548 4549 if(indexToChange>1){ 4550 indexToChange=indexToChange-1; 4551 } 4552 else{ 4553 indexToChange=maxIndex; 4554 } 4555 var progressBar = $jq('#progress-bar-video'); 4556 var calc = ( (indexToChange+1) / (maxIndex+1) ) * 100; 4557 progressBar.css('background-size', calc + '% 100%') 4558 .attr('aria-valuenow', calc ); 4559 var childElement = document.getElementById('video_text_' + indexToChange); 4560 if (childElement) { 4561 document.querySelector('.video-new-H3').innerText = childElement.textContent || childElement.innerText; 4562 } 4563 changeMainVideo(indexToChange, 1); 4564 4565}); 4566}
4567function changeVideoBoxColor(element) { 4568 var number = element.id.split('_')[3]; 4569 4570 var titleElement = document.getElementById('id_title_wideo_' + number); 4571 titleElement.style.color = '#01407E'; 4572} 4573 4574function restoreVideoBoxColor(element) { 4575 var number = element.id.split('_')[3]; 4576 4577 var titleElement = document.getElementById('id_title_wideo_' + number); 4578 titleElement.style.color = '#000000'; 4579} 4580 $jq('#close-access-mobile').click( function (e) { 4581 $jq('.access-main-page-list-mobile').removeClass('active'); 4582 $jq('#backdrop').addClass('hidden-background'); 4583 $jq('.icon.main-menu.hide-text').show(); 4584 }); 4585 4586 4587 $jq('#close-language-mobile').click( function (e) { 4588 $jq('.language-list-mobile').removeClass('active'); 4589 $jq('#backdrop').addClass('hidden-background'); 4590 $jq('.icon.main-menu.hide-text').show(); 4591 }); 4592function setStickyHeaderPosition(){ 4593 var header = document.getElementById('head-sticky-main-page'); 4594 var content = document.querySelector('.messages-container'); 4595 var headerHeight = header.offsetHeight; 4596 var contentTop = (content != null) ? content.offsetTop : document.querySelector('.content-container').offsetTop; 4597 if (window.pageYOffset > contentTop - headerHeight) { 4598 header.dataset.state = 'fixed'; 4599 $jq('#head-sticky-main-page ').find('.main_page_search_divider_box').css("display",'block'); 4600 } else { 4601 header.dataset.state = 'default'; 4602 $jq('#head-sticky-main-page ').find('.main_page_search_divider_box').css("display",'none'); 4603 } 4604} 4605 4606function addStickyHeader(){ 4607 $jq('#head-sticky-main-page').css('display','flex'); 4608 $jq('#h1-header').css('display','none'); 4609 $jq('.menu-navigation').not('#head-sticky-main-page .head-sticky-main-box .menu-navigation').css('display', 'none'); 4610 window.addEventListener('scroll', function() { 4611 setStickyHeaderPosition(); 4612 }); 4613 $jq(window).on('load', function () { 4614 setStickyHeaderPosition(); 4615 }); 4616 4617} 4618$jq(document).ready(function() { 4619 let screenWidth = $jq( window ).width(); 4620 if ($jq('#head-sticky-main-page').length > 0 && screenWidth < 994) { 4621 addStickyHeader(); 4622 4623 }else{ 4624 $jq('#head-sticky-main-page').css('display','none '); 4625 $jq('#h1-header').css('display','block'); 4626 $jq('#sticky-header-filler').css('display','none'); 4627 4628 } 4629 4630}); 4631 4632$jq(window).resize(function() { 4633 let screenWidth = $jq( window ).width(); 4634 if ($jq('#head-sticky-main-page').length > 0 && screenWidth < 994) { 4635 addStickyHeader(); 4636 }else{ 4637 $jq('#head-sticky-main-page').css('display','none '); 4638 $jq('#h1-header').css('display','block'); 4639 } 4640}); 4641 4642function toggleSubmenuMobileList(element){ 4643 var submenu = $jq(element).siblings('.submenu_mobile_list'); 4644 var isOpened = submenu.hasClass('opened'); 4645 if (isOpened) { 4646 submenu.removeClass('opened'); 4647 $jq(element).find('.arrow-menu-mobile').removeClass('opened'); 4648 4649 } else { 4650 submenu.addClass('opened'); 4651 $jq(element).find('.arrow-menu-mobile').addClass('opened'); 4652 } 4653} 4654 4655function toggleSubmenuListBoxMobile(element) { 4656 var submenuId = $jq(element).prop('id').substring("button_mobile_menu_".length); 4657 submenuId = "#submenu_mobile_head_" + submenuId; 4658 var menuTop = $jq('#menu-mobile-poznan').position().top; 4659 $jq(submenuId).css({'top': menuTop, "height": `calc(100vh - ${menuTop}px)`}); 4660 $jq(submenuId).addClass('opened'); 4661} 4662 4663function closeMenuMobile(){ 4664 $jq('#menu-mobile-poznan').removeClass('open-main-menu'); 4665 $jq('body').removeClass('open-main-menu-mobile'); 4666} 4667$jq(window).on('resize', function(e) { 4668 4669 if($jq(window).width() >857){ 4670 closeMenuMobile(); 4671 4672 $jq('submenu_mobile_container.flex_column.opened').removeClass('opened'); 4673 } 4674 4675 4676}); 4677$jq(document).ready(function() { 4678$jq(window).resize(function() { 4679 var headerTop =setMenuMobileTop(); 4680 $jq("#menu-mobile-poznan").css('height',($jq(window).height() - headerTop)+'px'); 4681}); 4682}); 4683function closeMenuMobileWithSubmenu(element){ 4684 $jq('#menu-mobile-poznan').removeClass('open-main-menu'); 4685 $jq(element).parent().parent().parent().removeClass('opened'); 4686 $jq(".arrow-menu-mobile.opened").parent().each(function() { 4687 toggleSubmenuMobileList($jq(this)); 4688 }); 4689 $jq('body').removeClass('open-main-menu-mobile'); 4690 4691} 4692function closeSubmenuMobile(element){ 4693$jq(element).parent().parent().removeClass('opened'); 4694$jq(".arrow-menu-mobile.opened").parent().each(function() { 4695 toggleSubmenuMobileList($jq(this)); 4696}); 4697 $jq('body').removeClass('open-main-menu-mobile'); 4698} 4699function setResponsiveAccessibility(){ 4700 var accessMainPage = document.querySelector('.access-main-page'); 4701 var headerIconsSmartcityceeResponsive = document.querySelector('.header-icons-smartcitycee-responsive'); 4702 4703 if(accessMainPage && headerIconsSmartcityceeResponsive) { 4704 headerIconsSmartcityceeResponsive.appendChild(accessMainPage); 4705 } 4706} 4707
4708$jq(document).ready(function() { 4709 4710 var screenWidth = $jq(window).width(); 4711 4712 if(typeof responsiveAccessibility !== 'undefined' && screenWidth < 1040){ 4713 setResponsiveAccessibility(); 4714 4715 } 4716}); 4717$jq(window).on('resize', function(e) { 4718 var screenWidth = $jq(window).width(); 4719 if(typeof responsiveAccessibility !== 'undefined' && screenWidth < 1040){ 4720 setResponsiveAccessibility(); 4721 4722 } 4723}); 4724$jq(document).ready(function() { 4725 4726 4727 4728 var listSortCurrent = $jq('.info-list-sorter-date-result-mobile').text().trim(); 4729 4730 $jq('.option-sort').each(function() { 4731 4732 if ($jq(this).text().trim() === listSortCurrent) { 4733 $jq(this).parent().find('.polish-language-arrow').css('display','flex'); 4734 $jq(this).css('font-weight','700'); 4735 } 4736 }); 4737 var listCountCurrent = $jq('.info-list-sorter-count-result-mobile').text().trim(); 4738 $jq('.option-list-size').each(function() { 4739 4740 4741 if ($jq(this).text().trim() === listCountCurrent) { 4742 4743 $jq(this).parent().find('.polish-language-arrow').css('display','flex'); 4744 $jq(this).css('font-weight','700'); 4745 } 4746 }); 4747}); 4748$jq(document).ready(function() { 4749 var iframes = document.getElementsByTagName('iframe'); 4750 if(iframes){ 4751 for (var i = 0; i < iframes.length; i++) { 4752 var iframe = iframes[i]; 4753 var src = iframe.getAttribute('data-src'); 4754 if (src) { 4755 iframe.setAttribute('src', src); 4756 iframe.removeAttribute('data-src'); 4757 } 4758 } 4759 } 4760 const screenWidth = window.innerWidth; 4761 4762 if (screenWidth < 470 && $jq('.search-container .search fieldset #string').length >0) { 4763 4764 if ( $jq('.search-container .search fieldset #string').attr('placeholder').includes("szukaj informacji")){ 4765 $jq('.search-container .search fieldset #string').attr('placeholder', 'szukaj informacji'); 4766 } 4767 else{ 4768 $jq('.search-container .search fieldset #string').attr('placeholder', 'search for information'); 4769 } 4770 } 4771}); 4772 4773function setPositionIconUp(isChatbot){ 4774 var screenWidth = $jq(window).width(); 4775 if (screenWidth < 1200) { 4776 let bodyContainerRight = (screenWidth-($jq('.icon-up-new').width()+16)); 4777 $jq('#icon-up').css('left', bodyContainerRight + 'px'); 4778 $jq('#icon-up a.icon-up-new').css('left', bodyContainerRight + 'px'); 4779 if(isChatbot){ 4780 $jq('button.chatbot__avatar-positioner.chatbot__default-focus').css('display','block'); 4781 $jq('button.chatbot__avatar-positioner.chatbot__default-focus').css('left', (bodyContainerRight - 11) + 'px'); 4782 } 4783 } else{ 4784 let bodyContainerRight = $jq('.body-section').offset().left + $jq('.body-section').outerWidth() + 52; 4785 $jq('#icon-up').css('left', bodyContainerRight + 'px'); 4786 $jq('#icon-up a.icon-up-new').css('left', bodyContainerRight + 'px',); 4787 if(isChatbot){ 4788 $jq('button.chatbot__avatar-positioner.chatbot__default-focus').css('display','block'); 4789 $jq('button.chatbot__avatar-positioner.chatbot__default-focus').css('left', (bodyContainerRight - 11) + 'px'); 4790 $jq('#chatbot-widget-root .container .chatbot').css('left', (bodyContainerRight - 11 - $jq('#chatbot-widget-root .container .chatbot').width()+74) + 'px'); 4791 } 4792 } 4793 $jq('#icon-up').css('display','block'); 4794} 4795$jq(document).ready(function() { 4796 function updateIconPosition() { 4797 var windowHeight = window.innerHeight; 4798 var h = 0; 4799 if ($jq('#web-push-footer').length > 0) { 4800 var wpf = $jq('#web-push-footer'); 4801 if (((wpf.css("position") === "fixed" || wpf.css("position") === "absolute")) && wpf.css("display") === "grid") { 4802 h = $jq('#web-push-footer').height() + 16; 4803 } 4804 } 4805 var newTopValue = windowHeight - h - 100; 4806 let isChatbot = $jq('button.chatbot__avatar-positioner.chatbot__default-focus').length == 1 ; 4807 if(isChatbot){ 4808 $jq('button.chatbot__avatar-positioner.chatbot__default-focus').css('display','none'); 4809 } 4810 $jq('#icon-up').css('top', (isChatbot?($jq(window).width() < 1200?(newTopValue - 90):(newTopValue - 106)):newTopValue) + 'px'); 4811 4812 setPositionIconUp(isChatbot); 4813 4814 } 4815 4816 updateIconPosition(); 4817 $jq(window).resize(function() { 4818 updateIconPosition(); 4819 }); 4820 4821//============================================================================ 4822 //WEB-PUSH: begin 4823 var webPushHideBlock = function(status){ 4824 if ($jq('#web-push-footer').length > 0) { 4825 if (true == status) { 4826 $jq('#web-push-footer').css('display', 'none'); 4827 } else { 4828 $jq('#web-push-footer').css('display', 'grid'); 4829 } 4830 //$jq('#web-push-footer').css('display', 'grid'); 4831 updateIconPosition(); 4832 } 4833 }; 4834 function centerElementHorizontal(name) { 4835 let element = $jq(name); 4836 let windowWidth = $jq(window).width(); 4837 let windowHeight = $jq(window).height(); 4838 let elementWidth = element.width(); 4839 let elementOuterWidth = element.outerWidth(); 4840 4841 let left = (windowWidth - elementOuterWidth) / 2; 4842 4843 element.css({ 4844 'position': 'fixed', 4845 'left': left + 'px', 4846 'z-index':'9999' 4847 }); 4848 } 4849 $jq(window).on('resize', function(e) { 4850 centerElementHorizontal('#web-push-adjust'); 4851 }); 4852 4853 var webPushShowAdjustBlock = function(status){ 4854 if(status){ 4855 $jq('#backdrop_web_push').removeClass('hidden-background'); 4856 $jq('#web-push-adjust').removeClass('hidden'); 4857 $jq('body').addClass('open-web-push'); 4858 }else{ 4859 $jq('body').removeClass('open-web-push'); 4860 $jq('#backdrop_web_push').addClass('hidden-background'); 4861 $jq('#web-push-adjust').addClass('hidden'); 4862 } 4863 } 4864 var printOptionWebPush = function (value,name){ 4865 return '<div class="wp-adj-opt"><div class="input-box"><input type="checkbox" name="wp-option" value="'+value+'" checked/></div><label class="text_body">'+name+'</#label></div>'; 4866 } 4867 4868 /*WebPush Configuration*/ 4869 // Base URL for the Web Push service 4870 const serviceBaseWebpushUrl = ctxPath; 4871 // The public VAPID key will be fetched from the server 4872 let publicVapidKey = null; 4873 let subscription = null; 4874 let serviceWorkerRegistration = null; 4875 4876 //Initial function checking if subscription exists
4877 (async function init() { 4878 console.log("Checking subscription from init()") 4879 serviceWorkerRegistration = await navigator.serviceWorker.ready; 4880 subscription = await serviceWorkerRegistration.pushManager.getSubscription(); 4881 if (subscription != null) { 4882 webPushHideBlock(true); 4883 } else { 4884 webPushHideBlock(false); 4885 } 4886 console.log("Stop checking subscription from init() " + subscription) 4887 })(); 4888 4889 // Convert the VAPID key 4890 function urlBase64ToUint8Array(base64String) { 4891 const padding = '='.repeat((4 - (base64String.length % 4)) % 4); 4892 const base64 = (base64String + padding).replace(/-/g, '+').replace(/_/g, '/'); 4893 const rawData = window.atob(base64); 4894 return Uint8Array.from([...rawData].map(char => char.charCodeAt(0))); 4895 } 4896 4897 async function fetchPublicVapidKey() { 4898 try { 4899 const response = await fetch(serviceBaseWebpushUrl + '/wpapi/vapid-public-key.json'); 4900 if (response.ok) { 4901 const key = await response.json(); 4902 publicVapidKey = key.publicKey; 4903 //console.log('Fetched public VAPID key:', publicVapidKey); 4904 } else { 4905 const errorText = await response.text(); 4906 console.error(`Failed to fetch public VAPID key: ${response.status} ${errorText}`); 4907 } 4908 } catch (error) { 4909 console.error('Error fetching public VAPID key:', error); 4910 } finally { 4911 4912 } 4913 } 4914 4915 async function subscribeUser(customTopics) { 4916 if (!('serviceWorker' in navigator)) { 4917 const errorMsg = 'Push messaging is not supported in this browser.'; 4918 console.warn(errorMsg); 4919 return { status: 'Error', response: errorMsg }; 4920 } 4921 4922 // Ensure publicVapidKey is available 4923 if (!publicVapidKey) { 4924 console.log('Public VAPID key not available, fetching...'); 4925 await fetchPublicVapidKey(); 4926 if (!publicVapidKey) { 4927 return { status: 'Error', response: 'Failed to fetch public VAPID key.' }; 4928 } 4929 } 4930 4931 // Ask user about permission for notifications 4932 if (Notification.permission !== 'granted') { 4933 try { 4934 const permission = await Notification.requestPermission(); 4935 if (permission !== 'granted') { 4936 const msg = `Permission not granted (status: ${permission})`; 4937 console.warn(msg); 4938 return { status: 'Error', response: msg }; 4939 } 4940 else { 4941 console.log('Permission granted'); 4942 } 4943 } catch (e) { 4944 console.error('Failed to request notification permission:', e); 4945 return { status: 'Error', response: 'Failed to request notification permission.' }; 4946 } 4947 } 4948 4949 try { 4950 // Register the service worker 4951 if (ctxPath === "/mim") { 4952 await navigator.serviceWorker.register("/service-worker.js", {scope: "/"}); 4953 } 4954 else { 4955 await navigator.serviceWorker.register(ctxPath + "/service-worker.js", {scope: ctxPath + "/"}); 4956 } 4957 console.log('Service Worker registered'); 4958 4959 // Wait for the service worker to become active 4960 serviceWorkerRegistration = await navigator.serviceWorker.ready; 4961 // Check for existing subscription 4962 subscription = await serviceWorkerRegistration.pushManager.getSubscription(); 4963 if (!subscription) { 4964 // Subscribe to push notifications 4965 subscription = await serviceWorkerRegistration.pushManager.subscribe({ 4966 userVisibleOnly: true, 4967 applicationServerKey: urlBase64ToUint8Array(publicVapidKey), 4968 }); 4969 } 4970 4971 if(customTopics){ 4972 return await saveSubscription(subscription, true); 4973 } 4974 else{ 4975 return await saveSubscription(subscription); 4976 } 4977 4978 } catch (error) { 4979 console.error('Failed to subscribe the user:', error); 4980 return { status: 'Error', response: `Failed to subscribe the user: ${error.message}` }; 4981 } 4982 } 4983 4984 async function unsubscribeUser() { 4985 if (!('serviceWorker' in navigator)) { 4986 const errorMsg = 'Push messaging is not supported in this browser.';
4987 console.warn(errorMsg); 4988 return { status: 'Error', response: errorMsg }; 4989 } 4990 4991 // check if there is any service worker in browser 4992 try { 4993 const registrations = await navigator.serviceWorker.getRegistrations(); 4994 if (registrations.length === 0) { 4995 const msg = 'No Service Worker registered â nothing to unsubscribe.'; 4996 console.info(msg); 4997 return { status: 'OK', response: msg }; 4998 } 4999 } catch (e) { 5000 const msg = `Failed to query Service Worker registrations: ${e.message || e}`; 5001 console.error(msg); 5002 return { status: 'Error', response: msg }; 5003 } 5004 let registration; 5005 try { 5006 // if worker already exists, register will return it 5007 if (ctxPath === "/mim") { 5008 await navigator.serviceWorker.register("/service-worker.js", {scope: "/"}); 5009 } 5010 else { 5011 await navigator.serviceWorker.register(ctxPath + "/service-worker.js", {scope: ctxPath + "/"}); 5012 } 5013 registration = await navigator.serviceWorker.ready; 5014 } catch (regErr) { 5015 const msg = `Service Worker could not be registered: ${regErr.message || regErr}`; 5016 console.error(msg); 5017 return { status: 'Error', response: msg }; 5018 } 5019 5020 let subscription = null; 5021 try { 5022 subscription = await registration.pushManager.getSubscription(); 5023 } catch (subErr) { 5024 const msg = `Failed to get current push subscription: ${subErr.message || subErr}`; 5025 console.error(msg); 5026 return { status: 'Error', response: msg }; 5027 } 5028 5029 if (subscription) { 5030 const wasUnsubscribed = await subscription.unsubscribe(); 5031 5032 if (!wasUnsubscribed) { 5033 return {status: 'Error', response: 'Browser rejected unsubscribe request.'}; 5034 } 5035 5036 try { 5037 const response = await fetch(serviceBaseWebpushUrl + `/wpapi/push-subscriptions-endpoint.json?endpoint=${subscription.endpoint}`); 5038 if (response.ok) { 5039 const subscriptionData = await response.json(); 5040 const serverResult = await deleteSubscription(subscriptionData); 5041 console.log('Server result:', serverResult); 5042 5043 return { 5044 status: 'OK', 5045 response: { 5046 server: serverResult, 5047 client: 'Unsubscribed locally', 5048 }, 5049 }; 5050 } 5051 } catch (e) { 5052 console.error(e); 5053 } 5054 } 5055 } 5056 5057 async function saveSubscription(subscription, customTopics) { 5058 // Helper function to convert ArrayBuffer to Base64 string 5059 function arrayBufferToBase64(buffer) { 5060 let binary = ''; 5061 const bytes = new Uint8Array(buffer); 5062 const len = bytes.byteLength; 5063 for (let i = 0; i < len; i++) { 5064 binary += String.fromCharCode(bytes[i]); 5065 } 5066 return window.btoa(binary); 5067 } 5068 5069 let selectedTopics; 5070 if(customTopics){ 5071 const checkedTopics = []; 5072 const checkboxes = document.querySelectorAll('input[type="checkbox"][name="wp-option"]:checked'); 5073 5074 checkboxes.forEach(function(checkbox) { 5075 checkedTopics.push(checkbox.value); 5076 }); 5077 selectedTopics = checkedTopics 5078 } 5079 else{ 5080 selectedTopicsData = await fetchAllSubscriptionTopics(); 5081 selectedTopics = selectedTopicsData.map(topic=> (topic.slug)); 5082 } 5083 5084 5085 // Prepare the subscription data to send to the server 5086 const pushSubscription = { 5087 endpoint: subscription.endpoint, 5088 p256dh: arrayBufferToBase64(subscription.getKey('p256dh')), 5089 auth: arrayBufferToBase64(subscription.getKey('auth')), 5090 status: 'ACTIVE', 5091 topics: selectedTopics, // Include the selected topic IDs 5092 }; 5093 5094 try { 5095 const response = await fetch(serviceBaseWebpushUrl + '/wpapi/push-subscriptions-save.json', { 5096 method: 'POST', 5097 body: JSON.stringify(pushSubscription), 5098 }); 5099 5100 const responseText = await response.text(); 5101 if (!response.ok) { 5102 console.error(`Error saving subscription`); 5103 return { 5104 status: `Error ${response.status}`, 5105 response: `Server responded with ${response.status}: ${responseText}`, 5106 }; 5107 } 5108 //console.log(`Server responded with ${response.status}: ${responseText}`); 5109 5110 return { 5111 status: `Success ${response.status}`, 5112 response: `Server responded with ${response.status}: ${responseText}`, 5113 }; 5114 } catch (error) { 5115 console.error('Error saving subscription:', error); 5116 return { status: 'Error', response: `Error saving subscription: ${error.message}` }; 5117 } 5118 } 5119 5120 async function deleteSubscription(subscription) { 5121 try { 5122 const requestBody = { 5123 endpoint: subscription.endpoint 5124 }; 5125 const response = await fetch(serviceBaseWebpushUrl + `/wpapi/push-subscriptions-unsub
5125scribe.json?id=${subscription.id}`, { 5126 method: 'POST', 5127 body: JSON.stringify(requestBody) 5128 }); 5129 5130 const responseText = await response.text(); 5131 if (!response.ok) { 5132 console.error(`Error during unsubscribing`); 5133 return { 5134 status: `Error ${response.status}`, 5135 response: `Server responded with ${response.status}: ${responseText}`, 5136 }; 5137 } 5138 5139 return { 5140 status: `Success ${response.status}`, 5141 response: `Server responded with ${response.status}: ${responseText}`, 5142 }; 5143 } catch (error) { 5144 console.error('Error saving subscription:', error); 5145 return { status: 'Error', response: `Error saving subscription: ${error.message}` }; 5146 } 5147 } 5148 5149 async function fetchAllSubscriptionTopics() { 5150 try { 5151 const response = await fetch(serviceBaseWebpushUrl + '/wpapi/subscription-topics.json'); 5152 if (response.ok) { 5153 const topics = await response.json(); 5154 return topics.map(topic=> ({id: topic.id, name: topic.name, slug: topic.slug, description: topic.description, createdOn: topic.createdOn, status: topic.status})); 5155 } else { 5156 const errorText = await response.text(); 5157 console.error(`Failed to fetch subscription topics: ${response.status} ${errorText}`); 5158 5159 } 5160 } catch (error) { 5161 console.error('Error fetching subscription topics:', error); 5162 } finally { 5163 } 5164 } 5165 5166 async function fetchSubscriptionTopics() { 5167 5168 serviceWorkerRegistration = await navigator.serviceWorker.ready; 5169 subscription = await serviceWorkerRegistration.pushManager.getSubscription(); 5170 5171 try { 5172 const response = await fetch(serviceBaseWebpushUrl + `/wpapi/push-subscriptions-endpoint.json?endpoint=${subscription.endpoint}`); 5173 if (response.ok) { 5174 const subscrib = await response.json(); 5175 if(subscrib.topics){ 5176 data = subscrib.topics.map(topic=> ({id: topic.id, name: topic.name, slug: topic.slug})); 5177 return data; 5178 }else{ 5179 console.warn('Topics do not exist in the subscription response.'); 5180 return []; 5181 } 5182 } else { 5183 const errorText = await response.text(); 5184 console.error(`Failed to fetch subscription topics: ${response.status} ${errorText}`); 5185 } 5186 } catch (error) { 5187 console.error('Error fetching subscription topics:', error); 5188 } finally { 5189 } 5190 } 5191 5192 5193 async function fillTopicBoxes(isSubscribed){ 5194 //check 5195 const observer = new MutationObserver(() => { 5196 const checkboxes = document.querySelectorAll('input[name="wp-option"]'); 5197 if (checkboxes.length > 0) { 5198 observer.disconnect(); // OdÅÄ czanie obserwatora po wykryciu checkboxów 5199 5200 const updateButtonState = () => { 5201 const isAnyChecked = [...checkboxes].some(c => c.checked); 5202// if(!isAnyChecked){ 5203// $jq('#web-push-button-adjust-btn').attr("disabled", "disabled"); 5204// } 5205// else{ 5206// $jq('#web-push-button-adjust-btn').removeAttr("disabled"); 5207// } 5208 document.getElementById('web-push-button-adjust-btn').disabled = !isAnyChecked; 5209 }; 5210 5211 checkboxes.forEach(checkbox => { 5212 checkbox.addEventListener('change', updateButtonState); 5213 }); 5214 5215 // PoczÄ tkowa aktualizacja stanu przycisku 5216 updateButtonState(); 5217 } 5218 }); 5219 observer.observe(document.body, { childList: true, subtree: true }); 5220 5221 try { 5222 const allTopics = await fetchAllSubscriptionTopics(); 5223 let subscribedTopics; 5224 let subscribedIds; 5225 5226 $jq('#wp-adj-opt-box').empty(); 5227 5228 if(isSubscribed){
5229 subscribedTopics = await fetchSubscriptionTopics(); 5230 subscribedIds = new Set(subscribedTopics.map(topic => topic.slug)); 5231 allTopics.forEach(topic => { 5232 const label = topic.name;//subscribedTopics.find(t => t.id === topic.id)?.name || `${topic.name}` 5233 const isChecked = subscribedIds.has(topic.slug); 5234 5235 $jq('#wp-adj-opt-box').append(printWebPushOption(topic.slug, label, isChecked)); 5236 }); 5237 } 5238 else{ 5239 allTopics.forEach(topic => { 5240 const label = topic.name;//subscribedTopics.find(t => t.id === topic.id)?.name || `${topic.name}` 5241 const isChecked = true; 5242 $jq('#wp-adj-opt-box').append(printWebPushOption(topic.slug, label, isChecked)); 5243 }); 5244 } 5245 5246 } catch (error) { 5247 console.error('BÅÄ d podczas wypeÅniania topic boxes:', error); 5248 } 5249 5250 5251 webPushShowAdjustBlock(true); 5252 centerElementHorizontal('#web-push-adjust'); 5253 } 5254 5255 var printWebPushOption = function (value, label, isChecked){ 5256 return '<div class="wp-adj-opt">' + 5257 '<div class="input-box">' + 5258 '<input type="checkbox" name="wp-option" value="' + value + '"' + 5259 (isChecked ? ' checked' : '') + ' />' + 5260 '</div>' + 5261 '<label class="text_body">' + label + '</label>' + 5262 '</div>'; 5263 5264 } 5265 5266 5267 var setDisableCookiesWebPush = function(){ 5268 if (COOKIE.get("poznanpl_cookies_web_push_enable")) { 5269 COOKIE.remove("poznanpl_cookies_web_push_enable"); 5270 } 5271 COOKIE.set("poznanpl_cookies_web_push_disable", "true", {duration: 99999}); 5272 webPushHideBlock(true); 5273 } 5274 5275 var setEnableCookiesWebPush = function(){ 5276 if (COOKIE.get("poznanpl_cookies_web_push_disable")) { 5277 COOKIE.remove("poznanpl_cookies_web_push_disable"); 5278 } 5279 COOKIE.set("poznanpl_cookies_web_push_enable", "true", {duration: 99999}); 5280 webPushHideBlock(true); 5281 } 5282 if ($jq('#web-push-button-customize-btn').length > 0) { 5283 document.getElementById('web-push-button-customize-btn').addEventListener('click', () => { 5284 fillTopicBoxes() 5285 }); 5286 } 5287 5288 $jq("#web-push-button-disable-btn").click(function(e) { 5289 unsubscribeUser() 5290 .then(() => { 5291 setDisableCookiesWebPush(); 5292 webPushShowAdjustBlock(false); 5293 }) 5294 .catch(err => { 5295 console.error('BÅÄ d przy wypisywaniu z push:', err); 5296 }); 5297 }); 5298 5299 $jq("#web-push-button-disable-btn-options").click(function(e) { 5300 unsubscribeUser() 5301 .then(() => { 5302 setDisableCookiesWebPush(); 5303 webPushShowAdjustBlock(false); 5304 }) 5305 .catch(err => { 5306 console.error('BÅÄ d przy wypisywaniu z push:', err); 5307 }); 5308 }); 5309 5310 if ($jq('#web-push-button-enable-btn').length > 0) { 5311 document.getElementById('web-push-button-enable-btn').addEventListener('click', () => { 5312 subscribeUser(false) 5313 .then(() => { 5314 webPushHideBlock(true); 5315 setEnableCookiesWebPush(); 5316 }) 5317 .catch(err => { 5318 console.error('BÅÄ d przy subskrybowaniu:', err); 5319 }); 5320 }); 5321 } 5322 5323 5324 5325 5326 $jq("#web-push-button-adjust-btn").click(function(e) { 5327 5328 //$jq('input[type="checkbox"][name="wp-option"]').each(function () { 5329// let wpTypes=[]; 5330// let value = $jq(this).val(); 5331// if ($jq(this).prop('checked') && !wpTypes.includes(value)) { 5332// wpTypes.push(value); 5333// } 5334// }); 5335 //setDisableCookiesWebPush(); 5336 subscribeUser(true) 5337 .then(() => { 5338 webPushShowAdjustBlock(false); 5339 webPushHideBlock(true); 5340 setEnableCookiesWebPush(); 5341 }) 5342 .catch(err => { 5343 console.error('BÅÄ d przy subskrybowaniu:', err); 5344 }); 5345 }); 5346 5347 if(COOKIE.get('poznanpl_cookies_web_push_disable') || COOKIE.get('poznanpl_cookies_web_push_enable')) { 5348 webPushHideBlock(true); 5349 } else { 5350 //if (subscription != null) { 5351 webPushHideBlock(false); 5352 //} 5353 } 5354 5355 if($jq('#change-web-push-label').length > 0){ 5356 document.getElementById('change-web-push-label').addEventListener('click', () => { 5357 if(!subscription){ 5358 fillTopicBoxes(false); 5359 } 5360 else{ 5361 fillTopicBoxes(true); 5362 } 5363 }); 5364 } 5365 }); 5366//============================================================================ 5367 5368function scrollToTop() { 5369 window.scrollTo({top: 0, behavior: 'smooth'}); 5370} 5371 5372 5373$jq(window).resize(function() { 5374 var screenWidth = $jq(window).width();
5375 if(screenWidth < 720) { 5376 $jq('#author_dfrnt').css('height', $jq('#author_dfrnt').width() + 'px'); 5377 $jq('.book_diff_img').css('height', $jq('.book_diff_img').width() + 'px'); 5378 $jq('.group_box').css('height', $jq('#author_dfrnt').width() + 'px'); 5379 5380 } 5381}); 5382 5383function arrowClicked(element){ 5384element.classList.add('clicked'); 5385} 5386function paginationClicked(element){ 5387element.classList.add('clicked'); 5388} 5389$jq(document).ready(function() { 5390 5391 if($jq('#h1-header').length > 0){ 5392 var headerOffsetTop = $jq('#h1-header').offset().top; 5393 if($jq('.menu-navigation.subpage').length > 0){ 5394 $jq('.menu-navigation.subpage').css('top',headerOffsetTop); 5395 $jq('.icon.main-menu.hide-text').css('top',0); 5396 } 5397 } 5398}); 5399 5400function hideCurrentVideo(element){ 5401 var hiddenVideoBox = $jq(".column.video-box:hidden:first"); 5402 if (hiddenVideoBox.length > 0) { 5403 hiddenVideoBox.css("display", "flex"); 5404 $jq(element).css('display','none'); 5405 } 5406} 5407$jq('.column.video-box').on("keypress click", function(event) { 5408 if (event.type === "click" || event.key === "Enter") { 5409 event.preventDefault(); 5410 const onclickAttr = $jq(this).attr('onclick'); 5411 5412 if (onclickAttr) { 5413 eval(onclickAttr); 5414 } 5415 } 5416}); 5417$jq('.video-poznan-h3 a').on("keypress click", function(event) { 5418 if (event.type === "click" || event.key === "Enter") { 5419 event.preventDefault(); 5420 const onclickAttr = $jq(this).attr('onclick'); 5421 5422 if (onclickAttr) { 5423 eval(onclickAttr); 5424 } 5425 } 5426}); 5427function coverNewsWortal(element){ 5428 element.classList.add('hovered'); 5429} 5430 5431function uncoverNewsWortal(element){ 5432 element.classList.remove('hovered'); 5433} 5434 5435// BEGIN CEMENTRIES 5436function collapseTextOlimpNecropolis(element){ 5437 var parentDiv = $jq(element).closest('div'); 5438 var closestTextOlimp = parentDiv.find('[id^="text_olimp"]'); 5439 var closestOlimpPictures = parentDiv.find('.olimp_pictures_container'); 5440 var buttonText=$jq(element).find('#collapse_text'); 5441 var buttonArrow=$jq(element).find('.up-arrow-button'); 5442 if (closestTextOlimp.hasClass('collapsed') && closestOlimpPictures.hasClass('collapsed')) { 5443 closestOlimpPictures.removeClass('collapsed'); 5444 closestTextOlimp.removeClass('collapsed'); 5445 buttonText.text('ZwiÅ informacje'); 5446 buttonArrow.css({ 5447 'transform': 'rotate(0deg)', 5448 '-ms-transform': 'rotate(0deg)', 5449 '-webkit-transform': 'rotate(0deg)' 5450 }); 5451 } else{ 5452 closestTextOlimp.addClass('collapsed'); 5453 closestOlimpPictures.addClass('collapsed'); 5454 buttonText.text('RozwiÅ informacje'); 5455 buttonArrow.css({ 5456 'transform': 'rotate(180deg)', 5457 '-ms-transform': 'rotate(180deg)', 5458 '-webkit-transform': 'rotate(180deg)' 5459 }); 5460 } 5461} 5462 5463function collapseTextInsurgentNecropolis(element){ 5464 var parentDiv = $jq(element).closest('div'); 5465 var closestTextOlimp = parentDiv.find('[id^="text_olimp"]'); 5466 var closestMedalBox = parentDiv.find('.medal_box'); 5467 var decoratedText = parentDiv.find('.decorated_text'); 5468 var buttonText=$jq(element).find('#collapse_text'); 5469 var buttonArrow=$jq(element).find('.up-arrow-button');
5470 if ((closestTextOlimp && closestTextOlimp.hasClass('collapsed')) 5471 || (closestMedalBox && closestMedalBox.hasClass('collapsed')) 5472 || (decoratedText && decoratedText.hasClass('collapsed'))) { 5473 if (closestMedalBox) { 5474 closestMedalBox.removeClass('collapsed'); 5475 } 5476 if (closestTextOlimp) { 5477 closestTextOlimp.removeClass('collapsed'); 5478 } 5479 if(decoratedText){ 5480 decoratedText.removeClass('collapsed'); 5481 } 5482 buttonText.text('ZwiÅ informacje'); 5483 buttonArrow.css({ 5484 'transform': 'rotate(0deg)', 5485 '-ms-transform': 'rotate(0deg)', 5486 '-webkit-transform': 'rotate(0deg)' 5487 }); 5488 } else{ 5489 if (closestMedalBox){ 5490 closestMedalBox.addClass('collapsed'); 5491 } 5492 if (closestTextOlimp){ 5493 closestTextOlimp.addClass('collapsed'); 5494 } 5495 if (decoratedText){ 5496 decoratedText.addClass('collapsed'); 5497 } 5498 buttonText.text('RozwiÅ informacje'); 5499 buttonArrow.css({ 5500 'transform': 'rotate(180deg)', 5501 '-ms-transform': 'rotate(180deg)', 5502 '-webkit-transform': 'rotate(180deg)' 5503 }); 5504 } 5505} 5506 5507const dividers = document.querySelectorAll('.main_page_search_divider_box'); 5508if (dividers) { 5509 dividers.forEach(element => { 5510 if (element.parentNode.children.length === 1) { 5511 element.style.display = 'none'; 5512 } 5513 }); 5514} 5515 5516function submitFilterNecropolisSearch(url, element) { 5517 var urlEnd='&co=list'; 5518 var absolutePath = window.location.href; 5519 var modifiedUrl = url; 5520 5521 if (element.checked) { 5522 if (url.includes('filterCem=')) { 5523 const matches = url.match(/filterCem=([^&]*)/); 5524 if (matches) { 5525 const filterCemValue = matches[1]; 5526 const cemfilterValue =element.value; 5527 5528 console.log('element.value:', element.value); 5529 const filterCemValues = filterCemValue.split('%2C').map(val => decodeURIComponent(val.trim())); 5530 5531 // Utwórz nowÄ tablicÄ bez elementu do usuniÄcia 5532 const newFilterCemValues = filterCemValues.filter(val => val !== cemfilterValue.trim()); 5533 const newFilterCemParam = newFilterCemValues.map(val => encodeURIComponent(val)).join('%2C'); 5534 5535 console.log('newFilterCemValues:', newFilterCemValues); 5536 console.log('newFilterCemParam:', newFilterCemParam); 5537 if (newFilterCemValues.length === '') { 5538 if(url.includes('?filterCem')){ 5539 modifiedUrl = url.replace(`?filterCem=${filterCemValue}`, ''); 5540 } else if(url.includes('&filterCem')){ 5541 modifiedUrl = url.replace(`&filterCem=${filterCemValue}`, ''); 5542 } 5543 } else { 5544 modifiedUrl = url.replace(filterCemValue, newFilterCemParam); 5545 } 5546 } 5547 modifiedUrl += urlEnd; 5548 } 5549 } else { 5550 const cemfilterValue = element.checked ? '' : element.value; 5551 if (url.includes('filterCem=')) { 5552 const matches = url.match(/filterCem=([^&]*)/); 5553 if (matches) { 5554 const filterCemValue = matches[1]; 5555 const newFilterCemValue = filterCemValue ? `${filterCemValue}%2C${cemfilterValue}` : cemfilterValue; 5556 modifiedUrl = url.replace(filterCemValue, newFilterCemValue); 5557 } 5558 modifiedUrl += urlEnd; 5559 } else if (!url.includes('filterCem=')) { 5560 modifiedUrl += `&filterCem=${cemfilterValue}`; 5561 modifiedUrl += urlEnd; 5562 } 5563 } 5564 window.location.href = modifiedUrl; 5565} 5566 5567function handleOutsideClick(event) { 5568 var cemRows = document.getElementById("cem_rows"); 5569 var selectCem = document.getElementById("select_cemetery"); 5570 var targetElement = event.target; 5571 var arrowDownSelect = selectCem.querySelector('.arrow-down-select'); 5572 if (!cemRows.contains(targetElement) && !selectCem.contains(targetElement) ) { 5573 cemRows.classList.remove("visible"); 5574 selectCem.style.border="1px solid #8C8F92"; 5575 arrowDownSelect.classList.remove("rotated"); 5576 document.removeEventListener("click", handleOutsideClick); 5577 } 5578} 5579 5580function showRowsCemeteries(element){ 5581 var elementStyle = window.getComputedStyle(element); 5582 var maxWidthElement = elementStyle.getPropertyValue('max-width'); 5583 var arrowDownSelect = element.querySelector('.arrow-down-select'); 5584 if (arrowDownSelect.classList.contains("rotated")) { 5585 arrowDownSelect.classList.remove("rotated"); 5586 element.style.border="1px solid #8C8F92"; 5587 } else{ 5588 arrowDownSelect.classList.add("rotated"); 5589 element.style.border="2px solid #009BDB"; 5590 } 5591 var cemRows = document.getElementById("cem_rows"); 5592 if (cemRows.classList.contains("visible")) { 5593 cemRows.classList.remove("visible"); 5594 } else{ 5595 cemRows.style.maxWidth = element.offsetWidth + "px"; 5596 cemRows.classList.add("visible"); 5597 } 5598 document.addEventListener("click", handleOutsideClick); 5599} 5600 5601
5602function handleCheckboxChange(checkbox) { 5603 var checkboxId = checkbox.id; 5604 var textElementId = "cem_text_" + checkbox.value; 5605 5606 console.debug(checkbox); 5607 5608 var textElement = document.getElementById(textElementId); 5609 var selectElement = document.getElementById('search_cemetery_text'); 5610 var originalText = '- Wybierz cmentarz -'; 5611 var currentText = selectElement.innerHTML.trim(); 5612 if (checkbox.checked) { 5613 if (currentText === originalText) { 5614 selectElement.innerHTML = ""; 5615 selectElement.classList.add("have-context"); 5616 selectElement.innerHTML = textElement.innerText; 5617 } else { 5618 selectElement.innerHTML += ","+textElement.innerText; 5619 } 5620 } else { 5621 var valuesArray = selectElement.innerHTML.split(','); 5622 var indexToRemove = valuesArray.indexOf(textElement.innerText); 5623 if (indexToRemove !== -1) { 5624 valuesArray.splice(indexToRemove, 1); 5625 selectElement.innerHTML = valuesArray.join(','); 5626 } 5627 if (selectElement.innerHTML.trim() === "") { 5628 selectElement.innerHTML = originalText; 5629 selectElement.classList.remove("have-context"); 5630 } 5631 } 5632} 5633 5634$jq(document).ready(function () { 5635 $jq('.cemetery_element input[type="checkbox"]').on('change', function() { 5636 if ($jq('input[type="checkbox"]:checked').not('#cem_0').length > 0) { 5637 $jq('#cem_0').prop('disabled', true); 5638 } else { 5639 $jq('#cem_0').prop('disabled', false); 5640 } 5641 }); 5642 5643 $jq('#cem_0').on('change', function () { 5644 if ($jq(this).is(':checked')) { 5645 $jq('input[type="checkbox"]').not(this).prop('disabled', true); 5646 } else { 5647 $jq('input[type="checkbox"]').prop('disabled', false); 5648 } 5649 }); 5650 5651 var checkboxesNecropolis = $jq(".necropolis_checkboxes_container .chechbox_necropolis"); 5652 if(checkboxesNecropolis){ 5653 var count = checkboxesNecropolis.length; 5654 if (count > 3 && $jq(window).width() <= 720) { 5655 $jq(".necropolis_checkboxes_container").addClass("collapsed"); 5656 } 5657 } 5658 5659 $jq('input:radio[name=cm_opt_grupa]').each(function () { 5660 var isChecked = $jq(this).prop('checked'); 5661 if (isChecked) { 5662 $jq(this).data('checkedValue', true); 5663 } 5664 }); 5665 5666 $jq('input:radio[name=cm_opt_grupa]').click(function () { 5667 var previousValue = $jq(this).data('checkedValue'); 5668 if (previousValue) { 5669 $jq(this).prop('checked', !previousValue); 5670 $jq(this).data('checkedValue', !previousValue); 5671 } else{ 5672 $jq(this).data('checkedValue', true); 5673 $jq('input:radio[name=cm_opt_grupa]:not(:checked)').data("checkedValue", false); 5674 } 5675 }); 5676}); 5677//END CEMENTRIES 5678 5679 5680 5681 $jq(document).ready(function() { 5682 $jq('.slick-box-container').each(function() { 5683 var $container = $jq(this); 5684 var $progressBar = $container.siblings('.progress-bar-news'); 5685 var $prev = $container.find('.slick-prev.slick-arrow'); 5686 var $next = $container.find('.slick-next.slick-arrow'); 5687 5688 function updateProgressBarVisibility() { 5689 if ($prev.length > 0 && $next.length > 0) { 5690 $progressBar.css("display", "block"); 5691 } else { 5692 $progressBar.css("display", "none"); 5693 } 5694 } 5695 5696 updateProgressBarVisibility(); 5697 5698 var observer = new MutationObserver(() => { 5699 $prev = $container.find('.slick-prev.slick-arrow'); 5700 $next = $container.find('.slick-next.slick-arrow'); 5701 updateProgressBarVisibility(); 5702 }); 5703 5704 observer.observe(this, { childList: true, subtree: true }); 5705 }); 5706}); 5707 5708 5709 5710$jq("#next_button").on("click", function() { 5711 if ($jq("#next_button").hasClass("complete")) { 5712 window.location.href = "quiz_summary.html"; 5713 } else { 5714 getNextQuestion(); 5715 } 5716 }); 5717 $jq("#next_button_mobile").on("click", function() { 5718 if ($jq("#next_button").hasClass("complete")) { 5719 window.location.href = "quiz_summary.html"; 5720 } else { 5721 getNextQuestion(); 5722 } 5723 }); 5724 $jq(".search-lens").click(function() { 5725 $jq("#search_waste").focus(); 5726 }); 5727 5728 5729$jq('.send_phrase_textbox .text_normal_waste .selected').on("keypress", function(event) { 5730 5731 if (event.key === "Enter") { 5732 event.preventDefault(); 5733 var elementId= this.attr('id'); 5734 window.location.href = "search_waste_result.html?waste="+elementId; 5735 } 5736 5737}); 5738 $jq(document).ready(function() { 5739var currentPath = window.location.href; 5740var currentPathPackage = currentPath.slice(-7); 5741if(currentPathPackage === "odpady/"){ 5742$jq('.wrapper.with-top-margin.clearfix').css({
5743 'display': 'flex', 5744 'flex-direction': 'column' 5745}); 5746} 5747}); 5748 5749function sendPhrase() { 5750var originalText; 5751$jq('.send_phrase_textbox .text_normal_waste').each(function() { 5752 originalText = $jq(this).text(); 5753originalText= originalText.substring(24, originalText.length - 40); 5754}); 5755var currentPath = window.location.pathname; 5756if(currentPath === "/odpady/" ) currentPath= "/odpady/wyszukiwarka_odpadow.html"; 5757if(currentPath === "/mim/odpady/" ) currentPath= "/mim/odpady/wyszukiwarka_odpadow.html"; 5758if(currentPath === "/mimtest/odpady/" ) currentPath= "/mimtest/odpady/wyszukiwarka_odpadow.html"; 5759if(currentPath === "/mimdevtest/odpady/" ) currentPath= "/mimdevtest/odpady/wyszukiwarka_odpadow.html"; 5760 5761 var dane = { 5762 proposal: originalText, 5763 co: "addproposal", 5764 action: "save" 5765 }; 5766 $jq.ajax({ 5767 method: 'GET', 5768 url: currentPath, 5769 data: dane, 5770 dataType: 'json', 5771 success: function (data) { 5772 5773 if (data && data.waste_message && data.waste_status) { 5774 var dialogStyle; 5775 if(data.waste_status=='ok') 5776 { 5777 dialogStyle= "necropolis-ui-dialog"; 5778 }else{ 5779 dialogStyle= "necropolis-fail-ui-dialog"; 5780 } 5781 5782 var proposal_status = data.waste_message; 5783 $jq( "#n-t-waste-in" ).dialog({ closeOnEscape: true, autoOpen: false, minHeight: 90, closeText: "zamknij", classes: {"ui-dialog": dialogStyle+" dialog-index-waste"} 5784 , position: { my: "right-70 top", 5785 at: "right bottom", 5786 of: ".search-waste-textbox", 5787 offset: "0 0", 5788 collision: "fit flip" } }); 5789 var dialogContent = $jq("#n-t-waste-in p"); 5790 5791 if (dialogContent.length) { 5792 dialogContent.text(proposal_status); 5793 } else { 5794 $jq("#n-t-waste-in").append($jq("<p>").text(proposal_status)); 5795 } 5796 5797 $jq( "#n-t-waste-in" ).dialog( "open" ); 5798 } 5799 }, 5800 error: function (xhr, status, error) { 5801 console.error('BÅÄ d Å¼Ä dania:', status); 5802 } 5803 }); 5804} 5805 function checkInputLength() { 5806 var sendButton = document.getElementById('send_phrase_box'); 5807 var inputValue = document.getElementById("search_waste").value; 5808 var inputWidth = inputValue.offsetWidth; 5809 var maxLength = 1024; 5810 if(inputValue.length===0){ 5811 5812 var arrowDownSelect = document.querySelector('.search-arrow'); 5813 var intervalId = setInterval(function() { 5814 arrowDownSelect.classList.remove("contains"); 5815 arrowDownSelect.classList.remove("available"); 5816 }, 25); 5817 5818 setTimeout(function() { 5819 clearInterval(intervalId); 5820 }, 125); 5821 } 5822 if (inputValue.length === maxLength) { 5823 $jq( "#too-much-in" ).dialog( "open" ); 5824 if(sendButton){ 5825 sendButton.disabled=true; 5826 } 5827 } 5828 else{ 5829 if ($jq("#too-much-in").dialog("isOpen")) { 5830 $jq("#too-much-in").dialog("close"); 5831 } 5832 if(sendButton && sendButton.disabled) 5833 { 5834 sendButton.disabled=false; 5835 } 5836 } 5837} 5838 var searchWasteInput = document.getElementById("search_waste"); 5839 if(searchWasteInput){ 5840 searchWasteInput.addEventListener("input", function() { 5841 checkInputLength(); 5842 resizeWasteList(); 5843 }); 5844 } 5845 function resizeProgressBar(count,denominator){ 5846 var progressBar = document.querySelector('.progress-bar');
5847 var progressBarBackground = (count / (denominator)) * 100; 5848 progressBar.style.setProperty('background-size', progressBarBackground + '% 100%'); 5849 5850 } 5851 function disableOptions(){ 5852 var options = document.querySelectorAll('.quiz_option_container'); 5853 options.forEach(function(option) { 5854 if (!option.classList.contains('clicked')) { 5855 option.classList.add('unavailable'); 5856 } 5857 }); 5858 } 5859 function prepareAnswer(data){ 5860 document.getElementById('quiz_response').innerHTML = data.text; 5861 document.getElementById('question_summary').innerHTML = data.question; 5862 document.getElementById('answer_result_img').classList.add(data.image); 5863 document.getElementById('check_answer').style.setProperty('display','flex'); 5864 document.getElementById('question_box').style.setProperty('display','none'); 5865 } 5866 function prepareAnswerMobile(data){ 5867 document.getElementById('quiz_response_mobile').innerHTML = data.text; 5868 document.getElementById('question_summary_mobile').innerHTML = data.question; 5869 document.getElementById('answer_result_img_mobile').classList.add(data.image); 5870 document.getElementById('check_answer_mobile').style.setProperty('display','flex'); 5871 document.getElementById('question_box').style.setProperty('display','none'); 5872} 5873function addSelectedQuiz(element){ 5874 var isMobile=""; 5875 var modifiedId = element.id; 5876 if(modifiedId.includes("_MOBILE")){ 5877 isMobile="_MOBILE"; 5878 modifiedId = element.id.slice(0, -7); 5879 } 5880 if(!document.querySelector('.quiz_option_container.clicked')){ 5881 element.classList.add('clicked'); 5882 disableOptions(); 5883 var currentPath = window.location.pathname; 5884 var question = document.getElementById('question').innerHTML; 5885 var quizData = { 5886 question: question, 5887 answer: modifiedId, 5888 co: "checkanswer", 5889 action: "save" 5890 }; 5891 $jq.ajax({ 5892 method: 'get', 5893 url: currentPath, 5894 data: quizData, 5895 dataType: 'json', 5896 success: function (data) { 5897 5898 if (data && data.question && data.image && data.text) { 5899 5900 if(isMobile !== ""){ 5901 prepareAnswerMobile(data); 5902 }else{ 5903 prepareAnswer(data); 5904 } 5905 5906 $jq('.quiz_option_container').each(function() { 5907 $jq(this).removeAttr('tabindex'); 5908 }); 5909 var userAnswer = $jq("#" + data.userAnswer + isMobile); 5910 userAnswer.css('background','none'); 5911 userAnswer.find("#throw-text").text("MOJA ODPOWIEDŹ"); 5912 5913 if(data.correctAnswer){ 5914 var correctAnswer = $jq("#" + data.correctAnswer + isMobile); 5915 correctAnswer.addClass('correct'); 5916 correctAnswer.removeClass('unavailable'); 5917 var throwText = correctAnswer.find("#throw-text"); 5918 throwText.text("DOBRA ODPOWIEDŹ"); 5919 } 5920 resizeProgressBar((parseInt(data.quizCount, 10)),10); 5921 } 5922 }, 5923 error: function (xhr, status, error) { 5924 console.error('BÅÄ d Å¼Ä dania:', status); 5925 location.reload(); 5926 } 5927 });} 5928} 5929 5930function getNextQuestion(){ 5931 var currentPath = window.location.pathname; 5932 var href = window.location.href; 5933 5934 5935 var quizData = { 5936 co: "nextquestion", 5937 action: "search" 5938 }; 5939 $jq.ajax({ 5940 method: 'get', 5941 url: currentPath, 5942 data: quizData, 5943 dataType: 'json', 5944 success: function (data) { 5945 5946 if (data && data.question && data.quizCount) { 5947 document.getElementById('answer_result_img_mobile').classList=''; 5948 document.getElementById('answer_result_img').classList=''; 5949 $jq('.quiz_option_container').each(function() { 5950 $jq(this).removeClass('clicked unavailable correct').attr('tabindex', 1);; 5951 $jq(this).find("#throw-text").text("WRZUCAM DO"); 5952 }); 5953 5954 5955 5956 document.getElementById('question').innerHTML = data.question; 5957 document.getElementById('question_mobile').innerHTML = data.question; 5958 document.getElementById('question_count').innerHTML = "PYTANIE " + data.quizCount +" Z 10"; 5959 document.getElementById('check_answer').style.setProperty('display','none'); 5960 document.getElementById('check_answer_mobile').style.setProperty('display','none'); 5961 document.getElementById('question_box').style.setProperty('display','flex'); 5962 if(data.quizCount === '10'){ 5963 var nextButton = document.getElementById("next_button"); 5964 $jq("#next_button").find(".blue-primary-text-small").text("Zobacz wynik"); 5965 $jq("#next_button").addClass("complete"); 5966 $jq("#next_button_mobile").find(".blue-primary-text-small").text("Zobacz wynik"); 5967 } 5968 5969 } 5970 } 5971 , 5972 error: function (xhr, status, error) { 5973 console.error('BÅÄ d Å¼Ä dania:', status); 5974 } 5975 }); 5976} 5977var quizOptionContainers = document.querySelectorAll('.quiz_option_container'); 5978
5979quizOptionContainers.forEach(function(container) { 5980 container.addEventListener("keypress", function(event) { 5981 if (event.key === "Enter") { 5982 event.preventDefault(); 5983 addSelectedQuiz(container); 5984 } 5985 }); 5986}); 5987 5988 function addBorder(ele) { 5989 $jq('.search-waste-textbox.clicked').removeClass('clicked') 5990 var element = $jq(ele); 5991 5992 element.addClass('clicked'); 5993 var searchWasteArrow = element.children('.search-arrow'); 5994 if (searchWasteArrow.hasClass('contains')) { 5995 searchWasteArrow.addClass('available'); 5996 showListWaste(searchWasteArrow); 5997 } 5998 document.addEventListener('click', function(e) { 5999 if (!document.querySelector('.search-waste-textbox.clicked').contains(e.target)) { 6000 document.querySelector('.search-waste-textbox.clicked').classList.remove('clicked'); 6001 } 6002 }); 6003 } 6004 6005 6006$jq('.select_div').on( "keypress", function(event) { 6007 if (event.keyCode == 13 && !event.shiftKey) { 6008 event.preventDefault(); 6009 toggleSelect(this); 6010 } 6011}); 6012 6013$jq(document).on('keydown', function(e) { 6014 // ESCAPE key pressed 6015 if (e.key == "Escape" ) { 6016 e.preventDefault(); 6017 6018 if(!$jq('#smart-popup').hasClass('hidden')){ 6019 $jq('#smart-popup').addClass('hidden'); 6020 } 6021 if($jq(".mim-menu-dropdown-content").hasClass('show')){ 6022 $jq(".mim-menu-dropdown-content").removeClass('show'); 6023 $jq('.links-menu-header-arrow.links-menu-header-arrow-opened').removeClass('links-menu-header-arrow-opened').addClass('links-menu-header-arrow-closed'); 6024 } 6025 } 6026}); 6027var searchWasteElement = document.getElementById('search_waste'); 6028 6029var searchWasteTextbox = document.querySelector('.search-waste-textbox'); 6030var searchWasteArrow = document.querySelector('.search-arrow'); 6031 6032if(searchWasteElement){ 6033 6034 searchWasteElement.addEventListener('focus', function() { 6035 setTimeout(function() { 6036 6037 if (!searchWasteTextbox.classList.contains('clicked')) { 6038 searchWasteTextbox.classList.add('focus'); 6039 searchWasteArrow.classList.add('focus'); 6040 searchWasteArrow.classList.remove('available'); 6041 } 6042 }, 150); 6043 }); 6044 6045 searchWasteElement.addEventListener('blur', function() { 6046 searchWasteTextbox.classList.remove('focus'); 6047 if (searchWasteArrow.classList.contains('contains')) { 6048 searchWasteArrow.classList.add('available'); 6049 } 6050 searchWasteArrow.classList.remove('focus'); 6051 6052 }); 6053} 6054 6055 var ajaxWaste= document.getElementById("ajax_lookup_div_search_waste"); 6056 if (ajaxWaste) { 6057 ajaxWaste.addEventListener("click", function(event) { 6058 if (event.target.classList.contains("send_phrase_textbox")) { 6059 var elementId = event.target.id; 6060 var searchWasteInput = document.getElementById("search_waste"); 6061 searchWasteInput.value = event.target.textContent || event.target.innerText; 6062 var cleanedText = elementId.toLowerCase(); 6063 var currentSegregacjaPath = ctxPath + "/odpady/segregacja/" + cleanedText; 6064 window.location.href = currentSegregacjaPath; 6065 } 6066 }); 6067 } 6068 6069 function onClickRedirectWasteList(){ 6070 var selectedItem = $jq('.send_phrase_textbox.selected'); 6071 var elementId = selectedItem.eq(0).attr('id'); 6072 var cleanedText = elementId.toLowerCase(); 6073 var currentPath = window.location.pathname; 6074 var currentSegregacjaPath = ctxPath + "/odpady/segregacja/" + cleanedText; 6075 window.location.href = currentSegregacjaPath; 6076 } 6077 6078 function resizeWasteList(){ 6079 var searchWasteTextbox = $jq(".search-waste-textbox"); 6080 var wasteSimilarList = $jq("#ajax_lookup_div_search_waste"); 6081 var marginLeft; 6082 6083 if (navigator.userAgent.indexOf("Firefox") != -1) { 6084 marginLeft=-17; 6085 } else{ 6086 marginLeft=-18; 6087 } 6088 6089 wasteSimilarList.attr('style',';width: '+searchWasteTextbox.outerWidth()+'px !important;left:'+marginLeft+'px !important;'); 6090 } 6091 6092$jq(document).ready(function() { 6093 6094 var blueButtons = document.querySelectorAll('.blue_button_new'); 6095 var secondaryButtons = document.querySelectorAll(' .button_secondary'); 6096 var buttonHeroSmartcity = document.querySelectorAll(' .button-hero-smartcity'); 6097 if(blueButtons){ 6098 blueButtons.forEach(function(button) { 6099 button.addEventListener('click', function() { 6100 button.classList.add('clicked'); 6101 }); 6102 }); 6103 } 6104 if(secondaryButtons){ 6105 secondaryButtons.forEach(function(button) { 6106 button.addEventListener('click', function() { 6107 button.classList.add('clicked'); 6108 }); 6109 }); 6110 } if(buttonHeroSmartcity){
6111 buttonHeroSmartcity.forEach(function(button) { 6112 button.addEventListener('click', function() { 6113 button.classList.add('clicked'); 6114 }); 6115 }); 6116 } 6117 var wasteSearchInput = $jq("#search_waste_wrapper"); 6118 if(wasteSearchInput){ 6119 wasteSearchInput.click(function() { 6120 var searchWasteTextbox = $jq(".search-waste-textbox"); 6121 var wasteSimilarList = $jq("#ajax_lookup_div_search_waste"); 6122 var wasteSimilarList = $jq("#ajax_lookup_div_search_waste ul"); 6123 6124 }); 6125 } 6126 }); 6127 6128 function handleStateChangeWaste(mutationsList, observer) { 6129 for (let mutation of mutationsList) { 6130 if (mutation.type === 'attributes' && mutation.attributeName === 'style') { 6131 const targetElement = document.getElementById('ajax_lookup_div_search_waste'); 6132 6133 if (targetElement && targetElement.style.display === 'none') { 6134 var searchArrowElement = document.querySelector('.search-arrow'); 6135 if (searchArrowElement.classList.contains('rotated')) { 6136 6137 6138 searchArrowElement.classList.remove('rotated'); 6139 } 6140 } 6141 if (targetElement && targetElement.style.display !== 'none') { 6142 6143 var searchArrowElement = document.querySelector('.search-arrow'); 6144 if (!searchArrowElement.classList.contains('rotated')) { 6145 searchArrowElement.classList.add('rotated'); 6146 searchArrowElement.classList.add('available'); 6147 searchArrowElement.classList.add('contains'); 6148 6149 } 6150 } 6151 } 6152 } 6153 } 6154const targetNode = document.getElementById('ajax_lookup_div_search_waste'); 6155if(targetNode){ 6156 const observer = new MutationObserver(handleStateChangeWaste); 6157 6158 const config = { attributes: true }; 6159 6160 observer.observe(targetNode, config); 6161} 6162function showListWaste(element){ 6163 if (element.classList.contains('contains')) { 6164 if (element.classList.contains('rotated')) { 6165 element.classList.remove('rotated'); 6166 } else { 6167 element.classList.add('rotated'); 6168 } 6169 6170 var autocompleteElement = document.querySelector('.autocomplete_complex'); 6171 6172 var currentDisplayValue = window.getComputedStyle(autocompleteElement).getPropertyValue('display'); 6173 if (currentDisplayValue === 'none') { 6174 autocompleteElement.style.removeProperty('display'); 6175 var searchWasteTextbox = $jq(".search-waste-textbox"); 6176 var wasteSimilarList = $jq("#ajax_lookup_div_search_waste"); 6177 if (navigator.userAgent.indexOf("Firefox") != -1) { 6178 marginLeft=-17; 6179 } else{ 6180 marginLeft=-18; 6181 } 6182 6183 wasteSimilarList.attr('style',';width: '+searchWasteTextbox.outerWidth()+'px !important;left:'+marginLeft+'px !important;'); 6184 } else { 6185 autocompleteElement.style.setProperty('display', 'none', 'important'); 6186 } 6187 6188 6189 } 6190} 6191 6192 $jq( "#too-much-in" ).dialog({ closeOnEscape: true, autoOpen: false, minHeight: 90, classes: {"ui-dialog": "necropolis-fail-ui-dialog dialog-index-waste"} 6193 , position: { 6194 my: "right top", 6195 at: "right+18 top-100", 6196 of: "#search_waste", 6197 offset: "0 0", 6198 collision: "fit flip" 6199 }, 6200 open: function(event, ui) { 6201 $jq(".ui-dialog-titlebar-close", ui.dialog | ui).hide(); 6202 } 6203 }); 6204 6205function openMapMenu(){ 6206 $jq(".leaflet-control-layers").addClass("leaflet-control-layers-expanded"); 6207} 6208$jq(document).ready(function() { 6209 6210var currentPath = window.location.pathname; 6211if(currentPath==='/odpady/punkty_zbiorki.html'){ 6212 6213 openMapMenu(); 6214 6215 6216} 6217}); 6218$jq(document).ready(function() { 6219function checkBanners(){ 6220 const slickArrow = document.querySelector('.slick-box-container-new-wortal .slick-prev.slick-arrow'); 6221 const slickArrowMobile = document.querySelector('.slick-box-container-new-wortal .slickslider-mobile-banner-arrow-box'); 6222 6223 if (document.querySelector('#prog_bar')) { 6224 if (slickArrow || slickArrowMobile) { 6225 document.querySelector('#prog_bar').style.display = 'flex'; 6226 } else { 6227 document.querySelector('#prog_bar').style.display = 'none'; 6228 } 6229 } 6230} 6231let counter = 0; 6232const interval = setInterval(() => { 6233 checkBanners(); 6234 counter++; 6235 if (counter === 3) { 6236 clearInterval(interval); 6237 } 6238}, 1000); 6239}); 6240 6241function toggleTableAirQuality(element){ 6242 6243 if($jq(window).width() < 920){ 6244 $jq('.table_mobile_wos').toggleClass('hidden'); 6245 } 6246 else{ 6247 $jq('.styled_table').toggleClass('hidden'); 6248 } 6249 6250 $jq(element).find('.button_secondary_arrow').toggleClass('rotated'); 6251 if($jq(element).find("#secondary_button_text").text()=="Zobacz szczegóÅowe zestawienie dla wszystkich stacji"){ 6252 $jq(element).find("#secondary_button_text").text("ZwiÅ szczegóÅowe zestawienie dla wszystkich stacji"); 6253 }else{ 6254 $jq(element).find("#secondary_button_text").text("Zobacz szczegóÅowe zestawienie dla wszystkich stacji"); 6255 } 6256 var intervalId = setInterval(function() { 6257 $jq(element).removeClass('clicked'); 6258 }, 500); 6259} 6260 6261function showRowsSelect(element){ 6262 var elementStyle = window.getComputedStyle(element); 6263 var maxWidthElement = elementStyle.getPropertyValue('max-width'); 6264 var arrowDownSelect = element.querySelector('.arrow-down-select'); 6265 if (arrowDownSelect.classList.contains("rotated")) { 6266 arrowDownSelect.classList.remove("rotated"); 6267 element.classList.remove('clicked'); 6268 }else{ 6269 arrowDownSelect.classList.add("rotated"); 6270 element.classList.add('clicked'); 6271 } 6272 6273 6274 var filterRows = document.getElementById("filter_rows"); 6275 if (filterRows.classList.contains("visible")) { 6276 filterRows.classList.remove("visible"); 6277 } 6278 else{ 6279 filterRows.style.maxWidth = element.offsetWidth + "px"; 6280 filterRows.classList.add("visible"); 6281 $jq(filterRows).css("top",$jq(element).outerHeight() +'px'); 6282 } 6283 document.addEventListener("click", handleOutsideClickSelect); 6284} 6285function getDataSelect(element){ 6286 $jq('#search_text').text($jq(element).text()); 6287 $jq('#select_filter').addClass('selected_value'); 6288} 6289function openFilterList(element){ 6290 $jq('#choose_filter_list').toggleClass('closed'); 6291 $jq(element).find('.filter_arrow').toggleClass('rotated'); 6292} 6293 6294 var searchTextInput = document.getElementById("search_text"); 6295 if(searchTextInput){ 6296 searchTextInput.addEventListener("input", function() { 6297 resizeSearchList(); 6298 }); 6299 } 6300 6301 function resizeSearchList(){ 6302 var searchTextbox = $jq("#select_filter"); 6303 var searchSimilarList = $jq("#ajax_lookup_div_search_text"); 6304 var marginLeft; 6305 6306 6307 searchSimilarList.attr('style',';width: '+searchTextbox.outerWidth()+'px !important;'); 6308 } 6309 function addBorderInput(element) { 6310 6311 element.classList.add('clicked'); 6312 if ($jq('#ajax_lookup_div_search_text').find('ul').length > 0) { 6313 $jq('#ajax_lookup_div_search_text').css('display','flex'); 6314 } 6315 6316 document.addEventListener('click', function(e) { 6317 if (!element.contains(e.target) && e.target) { 6318 element.classList.remove('clicked'); 6319 } 6320 }); 6321 } 6322function showList(element) { 6323 6324 $jq(element).toggleClass('clicked'); 6325 $jq('#list_select.list_select_box').toggleClass('show'); 6326 6327 6328 document.addEventListener('click', function(e) { 6329 if (!element.contains(e.target) && e.target) { 6330 element.classList.remove('clicked'); 6331 $jq('#list_select.list_select_box').removeClass('show'); 6332 6333 } 6334 }); 6335 6336 document.addEventListener('click', function(e) { 6337 if (!element.contains(e.target) && e.target) { 6338 element.classList.remove('clicked'); 6339 } 6340 }); 6341} 6342function addSelected(element){ 6343 6344 6345 $jq('.filter_element.text_body_small.selected').each(function() { 6346 $jq(this).removeClass('selected'); 6347 }); 6348 6349 $jq(element).addClass('selected'); 6350 $jq('#select_text').text($jq(element).text()); 6351 $jq('#select_text').css('color','#01070E'); 6352} 6353function getPollutants(element){ 6354 let pol_id; 6355 if (!$jq('#choose_filter_list').hasClass('closed')) { 6356 $jq('#choose_filter_list').addClass('closed'); 6357 } 6358 $jq('.filter_arrow.rotated').removeClass('rotated'); 6359 if(!(element === undefined)){ 6360 pol_id= $jq(element).attr('pol-id'); 6361 }else{ 6362 pol_id=''; 6363 } 6364 var currentPath = window.location.pathname; 6365 var href = window.location.href; 6366 var stationId = $jq('.filter_element.text_body_small.selected').attr('station-id'); 6367 6368 var quizData = { 6369 co: "pollution", 6370 action: "search", 6371 pol_id: pol_id, 6372 st_id: stationId 6373 }; 6374 $jq.ajax({ 6375 method: 'get', 6376 url: currentPath, 6377 data: quizData, 6378 dataType: 'json', 6379 success: function (data) { 6380 if (data && data.pollutantsArray && data.pollutants) { 6381 updateDataBoxWos(data); 6382 } 6383 } 6384 , 6385 error: function (xhr, status, error) { 6386 console.error('BÅÄ d Å¼Ä dania:', status); 6387 } 6388 }); 6389} 6390 6391function updateDataBoxWos(data){ 6392 $jq('.chart_container').css('display','flex'); 6393 let pollutantsArray = data.pollutantsArray; 6394 let isSelected=false; 6395 $jq('#choose_filter_list .filter_element.filter_item').each(function() { 6396 var pol_id = $jq(this).attr('pol-id'); 6397 if (pollutantsArray.includes(pol_id)) { 6398 6399 if(!isSelected && $jq('.filter_element.filter_item.selected').length === 0){ 6400 $jq('#filter_value').text($jq(this).text()); 6401 $jq(this).addClass('selected'); 6402 isSelected=true; 6403 }else if($jq(this).hasClass('selected') && !isSelected){ 6404 $jq('#filter_value').text($jq(this).text()); 6405 isSelected=true; 6406 } 6407 $jq(this).css('display', 'flex'); 6408 } else { 6409 $jq(this).css('display', 'none'); 6410 } 6411 }); 6412 $jq('#head_wos_chart_box').text(data.headText); 6413 if (data.pollutants && data.pollutants.length >0) {
6414 addChart(data); 6415 } 6416 updateTableWos(data); 6417 updateTableWosMobile(data); 6418} 6419function updateTableWos(data) { 6420 6421 let temp = '<tr class="table_header"><td>Rok</td><td>Stacja pomiaru</td><td>StÄżenie roczne ('+data.pollutants[0].unit+')</td><td class="flex_row" style="gap:10px;">Liczba dni<div class="tooltip-info-img" title="Wskazana wartoÅÄ x/y prezentuje kolejno: x - liczbÄ dni w roku z przekroczeniem normy stÄżenia, y - dopuszczalnÄ liczbÄ dni w roku z przekroczeniem normy stÄżenia"></div></td></tr>'; 6422 for (let i = 0; i < data.table.length; i++) { 6423 temp += '<tr>'; 6424 temp += '<td>'+data.table[i].measurement_year+'</td>'; 6425 temp +=data.table[i].stations; 6426 temp +=data.table[i].measurement_values; 6427 temp +=data.table[i].days_exceeded; 6428 temp +='</tr>'; 6429 } 6430 $jq('table.styled_table tbody').html(temp); 6431 $jq('#toggle_table_pollutants').css('display','inline-flex'); 6432} 6433function countDaysAlert(){ 6434alert("Wskazana wartoÅÄ x/y prezentuje kolejno: x - liczbÄ dni w roku z przekroczeniem normy stÄżenia, y - dopuszczalnÄ liczbÄ dni w roku z przekroczeniem normy stÄżenia"); 6435} 6436 6437function updateTableWosMobile(data) { 6438 var temp=''; 6439 for (let i = 0; i < data.table.length; i++) { 6440 let background=(i%2)===0?'background:#F2F2F3':'background:#FFFFFF'; 6441 temp +='<table class="styled_table_mobile" style="'+background+'"><tbody><tr class="table_header_mobile"><td>Rok '+ data.table[i].measurement_year +'</td><td></td></tr>'; 6442 let tempStations = data.table[i].stations_mobile.split(','); 6443 let tempMeasurements = data.table[i].measurement_values_mobile.split(','); 6444 let tempDaysExceeded = data.table[i].days_exceeded_mobile.split(','); 6445 for (let j = 0; j < tempStations.length; j++) { 6446 temp += '<tr><td style="padding-top: 7px;">Stacja pomiaru</td><td style="display: flex;padding-top: 7px;">'+tempStations[j]+'</td></tr>'; 6447 temp += '<tr><td>StÄżenie roczne <br>
6447('+data.pollutants[0].unit+')</td><td style="display: flex;">'+tempMeasurements[j]+'</td></tr>'; 6448 temp += '<tr class="with_border"><td><div class="count_days"><div>Liczba dni</div><div class="info-box-mobile" onclick="countDaysAlert();" title="Wskazana wartoÅÄ x/y prezentuje kolejno: x - liczbÄ dni w roku z przekroczeniem normy stÄżenia, y - dopuszczalnÄ liczbÄ dni w roku z przekroczeniem normy stÄżenia"><div class="tooltip-info-img" ></div></div></div></td><td style="display: flex;height: 44px;align-items: center;">'+tempDaysExceeded[j]+'</td></tr>'; 6449 } 6450 temp += '</tbody></table>'; 6451 } 6452 $jq('.table_mobile_wos').html(temp); 6453} 6454function findUniquePollutants(data) { 6455 let uniquePollutants = []; 6456 6457 data.pollutants.forEach(function(pollutant) { 6458 let exists = uniquePollutants.some(function(unique) { 6459 return unique.value === pollutant.allowable_value; 6460 }); 6461 6462 if (!exists) { 6463 uniquePollutants.push({ 6464 value: pollutant.allowable_value, 6465 year: pollutant.measurement_year 6466 }); 6467 } 6468 }); 6469 console.log('unique values:',uniquePollutants); 6470 return uniquePollutants; 6471} 6472 6473function addChart(data) { 6474 6475 let unitLabel = 'Norma stÄżenia ' + data.pollutants[0].unit; 6476 let measurementValueLabel = 'StÄżenie roczne ' + data.pollutants[0].pollutants_name + ' wyrażone w ' + data.pollutants[0].unit; 6477 var name_legend=''; 6478 if(data.pollutants[0].pollutants_name=== "PM 10"){ 6479 name_legend='pyÅu ' + data.pollutants[0].pollutants_name; 6480 }else{ 6481 name_legend=data.pollutants[0].pollutants_name; 6482 } 6483 let uniquePollutants = findUniquePollutants(data); 6484 var allowed_value = ''; 6485 if(uniquePollutants.length==1){ 6486 allowed_value = data.pollutants[0].allowable_value; 6487 }else{ 6488 for(i = 0; i < uniquePollutants.length; i++) { 6489 if(i===0){ 6490 allowed_value =uniquePollutants[i].value; 6491 }else{ 6492 allowed_value+=', '+ uniquePollutants[i].value +' (od ' +uniquePollutants[i].year+' roku)'; 6493 } 6494 } 6495 } 6496 6497 $jq('#unit_legend_1').text(data.pollutants[0].unit); 6498 $jq('#unit_legend_2').text(data.pollutants[0].unit); 6499 $jq('#unit_name_1').text(name_legend); 6500 $jq('#unit_name_2').text(name_legend); 6501 $jq('#unit_value').text(allowed_value); 6502 let unit = [unitLabel]; 6503 let measurementYears = ['rok']; 6504 let measurementValues = [measurementValueLabel]; 6505 let allowableChart='line'; 6506 6507 data.pollutants.forEach((pollutant) => { 6508 measurementYears.push(pollutant.measurement_year); 6509 measurementValues.push(pollutant.measurement_value); 6510 unit.push(pollutant.allowable_value); 6511 }); 6512 if(data.pollutants.length === 1){ 6513 allowableChart='scatter'; 6514 console.log('data.pollutants[0].allowable_value: ',data.pollutants[0].allowable_value); 6515 unit.push(data.pollutants[0].allowable_value); 6516 unit.push(data.pollutants[0].allowable_value); 6517 } 6518 6519 var chart = c3.generate({ 6520 bindto: '#chart_bar_year', 6521 data: { 6522 x: 'rok', 6523 columns: [ 6524 measurementYears, 6525 measurementValues, 6526 unit 6527 ], 6528 types: { 6529 [measurementValueLabel]: 'bar', 6530 [unitLabel]: allowableChart 6531 }, 6532 colors: { 6533 [measurementValueLabel]: '#0054A6', 6534 [unitLabel]: '#FF0000' 6535 } 6536 }, 6537 bar: { 6538 width: { 6539 ratio: 0.6 // this makes bar width 60% of length between ticks 6540 } 6541 }, 6542 legend: { 6543 show: false 6544 }, 6545 axis: { 6546 x: { 6547 show: true, 6548 type: 'category', 6549 tick: { 6550 show: true 6551 } 6552 }, 6553 y: { 6554 show: false 6555 } 6556 }, 6557 tooltip: { 6558 format: { 6559 title: function (d) { return 'Dane'; }, 6560 value: function (value, ratio, id) { 6561 return value; 6562 } 6563 } 6564 }, 6565 point: { 6566 show: false 6567 }, 6568 onrendered: function () { 6569 d3.select('.c3-axis-x').style('stroke-opacity', 0); 6570 d3.selectAll('.c3-axis-x .tick text') 6571 .style('font-family', 'Arial') 6572 .style('color', '#231F20') 6573 .style('font-size', '13px'); 6574 } 6575 }); 6576 6577 chart.internal.config.bar_width = 24; 6578 chart.flush(); 6579 6580 var yValues = measurementValues.slice(1); 6581 6582 6583 d3.selectAll('.c3-chart-bar .c3-shape').each(function (d, i) { 6584 var bbox = this.getBBox(); 6585 d3.select(this.parentNode).append('text') 6586 .attr('x', bbox.x + bbox.width / 2) 6587 .attr('y', bbox.y - 10) 6588 .attr('text-anchor', 'middle') 6589 .attr('font-size', '12px') 6590 .attr('fill', '#41454A') 6591 .text(yValues[i]).style('font-family', 'Arial'); 6592 }); 6593 var chartImageBox = document.querySelector('.chart_image_box'); 6594 var scrollWidth = chartImageBox.scrollWidth; 6595 var clientWidth = chartImageBox.clientWidth; 6596 chartImageBox.scrollLeft = (scrollWidth - clientWidth) / 2; 6597} 6598 6599 function handleStateChangeInput(mutationsList, observer) { 6600 for (let mutation of mutationsList) { 6601 if (mutation.type === 'attributes' && mutation.attributeName === 'style') { 6602 const targetElement = document.getElementById('ajax_lookup_div_search_text'); 6603 6604 if (targetElement && targetElement.style.display === 'none') { 6605 var searchArrowElement = document.querySelector('.arrow-down-select'); 6606 if (searchArrowElement.classList.contains('rotated')) { 6607 6608 6609 searchArrowElement.classList.remove('rotated'); 6610 } 6611 } 6612 if (targetElement && targetElement.style.display !== 'none') { 6613 6614 var searchArrowElement = document.querySelector('.arrow-down-select'); 6615 if (!searchArrowElement.classList.contains('rotated')) { 6616 searchArrowElement.classList.add('rotated'); 6617 searchArrowElement.classList.add('available'); 6618 searchArrowElement.classList.add('contains'); 6619 6620 } 6621 } 6622 } 6623 } 6624 } 6625const targetNodeInput = document.getElementById('ajax_lookup_div_search_text'); 6626if(targetNodeInput){ 6627 const observer = new MutationObserver(handleStateChangeInput); 6628 6629 const config = { attributes: true }; 6630 6631 observer.observe(targetNodeInput, config); 6632} 6633 6634 var ajax= document.getElementById("ajax_lookup_div_search_text"); 6635 if (ajax) { 6636 ajax.addEventListener("click", function(event) { 6637 if (event.target.classList.contains("filter_element")) { 6638 var searchWasteInput = document.getElementById("search_text"); 6639 console.log('here , value: ' , $jq(event.target).text()); 6640 searchWasteInput.value =$jq(event.target).text(); 6641 6642 } 6643 }); 6644 } 6645 6646function changeSelectWos(element){ 6647 $jq('.filter_element.filter_item.selected').removeClass('selected'); 6648 $jq(element).addClass('selected'); 6649} 6650 6651function onEnterSelect(){ 6652 console.debug('onClickRedirectWasteList'); 6653 var selectedItem = $jq('.filter_element.text_body_small.selected'); 6654 getPollutants(selectedItem); 6655 } 6656 6657$jq(document).ready(function() {
6658 let currentHref = window.location.href 6659 let currentHost = window.location.host 6660 if (currentHost === 'localhost:8080') { 6661 currentHref = currentHref.replace('localhost:8080', 'www.poznan.pl'); 6662 } 6663 currentHref = currentHref.replace('mim/', '') 6664 .replace('mimtest/', '') 6665 .replace('mimdevtest/','') 6666 .replace('public/', ''); 6667 let currentLink = new URL(currentHref); 6668 6669 let menuLinksWortal = document.querySelectorAll('.lhs-wortal-link'); 6670 if(menuLinksWortal){ 6671 const isUserMim = window.location.pathname.includes("usermim/submissions"); 6672 menuLinksWortal.forEach(function(link) { 6673 6674 if(link.getAttribute('href')){ 6675 let lhsLinkS = link.getAttribute('href') 6676 .replace('mim/', '') 6677 .replace('mimtest/', '') 6678 .replace('mimdevtest/','') 6679 .replace('public/', ''); 6680 let lhsLink; 6681 try { 6682 lhsLink = (new URL(lhsLinkS)); 6683 } catch (e) { 6684 let link2 = currentLink.origin + link.getAttribute("href"); 6685 lhsLink = new URL(link2); 6686 } 6687 6688 if (lhsLink.hostname === currentLink.hostname && lhsLink.pathname === currentLink.pathname) { 6689 if (!isUserMim || (isUserMim && lhsLink.searchParams.get("submission_type") === currentLink.searchParams.get("submission_type"))) { 6690 link.classList.add("selected-menu-wortal"); 6691 } 6692 } 6693 } 6694 }); 6695 } 6696}); 6697 6698 function clearInputsWuiaSearchEngine(){ 6699 6700 setButtonWuiaDisabled(); 6701 $jq('.radio_container').find('#rslt_num #val').html(''); 6702 $jq('.radio_container').find('#rslt_addr').html(''); 6703 $jq('.radio_container').find('#rslt_ar #val').html(''); 6704 const ids = [ 6705 "id_ulica_city", 6706 "streetName", 6707 "areaId", 6708 "area", 6709 "arSurface", 6710 "arNumId", 6711 "addressId", 6712 "airportId", 6713 "mpzpId", 6714 "conservationId", 6715 "environmentalId" 6716 ]; 6717 ids.forEach(id => { 6718 $jq(`#${id}`).val(''); 6719 }); 6720 } 6721$jq('input[name="sr_type"]').on('change', function() { 6722 $jq('.radio_container').removeClass('selected'); 6723 $jq('.result_box').removeClass('visible'); 6724 $jq('#id_number_street_lookup').removeClass('unvalid'); 6725 $jq('#unvalid_number').addClass('hidden'); 6726 $jq('#id_ulica_street_lookup').removeClass('unvalid'); 6727 $jq('#unvalid_address').addClass('hidden'); 6728 clearInputsWuiaSearchEngine(); 6729 if ($jq(this).is(':checked')) { 6730 $jq(this).closest('.radio_container').addClass('selected'); 6731 } 6732}); 6733$jq('.radio_box').on('click', function() { 6734 $jq(this).find('input[name="sr_type"]').prop('checked', true).trigger('change'); 6735 6736}); 6737 6738function getAreaWuia(radioSearch) { 6739 6740 let areaSurVal = $jq("#arSurface").val(); 6741 let areaNumVal = $jq("#arNumId").val(); 6742 let idUlicaCity= $jq('input[name="id_ulica_city"]').val(); 6743 if(areaSurVal && areaNumVal && idUlicaCity){ 6744 6745 console.log('radioSearch: '+radioSearch); 6746 6747 $jq('#'+radioSearch).find('#rslt_num #val').html(areaNumVal); 6748 $jq('#'+radioSearch).find('#rslt_addr').html(idUlicaCity+', '+$jq('input#addressId').val()); 6749 $jq('#'+radioSearch).find('#rslt_ar #val').html(areaSurVal); 6750 $jq('#'+radioSearch).find('.result_box').addClass('visible'); 6751 $jq('.ajax_indicator').css('display','none'); 6752 } 6753 6754} 6755 6756function wuiaGetNextLvl(ele){ 6757 var currentPath = window.location.pathname; 6758 6759 while(ele.closest(".level-wuia").next() !== undefined){ 6760 ele.closest(".level-wuia").next().remove(); 6761 } 6762 var dane = { 6763 parentId: ele.value, 6764 lvl_name: ele.name, 6765 co: "getLevel" 6766 }; 6767 6768 $jq.ajax({ 6769 method: 'GET', 6770 url: currentPath, 6771 data: dane, 6772 dataType: 'text', 6773 success: function (data) { 6774 if(data.length > 0) { 6775 $jq(".fieldset-wuia").append(data); 6776 $jq('.levels-end').addClass('hide'); 6777 $jq('#krajobrazowaSubmit').attr('disabled','disabled'); 6778 } else { 6779 $jq(".levels-end").removeClass("hide"); 6780 $jq('#krajobrazowaSubmit').removeAttr('disabled'); 6781 $jq('#krajobrazowaSubmit').removeClass('disabled'); 6782 } 6783 }, 6784 error: function (xhr, status, error) { 6785 console.error('BÅÄ d Å¼Ä dania:', status); 6786 } 6787 }); 6788} 6789
6790$jq(document).on('click',".option-wuia", function() { 6791 var element = $jq(":input", this)[0]; 6792 $jq(this).addClass('selected'); 6793 $jq(this).siblings('.option-wuia').removeClass('selected'); 6794 element.checked = true; 6795 wuiaGetNextLvl(element); 6796}) 6797$jq(document).on('click',".option-reference", function() { 6798 var element = $jq(":input", this)[0]; 6799 element.checked = true; 6800 var inputValue = element.value; 6801 $jq('input[name="cecha_1"]').val(inputValue); 6802 allowClickButtonWuia("#assign_references"); 6803}) 6804function allowClickButtonWuia (element){ 6805 6806 $jq(element).attr('disabled',false); 6807 $jq(element).removeClass('disabled'); 6808 $jq(element).attr('type','submit'); 6809} 6810var slickSliderWuiaUpdate = function (){ 6811 if ($jq(".krajobrazowa_images_container.slider .slick-slider").length > 0) { 6812 var wWidth = $jq('.krajobrazowa_images_container.slider .slick-slider').width(); 6813 var noWidth = Math.floor(wWidth/$jq(".krajobrazowa_images_container.slider .kraj_img_out").width()); 6814 try{ 6815 $jq('.krajobrazowa_images_container.slider .slick-slider').slick('slickSetOption', 'slidesToShow', noWidth, true); 6816 } catch (e) { 6817 } 6818 } 6819} 6820var slickSliderWuia = function (){ 6821 if ($jq(".krajobrazowa_images_container.slider").length > 0) { 6822 $jq('.arrow_box.desktop').remove(); 6823 var wWidth = $jq('.krajobrazowa_images_container.slider').width(); 6824 var noWidth = Math.floor(wWidth/$jq(".krajobrazowa_images_container.slider .kraj_img_out").width()); 6825 try { 6826 $jq('.krajobrazowa_images_container.slider').slick({ 6827 slidesToShow: 1, 6828 autoplay: false, 6829 slidesToScroll: 1, 6830 arrows: true, 6831 variableWidth: true, 6832 lazyLoad: 'ondemand', 6833 infinite: false, 6834 slidesToScroll: 1, 6835 prevArrow: '<button class="slickslider-mobile-banner-arrow-box left"></button>', 6836 nextArrow: '<button class="slickslider-mobile-banner-arrow-box right"></button>' 6837 }); 6838 } catch (e) { 6839 6840 } 6841 } 6842 6843} 6844var sliderWuia = $jq('.krajobrazowa_images_container.slider'); 6845var progressWuia = $jq('.progress-bar'); 6846sliderWuia.on('beforeChange', function(event, slick, currentSlide, nextSlide){ 6847 var calc = ( (nextSlide) / (slick.slideCount-1) ) * 100; 6848 progressWuia 6849 .css('background-size', calc + '% 100%') 6850 .attr('aria-valuenow', calc ); 6851}); 6852$jq(document).ready(function() { 6853 let screenWidth = $jq( window ).width(); 6854 if ($jq('.krajobrazowa_images_container.slider').length > 0 && screenWidth < 801 && $jq('.krajobrazowa_images_container.slider .slick-list').length === 0) { 6855 slickSliderWuia(); 6856 } 6857}); 6858 6859$jq(window).resize(function() { 6860 var screenWidth = $jq( window ).width(); 6861 if(screenWidth < 801 && $jq('.krajobrazowa_images_container.slider').length > 0) { 6862 slickSliderWuia(); 6863 } else if(screenWidth >= 801 && $jq('.krajobrazowa_images_container.slider .slick-list').length > 0){ 6864 $jq('.krajobrazowa_images_container.slider').slick('unslick'); 6865 } 6866}); 6867 6868function toggleTableObject(element){ 6869 6870 $jq('#object-additional-data').toggleClass('hidden'); 6871 6872 $jq(element).find('.button_secondary_arrow').toggleClass('rotated'); 6873 if($jq(element).find("#secondary_button_text").text()=="RozwiÅ szczegóÅy"){ 6874 $jq(element).find("#secondary_button_text").text("ZwiÅ szczegóÅy"); 6875 }else{ 6876 $jq(element).find("#secondary_button_text").text("RozwiÅ szczegóÅy"); 6877 } 6878 var intervalId = setInterval(function() { 6879 $jq(element).removeClass('clicked'); 6880 }, 500); 6881} 6882 6883//tags 6884 6885$jq(document).ready(function() { 6886 $jq(".news_section.different_news_section div.news_box_textbox .mim2024_H4").dotdotdot({ 6887 watch: "window", 6888 tolerance:1 6889 }); 6890}); 6891 6892 function closeFilterMenu(){ 6893 $jq('.filter_menu_section').removeClass("active"); 6894 $jq('body').removeClass('open-main-menu-mobile'); 6895 } 6896 $jq('#close-filter-submenu').on('click', function(e) { 6897 closeFilterMenu(); 6898 }); 6899 function toggleFiltersListMenu(element){ 6900 $jq(element).find('.filter-mobile-menu-arrow-toggle').toggleClass('rotated'); 6901 $jq('#filter_mobile_list').toggleClass('hidden_list'); 6902 } 6903 6904 function addFilterTag(element){ 6905 const checkbox = $jq(element).find("input[type='checkbox']"); 6906 checkbox.prop("checked", !checkbox.prop("checked")); 6907 let valueText = $jq(element).attr("aria-valuetext"); 6908 if (tagsArray) { 6909 if (checkbox.prop("checked") && tagsArray.includes(valueText)) { 6910 tagsArray = tagsArray.filter(item => item !== valueText); 6911 } else { 6912 tagsArray.push(valueText); 6913 } 6914 } 6915 } 6916 6917 function cleanTagsFilter(){ 6918 tagsArray = []; 6919 $jq(".filter_mobile_list input[type='checkbox']").prop("checked", false); 6920 } 6921 $jq(document).ready(function() { 6922 function openFilterMenu(){ 6923 $jq(".filter_menu_section").addClass("active"); 6924 $jq('body').addClass('open-main-menu-mobile'); 6925 } 6926 $jq("#openFilterTagsButton").click(function() { 6927 openFilterMenu(); 6928 }); 6929 function mobileUpdateUrlWithTags(){ 6930 let tagsString = tagsArray.join(","); 6931 let url = new URL(window.location.href); 6932 let params = new URLSearchParams(url.search); 6933 6934 if (params.has("type")) { 6935 params.set("type", tagsString); 6936 } else { 6937 params.append("type", tagsString); 6938 } 6939 url.search = params.toString(); 6940 window.location.href = url.toString(); 6941 } 6942 6943 $jq("#updateTagsButton").click(function() { 6944 mobileUpdateUrlWithTags(); 6945 }); 6946 }); 6947 6948 $jq(document).ready(function(e) { 6949 $jq('.close_ok_bnr').on("click", function(event) { 6950 event.preventDefault(); 6951 $jq('#ok_bnr_pzn').remove(); 6952 }); 6953 $jq('.close_ok_bnr.mobile').on("click", function(event) { 6954 event.preventDefault(); 6955 $jq('#ok_bnr_pzn_mobile').remove(); 6956 }); 6957 }); 6958 6959$jq(document).ready(function(e){ 6960 $jq("a.pubs-link .text-frame .text-caption").dotdotdot({ 6961 watch: "window", 6962 tolerance: 1 6963 }); 6964}); 6965 6966 $jq(document).ready(function(){ 6967 if($jq('#assigned_events .events-block').length) 6968 if ($jq('#assigned_events .events-block').children().length > 4) { 6969 assignedEventsSlickSlider(); 6970 } else { 6971 $jq('.progress-bar-events').css("display", "none"); 6972 } 6973 }); 6974 function assignedEventsSlickSlider() { 6975 var sliderWidth = $jq("#assigned_events").width(); 6976 $jq('.events-block').css('max-width', sliderWidth); 6977 var wWidth = sliderWidth; 6978 var elementWidth = $jq('.event-box').width(); 6979 var noWidth = Math.floor(wWidth/elementWidth); 6980 try { 6981 $jq('.events-block').slick({ 6982 slidesToShow: noWidth, 6983 slidesToScroll: 1, 6984 autoplay: false, 6985 variableWidth: true, 6986 arrows: true, 6987 initialSlide: 0, 6988 lazyLoad: 'ondemand', 6989 infinite: false, 6990 prevArrow: '<button class="events-slickslider-mobile-arrow-box left"></button>', 6991 nextArrow: '<button class="events-slickslider-mobile-arrow-box right"></button>' 6992 }); 6993 } catch (e) { 6994 } 6995 var progressBar = $jq('.progress-bar-events'); 6996 var sliderWidth = $jq("#assigned_events").width(); 6997 $jq('.events-block').css('max-width', sliderWidth); 6998 var wWidth = sliderWidth; 6999 var elementWidth = $jq('.event-box').width(); 7000 var noWidth = Math.floor(wWidth/elementWidth); 7001 var calc = ( (0+noWidth) / 5 ) * 100; 7002 progressBar 7003 .css('background-size', calc + '% 100%') 7004 .attr('aria-valuenow', calc ); 7005 progressBar.css("display", "block"); 7006 } 7007 $jq('.events-block').on('afterChange', function(event, slick, currentSlide){ 7008 var progressBar = $jq('.progress-bar-events'); 7009 var sliderWidth = $jq("#assigned_events").width(); 7010 $jq('.events-block').css('max-width', sliderWidth); 7011 var wWidth = sliderWidth; 7012 var elementWidth = $jq('.event-box').width() 7013 var noWidth = Math.floor(wWidth/elementWidth); 7014 var calc = ( (currentSlide+noWidth) / (slick.slideCount) ) * 100; 7015 progressBar 7016 .css('background-size', calc + '% 100%') 7017 .attr('aria-valuenow', calc ) 7018 }); 7019$jq(document).on('keypress', '.icon-up-new', function() { 7020 if (event.key === 'Enter') { 7021 event.preventDefault(); 7022 const onclickAttr = $jq(this).attr('onclick'); 7023 if (onclickAttr) { 7024 eval(onclickAttr); 7025 } 7026 } 7027}); 7028 7029 7030function showMIMMenu(button) { 7031 if ($jq(button).siblings(".mim-menu-dropdown-content").hasClass("show")){ 7032 $jq(button).siblings(".mim-menu-dropdown-content").removeClass("show"); 7033 $jq(button).children('.links-menu-header-arrow.links-menu-header-arrow-opened').removeClass('links-menu-header-arrow-opened').addClass('links-menu-header-arrow-closed'); 7034 } else { 7035 $jq(".mim-menu-dropdown-content.show").removeClass("show"); 7036 $jq('.links-menu-header-arrow.links-menu-header-arrow-opened').removeClass('links-menu-header-arrow-opened').addClass('links-menu-header-arrow-closed'); 7037 var menu = $jq(button).siblings(".mim-menu-dropdown-content"); 7038 $jq(button).children('.links-menu-header-arrow.links-menu-header-arrow-closed').removeClass('links-menu-header-arrow-closed').addClass('links-menu-header-arrow-opened'); 7039 menu.addClass("show"); 7040// menu.css('left', $jq('header').offset().left); 7041// menu.css('width', $jq('.main-header-row2').width() - 16); 7042 } 7043} 7044//$jq(window).on('resize', function() { 7045// var menu = $jq(".mim-menu-dropdown-content.show"); 7046// menu.css('left', $jq('header').offset().left); 7047// menu.css('width', $jq('.main-header-row2').width() - 16); 7048//}) 7049 7050window.onclick = function(e) { 7051 $top_menu = $jq('#top_menu').get(0); 7052 if (!$jq.contains($top_menu, e.target) || e.target.matches('.close-menu-x')) { 7053 var myDropdown = $jq(".mim-menu-dropdown-content"); 7054 if (myDropdown.hasClass('show')) { 7055 myDropdown.removeClass('show'); 7056 $jq('.links-menu-header-arrow.links-menu-header-arrow-opened').removeClass('links-menu-header-arrow-opened').addClass('links-menu-header-arrow-closed'); 7057 } 7058 } 7059} 7060 7061$jq('.close-menu-x').on('keypress', function(e){ 7062 if(e.key === "Enter") { 7063 var myDropdown = $jq(".mim-menu-dropdown-content"); 7064 if (myDropdown.hasClass('show')) { 7065 myDropdown.removeClass('show'); 7066 $jq('.links-menu-header-arrow.links-menu-header-arrow-opened').removeClass('links-menu-header-arrow-opened').addClass('links-menu-header-arrow-closed'); 7067 } 7068 } 7069 7070}); 7071 7072$jq('.mim-menu-dropdown button').on('focus', function () { 7073 if (!$jq(this).siblings(".mim-menu-dropdown-content").hasClass('show')) { 7074 $jq(".mim-menu-dropdown-content.show").removeClass('show'); 7075 $jq('.links-menu-header-arrow.links-menu-header-arrow-opened').removeClass('links-menu-header-arrow-opened').addClass('links-menu-header-arrow-closed'); 7076 } 7077}); 7078 7079$jq(document).ready(function(e){ 7080 $jq("a.pubs-link .text-frame .text-caption").dotdotdot({ 7081 watch: "window", 7082 tolerance: 1 7083 }); 7084}); 7085 7086$jq(document).ready(function() { 7087 $jq(".publication-container p, .article-body p, .faq-container p").each(function () { 7088 let html = $jq(this).html() 7089 .replace(/ /g, "") 7090 .replace(/<br\s*\/?>/gi, "") 7091 .trim(); 7092 7093 if (html === "") { 7094 $jq(this).remove(); 7095 } 7096 }); 7097 7098}); 7099 7100function initFixedHeaderAdjustment() { 7101 const loginStrap = document.getElementById("mim-user-bar"); 7102 const header = document.getElementById("head-sticky-main-page"); 7103 7104 if (loginStrap !== null && header !== null) { 7105 const observer = new ResizeObserver(() => { 7106 const height = loginStrap.getBoundingClientRect().height; 7107 7108 document.documentElement.style.setProperty( 7109 '--header-offset', 7110 `${height}px` 7111 ); 7112 }); 7113 7114 observer.observe(header); 7115 } 7116} 7117 7118if (document.readyState !== "loading") { 7119 initFixedHeaderAdjustment(); 7120} else { 7121 document.addEventListener("DOMContentLoaded", () => { 7122 initFixedHeaderAdjustment(); 7123 }) 7124}
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.