1/* Created by Artisteer v4.3.0.60745 */ 2/*jshint forin:true, noarg:true, noempty:true, eqeqeq:true, bitwise:true, strict:true, undef:true, curly:false, browser:true, jquery:false */ 3/*global jQuery BackgroundHelper */ 4 5// css helper 6browser = function ($) { 7 'use strict'; 8 var data = [ 9 { str: navigator.userAgent, sub: 'Chrome', ver: 'Chrome', name: 'chrome' }, 10 { str: navigator.vendor, sub: 'Apple', ver: 'Version', name: 'safari' }, 11 { prop: window.opera, ver: 'Opera', name: 'opera' }, 12 { str: navigator.userAgent, sub: 'Firefox', ver: 'Firefox', name: 'firefox' }, 13 { str: navigator.userAgent, sub: 'MSIE', ver: 'MSIE', name: 'ie' }, 14 { str: navigator.userAgent, sub: 'Trident/7.0', ver: 'rv', name: 'ie' } 15 ]; 16 var v = function (s, n) { 17 var i = s.indexOf(data[n].ver); 18 return (i !== -1) ? parseFloat(s.substring(i + data[n].ver.length + 1)) : 0; 19 }; 20 var result = { name: 'unknown', version: 0 }; 21 var html = $('html'); 22 for (var n = 0; n < data.length; n++) { 23 if (!result[data[n].name]) { 24 result[data[n].name] = false; 25 } 26 if ((data[n].str && (data[n].str.indexOf(data[n].sub) !== -1)) || data[n].prop) { 27 result.name = data[n].name; 28 result[result.name] = true; 29 result.version = v(navigator.userAgent, n) || v(navigator.appVersion, n); 30 html.addClass(result.name + ' ' + result.name + parseInt(result.version, 10)); 31 } 32 } 33 return result; 34} (jQuery); 35 36jQuery(function ($) { 37 if (typeof responsiveDesign === "undefined") { 38 $("html").addClass("desktop"); 39 } 40}); 41 42jQuery(function ($) { 43 'use strict'; 44 var i, j, k, l, m; 45 if (!browser.ie || browser.version !== 9) { 46 return; 47 } 48 var splitByTokens = function (str, startToken, endToken, last) { 49 if (!last) { 50 last = false; 51 } 52 var startPos = str.indexOf(startToken); 53 if (startPos !== -1) { 54 startPos += startToken.length; 55 var endPos = last ? str.lastIndexOf(endToken) : str.indexOf(endToken, startPos); 56 57 if (endPos !== -1 && endPos > startPos) { 58 return str.substr(startPos, endPos - startPos); 59 } 60 } 61 return ''; 62 }; 63 64 var splitWithBrackets = function (str, token, brackets) { 65 /*jshint nonstandard:true */ 66 if (!token) { 67 token = ','; 68 } 69 if (!brackets) { 70 brackets = '()'; 71 } 72 var bracket = 0; 73 var startPos = 0; 74 var result = []; 75 if (brackets.lenght < 2) { 76 return result; 77 } 78 var pos = 0; 79 while (pos < str.length) { 80 var ch = str[pos]; 81 if (ch === brackets[0]) { 82 bracket++; 83 } 84 if (ch === brackets[1]) { 85 bracket--; 86 } 87 if (ch === token && bracket < 1) { 88 result.push(str.substr(startPos, pos - startPos)); 89 startPos = pos + token.length; 90 } 91 pos++; 92 } 93 result.push(str.substr(startPos, pos - startPos)); 94 return result; 95 }; 96 97 var byteToHex = function (d) { 98 var hex = Number(d).toString(16); 99 while (hex.length < 2) { 100 hex = "0" + hex; 101 } 102 return hex; 103 }; 104 105 for (i = 0; i < document.styleSheets.length; i++) { 106 var s = document.styleSheets[i]; 107 var r = [s]; 108 for (j = 0; j < s.imports.length; j++) { 109 r.push(s.imports[j]); 110 } 111 for (j = 0; j < r.length; j++) { 112 s = r[j]; 113 var n = []; 114 for (k = 0; k < s.rules.length; k++) { 115 var css = s.rules[k].cssText || s.rules[k].style.cssText; 116 if (!css) { 117 continue; 118 } 119 var value = splitByTokens(css, '-svg-background:', ';'); 120 if (value === '') { 121 continue; 122 } 123 var values = splitWithBrackets(value); 124 for (l = 0; l < values.length; l++) { 125 var g = splitByTokens(values[l], 'linear-gradient(', ')', true); 126 if (g === '') { 127 continue; 128 } 129 var args = splitWithBrackets(g); 130 if (args.length < 3) { 131 continue; 132 } 133 var maxOffset = 0; 134 var stops = []; 135 for (m = 1; m < args.length; m++) { 136 var stopValues = splitWithBrackets($.trim(args[m]), ' '); 137 if (stopValues.length < 2) { 138 continue; 139 } 140 var stopColor = $.trim(stopValues[0]); 141 var stopOpacity = 1; 142 if (stopColor == 'transparent') { 143 stopColor = '#000000'; 144 stopOpacity = 0; 145 } 146 var colorRgba = splitByTokens(stopColor, 'rgba(', ')', true); 147 var stopOffset = $.trim(stopValues[1]); 148 if (colorRgba !== "") { 149 var rgba = colorRgba.split(','); 150 if (rgba.length < 4) { 151 continue; 152 } 153 stopColor = '#' + byteToHex(rgba[0]) + byteToHex(rgba[1]) + byteToHex(rgba[2]); 154 stopOpacity = rgba[3]; 155 } 156 var isPx = stopOffset.indexOf('px') !== -1; 157 if (isPx) { 158 maxOffset = Math.max(maxOffset, parseInt(stopOffset, 10) || 0); 159 } 160 stops.push({ offset: stopOffset, color: stopColor, opacity: stopOpacity, isPx: isPx }); 161 } 162 var stopsXML = ''; 163 var lastStop = null; 164 for (m = 0; m < stops.length; m++) { 165 if (stops[m].isPx) { 166 stops[m].offset = ((parseInt(stops[m].offset, 10) || 0) / (maxOffset / 100)) + '%'; 167 } 168 stopsXML += '<stop offset="' + stops[m].offset + '" stop-color="' + stops[m].color + '" stop-opacity="' + stops[m].opacity + '"/>'; 169 if (m === stops.length - 1) { 170 lastStop = stops[m]; 171 } 172 } 173 var isLeft = $.trim(args[0]) === 'left'; 174 var direction = 'x1="0%" y1="0%" ' + (isLeft ? 'x2="100%" y2="0%"' : 'x2="0%" y2="
174100%"'); 175 var gradientLength = '100%'; 176 if (maxOffset > 0) { 177 gradientLength = maxOffset + 'px'; 178 } 179 var size = (isLeft ? 'width="' + gradientLength + '" height="100%"' : 'width="100%" height="' + gradientLength + '"'); 180 var last = ""; 181 if (lastStop !== null && maxOffset > 0) { 182 last = '<rect ' + 183 (isLeft ? 184 'x="' + maxOffset + '" y="0"' : 185 'x="0" y="' + maxOffset + '"') + 186 ' width="100%" height="100%" style="fill:' + lastStop.color + ';opacity:' + lastStop.opacity + ';"/>'; 187 188 } 189 var svgGradient = '<svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none"><linearGradient id="g" gradientUnits="objectBoundingBox" ' + direction + '>' + stopsXML + '</linearGradient><rect x="0" y="0" ' + size + ' fill="url(#g)" />' + last + '</svg>'; 190 values[l] = values[l].replace('linear-gradient(' + g + ')', 'url(data:image/svg+xml,' + escape(svgGradient) + ')'); 191 } 192 n.push({ s: s.rules[k].selectorText, v: 'background: ' + values.join(",") }); 193 } 194 for (k = 0; k < n.length; k++) { 195 s.addRule(n[k].s, n[k].v); 196 } 197 } 198 } 199}); 200 201 202jQuery(function ($) { 203 "use strict"; 204 // ie8 205 if (!browser.ie || browser.version > 8) return; 206 $('.art-shapes').each(function () { 207 if ($(this).siblings('.art-slider').length) { 208 $(this).remove(); 209 } else { 210 $(this).css('z-index', 1); 211 } 212 }); 213 214 // ie7 215 if (!browser.ie || browser.version > 7) return; 216 var textblockTexts = $('.art-textblock div[class$="-text"]'); 217 textblockTexts.each(function () { 218 var tbText = $(this); 219 var valign = tbText.css('vertical-align') ? tbText.css('vertical-align') : 'top'; 220 if (valign === 'middle') { 221 var wrapper = tbText.wrap('<div/>').parent(); 222 tbText.css({ 223 'position': 'relative', 224 'top': '-50%', 225 'height': 'auto' 226 }); 227 wrapper.css({ 228 'position': 'absolute', 229 'top': '50%' 230 }); 231 } else if (valign === 'bottom') { 232 tbText.css({ 233 'position': 'absolute', 234 'height': 'auto', 235 'bottom': 0 236 }); 237 } 238 }); 239}); 240 241/* Set wmode=transparent for youtube and other video hostings to show it under the menus, lightboxes etc. */ 242jQuery(function ($) { 243 "use strict"; 244 var video = ["youtube"]; 245 246 $("iframe[src]").each(function () { 247 var iframe = $(this), 248 src = iframe.attr("src"), 249 isVideo = false, 250 i; 251 252 for (i = 0; i < video.length; i++) { 253 if (src.toLowerCase().indexOf(video[i].toLowerCase()) !== -1) { 254 isVideo = true; 255 break; 256 } 257 } 258 259 if (!isVideo) { 260 return; 261 } 262 263 if (src.lastIndexOf("?") !== -1) { 264 src += "&wmode=transparent"; 265 } else { 266 src += "?wmode=transparent"; 267 } 268 iframe.attr("src", src); 269 }); 270}); 271 272jQuery(function ($) { 273 "use strict"; 274 $(window).bind("resize", function () { navigatorResizeHandler($("html").hasClass("responsive")); }); 275}); 276 277var navigatorResizeHandler = (function ($) { 278 "use strict"; 279 return function (responsiveDesign) { 280 if (responsiveDesign) return; 281 $(".art-slider").each(function () { 282 var slider = $(this); 283 var sliderWidth = slider.width(); 284 var nav = slider.siblings(".art-slidenavigator"); 285 var navWidth = nav.outerWidth(); 286 if (nav.length && navWidth < sliderWidth) { 287 // left offset 288 var left = nav.attr("data-left"); 289 // (margin = containerWidth - (objectPosition + objectWidth)) < 0 290 var margin = sliderWidth - sliderWidth * parseFloat(left) / 100 - nav.outerWidth(false); 291 if (margin < 0) { 292 nav.css("margin-left", margin); 293 } 294 } 295 }); 296 }; 297})(jQuery); 298 299var processElementMultiplyBg = (function ($) { 300 return (function (selector, info) { 301 if (!selector || !info || !info.bgimage || !info.bgposition || !info.images || !info.positions) return; 302 var path = ""; 303 var script = $('head script[src*="script.js"]'); 304 if (script.length) { 305 path = (script.attr('src') || ''); 306 path = path.substr(0, path.lastIndexOf('/') + 1); 307 } 308 var html = ''; 309 var el = $(selector); 310 var bgimages = info.images.split(","); 311 var bgpositions = info.positions.split(","); 312 for (var i = bgimages.length - 1; i >= 0; i--) { 313 var bgimage = $.trim(bgimages[i]); 314 if (bgimage === "") 315 continue; 316 var imgIdx = bgimage.lastIndexOf('images/'); 317 var className = bgimage.substring(imgIdx + 7, bgimage.length - 6); 318 el.append("<div class=\"ie8fix " + className + "\" style=\"position:absolute;top:0;left:0;width:100%;height:100%;background:" + bgimage.replace(/(images\/[^\/]+)$/, path + '$1') + " " + bgpositions[i] + " no-repeat\"></div>"); 319 } 320 el.css('background-image', info.bgimage.replace(/(images\/[^\/]+)$/, path + '$1')); 321 el.css('background-position-x', "50%"); 322 el.css('background-position-y', "50%"); 323 });
324})(jQuery); 325 326 327var responsiveNavigator = (function ($) { 328 "use strict"; 329 return function () { 330 if (typeof headerObjectResizer !== 'undefined' && headerObjectResizer.isPreview) return; 331 332 var sheet = $('.art-sheet'); 333 var sheetWidth = sheet.outerWidth(); 334 335 $(".art-slider").each(function () { 336 var currentSlider = $(this); 337 var currentSliderWidth = currentSlider.width(); 338 339 var sliderNavigator = currentSlider.siblings(".art-slidenavigator"); 340 if (sliderNavigator.length) { 341 var off = sheetLeftFunc(sheet, sliderNavigator); 342 var calcWidth = isContentSlider(sliderNavigator) ? currentSliderWidth : sheetWidth; 343 344 var navigatorWidth = sliderNavigator.outerWidth(); 345 var offset = parseInt(sliderNavigator.attr('data-offset') || 0, 10); 346 347 // left offset 348 sliderNavigator.css('margin-left', '0px'); 349 350 var left = parseFloat(sliderNavigator.attr("data-left"), 10); 351 var newLeft = off + uniToPx(left, navigatorWidth, calcWidth); 352 sliderNavigator.css('left', newLeft + 'px'); 353 354 355 // reset top to original value 356 sliderNavigator.css("top", ""); 357 358 // top 359 var navigatorHeight = sliderNavigator.outerHeight(); 360 var uniy = parseFloat(sliderNavigator.attr('data-top'), 10); 361 362 var sliderHeight = parseInt(currentSlider.css('height'), 10); 363 var newTop = uniToPx(uniy, navigatorHeight, sliderHeight); 364 365 sliderNavigator.css("top", (newTop + offset) + 'px'); 366 } 367 }); 368 }; 369})(jQuery); 370 371jQuery(function ($) { 372 "use strict"; 373 374 if (typeof responsiveDesign === "undefined") { 375 $(window).bind("resize", responsiveNavigator); 376 } 377 378 $(window).on("load", function pageInitialize() { 379 $(window).trigger("resize"); 380 $(window).off("load", pageInitialize); 381 }); 382}); 383 384 385/* Icons in Header should have display block. 386 * Otherwise, in case of inline-block there's a space gap in some browsers (Opera 12.16) and icon is cutted. 387 */ 388if (browser.opera) { 389 jQuery(function ($) { 390 $(".art-header a[class$='tag-icon']").css("display", "block"); 391 }); 392} 393 394jQuery(function($) { 395 "use strict"; 396 $(window).bind("resize", function () { 397 /*global responsiveDesign */ 398 "use strict"; 399 if (typeof responsiveDesign !== "undefined" && responsiveDesign.isResponsive) 400 return; 401 var sheetLeft = $(".art-sheet").offset().left; 402 $("header.art-header #art-flash-area").each(function () { 403 var object = $(this); 404 object.css("left", sheetLeft + "px"); 405 }); 406 }); 407}); 408 409jQuery(function($) { 410 "use strict"; 411 $('nav.art-nav').addClass("desktop-nav"); 412}); 413 414 415jQuery(function ($) { 416 "use strict"; 417 if (!browser.ie || browser.version > 7) { 418 return; 419 } 420 $('ul.art-hmenu>li:not(:first-child)').each(function () { $(this).prepend('<span class="art-hmenu-separator"> </span>'); }); 421}); 422 423jQuery(function ($) { 424 "use strict"; 425 $("ul.art-hmenu a:not([href])").attr('href', '#').click(function (e) { e.preventDefault(); }); 426}); 427 428 429jQuery(function ($) { 430 "use strict"; 431 if (!browser.ie || browser.version > 7) { 432 return; 433 } 434 435 /* Fix width of submenu items. 436 * The width of submenu item calculated incorrectly in IE6-7. IE6 has wider items, IE7 display items like stairs. 437 */ 438 $.each($("ul.art-hmenu ul"), function () { 439 var maxSubitemWidth = 0; 440 var submenu = $(this); 441 var subitem = null; 442 $.each(submenu.children("li").children("a"), function () { 443 subitem = $(this); 444 var subitemWidth = subitem.outerWidth(false); 445 if (maxSubitemWidth < subitemWidth) { 446 maxSubitemWidth = subitemWidth; 447 } 448 }); 449 if (subitem !== null) { 450 var subitemBorderLeft = parseInt(subitem.css("border-left-width"), 10) || 0; 451 var subitemBorderRight = parseInt(subitem.css("border-right-width"), 10) || 0; 452 var subitemPaddingLeft = parseInt(subitem.css("padding-left"), 10) || 0; 453 var subitemPaddingRight = parseInt(subitem.css("padding-right"), 10) || 0; 454 maxSubitemWidth -= subitemBorderLeft + subitemBorderRight + subitemPaddingLeft + subitemPaddingRight; 455 submenu.children("li").children("a").css("width", maxSubitemWidth + "px"); 456 } 457 });
458}); 459 460jQuery(function ($) { 461 "use strict"; 462 var setDirection = function() { 463 setHMenuOpenDirection({ 464 container: "div.art-sheet", 465 defaultContainer: "#art-main", 466 menuClass: "art-hmenu", 467 leftToRightClass: "art-hmenu-left-to-right", 468 rightToLeftClass: "art-hmenu-right-to-left" 469 }); 470 }; 471 if (typeof responsiveDesign !== "undefined") { 472 $(window).on('responsive', setDirection); 473 } else { 474 setDirection(); 475 } 476}); 477 478var setHMenuOpenDirection = (function ($) { 479 "use strict"; 480 return (function(menuInfo) { 481 var defaultContainer = $(menuInfo.defaultContainer); 482 defaultContainer = defaultContainer.length > 0 ? defaultContainer = $(defaultContainer[0]) : null; 483 484 $("ul." + menuInfo.menuClass + ">li>ul").each(function () { 485 var submenu = $(this); 486 487 var submenuWidth = submenu.outerWidth(false); 488 var submenuLeft = submenu.offset().left; 489 490 var mainContainer = submenu.parents(menuInfo.container); 491 mainContainer = mainContainer.length > 0 ? mainContainer = $(mainContainer[0]) : null; 492 493 var container = mainContainer || defaultContainer; 494 if (container !== null) { 495 var containerLeft = container.offset().left; 496 var containerWidth = container.outerWidth(false); 497 498 if (submenuLeft + submenuWidth >= containerLeft + containerWidth) { 499 /* right to left */ 500 submenu.addClass(menuInfo.rightToLeftClass).find("ul").addClass(menuInfo.rightToLeftClass); 501 } else if (submenuLeft <= containerLeft) { 502 /* left to right */ 503 submenu.addClass(menuInfo.leftToRightClass).find("ul").addClass(menuInfo.leftToRightClass); 504 } 505 } 506 }); 507 }); 508})(jQuery); 509 510 511jQuery(function ($) { 512 'use strict'; 513 $(window).bind('resize', function () { 514 var bh = $('body').height(); 515 var mh = 0; 516 var c = $('div.art-content'); 517 c.removeAttr('style'); 518 519 $('#art-main').children().each(function() { 520 if ($(this).css('position') !== 'absolute') { 521 mh += $(this).outerHeight(true); 522 } 523 }); 524 525 if (mh < bh) { 526 var r = bh - mh; 527 c.css('height', (c.parent().outerHeight(true) + r) + 'px'); 528 } 529 }); 530 531 if (browser.ie && browser.version < 8) { 532 $(window).bind('resize', function() { 533 var c = $('div.art-content'); 534 var s = c.parent().children('.art-layout-cell:not(.art-content)'); 535 var w = 0; 536 c.hide(); 537 s.each(function() { w += $(this).outerWidth(true); }); 538 c.w = c.parent().width(); c.css('width', c.w - w + 'px'); 539 c.show(); 540 }); 541 } 542 543 $(window).trigger('resize'); 544}); 545 546var artButtonSetup = (function ($) { 547 'use strict'; 548 return (function (className) { 549 $.each($("a." + className + ", button." + className + ", input." + className), function (i, val) { 550 var b = $(val); 551 if (!b.hasClass('art-button')) { 552 b.addClass('art-button'); 553 } 554 if (b.is('input')) { 555 b.val(b.val().replace(/^\s*/, '')).css('zoom', '1'); 556 } 557 b.mousedown(function () { 558 var b = $(this); 559 b.addClass("active"); 560 }); 561 b.mouseup(function () { 562 var b = $(this); 563 if (b.hasClass('active')) { 564 b.removeClass('active'); 565 } 566 }); 567 b.mouseleave(function () { 568 var b = $(this); 569 if (b.hasClass('active')) { 570 b.removeClass('active'); 571 } 572 }); 573 }); 574 }); 575})(jQuery); 576jQuery(function () { 577 'use strict'; 578 artButtonSetup("art-button"); 579}); 580 581jQuery(function($) { 582 'use strict'; 583 $('input.art-search-button, form.art-search input[type="submit"]').attr('value', ''); 584}); 585 586var Control = (function ($) { 587 'use strict'; 588 return (function () { 589 this.init = function(label, type, callback) { 590 var chAttr = label.find('input[type="' +type + '"]').attr('checked'); 591 if (chAttr === 'checked') { 592 label.addClass('art-checked'); 593 } 594 595 label.mouseleave(function () { 596 $(this).removeClass('hovered').removeClass('active'); 597 }); 598 label.mouseover(function () { 599 $(this).addClass('hovered').removeClass('active'); 600 }); 601 label.mousedown(function (event) { 602 if (event.which !== 1) { 603 return; 604 } 605 $(this).addClass('active').removeClass('hovered'); 606 }); 607 label.mouseup(function (event) { 608 if (event.which !== 1) { 609 return; 610 } 611 callback.apply(this); 612 $(this).removeClass('active').addClass('hovered'); 613 }); 614 }; 615 });
616})(jQuery); 617 618 619jQuery(function ($) { 620 'use strict'; 621 $('.art-pager').contents().filter( 622 function () { 623 return this.nodeType === this.TEXT_NODE; 624 } 625 ).remove(); 626}); 627var fixRssIconLineHeight = (function ($) { 628 "use strict"; 629 return function (className) { 630 $("." + className).css("line-height", $("." + className).height() + "px"); 631 }; 632})(jQuery); 633 634jQuery(function ($) { 635 "use strict"; 636 var rssIcons = $(".art-rss-tag-icon"); 637 if (rssIcons.length){ 638 fixRssIconLineHeight("art-rss-tag-icon"); 639 if (browser.ie && browser.version < 9) { 640 rssIcons.each(function () { 641 if ($.trim($(this).html()) === "") { 642 $(this).css("vertical-align", "middle"); 643 } 644 }); 645 } 646 } 647}); 648var ThemeLightbox = (function ($) { 649 'use strict'; 650 return (function () { 651 var images = $(".art-lightbox"); 652 var current; 653 this.init = function (ctrl) { 654 $(".art-lightbox").mouseup({ _ctrl: ctrl }, function (e) { 655 if ((e.data._ctrl === true && !e.ctrlKey) || (e.which && e.which !== 1)) { 656 return; 657 } 658 659 images = $(".art-lightbox"); 660 661 current = images.index(this); 662 663 var imgContainer = $('.art-lightbox-wrapper'); 664 if (imgContainer.length === 0) {
665 imgContainer = $('<div class="art-lightbox-wrapper">').css('line-height', $(window).height() + "px") 666 .appendTo($("body")); 667 668 var closeBtn = $('<div class="close"><div class="cw"> </div><div class="ccw"> </div><div class="close-alt">✗</div></div>') 669 .click(close); 670 closeBtn.appendTo(imgContainer); 671 showArrows(); 672 } 673 674 move(current); 675 }); 676 }; 677 678 function move(index) { 679 if (index < 0 || index >= images.length) { 680 return; 681 } 682 683 showError(false); 684 685 current = index; 686 687 $(".art-lightbox-wrapper .art-lightbox-image:not(.active)").remove(); 688 689 var active = $(".art-lightbox-wrapper .active"); 690 var target = $('<img class="art-lightbox-image" alt="" src="' + getFullImgSrc($(images[current]).attr("src")) + '" />').click(function () { 691 if ($(this).hasClass("active")) { 692 move(current + 1); 693 } 694 }); 695 696 if (active.length > 0) { 697 active.after(target); 698 } else { 699 $(".art-lightbox-wrapper").append(target); 700 } 701 702 showArrows(); 703 showLoader(true); 704 705 bindMouse($(".art-lightbox-wrapper").add(target)); 706 707 target.load(function () { 708 showLoader(false); 709 710 active.removeClass("active"); 711 target.addClass("active"); 712 }); 713 714 target.error(function () { 715 showLoader(false); 716 active.removeClass("active"); 717 target.addClass("active"); 718 target.attr("src", $(images[current]).attr("src")); 719 }); 720 } 721 722 function showArrows() { 723 if ($(".art-lightbox-wrapper .arrow").length === 0) { 724 $(".art-lightbox-wrapper").append( 725 $('<div class="arrow left"><div class="arrow-t ccw"> </div><div class="arrow-b cw"> </div><div class="arrow-left-alt">←</div></div>') 726 .css("top", $(window).height() / 2 - 40) 727 .click(function () { 728 if (!$(this).hasClass("disabled")) { 729 move(current - 1); 730 } 731 }) 732 ); 733 $(".art-lightbox-wrapper").append( 734 $('<div class="arrow right"><div class="arrow-t cw"> </div><div class="arrow-b ccw"> </div><div class="arrow-right-alt">→</div></div>') 735 .css("top", $(window).height() / 2 - 40) 736 .click(function () { 737 if (!$(this).hasClass("disabled")) { 738 move(current + 1); 739 } 740 }) 741 ); 742 } 743 744 if (current === 0) { 745 $(".art-lightbox-wrapper .arrow.left").addClass("disabled"); 746 } else { 747 $(".art-lightbox-wrapper .arrow.left").removeClass("disabled"); 748 } 749 750 if (current === images.length - 1) { 751 $(".art-lightbox-wrapper .arrow.right").addClass("disabled"); 752 } else { 753 $(".art-lightbox-wrapper .arrow.right").removeClass("disabled"); 754 } 755 } 756 757 function showError(enable) { 758 if (enable) { 759 $(".art-lightbox-wrapper").append($('<div class="lightbox-error">The requested content cannot be loaded.<br/>Please try again later.</div>') 760 .css({ "top": $(window).height() / 2 - 60, "left": $(window).width() / 2 - 170 })); 761 } else { 762 $(".art-lightbox-wrapper .lightbox-error").remove(); 763 } 764 } 765 766 function showLoader(enable) { 767 if (!enable) { 768 $(".art-lightbox-wrapper .loading").remove(); 769 } 770 else { 771 $('<div class="loading"> </div>').css({ "top": $(window).height() / 2 - 16, "left": $(window).width() / 2 - 16 }).appendTo($(".art-lightbox-wrapper")); 772 } 773 } 774 775 var close = function () { 776 $(".art-lightbox-wrapper").remove(); 777 }; 778 779 function bindMouse(img) { 780 img.bind('mousewheel DOMMouseScroll', function (e) { 781 var orgEvent = window.event || e.originalEvent; 782 var delta = (orgEvent.wheelDelta ? orgEvent.wheelDelta : orgEvent.detail * -1) > 0 ? 1 : -1; 783 move(current + delta); 784 e.preventDefault(); 785 }).mousedown(function (e) { 786 // close on middle button click 787 if (e.which === 2) { 788 close(); 789 } 790 e.preventDefault(); 791 }); 792 } 793 794 function getFullImgSrc(src) { 795 var fileName = src.substring(0, src.lastIndexOf('.')); 796 var ext = src.substring(src.lastIndexOf('.')); 797 return fileName + "-large" + ext; 798 } 799 800 });
801})(jQuery); 802 803jQuery(function () { 804 'use strict'; 805 new ThemeLightbox().init(); 806}); 807 808(function ($) { 809 'use strict'; 810 // transition && transitionEnd && browser prefix 811 $.support.themeTransition = (function () { 812 var thisBody = document.body || document.documentElement, 813 thisStyle = thisBody.style, 814 support = thisStyle.transition !== undefined || 815 thisStyle.WebkitTransition !== undefined || 816 thisStyle.MozTransition !== undefined || 817 thisStyle.MsTransition !== undefined || 818 thisStyle.OTransition !== undefined; 819 return support && { 820 event: (function () { 821 return "transitionend webkitTransitionEnd otransitionend oTransitionEnd"; 822 })(), 823 prefix: (function () { 824 return ({ 825 opera: "-o-", 826 firefox: "-moz-", 827 chrome: "-webkit-", 828 safari: "-webkit-", 829 ie: "" 830 }[browser.name] || ""); 831 })() 832 }; 833 })(); 834 835 window.BackgroundHelper = function () { 836 var slides = []; 837 var direction = "next"; 838 var motion = "horizontal"; 839 var width = 0; 840 var height = 0; 841 var multiplier = 1; 842 var originalWidth = 0; 843 var originalHeight = 0; 844 var transitionDuration = ""; 845 846 this.init = function (motionType, dir, duration) { 847 direction = dir; 848 motion = motionType; 849 slides = []; 850 width = 0; 851 height = 0; 852 multiplier = 1; 853 originalWidth = 0; 854 originalHeight = 0; 855 transitionDuration = duration; 856 }; 857 858 this.processSlide = function (element, modify) { 859 this.updateSize(element, null); 860 var pos = []; 861 862 var bgPosition = element.css("background-position"); 863 var positions = bgPosition.split(","); 864 $.each(positions, function (i) { 865 var position = $.trim(this); 866 var point = position.split(" "); 867 var zeroValue = browser.ie && browser.version >= 10 ? 0.1 : 0; 868 if (point.length > 1) { 869 var x = point[0].indexOf('%') === -1 ? parseFloat(point[0], 10) : zeroValue; 870 var y = point[1].indexOf('%') === -1 ? parseFloat(point[1], 10) : zeroValue; 871 pos.push({ x: x, y: y }); 872 } else { 873 pos.push({ x: zeroValue, y: zeroValue }); 874 } 875 }); 876 877 slides.push({ 878 "images": element.css("background-image"), 879 "sizes": element.css("background-size"), 880 "positions": pos 881 }); 882 883 if (modify) 884 element.css("background-image", "none"); 885 }; 886 887 this.updateSize = function (element, initialSize) { 888 width = element.outerWidth(false); 889 height = element.outerHeight(); 890 if (initialSize && parseInt(initialSize.width, 10) !== 0) { 891 originalWidth = parseInt(initialSize.width, 10); 892 originalHeight = parseInt(initialSize.height, 10); 893 if (motion === "fade") { 894 $.each(element.children(), function (i) { 895 $(this).css("background-position", getCssPositions(slides[i].positions, { x: 0, y: 0 })); 896 }); 897 } 898 } 899 }; 900 901 this.setBackground = function (element, items) { 902 var bg = []; 903 var sizes = []; 904 $.each(items, function (i, o) { 905 bg.push(o.images); 906 sizes.push(o.sizes); 907 }); 908 element.css({ 909 "background-image": bg.join(", "), 910 //"background-size": sizes.join(", "), 911 "background-repeat": "no-repeat" 912 }); 913 }; 914 915 this.setPosition = function (element, items) { 916 var pos = []; 917 $.each(items, function (i, o) { 918 pos.push(o.positions); 919 }); 920 element.css({ 921 "background-position": pos.join(", ") 922 }); 923 }; 924 925 this.current = function (index) { 926 return slides[index] || null; 927 }; 928 929 this.next = function (index) { 930 var next; 931 if (direction === "next") { 932 next = (index + 1) % slides.length; 933 } else { 934 next = index - 1; 935 if (next < 0) { 936 next = slides.length - 1; 937 } 938 } 939 return slides[next]; 940 }; 941 942 this.items = function (prev, next, move) { 943 var prevItem = { x: 0, y: 0 }; 944 var nextItem = { x: 0, y: 0 }; 945 var isDirectionNext = direction === "next"; 946 var verticalOffset = -(originalHeight - height) / 2; 947 var horizontalOffset = -(originalWidth - width) / 2; 948 if (motion === "horizontal") { 949 prevItem.y = nextItem.y = -(originalHeight - height) / 2; 950 prevItem.x = horizontalOffset; 951 nextItem.x = (isDirectionNext ? originalWidth : -originalWidth) + horizontalOffset; 952 if (move) { 953 prevItem.x += isDirectionNext ? -originalWidth : originalWidth; 954 nextItem.x += isDirectionNext ? -originalWidth : originalWidth; 955 } 956 } else if (motion === "vertical") { 957 prevItem.x = nextItem.x = horizontalOffset; 958 prevItem.y = verticalOffset; 959 nextItem.y = (isDirectionNext ? originalHeight : -originalHeight) + verticalOffset; 960 if (move) { 961 prevItem.y += isDirectionNext ? -originalHeight : originalHeight; 962 nextItem.y += isDirectionNext ? -originalHeight : originalHeight; 963 } 964 } 965 var result = []; 966 if (!!prev) { 967 result.push({ images: prev.images, positions: getCssPositions(prev.positions, prevItem), sizes: prev.sizes }); 968 } 969 if (!!next) { 970 result.push({ images: next.images, positions: getCssPositions(next.positions, nextItem), sizes: next.sizes }); 971 } 972 973 if (direction === "next") { 974 result.reverse(); 975 } 976 977 return result; 978 }; 979 980 this.transition = function (container, on) { 981 container.css($.support.themeTransition.prefix + "transition", on ? "background-position " + transitionDuration + " ease-in-out" : ""); 982 }; 983 984 function getCssPositions(positions, offset) { 985 var result = []; 986 if (positions === undefined) { 987 return ""; 988 } 989 offset.x = offset.x || 0; 990 offset.y = offset.y || 0; 991 for (var i = 0; i < positions.length; i++) { 992 result.push((positions[i].x * 1 + offset.x) + "px " + (positions[i].y * 1 + offset.y) + "px"); 993 } 994 return result.join(", "); 995 } 996 }; 997 998 999 var ThemeSlider = function (element, settings) { 1000 1001 var interval = null; 1002 var active = false; 1003 var children = element.find(".active").parent().children();
1004 var last = false; 1005 var running = false; 1006 1007 this.settings = $.extend({}, { 1008 "animation": "horizontal", 1009 "direction": "next", 1010 "speed": 600, 1011 "pause": 2500, 1012 "auto": true, 1013 "repeat": true, 1014 "navigator": null, 1015 "clickevents": true, 1016 "hover": true, 1017 "helper": null 1018 }, settings); 1019 1020 this.move = function (direction, next) { 1021 var activeItem = element.find(".active"), 1022 nextItem = next || activeItem[direction](), 1023 innerDirection = this.settings.direction === "next" ? "forward" : "back", 1024 reset = direction === "next" ? "first" : "last", 1025 moving = interval, 1026 slider = this, tmp; 1027 1028 active = true; 1029 1030 if (moving) { this.stop(true); } 1031 1032 if (!nextItem.length) { 1033 nextItem = element.find(".art-slide-item")[reset](); 1034 if (!this.settings.repeat) { last = true; active = false; return; } 1035 } 1036 1037 if ($.support.themeTransition) { 1038 nextItem.addClass(this.settings.direction); 1039 tmp = nextItem.get(0).offsetHeight; 1040 1041 activeItem.addClass(innerDirection); 1042 nextItem.addClass(innerDirection); 1043
1044 element.trigger("beforeSlide", children.length); 1045 1046 element.one($.support.themeTransition.event, function () { 1047 nextItem.removeClass(slider.settings.direction) 1048 .removeClass(innerDirection) 1049 .addClass("active"); 1050 activeItem.removeClass("active") 1051 .removeClass(innerDirection); 1052 active = false; 1053 setTimeout(function () { 1054 element.trigger("afterSlide", children.length); 1055 }, 0); 1056 }); 1057 } else { 1058 element.trigger("beforeSlide", children.length); 1059 1060 activeItem.removeClass("active"); 1061 nextItem.addClass("active"); 1062 active = false; 1063 1064 element.trigger("afterSlide", children.length); 1065 } 1066 1067 this.navigate(nextItem); 1068 1069 if (moving) { this.start(); } 1070 }; 1071 1072 this.navigate = function (position) { 1073 var index = children.index(position); 1074 $(this.settings.navigator).children().removeClass("active").eq(index).addClass("active"); 1075 }; 1076 1077 this.to = function (index) { 1078 var activeItem = element.find(".active"), 1079 children = activeItem.parent().children(), 1080 activeIndex = children.index(activeItem), 1081 slider = this; 1082 1083 if (index > (children.length - 1) || index < 0) { 1084 return; 1085 } 1086 1087 if (active) { 1088 return element.one("afterSlide", function () { 1089 slider.to(index); 1090 }); 1091 } 1092 1093 if (activeIndex === index) { 1094 return; 1095 } 1096 1097 this.move(index > activeIndex ? "next" : "prev", $(children[index])); 1098 }; 1099 1100 this.next = function () { 1101 if (!active) { 1102 if (last) { this.stop(); return; } 1103 this.move("next"); 1104 } 1105 }; 1106 1107 this.prev = function () { 1108 if (!active) { 1109 if (last) { this.stop(); return; } 1110 this.move("prev"); 1111 } 1112 }; 1113 1114 this.start = function (force) { 1115 if (!!force) { 1116 setTimeout($.proxy(this.next, this), 10); 1117 } 1118 interval = setInterval($.proxy(this.next, this), this.settings.pause); 1119 running = true; 1120 }; 1121 1122 this.stop = function (pause) { 1123 clearInterval(interval); 1124 interval = null; 1125 running = !!pause; 1126 active = false; 1127 }; 1128 1129 this.active = function () { 1130 return running; 1131 }; 1132 1133 this.moving = function () { 1134 return active; 1135 }; 1136 1137 this.navigate(children.filter(".active")); 1138 1139 if (this.settings.clickevents) { 1140 $(this.settings.navigator).on("click", "a", { slider: this }, function (event) { 1141 var activeIndex = children.index(children.filter(".active")); 1142 var index = $(this).parent().children().index($(this)); 1143 if (activeIndex !== index) { 1144 event.data.slider.to(index); 1145 } 1146 event.preventDefault(); 1147 }); 1148 } 1149 1150 if (this.settings.hover) { 1151 var slider = this; 1152 element.add(this.settings.navigator) 1153 .add(element.siblings(".art-shapes")).hover(function () { 1154 if (element.is(":visible") && !last) { slider.stop(true); } 1155 }, function () { 1156 if (element.is(":visible") && !last) { slider.start(); } 1157 }); 1158 } 1159 }; 1160 1161 $.fn.themeSlider = function (arg) { 1162 return this.each(function () { 1163 var element = $(this), 1164 data = element.data("slider"), 1165 options = typeof arg === "object" && arg; 1166 1167 if (!data) { 1168 data = new ThemeSlider(element, options); 1169 element.data("slider", data); 1170 } 1171 1172 if (typeof arg === "string" && data[arg]) { 1173 data[arg](); 1174 } else if (data.settings.auto && element.is(":visible")) { 1175 data.start(); 1176 } 1177 }); 1178 }; 1179 1180})(jQuery); 1181 1182 1183 1184 1185if (typeof window.resizeData === 'undefined') window.resizeData = {}; 1186window.resizeData.headerPageWidth = false;
1187if (typeof window.defaultResponsiveData === 'undefined') window.defaultResponsiveData = [false, true, true, true, true, ]; 1188 1189resizeData['headline'] = { 1190 responsive: [ 1191 { left: 0.31, top: 0.41, visible: false }, 1192 { left: 0.31, top: 0.41, visible: false }, 1193 { left: 0.31, top: 0.41, visible: false }, 1194 { left: 0.31, top: 0.41, visible: true }, 1195 { left: 0.31, top: 0.41, visible: true }, 1196 ], 1197 area: { 1198 x: 0, 1199 y: 0 1200 }, 1201 width: 30, 1202 height: 10, 1203 autoWidth: true}; 1204 1205resizeData['positioncontrol-638773178'] = { 1206 responsive: [ 1207 { left: 0.05, top: 0.04, visible: true }, 1208 { left: 0.05, top: 0.04, visible: true }, 1209 { left: 0.05, top: 0.04, visible: true }, 1210 { left: 0.05, top: 0.04, visible: false }, 1211 { left: 0.05, top: 0.04, visible: false }, 1212 ], 1213 area: { 1214 x: 0, 1215 y: 0 1216 }, 1217 width: 547, 1218 height: 26, 1219 autoWidth: false}; 1220 1221resizeData['positioncontrol-2005529201'] = { 1222 responsive: [ 1223 { left: 0.76, top: 0.04, visible: true }, 1224 { left: 0.76, top: 0.04, visible: true }, 1225 { left: 0.76, top: 0.04, visible: true }, 1226 { left: 0.76, top: 0.04, visible: true }, 1227 { left: 0.76, top: 0.04, visible: true }, 1228 ], 1229 area: { 1230 x: 0, 1231 y: 0 1232 }, 1233 width: 346, 1234 height: 26, 1235 autoWidth: false}; 1236 1237resizeData['positioncontrol-174395639'] = { 1238 responsive: [ 1239 { left: 0.99, top: 0.98, visible: true }, 1240 { left: 0.99, top: 0.98, visible: true }, 1241 { left: 0.99, top: 0.98, visible: true }, 1242 { left: 0.99, top: 0.98, visible: false }, 1243 { left: 0.99, top: 0.98, visible: false }, 1244 ], 1245 area: { 1246 x: 0, 1247 y: 0 1248 }, 1249 width: 701, 1250 height: 318, 1251 autoWidth: false}; 1252 1253resizeData['positioncontrol-1912404075'] = { 1254 responsive: [ 1255 { left: 0.01, top: 0.95, visible: true }, 1256 { left: 0.01, top: 0.95, visible: true }, 1257 { left: 0.01, top: 0.95, visible: true }, 1258 { left: 0.01, top: 0.95, visible: false }, 1259 { left: 0.01, top: 0.95, visible: false }, 1260 ], 1261 area: { 1262 x: 0, 1263 y: 0 1264 }, 1265 width: 412, 1266 height: 317, 1267 autoWidth: false}; 1268 1269resizeData['positioncontrol-1732879464'] = { 1270 responsive: [ 1271 { left: 1, top: 0.03, visible: true }, 1272 { left: 1, top: 0.03, visible: true }, 1273 { left: 1, top: 0.03, visible: true }, 1274 { left: 1, top: 0.03, visible: true }, 1275 { left: 1, top: 0.03, visible: true }, 1276 ], 1277 area: { 1278 x: 0, 1279 y: 0 1280 }, 1281 width: 171, 1282 height: 29, 1283 autoWidth: false}; 1284 1285resizeData['logo-1126079370'] = { 1286 responsive: [ 1287 { left: 0, top: 0, visible: true }, 1288 { left: 0, top: 0, visible: true }, 1289 { left: 0, top: 0, visible: false }, 1290 { left: 0, top: 0, visible: false }, 1291 { left: 0, top: 0, visible: false }, 1292 ], 1293 area: { 1294 x: 0, 1295 y: 0 1296 }, 1297 width: 1120, 1298 height: 360, 1299 autoWidth: false}; 1300 1301// used to apply compicated values in style like '!important! 1302function applyCss(object, param, value) { 1303 var rg = new RegExp(param + '\s*:\s*[^;]+;', "i"); 1304 var style = object.attr('style'); 1305 var str = param + ': ' + value + ';'; 1306 if (rg.test(style)) { 1307 style = style.replace(rg, str); 1308 } 1309 else { 1310 style += '; ' + str; 1311 } 1312 1313 object.attr('style', style); 1314} 1315 1316// convert universal coord to pixels 1317function uniToPx(uni, size, parentSize) { 1318 uni = parseFloat(uni || '0'); 1319 if (uni < 0) { 1320 uni = uni * size; 1321 } else if (uni >= 1) { 1322 uni = parentSize - (2 - uni) * size; 1323 } else { 1324 uni = uni * (parentSize - size); 1325 } 1326 1327 return uni; 1328} 1329 1330function isContentSlider(object) { 1331 var isHeader = object.parents('header').length > 0;
1332 if (isHeader) { 1333 return false; 1334 } 1335 var isPageSlider = object.parents('.art-pageslider').length > 0; 1336 if (isPageSlider) 1337 return false; 1338 1339 return true; 1340} 1341 1342function sheetLeftFunc(sheet, object) { 1343 var sheetLeft = sheet.offset().left; 1344 1345 var isHeader = object.parents('header').length > 0; 1346 if (isHeader) { 1347 if (resizeData.headerPageWidth) return sheetLeft; 1348 } else { 1349 var isPageSlider = object.parents('.art-pageslider').length > 0; 1350 if (isPageSlider) { 1351 if (resizeData.pageSliderPageWidth) return sheetLeft; 1352 } 1353 } 1354 1355 return 0; 1356} 1357 1358var headerObjectResizer = { 1359 1360 postInit: false, 1361 1362 resize: (function ($) { 1363 'use strict'; 1364 return function () { 1365 if (!headerObjectResizer.postInit && typeof responsiveDesign !== 'undefined') { 1366 $(window).on('responsiveResize', headerObjectResizer.resize); 1367 headerObjectResizer.postInit = true; 1368 } 1369 1370 var responsiveType = 0; 1371 // if we don't use full custom responsive so we MUST cleanup all styles 1372 var cleanUpStyles = false; 1373 // when use default respo so while in desktop mode always use 0-type, in other case cleanup our styles 1374 if (typeof responsiveDesign !== 'undefined' && 1375 defaultResponsiveData[responsiveDesign.responsiveTypeIdx] && 1376 responsiveDesign.isResponsive) { 1377 cleanUpStyles = true; 1378 } 1379 1380 if (typeof responsiveDesign !== 'undefined') { 1381 if (responsiveDesign.responsiveType === 'tabletlandscape') { 1382 responsiveType = 1; 1383 } else if (responsiveDesign.responsiveType === 'tabletportrait') { 1384 responsiveType = 2; 1385 } else if (responsiveDesign.responsiveType === 'phonelandscape') { 1386 responsiveType = 3; 1387 } else if (responsiveDesign.responsiveType === 'phoneportrait') { 1388 responsiveType = 4; 1389 } 1390 } 1391 1392 var sheet = $('.art-sheet'); 1393 var sheetWidth = sheet.outerWidth(); 1394 1395 var header = $('header'); 1396 var height = 0; 1397 var cssPrefix = 'art-'; 1398 1399 // move html shapes 1400 var headerQuery = 'header.art-header .art-shapes>*, header.art-header .art-textblock, header.art-header>.art-headline, header.art-header>.art-slogan, header.art-header>.art-positioncontrol, header.art-header>.art-logo'; 1401 var pageSliderQuery = '.art-pageslider .art-slide-item>*'; 1402 if (headerObjectResizer.isPreview) { 1403 headerQuery = 'header .art-slider'; 1404 pageSliderQuery = '.art-pageslider .art-slider, .art-pageslider .art-textblock'; 1405 } 1406 $(headerQuery + ', ' + pageSliderQuery).each(function () { 1407 var object = $(this); 1408 height = object.parent().height(); 1409 1410 var off = sheetLeftFunc(sheet, object); 1411 1412 var cls = object.attr('class').split(' '); 1413 $.each(cls, function (key, val) { 1414 val = $.trim(val); 1415 if (val.length === 0) return; 1416 if (val.indexOf(cssPrefix) !== 0) return; 1417 1418 val = val.substring(cssPrefix.length); 1419 var data = resizeData[val]; 1420 if (typeof data === 'undefined') return; 1421 1422 if (cleanUpStyles) { 1423 object.css('display', ''); 1424 object.css('left', ''); 1425 object.css('margin-left', ''); 1426 } 1427 1428 var respData = data.responsive[responsiveType]; 1429 if (respData.visible) { 1430 object.css('display', ''); 1431 } else { 1432 applyCss(object, 'display', 'none !important'); 1433 } 1434 1435 if (cleanUpStyles || !respData.visible) return false; 1436 1437 var x = uniToPx(respData.left, data.autoWidth ? object.width() : data.width, sheetWidth);
1438 x += off; 1439 1440 var y = uniToPx(respData.top, data.height, height); 1441 1442 object.css('left', x + 'px'); 1443 object.css('top', y + 'px'); 1444 applyCss(object, 'margin-left', '0px !important'); 1445 return false; 1446 }); 1447 }); 1448 1449 // move images in slide's background-images 1450 var slides = $('.art-slide-item').add(header); 1451 if (browser.ie && browser.version <= 8) { 1452 slides = slides.add('.art-slide-item .ie8fix'); 1453 } 1454 $.each(slides, function (slideIdx, slide) { 1455 slide = $(slide); 1456 1457 if (slide.closest('.art-collage').length > 0 || cleanUpStyles) { 1458 slide.css('background-position', ''); 1459 return; 1460 } 1461 1462 var slideVisible = slide.is(':visible'); 1463 if (!slideVisible && browser.ie) { 1464 slide.css('display', 'block'); 1465 } 1466 1467 var off = sheetLeftFunc(sheet, slide); 1468 1469 if (browser.ie && browser.version <= 8) { 1470 var s = slide.attr('style'); 1471 if (s) { 1472 s = s.replace(/background\-position[^;]+/, ''); 1473 slide.attr('style', s); 1474 } 1475 } else { 1476 slide.css('background-position', ''); 1477 } 1478 slide.css('background-size', ''); 1479 1480 var bgImage = slide.css('background-image') ? slide.css('background-image').split(',') : []; 1481 var bgPosition = slide.css('background-position') && (slide.css('background-position').replace(/[0][^\d]+/gi, '')).length > 0 ? 1482 slide.css('background-position').split(',') : 1483 []; 1484 if (bgImage.length !== bgPosition.length) { 1485 slide.css('display', ''); 1486 return; 1487 } 1488 1489 height = slide.height(); 1490 if (height === 0) height = slide.parent().height(); 1491 1492 $.each(bgImage, function (idx, val) { 1493 var findImageIdx = val.lastIndexOf('images/'); 1494 var findDotIdx = val.lastIndexOf('.'); 1495 if (findImageIdx === -1 || findDotIdx === -1) return; 1496 1497 var name = val.substring(findImageIdx + 7, findDotIdx); 1498 1499 var data = resizeData[name]; 1500 if (typeof data === 'undefined') return; 1501 1502 var respData = data.responsive[responsiveType]; 1503 // big default coordinates for hiding 1504 var x = 9999, y = 9999; 1505 if (respData.visible) { 1506 x = uniToPx(respData.left, data.width, sheetWidth); 1507 x += off + data.area.x; 1508 1509 y = uniToPx(respData.top, data.height, height); 1510 y += data.area.y; 1511 } 1512 1513 bgPosition[idx] = x + 'px ' + y + 'px'; 1514 }); 1515 1516 slide.css('background-position', bgPosition.join(',')); 1517 1518 if (!slideVisible && browser.ie) { 1519 slide.css('display', ''); 1520 } 1521 }); 1522 1523 }; 1524 })(jQuery), 1525 1526 initialize: function ($) { 1527 if (!browser.ie || browser.version > 8) { 1528 $(window).on('resize', this.resize); 1529 } else { 1530 var resizeTimeout; 1531 var self = this; 1532 $(window).on("resize", function () { 1533 clearTimeout(resizeTimeout); 1534 resizeTimeout = setTimeout(function () { self.resize(); }, 25); 1535 }); 1536 } 1537 } 1538}; 1539 1540headerObjectResizer.initialize(jQuery); 1541jQuery(function ($) { 1542 "use strict"; 1543 if (!browser.ie || browser.version > 8) 1544 return; 1545 processElementMultiplyBg(".art-header", { 1546 "bgimage": "url('images/header.jpg')", 1547 "bgposition": "0 0", 1548 "images": "", 1549 "positions": "" 1550 });
1551}); 1552if (typeof window.resizeData === 'undefined') window.resizeData = {}; 1553 1554window.resizeData.pageSliderPageWidth = false; 1555 1556(function ($) { 1557 'use strict'; 1558 1559 /*global jQuery, artButtonSetup, browser */ 1560 1561 $(function () { 1562 artButtonSetup("btn-primary"); 1563 artButtonSetup("btn"); 1564 artButtonSetup("button"); 1565 artButtonSetup("readon"); 1566 artButtonSetup("readmore"); 1567 }); 1568 1569 $(function ($) { 1570 var links = $('a.art-rss-tag-icon[href="#"]'), 1571 href = $('head link[type="application/rss+xml"]').attr('href'); 1572 if (href) { 1573 links.attr('href', href); 1574 } else { 1575 links.hide(); 1576 } 1577 }); 1578 1579 $(function ($) { 1580 $('.art-messages').each(function () { 1581 $(this).css('display', $(this).find('dl, .alert').length ? '' : 'none'); 1582 }); 1583 }); 1584 1585 $(function ($) { 1586 $('.art-search-button').each(function (i, val) { 1587 var element = $(val), 1588 background = element.css('background-image'); 1589 1590 if (-1 !== background.indexOf('url')) { 1591 element.val(''); 1592 } 1593 if (element.hasClass('art-button')) { 1594 element.removeClass('art-button'); 1595 } 1596 }); 1597 }); 1598 1599 $(function ($) { 1600 // ie < 9 slider multiple background joomla fix 1601 if (!browser.ie || browser.version > 8) { 1602 return; 1603 } 1604 1605 var scriptSrc = jQuery('script[src*="script.js"]').last().attr('src'), 1606 pathToContentImages = scriptSrc.substr(0, scriptSrc.lastIndexOf('/') + 1) + 'data/images/', 1607 pathToDesignImages = scriptSrc.substr(0, scriptSrc.lastIndexOf('/') + 1) + 'images/'; 1608 1609 $('.art-slider .art-slide-item').each(function () { 1610 var ie8fixDiv = $('.ie8fix', this), 1611 slide = $(this); 1612 isDesign = $(this).parents('header').length > 0 || 1613 $(this).parents('.art-pageslider').length > 0; 1614 elements = []; 1615 1616 elements.push(slide); 1617 $.each(ie8fixDiv, function (key, object) { 1618 elements.push(object); 1619 }); 1620 1621 $.each(elements, function (idx, object) { 1622 var bg = $(object).css('background-image'); 1623 if (bg) { 1624 bg = bg.replace(/url\(["'](.+)["']\)/g, function (match, path) { 1625 var imageName = path.substr(path.lastIndexOf('/') + 1); 1626 return 'url(\'' + (isDesign ? pathToDesignImages : pathToContentImages) + imageName + '\')'; 1627 }); 1628 $(object).css('background-image', bg); 1629 } 1630 }); 1631 }); 1632 }); 1633 1634}(jQuery)); 1635 1636if ('undefined' !== typeof(MooTools)) { 1637 window.addEvent('domready', function() { 1638 $$('.hasTip').each(function(el) { 1639 var title = el.get('title'); 1640 if (title) { 1641 title = title.replace(/<strong>(.*?)<\/strong><br \/>/, '$1 :: '); 1642 var parts = title.split('::', 2); 1643 el.store('tip:title', parts[0]); 1644 el.store('tip:text', parts[1]); 1645 } 1646 }); 1647 var JTooltips = new Tips($$('.hasTip'), {"maxTitleChars": 50,"fixed": false}); 1648 }); 1649}
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.