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 $('.webzengadmshapes').each(function () { 207 if ($(this).siblings('.webzengadmslider').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 = $('.webzengadmtextblock 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 $(".webzengadmslider").each(function () { 282 var slider = $(this); 283 var sliderWidth = slider.width(); 284 var nav = slider.siblings(".webzengadmslidenavigator"); 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 if (typeof customHeaderImage != 'undefined') info.images = ''; 303 var path = ""; 304 var script = $('head script[src*="script.js"]'); 305 if (script.length) { 306 path = (script.attr('src') || ''); 307 path = path.substr(0, path.lastIndexOf('/') + 1); 308 } 309 var html = ''; 310 var el = $(selector); 311 var bgimages = info.images.split(","); 312 var bgpositions = info.positions.split(","); 313 for (var i = bgimages.length - 1; i >= 0; i--) { 314 var bgimage = $.trim(bgimages[i]); 315 if (bgimage === "") 316 continue; 317 var imgIdx = bgimage.lastIndexOf('images/'); 318 var className = bgimage.substring(imgIdx + 7, bgimage.length - 6); 319 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>"); 320 } 321 el.css('background-image', info.bgimage.replace(/(images\/[^\/]+)$/, path + '$1')); 322 el.css('background-position-x', "50%"); 323 el.css('background-position-y', "50%"); 324 }); 325})(jQuery); 326 327 328var responsiveNavigator = (function ($) { 329 "use strict"; 330 return function () { 331 if (typeof headerObjectResizer !== 'undefined' && headerObjectResizer.isPreview) return; 332 333 var sheet = $('.webzengadmsheet'); 334 var sheetWidth = sheet.outerWidth(); 335 336 $(".webzengadmslider").each(function () { 337 var currentSlider = $(this); 338 var currentSliderWidth = currentSlider.width(); 339 340 var sliderNavigator = currentSlider.siblings(".webzengadmslidenavigator"); 341 if (sliderNavigator.length) { 342 var off = sheetLeftFunc(sheet, sliderNavigator); 343 var calcWidth = isContentSlider(sliderNavigator) ? currentSliderWidth : sheetWidth; 344 345 var navigatorWidth = sliderNavigator.outerWidth(); 346 var offset = parseInt(sliderNavigator.attr('data-offset') || 0, 10); 347 348 // left offset 349 sliderNavigator.css('margin-left', '0px'); 350 351 var left = parseFloat(sliderNavigator.attr("data-left"), 10); 352 var newLeft = off + uniToPx(left, navigatorWidth, calcWidth); 353 sliderNavigator.css('left', newLeft + 'px'); 354 355 356 // reset top to original value 357 sliderNavigator.css("top", ""); 358 359 // top 360 var navigatorHeight = sliderNavigator.outerHeight(); 361 var uniy = parseFloat(sliderNavigator.attr('data-top'), 10); 362 363 var sliderHeight = parseInt(currentSlider.css('height'), 10); 364 var newTop = uniToPx(uniy, navigatorHeight, sliderHeight); 365 366 sliderNavigator.css("top", (newTop + offset) + 'px'); 367 } 368 }); 369 }; 370})(jQuery); 371 372jQuery(function ($) { 373 "use strict"; 374 375 if (typeof responsiveDesign === "undefined") { 376 $(window).bind("resize", responsiveNavigator); 377 } 378 379 $(window).on("load", function pageInitialize() { 380 $(window).trigger("resize"); 381 $(window).off("load", pageInitialize); 382 }); 383}); 384 385 386/* Icons in Header should have display block. 387 * Otherwise, in case of inline-block there's a space gap in some browsers (Opera 12.16) and icon is cutted. 388 */ 389if (browser.opera) { 390 jQuery(function ($) { 391 $(".webzengadmheader a[class$='tag-icon']").css("display", "block"); 392 }); 393} 394 395jQuery(function($) { 396 "use strict"; 397 $(window).bind("resize", function () { 398 /*global responsiveDesign */ 399 "use strict"; 400 if (typeof responsiveDesign !== "undefined" && responsiveDesign.isResponsive) 401 return; 402 var sheetLeft = $(".webzengadmsheet").offset().left; 403 $("header.webzengadmheader #webzengadmflash-area").each(function () { 404 var object = $(this); 405 object.css("left", sheetLeft + "px"); 406 }); 407 }); 408}); 409 410jQuery(function($) { 411 "use strict"; 412 $('nav.webzengadmnav').addClass("desktop-nav"); 413}); 414 415 416jQuery(function ($) { 417 "use strict"; 418 if (!browser.ie || browser.version > 7) { 419 return; 420 } 421 $('ul.webzengadmhmenu>li:not(:first-child)').each(function () { $(this).prepend('<span class="webzengadmhmenu-separator"> </span>'); }); 422}); 423 424jQuery(function ($) { 425 "use strict"; 426 $("ul.webzengadmhmenu a:not([href])").attr('href', '#').click(function (e) { e.preventDefault(); }); 427}); 428 429jQuery(function($) { 430 "use strict"; 431 $("ul.webzengadmhmenu>li:last-child").addClass("last-child").after("<li class=\"justify-helper\">"); 432 $("ul.webzengadmhmenu>li:not(.justify-separator)").before(" ").after(" "); 433}); 434 435jQuery(function ($) { 436 "use strict"; 437 if (!browser.ie || browser.version > 7) { 438 return; 439 } 440 441 /* Fix width of submenu items. 442 * The width of submenu item calculated incorrectly in IE6-7. IE6 has wider items, IE7 dis
442play items like stairs. 443 */ 444 $.each($("ul.webzengadmhmenu ul"), function () { 445 var maxSubitemWidth = 0; 446 var submenu = $(this); 447 var subitem = null; 448 $.each(submenu.children("li").children("a"), function () { 449 subitem = $(this); 450 var subitemWidth = subitem.outerWidth(false); 451 if (maxSubitemWidth < subitemWidth) { 452 maxSubitemWidth = subitemWidth; 453 } 454 }); 455 if (subitem !== null) { 456 var subitemBorderLeft = parseInt(subitem.css("border-left-width"), 10) || 0; 457 var subitemBorderRight = parseInt(subitem.css("border-right-width"), 10) || 0; 458 var subitemPaddingLeft = parseInt(subitem.css("padding-left"), 10) || 0; 459 var subitemPaddingRight = parseInt(subitem.css("padding-right"), 10) || 0; 460 maxSubitemWidth -= subitemBorderLeft + subitemBorderRight + subitemPaddingLeft + subitemPaddingRight; 461 submenu.children("li").children("a").css("width", maxSubitemWidth + "px"); 462 } 463 }); 464}); 465 466jQuery(function ($) { 467 "use strict"; 468 var setDirection = function() { 469 setHMenuOpenDirection({ 470 container: "div.webzengadmsheet", 471 defaultContainer: "#webzengadmmain", 472 menuClass: "webzengadmhmenu", 473 leftToRightClass: "webzengadmhmenu-left-to-right", 474 rightToLeftClass: "webzengadmhmenu-right-to-left" 475 }); 476 }; 477 if (typeof responsiveDesign !== "undefined") { 478 $(window).on('responsive', setDirection); 479 } else { 480 setDirection(); 481 } 482}); 483 484var setHMenuOpenDirection = (function ($) { 485 "use strict"; 486 return (function(menuInfo) { 487 var defaultContainer = $(menuInfo.defaultContainer); 488 defaultContainer = defaultContainer.length > 0 ? defaultContainer = $(defaultContainer[0]) : null; 489 490 $("ul." + menuInfo.menuClass + ">li>ul").each(function () { 491 var submenu = $(this); 492 493 var submenuWidth = submenu.outerWidth(false); 494 var submenuLeft = submenu.offset().left; 495 496 var mainContainer = submenu.parents(menuInfo.container); 497 mainContainer = mainContainer.length > 0 ? mainContainer = $(mainContainer[0]) : null; 498 499 var container = mainContainer || defaultContainer; 500 if (container !== null) { 501 var containerLeft = container.offset().left; 502 var containerWidth = container.outerWidth(false); 503 504 if (submenuLeft + submenuWidth >= containerLeft + containerWidth) { 505 /* right to left */ 506 submenu.addClass(menuInfo.rightToLeftClass).find("ul").addClass(menuInfo.rightToLeftClass); 507 } else if (submenuLeft <= containerLeft) { 508 /* left to right */ 509 submenu.addClass(menuInfo.leftToRightClass).find("ul").addClass(menuInfo.leftToRightClass); 510 } 511 } 512 }); 513 }); 514})(jQuery); 515 516 517jQuery(function ($) { 518 'use strict'; 519 $(window).bind('resize', function () { 520 var bh = $('body').height(); 521 var mh = 0; 522 var c = $('div.webzengadmcontent'); 523 c.removeAttr('style'); 524 525 $('#webzengadmmain').children().each(function() { 526 if ($(this).css('position') !== 'absolute') { 527 mh += $(this).outerHeight(true); 528 } 529 }); 530 531 if (mh < bh) { 532 var r = bh - mh; 533 c.css('height', (c.parent().outerHeight(true) + r) + 'px'); 534 } 535 }); 536 537 if (browser.ie && browser.version < 8) { 538 $(window).bind('resize', function() { 539 var c = $('div.webzengadmcontent'); 540 var s = c.parent().children('.webzengadmlayout-cell:not(.webzengadmcontent)'); 541 var w = 0; 542 c.hide(); 543 s.each(function() { w += $(this).outerWidth(true); }); 544 c.w = c.parent().width(); c.css('width', c.w - w + 'px'); 545 c.show(); 546 }); 547 } 548 549 $(window).trigger('resize'); 550}); 551 552var artButtonSetup = (function ($) { 553 'use strict'; 554 return (function (className) { 555 $.each($("a." + className + ", button." + className + ", input." + className), function (i, val) { 556 var b = $(val); 557 if (!b.hasClass('webzengadmbutton')) { 558 b.addClass('webzengadmbutton'); 559 } 560 if (b.is('input')) { 561 b.val(b.val().replace(/^\s*/, '')).css('zoom', '1'); 562 } 563 b.mousedown(function () { 564 var b = $(this); 565 b.addClass("active"); 566 }); 567 b.mouseup(function () { 568 var b = $(this); 569 if (b.hasClass('active')) { 570 b.removeClass('active'); 571 } 572 }); 573 b.mouseleave(function () { 574 var b = $(this); 575 if (b.hasClass('active')) { 576 b.removeClass('active'); 577 } 578 }); 579 }); 580 }); 581})(jQuery); 582jQuery(function () { 583 'use strict'; 584 artButtonSetup("webzengadmbutton"); 585}); 586 587var Control = (function ($) { 588 'use strict'; 589 return (function () { 590 this.init = function(label, type, callback) { 591 var chAttr = label.find('input[type="' +type + '"]').attr('checked'); 592 if (chAttr === 'checked') { 593 label.addClass('webzengadmchecked'); 594 } 595 596 label.mouseleave(function () { 597 $(this).removeClass('hovered').removeClass('active'); 598 }); 599 label.mouseover(function () { 600 $(this).addClass('hovered').removeClass('active'); 601 }); 602 label.mousedown(function (event) { 603 if (event.which !== 1) { 604 return; 605 } 606 $(this).addClass('active').removeClass('hovered'); 607 }); 608 label.mouseup(function (event) { 609 if (event.which !== 1) { 610 return; 611 } 612 callback.apply(this); 613 $(this).removeClass('active').addClass('hovered'); 614 }); 615 }; 616 }); 617})(jQuery); 618 619 620jQuery(function ($) { 621 'use strict'; 622 $('.webzengadmpager').contents().filter( 623 function () { 624 return this.nodeType === this.TEXT_NODE; 625 } 626 ).remove(); 627}); 628var fixRssIconLineHeight = (function ($) { 629 "use strict"; 630 return function (className) { 631 $("." + className).css("line-height", $("." + className).height() + "px"); 632 }; 633})(jQuery); 634 635jQuery(function ($) { 636 "use strict"; 637 var rssIcons = $(".webzengadmrss-tag-icon"); 638 if (rssIcons.length){ 639 fixRssIconLineHeight("webzengadmrss-tag-icon"); 640 if (browser.ie && browser.version < 9) { 641 rssIcons.each(function () { 642 if ($.trim($(this).html()) === "") { 643 $(this).css("vertical-align", "middle"); 644 } 645 }); 646 } 647 } 648}); 649(function ($) { 650 'use strict'; 651 // transition && transitionEnd && browser prefix 652 $.support.themeTransition = (function () { 653 var thisBody = document.body || document.documentElement, 654 thisStyle = thisBody.style, 655 support = thisStyle.transition !== undefined || 656 thisStyle.WebkitTransition !== undefined || 657 thisStyle.MozTransition !== undefined || 658 thisStyle.MsTransition !== undefined || 659 thisStyle.OTransition !== undefined; 660 return support && { 661 event: (function () { 662 return "transitionend webkitTransitionEnd otransitionend oTransitionEnd"; 663 })(), 664 prefix: (function () { 665 return ({ 666 opera: "-o-", 667 firefox: "-moz-", 668 chrome: "-webkit-", 669 safari: "-webkit-", 670 ie: "" 671 }[browser.name] || ""); 672 })() 673 }; 674 })(); 675
676 window.BackgroundHelper = function () { 677 var slides = []; 678 var direction = "next"; 679 var motion = "horizontal"; 680 var width = 0; 681 var height = 0; 682 var multiplier = 1; 683 var originalWidth = 0; 684 var originalHeight = 0; 685 var transitionDuration = ""; 686 687 this.init = function (motionType, dir, duration) { 688 direction = dir; 689 motion = motionType; 690 slides = []; 691 width = 0; 692 height = 0; 693 multiplier = 1; 694 originalWidth = 0; 695 originalHeight = 0; 696 transitionDuration = duration; 697 }; 698 699 this.processSlide = function (element, modify) { 700 this.updateSize(element, null); 701 var pos = []; 702 703 var bgPosition = element.css("background-position"); 704 var positions = bgPosition.split(","); 705 $.each(positions, function (i) { 706 var position = $.trim(this); 707 var point = position.split(" "); 708 var zeroValue = browser.ie && browser.version >= 10 ? 0.1 : 0; 709 if (point.length > 1) { 710 var x = point[0].indexOf('%') === -1 ? parseFloat(point[0], 10) : zeroValue; 711 var y = point[1].indexOf('%') === -1 ? parseFloat(point[1], 10) : zeroValue; 712 pos.push({ x: x, y: y }); 713 } else { 714 pos.push({ x: zeroValue, y: zeroValue }); 715 } 716 }); 717 718 slides.push({ 719 "images": element.css("background-image"), 720 "sizes": element.css("background-size"), 721 "positions": pos 722 }); 723 724 if (modify) 725 element.css("background-image", "none"); 726 }; 727 728 this.updateSize = function (element, initialSize) { 729 width = element.outerWidth(false); 730 height = element.outerHeight(); 731 if (initialSize && parseInt(initialSize.width, 10) !== 0) { 732 originalWidth = parseInt(initialSize.width, 10); 733 originalHeight = parseInt(initialSize.height, 10); 734 if (motion === "fade") { 735 $.each(element.children(), function (i) { 736 $(this).css("background-position", getCssPositions(slides[i].positions, { x: 0, y: 0 })); 737 }); 738 } 739 } 740 }; 741 742 this.setBackground = function (element, items) { 743 var bg = []; 744 var sizes = []; 745 $.each(items, function (i, o) { 746 bg.push(o.images); 747 sizes.push(o.sizes); 748 }); 749 element.css({ 750 "background-image": bg.join(", "), 751 //"background-size": sizes.join(", "), 752 "background-repeat": "no-repeat" 753 }); 754 }; 755 756 this.setPosition = function (element, items) { 757 var pos = []; 758 $.each(items, function (i, o) { 759 pos.push(o.positions); 760 }); 761 element.css({ 762 "background-position": pos.join(", ") 763 }); 764 }; 765 766 this.current = function (index) { 767 return slides[index] || null; 768 }; 769 770 this.next = function (index) { 771 var next; 772 if (direction === "next") { 773 next = (index + 1) % slides.length; 774 } else { 775 next = index - 1; 776 if (next < 0) { 777 next = slides.length - 1; 778 } 779 } 780 return slides[next]; 781 }; 782 783 this.items = function (prev, next, move) { 784 var prevItem = { x: 0, y: 0 }; 785 var nextItem = { x: 0, y: 0 }; 786 var isDirectionNext = direction === "next"; 787 var verticalOffset = -(originalHeight - height) / 2; 788 var horizontalOffset = -(originalWidth - width) / 2; 789 if (motion === "horizontal") { 790 prevItem.y = nextItem.y = -(originalHeight - height) / 2; 791 prevItem.x = horizontalOffset; 792 nextItem.x = (isDirectionNext ? originalWidth : -originalWidth) + horizontalOffset; 793 if (move) { 794 prevItem.x += isDirectionNext ? -originalWidth : originalWidth; 795 nextItem.x += isDirectionNext ? -originalWidth : originalWidth; 796 } 797 } else if (motion === "vertical") { 798 prevItem.x = nextItem.x = horizontalOffset; 799 prevItem.y = verticalOffset; 800 nextItem.y = (isDirectionNext ? originalHeight : -originalHeight) + verticalOffset; 801 if (move) { 802 prevItem.y += isDirectionNext ? -originalHeight : originalHeight; 803 nextItem.y += isDirectionNext ? -originalHeight : originalHeight; 804 } 805 } 806 var result = []; 807 if (!!prev) { 808 result.push({ images: prev.images, positions: getCssPositions(prev.positions, prevItem), sizes: prev.sizes }); 809 } 810 if (!!next) { 811 result.push({ images: next.images, positions: getCssPositions(next.positions, nextItem), sizes: next.sizes }); 812 } 813 814 if (direction === "next") { 815 result.reverse(); 816 } 817 818 return result; 819 }; 820 821 this.transition = function (container, on) { 822 container.css($.support.themeTransition.prefix + "transition", on ? "background-position " + transitionDuration + " ease-in-out" : ""); 823 }; 824 825 function getCssPositions(positions, offset) { 826 var result = []; 827 if (positions === undefined) { 828 return ""; 829 } 830 offset.x = offset.x || 0; 831 offset.y = offset.y || 0; 832 for (var i = 0; i < positions.length; i++) { 833 result.push((positions[i].x * 1 + offset.x) + "px " + (positions[i].y * 1 + offset.y) + "px"); 834 } 835 return result.join(", "); 836 } 837 }; 838 839 840 var ThemeSlider = function (element, settings) { 841 842 var interval = null; 843 var active = false;
844 var children = element.find(".active").parent().children(); 845 var last = false; 846 var running = false; 847 848 this.settings = $.extend({}, { 849 "animation": "horizontal", 850 "direction": "next", 851 "speed": 600, 852 "pause": 2500, 853 "auto": true, 854 "repeat": true, 855 "navigator": null, 856 "clickevents": true, 857 "hover": true, 858 "helper": null 859 }, settings); 860 861 this.move = function (direction, next) { 862 var activeItem = element.find(".active"), 863 nextItem = next || activeItem[direction](), 864 innerDirection = this.settings.direction === "next" ? "forward" : "back", 865 reset = direction === "next" ? "first" : "last", 866 moving = interval, 867 slider = this, tmp; 868 869 active = true; 870 871 if (moving) { this.stop(true); } 872 873 if (!nextItem.length) { 874 nextItem = element.find(".webzengadmslide-item")[reset](); 875 if (!this.settings.repeat) { last = true; active = false; return; } 876 } 877 878 if ($.support.themeTransition) { 879 nextItem.addClass(this.settings.direction); 880 tmp = nextItem.get(0).offsetHeight; 881 882 activeItem.addClass(innerDirection); 883 nextItem.addClass(innerDirection); 884
885 element.trigger("beforeSlide", children.length); 886 887 element.one($.support.themeTransition.event, function () { 888 nextItem.removeClass(slider.settings.direction) 889 .removeClass(innerDirection) 890 .addClass("active"); 891 activeItem.removeClass("active") 892 .removeClass(innerDirection); 893 active = false; 894 setTimeout(function () { 895 element.trigger("afterSlide", children.length); 896 }, 0); 897 }); 898 } else { 899 element.trigger("beforeSlide", children.length); 900 901 activeItem.removeClass("active"); 902 nextItem.addClass("active"); 903 active = false; 904 905 element.trigger("afterSlide", children.length); 906 } 907 908 this.navigate(nextItem); 909 910 if (moving) { this.start(); } 911 }; 912 913 this.navigate = function (position) { 914 var index = children.index(position); 915 $(this.settings.navigator).children().removeClass("active").eq(index).addClass("active"); 916 }; 917 918 this.to = function (index) { 919 var activeItem = element.find(".active"), 920 children = activeItem.parent().children(), 921 activeIndex = children.index(activeItem), 922 slider = this; 923 924 if (index > (children.length - 1) || index < 0) { 925 return; 926 } 927 928 if (active) { 929 return element.one("afterSlide", function () { 930 slider.to(index); 931 }); 932 } 933 934 if (activeIndex === index) { 935 return; 936 } 937 938 this.move(index > activeIndex ? "next" : "prev", $(children[index])); 939 }; 940 941 this.next = function () { 942 if (!active) { 943 if (last) { this.stop(); return; } 944 this.move("next"); 945 } 946 }; 947 948 this.prev = function () { 949 if (!active) { 950 if (last) { this.stop(); return; } 951 this.move("prev"); 952 } 953 }; 954 955 this.start = function (force) { 956 if (!!force) { 957 setTimeout($.proxy(this.next, this), 10); 958 } 959 interval = setInterval($.proxy(this.next, this), this.settings.pause); 960 running = true; 961 }; 962 963 this.stop = function (pause) { 964 clearInterval(interval); 965 interval = null; 966 running = !!pause; 967 active = false; 968 }; 969 970 this.active = function () { 971 return running; 972 }; 973 974 this.moving = function () { 975 return active; 976 }; 977 978 this.navigate(children.filter(".active")); 979 980 if (this.settings.clickevents) { 981 $(this.settings.navigator).on("click", "a", { slider: this }, function (event) { 982 var activeIndex = children.index(children.filter(".active")); 983 var index = $(this).parent().children().index($(this)); 984 if (activeIndex !== index) { 985 event.data.slider.to(index); 986 } 987 event.preventDefault(); 988 }); 989 } 990 991 if (this.settings.hover) { 992 var slider = this; 993 element.add(this.settings.navigator) 994 .add(element.siblings(".webzengadmshapes")).hover(function () { 995 if (element.is(":visible") && !last) { slider.stop(true); } 996 }, function () { 997 if (element.is(":visible") && !last) { slider.start(); } 998 }); 999 } 1000 }; 1001 1002 $.fn.themeSlider = function (arg) { 1003 return this.each(function () { 1004 var element = $(this), 1005 data = element.data("slider"), 1006 options = typeof arg === "object" && arg; 1007 1008 if (!data) { 1009 data = new ThemeSlider(element, options); 1010 element.data("slider", data); 1011 } 1012 1013 if (typeof arg === "string" && data[arg]) { 1014 data[arg](); 1015 } else if (data.settings.auto && element.is(":visible")) { 1016 data.start(); 1017 } 1018 }); 1019 }; 1020 1021})(jQuery); 1022 1023 1024 1025 1026if (typeof window.resizeData === 'undefined') window.resizeData = {}; 1027window.resizeData.headerPageWidth = false;
1028if (typeof window.defaultResponsiveData === 'undefined') window.defaultResponsiveData = [false, true, true, true, true, ]; 1029 1030resizeData['object1568495720'] = { 1031 responsive: [ 1032 { left: 0, top: -0.04, visible: true }, 1033 { left: 0, top: -0.04, visible: true }, 1034 { left: 0, top: -0.04, visible: true }, 1035 { left: 0, top: -0.04, visible: true }, 1036 { left: 0, top: -0.04, visible: true }, 1037 ], 1038 area: { 1039 x: 0, 1040 y: 0 1041 }, 1042 width: 247, 1043 height: 150, 1044 autoWidth: false}; 1045 1046resizeData['object1394564778'] = { 1047 responsive: [ 1048 { left: -0.96, top: -0.93, visible: true }, 1049 { left: -0.96, top: -0.93, visible: true }, 1050 { left: -0.96, top: -0.93, visible: true }, 1051 { left: -0.96, top: -0.93, visible: true }, 1052 { left: -0.96, top: -0.93, visible: true }, 1053 ], 1054 area: { 1055 x: 0, 1056 y: 0 1057 }, 1058 width: 253, 1059 height: 147, 1060 autoWidth: false}; 1061 1062resizeData['slogan'] = { 1063 responsive: [ 1064 { left: 0.97, top: 0.56, visible: true }, 1065 { left: 0.97, top: 0.56, visible: true }, 1066 { left: 0.97, top: 0.56, visible: true }, 1067 { left: 0.97, top: 0.56, visible: true }, 1068 { left: 0.97, top: 0.56, visible: true }, 1069 ], 1070 area: { 1071 x: 0, 1072 y: 0 1073 }, 1074 width: 681, 1075 height: 36, 1076 autoWidth: true}; 1077 1078// used to apply compicated values in style like '!important! 1079function applyCss(object, param, value) { 1080 var rg = new RegExp(param + '\s*:\s*[^;]+;', "i"); 1081 var style = object.attr('style'); 1082 var str = param + ': ' + value + ';'; 1083 if (rg.test(style)) { 1084 style = style.replace(rg, str); 1085 } 1086 else { 1087 style += '; ' + str; 1088 } 1089 1090 object.attr('style', style); 1091} 1092 1093// convert universal coord to pixels 1094function uniToPx(uni, size, parentSize) { 1095 uni = parseFloat(uni || '0'); 1096 if (uni < 0) { 1097 uni = uni * size; 1098 } else if (uni >= 1) { 1099 uni = parentSize - (2 - uni) * size; 1100 } else { 1101 uni = uni * (parentSize - size); 1102 } 1103 1104 return uni; 1105} 1106 1107function isContentSlider(object) { 1108 var isHeader = object.parents('header').length > 0; 1109 if (isHeader) { 1110 return false; 1111 } 1112 var isPageSlider = object.parents('.webzengadmpageslider').length > 0; 1113 if (isPageSlider) 1114 return false; 1115 1116 return true; 1117} 1118 1119function sheetLeftFunc(sheet, object) { 1120 var sheetLeft = sheet.offset().left; 1121 1122 var isHeader = object.parents('header').length > 0; 1123 if (isHeader) { 1124 if (resizeData.headerPageWidth) return sheetLeft; 1125 } else { 1126 var isPageSlider = object.parents('.webzengadmpageslider').length > 0; 1127 if (isPageSlider) { 1128 if (resizeData.pageSliderPageWidth) return sheetLeft; 1129 } 1130 } 1131 1132 return 0; 1133} 1134 1135var headerObjectResizer = { 1136 1137 postInit: false, 1138 1139 resize: (function ($) { 1140 'use strict'; 1141 return function () { 1142 if (!headerObjectResizer.postInit && typeof responsiveDesign !== 'undefined') { 1143 $(window).on('responsiveResize', headerObjectResizer.resize); 1144 headerObjectResizer.postInit = true; 1145 } 1146 1147 var responsiveType = 0; 1148 // if we don't use full custom responsive so we MUST cleanup all styles 1149 var cleanUpStyles = false; 1150 // when use default respo so while in desktop mode always use 0-type, in other case cleanup our styles 1151 if (typeof responsiveDesign !== 'undefined' && 1152 defaultResponsiveData[responsiveDesign.responsiveTypeIdx] && 1153 responsiveDesign.isResponsive) { 1154 cleanUpStyles = true; 1155 } 1156 1157 if (typeof responsiveDesign !== 'undefined') { 1158 if (responsiveDesign.responsiveType === 'tabletlandscape') { 1159 responsiveType = 1; 1160 } else if (responsiveDesign.responsiveType === 'tabletportrait') { 1161 responsiveType = 2; 1162 } else if (responsiveDesign.responsiveType === 'phonelandscape') { 1163 responsiveType = 3; 1164 } else if (responsiveDesign.responsiveType === 'phoneportrait') { 1165 responsiveType = 4; 1166 } 1167 } 1168 1169 var sheet = $('.webzengadmsheet'); 1170 var sheetWidth = sheet.outerWidth(); 1171 1172 var header = $('header'); 1173 var height = 0; 1174 var cssPrefix = 'webzengadm'; 1175 1176 // move html shapes 1177 var headerQuery = 'header.webzengadmheader .webzengadmshapes>*, header.webzengadmheader .webzengadmtextblock, header.webzengadmheader>.webzengadmheadline, header.webzengadmheader>.webzengadmslogan, header.webzengadmheader>.webzengadmpositioncontrol, header.webzengadmheader>.webzengadmlogo'; 1178 var pageSliderQuery = '.webzengadmpageslider .webzengadmslide-item>*'; 1179 if (headerObjectResizer.isPreview) { 1180 headerQuery = 'header .webzengadmslider'; 1181 pageSliderQuery = '.webzengadmpageslider .webzengadmslider, .webzengadmpageslider .webzengadmtextblock'; 1182 } 1183 $(headerQuery + ', ' + pageSliderQuery).each(function () { 1184 var object = $(this); 1185 height = object.parent().height(); 1186 1187 var off = sheetLeftFunc(sheet, object); 1188 1189 var cls = object.attr('class').split(' '); 1190 $.each(cls, function (key, val) { 1191 val = $.trim(val); 1192 if (val.length === 0) return; 1193 if (val.indexOf(cssPrefix) !== 0) return; 1194 1195 val = val.substring(cssPrefix.length); 1196 var data = resizeData[val]; 1197 if (typeof data === 'undefined') return; 1198 1199 if (cleanUpStyles) { 1200 object.css('display', ''); 1201 object.css('left', ''); 1202 object.css('margin-left', ''); 1203 } 1204 1205 var respData = data.responsive[responsiveType]; 1206 if (respData.visible) { 1207 object.css('display', ''); 1208 } else { 1209 applyCss(object, 'display', 'none !important'); 1210 } 1211 1212 if (cleanUpStyles || !respData.visible) return false;
1213 1214 var x = uniToPx(respData.left, data.autoWidth ? object.width() : data.width, sheetWidth); 1215 x += off; 1216 1217 var y = uniToPx(respData.top, data.height, height); 1218 1219 object.css('left', x + 'px'); 1220 object.css('top', y + 'px'); 1221 applyCss(object, 'margin-left', '0px !important'); 1222 return false; 1223 }); 1224 }); 1225 1226 // move images in slide's background-images 1227 var slides = $('.webzengadmslide-item').add(header); 1228 if (browser.ie && browser.version <= 8) { 1229 slides = slides.add('.webzengadmslide-item .ie8fix'); 1230 } 1231 $.each(slides, function (slideIdx, slide) { 1232 slide = $(slide); 1233 1234 if (slide.closest('.webzengadmcollage').length > 0 || cleanUpStyles) { 1235 slide.css('background-position', ''); 1236 return; 1237 } 1238 1239 var slideVisible = slide.is(':visible'); 1240 if (!slideVisible && browser.ie) { 1241 slide.css('display', 'block'); 1242 } 1243 1244 var off = sheetLeftFunc(sheet, slide); 1245 1246 if (browser.ie && browser.version <= 8) { 1247 var s = slide.attr('style'); 1248 if (s) { 1249 s = s.replace(/background\-position[^;]+/, ''); 1250 slide.attr('style', s); 1251 } 1252 } else { 1253 slide.css('background-position', ''); 1254 } 1255 slide.css('background-size', ''); 1256 1257 var bgImage = slide.css('background-image') ? slide.css('background-image').split(',') : []; 1258 var bgPosition = slide.css('background-position') && (slide.css('background-position').replace(/[0][^\d]+/gi, '')).length > 0 ? 1259 slide.css('background-position').split(',') : 1260 []; 1261 if (bgImage.length !== bgPosition.length) { 1262 slide.css('display', ''); 1263 return; 1264 } 1265 1266 height = slide.height(); 1267 if (height === 0) height = slide.parent().height(); 1268 1269 $.each(bgImage, function (idx, val) { 1270 var findImageIdx = val.lastIndexOf('images/'); 1271 var findDotIdx = val.lastIndexOf('.'); 1272 if (findImageIdx === -1 || findDotIdx === -1) return; 1273 1274 var name = val.substring(findImageIdx + 7, findDotIdx); 1275 1276 var data = resizeData[name]; 1277 if (typeof data === 'undefined') return; 1278 1279 var respData = data.responsive[responsiveType]; 1280 // big default coordinates for hiding 1281 var x = 9999, y = 9999; 1282 if (respData.visible) { 1283 x = uniToPx(respData.left, data.width, sheetWidth); 1284 x += off + data.area.x; 1285 1286 y = uniToPx(respData.top, data.height, height); 1287 y += data.area.y; 1288 } 1289 1290 bgPosition[idx] = x + 'px ' + y + 'px'; 1291 }); 1292 1293 slide.css('background-position', bgPosition.join(',')); 1294 1295 if (!slideVisible && browser.ie) { 1296 slide.css('display', ''); 1297 } 1298 }); 1299 1300 }; 1301 })(jQuery), 1302 1303 initialize: function ($) { 1304 if (!browser.ie || browser.version > 8) { 1305 $(window).on('resize', this.resize); 1306 } else { 1307 var resizeTimeout; 1308 var self = this; 1309 $(window).on("resize", function () { 1310 clearTimeout(resizeTimeout); 1311 resizeTimeout = setTimeout(function () { self.resize(); }, 25); 1312 }); 1313 } 1314 } 1315}; 1316 1317headerObjectResizer.initialize(jQuery); 1318jQuery(function ($) { 1319 "use strict"; 1320 if (!browser.ie || browser.version > 8) 1321 return; 1322 processElementMultiplyBg(".webzengadmheader", { 1323 "bgimage": "url('images/header.jpg')", 1324 "bgposition": "0 0", 1325 "images": "url('images/object1568495720.jpg'),url('images/object1394564778.jpg'), ", 1326 "positions": "4px -6px,-243px -137px, " 1327 }); 1328}); 1329if (typeof window.resizeData === 'undefined') window.resizeData = {}; 1330 1331window.resizeData.pageSliderPageWidth = false;
1332 1333 1334jQuery(function ($) { 1335 'use strict'; 1336 artButtonSetup("button"); 1337 1338 var indexURL = $('link[rel="home"]').attr('href'); 1339 var iframeTagPart = ['<iframe frameBorder="0" allowtransparency="true" ' , 'background-color:transparent;filter:progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0);"></iframe>']; 1340 if(indexURL && $('header.clickable').length) { 1341 if($('#webzengadmheader-bg').length) { 1342 $('header').append( 1343 (browser.ie ? iframeTagPart[0] + 'style="position:absolute;height:100%;width:40000px;left:-20000px;' + iframeTagPart[1] : '' ) + 1344 '<a style="position:absolute;height:100%;width:40000px;left:-20000px;top:0px;z-index:99;" href="' + indexURL + '"></a>'); 1345 } else { 1346 $('header').append( 1347 (browser.ie ? iframeTagPart[0] + 'style="position:absolute;height:100%;width:100%;' + iframeTagPart[1] : '' ) + 1348 '<a style="position:absolute;height:100%;width:100%;outline:" href="' + indexURL + '"></a>'); 1349 } 1350 } 1351});
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.