1(function() { 2 var $window = $(window); 3 var height = $window.height(); 4 var width = $window.width(); 5 var $floatmenu = $('.section-support-menu:not(.noscroll), .search-menu'); 6 var $topmenu = $('.section-float-menu'); 7 var offset = 0; 8 var $mobile = false; 9 var $device; 10 var loaded = false; 11 var maxWidth = $('.dealer-map').width(); 12 var maxHeight = $('.dealer-map').height(); 13 var PropertiesHeight = $('.section-properties').css('height'); 14 var $searchfield; 15 16 newCart = { 17 options: { 18 // template: '<tr data-id="{id}"><td class="label">{label}</td><td class="price">{price}</td><td class="action"><button type="button" >×</button></td></tr>', 19 template: '<li data-id="{id}"><div class="menu--title"><span class="mnuCart bold label">{label}</span><span class="mnuCart bold label licence-type">{type}</span></div><div class="menu--price"><span class="mnuCart bold">{price}</span><a href="#" class="close"></a></div></li>', 20 defaultPriceTemplate: '<strong>{price} {currency}</strong>', 21 priceTemplate: '<span>{price} {currency}</span>', 22 defaultCurrency: '', 23 currencies: [], 24 apiUrl: '', 25 networkMultiplier: 30, 26 leaseMultiplier: 45 27 }, 28 init: function() { 29 return false; 30 var self = this; 31 this.cart = {}; 32 this.element = $('li.item.cart'); 33 this.mobileCart = $('#my-mobile-cart ul.cart-items'); 34 35 this.options.defaultCurrency = window.shopConfigOptions.currency; 36 this.options.apiUrl = this.element.attr('data-api-url'); 37 this.content = this.element.find('ul.cart-items'); 38 39 this.emptyCart = emptyCart; 40 41 this.silent = true; 42 this.isActive = false; 43 44 this.counts = this.element.find('.count'); 45 this.timer = null; 46 var data = this.readCartPrograms(); 47 48 if (data) { 49 this.render(data); 50 } 51 }, 52 addToCart: function(qty) { 53 var self = this; 54 this.cart = this.readCartPrograms(); 55 56 var result = $.grep(this.cart, function(e){ return e.id == programApi.id; }); 57 58 var pr = programApi; 59 if (result.length) { 60 pr = result[0]; 61 } else { 62 this.cart.push(pr); 63 } 64 65 pr[qty] = (Number(pr[qty]) || 0) + 1; 66 67 this.writeCartData(); 68 return this; 69 }, 70 71 getCart: function() { 72 var cart = JSON.parse(window.localStorage.getItem('cart')); 73 if (cart == null) { 74 return this.emptyCart; 75 } 76 if (cart.version != this.emptyCart.version) { 77 this.writeEmptyCartData(); 78 return this.emptyCart; 79 } 80 return cart; 81 }, 82 writeEmptyCartData: function() { 83 var self = this; 84 var cart = this.emptyCart; 85 window.localStorage.setItem('cart', JSON.stringify(cart)); 86 return this; 87 }, 88 readCartPrograms: function() { 89 var self = this; 90 var cart = this.getCart(); 91 if (cart.programs.length < 1) { 92 return []; 93 } 94 return cart.programs.sort(function(a,b){return b.sortOrder - a.sortOrder}) 95 }, 96 writeCartData: function() { 97 var self = this; 98 var cart = this.getCart(); 99 100 cart.programs = this.cart; 101 cart.cartStep = 1; 102 window.localStorage.setItem('cart', JSON.stringify(cart)); 103 104 return this; 105 }, 106 deleteCartItem: function(id) { 107 var self = this; 108 this.cart = this.readCartData(); 109 this.cart = $.grep(this.cart, function(e){ return e.id != id; }); 110 this.writeCartData(); 111 return this; 112 }, 113 render: function(data) { 114 var self = this; 115 var buffer = []; 116 var types = ['local_quantity', 'lease_local_quantity', 'network_quantity', 'lease_network_quantity']; 117 var count = 0; 118 var cartToolbarTranslations = { 119 local_quantity: window.i18n['front']['local_licence'], 120 lease_local_quantity: window.i18n['front']['lease_local_licence'], 121 network_quantity: window.i18n['front']['network_licence'], 122 lease_network_quantity: window.i18n['front']['lease_network_licence'] 123 }; 124 125 if (typeof data === 'object' && data.length) { 126 $.each(data, function(key,item) { 127 $.each(types, function(k, type) { 128 var no = Number(item[type]) || 0; 129 if (no > 0) { 130 count = count + no; 131 var content = self.substitute(self.options.template, { 132 type: cartToolbarTranslations[type], 133 id: item.id, 134 label: item[type] + "x" + ' ' + item.name, 135 price: self.createPrice(item, type) 136 }); 137 buffer.push(content); 138 } 139 }); 140 }); 141 142 this.counts.html(count).css('display','block'); 143 this.element.addClass('cart-full'); 144 this.mobileCart.addClass('cart-full'); 145 $('.cart-items').removeClass('hidden'); 146 $('div.menu.cart .empty-cart').removeClass('hidden'); 147 $('div.menu.cart .emptycart').addClass('hidden'); 148 this.element.find('.menu--footer').css('position','relative'); 149 } else { 150 this.element.removeClass('cart-full'); 151 this.mobileCart.removeClass('cart-full'); 152 $('.cart-items').addClass('hidden'); 153 $('div.menu.cart .empty-cart').addClass('hidden'); 154 $('div.menu.cart .emptycart').removeClass('hidden'); 155 APICart.close() 156 checkClosing(); 157 this.element.find('.menu--footer').css('position','absolute'); 158 this.counts.html(0).css('display','none'); 159 } 160 161 162 buffer.push('</tbody></table>'); 163 this.content.html(buffer.join('')); 164 this.mobileCart.html(buffer.join('')); 165 166 if (!this.silent) { 167 this.open(); 168 this.timer = this.close.delay(3000, this); 169 } 170 }, 171 substitute: function(template, object, regexp){ 172 return String(template).replace(regexp || (/\\?\{([^{}]+)\}/g), function(match, name){ 173 if (match.charAt(0) == '\\') return match.slice(1); 174 return (object[name] != null) ? object[name] : ''; 175 }); 176 }, 177 178 toggle: function() { 179 if (this.element.hasClass('activex')) { 180 this.close(); 181 } else { 182 this.open(); 183 } 184 return this; 185 }, 186 187 open: function() { 188 clearTimeout(this.timer); 189 $('.thismenuopened').removeClass('thismenuopened'); 190 $('#main-menu .menu-label.icon-cart').addClass('thismenuopened'); 191 adaptMenu(); 192 this.element.addClass('activex'); 193 194 return this; 195 }, 196 197 close: function() { 198 if (!this.isActive) { 199 this.element.removeClass('activex'); 200 $('#menushaker').css('opacity','0').css('visibility', 'hidden'); 201 $('.thismenuopened').removeClass('thismenuopened'); 202 } 203 return this; 204 }, 205 206 createPrice: function(item, type) { 207 var value = this.getItemPrice(item, type) * (Number(item[type]) || 0); 208 return this.priceFormat(value); 209 }, 210 priceFormat(price, show = false, decimals = false) 211 { 212 let currency = window.shopConfigOptions.currency; 213 price = Number(price) || 0; 214 if (Number(price) == 0 && show == false) { 215 return ''; 216 } 217 let decimalCount = 2; 218 //(currency == 'EUR' || currency == 'USD' ) && 219 if (decimals == true) { 220 decimalCount = 2; 221 } else if (price % 1 == 0) { 222 decimalCount = 0; 223 } 224 225 let decimal = window.priceFormatOptions.price_decimal_format; 226 let thousands = window.priceFormatOptions.price_thousands_format; 227 let format = window.priceFormatOptions.currency_format; 228 format = unescape(format); 229 230 let i = parseInt(price = Math.abs(Number(price) || 0).toFixed(decimalCount)).toString(); 231 let j = (i.length > 3) ? i.length % 3 : 0; 232 233 let value = (j ? i.substr(0, j) + thousands : '') + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + thousands) + (decimalCount ? decimal + Math.abs(price - i).toFixed(decimalCount).slice(2) : ""); 234 return format.replace('{value}', value).replace(/ /gi," "); 235 }, 236 getItemPrice: function(item, qty) { 237 var currency = this.options.defaultCurrency; 238 var basePrice = Number(item['price_list'][currency] || 0); 239 var price = 0; 240 if (qty == 'local_quantity') { 241 price = basePrice || 0; 242 } else if (qty == 'network_quantity') { 243 price = basePrice + (basePrice * this.options.networkMultiplier / 100) 244 } else if (qty == 'lease_local_quantity') { 245 price = (basePrice * this.options.leaseMultiplier / 100); 246 } else if (qty == 'lease_network_quantity') { 247 var newBase = (basePrice * this.options.leaseMultiplier / 100);
248 price = (newBase + (newBase * this.options.networkMultiplier / 100)); 249 } 250 251 return Math.trunc(price); 252 }, 253 254 }; 255 256 257 if($floatmenu.length){ offset = parseInt($floatmenu.offset().top) - 110; } 258 259 $(window).resize(function() { 260 height = $window.height(); 261 width = $window.width(); 262 adapt(); 263 }); 264 265 /*-- STICKY MENUS ON FEW PAGES --*/ 266 $(window).bind('scroll', function () { 267 if($floatmenu.length && ($floatmenu.outerHeight( true ) < $(window, screen).height() )){ 268 if(($(window).scrollTop() > offset) && ($(window).scrollTop()+$window.height()) < ($(document).height()-270)) { 269 if($(window).scrollTop()-offset-100>0){ 270 $floatmenu.css('position', 'absolute').css('top', ($(window).scrollTop()-offset-100) + 'px'); 271 }else{ 272 $floatmenu.css('position', 'absolute').css('top', '0px'); 273 } 274 } 275 }else if ($floatmenu.outerHeight( true ) > $(window, screen).height()){ 276 $floatmenu.css('position', 'absolute').css('top', 0); 277 } 278 $('.support-container__onlineHelp').css('min-height', $floatmenu.outerHeight( true )+'px'); 279 }); 280 281 282 /*-- CART ADDING AND REMOVING LISTENERS --*/ 283 $(document).on('click', '.buy-button-list li a', function(event){ 284 hj('trigger', 'add_to_cart'); 285 event.preventDefault(); 286 window.fireEvent('addToCart', $(this).attr('href')); 287 }); 288 289 $(document).on('click', '.removeCartButton', function(event){ 290 event.preventDefault(); 291 var parentLi = $(this).parent().parent(); 292 var url = new URI($('li.item.cart').attr('data-api-url')+"?product_id="+parentLi.attr('data-id')+"&remove=true"); 293 window.fireEvent('removeFromCart', url.toString()); 294 parentLi.slideUp(100); 295 }); 296 297 298 299 /*-- GLOBAL LISTENERY --*/ 300 301 $(document).on('mouseenter', '.popup-info', function(){ 302 var $panel = $(this).parent().find('.content').hide(); 303 $panel.addClass('popup'); 304 }); 305 306 307 $(document).on('click', '.popup-info', function(){ 308 return false; 309 }); 310 311 312 $(document).on('mouseout', '.popup-info', function(){ 313 var $panel = $(this).parent().find('.content').hide(); 314 $panel.removeClass('popup'); 315 }); 316 317 $(document).on('click', '.mobile-menu.mobile--cart a', function(event){ 318 $(this).addClass('enable'); 319 $(".mobile-menu.mobile--main a").removeClass("icon-mobile-menu-2"); 320 $(".mobile-menu.mobile--main a").addClass("icon-close"); 321 }); 322 $(document).on('click', '.mobile-menu.mobile--search a', function(event){ 323 $(this).addClass('enable'); 324 $(".mobile-menu.mobile--main a").removeClass("icon-mobile-menu-2"); 325 $(".mobile-menu.mobile--main a").addClass("icon-close"); 326 }); 327 $(document).on('click', '.mobile-menu.mobile--main a', function(event){ 328 $(this).addClass('enable'); 329 $(".mobile-menu.mobile--main a").removeClass("icon-mobile-menu-2"); 330 $(".mobile-menu.mobile--main a").addClass("icon-close"); 331 }); 332 $(document).on('click', '.mobile-menu.mobile--login a', function(event){ 333 $(this).addClass('enable'); 334 $(".mobile-menu.mobile--main a").removeClass("icon-mobile-menu-2"); 335 $(".mobile-menu.mobile--main a").addClass("icon-close"); 336 }); 337 338 339 /*-- #SEARCH SCROLL TO FOUND ITEM BY MENU CONTROLLER --*/ 340 $(document).on('click', '.search-menu a', function(event){ 341 event.preventDefault(); 342 var actualtab = $(".tabs-generated li.active a").attr('href').replace('#','');; 343 var offset = $(this).attr('href').replace('#',''); 344 offset = parseInt($('#'+actualtab+"-"+offset).offset().top) 345 $("html, body").animate({ scrollTop: (offset+20)+'px' }, 800); 346 }); 347 348 349 /*-- #SOLUTIONS ITEM PROPERTIES ROLLDOWN --*/ 350 $(document).on('click touchend', '.solution-list-item-link a', function(event){ 351 event.preventDefault(); 352 if(!$(this).hasClass('rolled')){ 353 $(this).parent().parent().find('.submenu').stop().slideDown(100); 354 $(this).addClass('rolled'); 355 }else{ 356 $(this).parent().parent().find('.submenu').stop().slideUp(100); 357 $(this).removeClass('rolled'); 358 } 359 }); 360 361 362 /*-- #FORM SHOW HIDDEN INFO MENU --*/ 363 $(document).on('click touchend', '.form-toggle', function(event){ 364 event.preventDefault(); 365 if(!$(this).hasClass('rolled')){ 366 $(this).parent().parent().next('.form-slide').show(); 367 $(this).addClass('rolled'); 368 }else{ 369 $(this).parent().parent().next('.form-slide').hide(); 370 $(this).removeClass('rolled'); 371 } 372 }); 373 374 $(document).on('mouseenter', '.form-toggle', function(event){ 375 $(this).parent().parent().next('.form-slide').show(); 376 $(this).addClass('rolled'); 377 }); 378 $(document).on('mouseleave', '.form-toggle', function(event){ 379 $(this).parent().parent().next('.form-slide').hide(); 380 $(this).removeClass('rolled'); 381 }); 382 383 384 /*-- #VERSIONS IF LISTS HAVE SUBLISTS TELL CSS NOT SHOW ARROW --*/ 385 /* if($('body').hasClass('versions')){ 386 $('.news-item-content ul li:has(ul)').addClass('has_sub'); 387 } 388 */ 389 390 /*-- #SOLUTIONS ITEM PROPERTIES ROLLDOWN --*/ 391 $(document).on('click touchend', '.faq dt', function(event){ 392 event.preventDefault(); 393 if(!$(this).hasClass('rolled')){ 394 $(this).next('dd').addClass('rolled').show() 395 $(this).addClass('rolled'); 396 }else{ 397 $(this).next('dd').removeClass('rolled').hide(); 398 $(this).removeClass('rolled'); 399 } 400 }); 401 402 /*-- #TECHNICAL SUPPORT FORM SEND HEADER TO DOWNLOAD FILE IMMEDIATELY --*/ 403 $(document).on('submit', '#form-update-tool', function(event){ 404 event.preventDefault(); 405 window.location=$(this).find('select').val(); 406 }); 407 408 /*-- #SOLUTIONS ITEM PROPERTIES ROLLDOWN --*/ 409 $(document).on('click touchend', '.toggler, .Pricetoggler', function(event){ 410 event.preventDefault(); 411 var product = $(this).parent().attr('data-product'); 412 413 if(!$(this).hasClass('rolled')) { 414 $('[id^="title-' + product + '"]').addClass('rolled'); 415 $('[id^="title-' + product + '"] span').addClass('rolled'); 416 $('[id^="slide-' + product + '"]').addClass('rolled'); 417 $('[id^="slide-' + product + '"]').css('display', 'block'); 418 419 $(this).parent().next('.slide').stop().slideDown(400); 420 $(this).find('em').fadeOut(); 421 $('[id^="em-' + product + '"]').css('display', 'none'); 422 $(this).parent().next().find('.tablesaw').tablesaw().data("tablesaw").refresh(); 423 424 // setTimeout(function(){ $(this).parent().next().find('.tablesaw').tablesaw().data("tablesaw").resize(); }, 100); 425 426 }else{ 427 $(this).parent().next('.slide').removeClass('rolled').stop().slideUp(400); 428 $(this).find('em').fadeIn() 429 $(this).removeClass('rolled'); 430 $(this).parent().removeClass('rolled'); 431 432 $('[id^="title-' + product + '"]').removeClass('rolled'); 433 $('[id^="title-' + product + '"] span').removeClass('rolled'); 434 $('[id^="slide-' + product + '"]').removeClass('rolled'); 435 $('[id^="em-' + product + '"]').css('display', ''); 436 $('[id^="slide-' + product + '"]').css('display', ''); 437 } 438 }); 439 440 /*-- CLOSE OPENED SLIDE HELPERS ON MOBILE --*/ 441 $('.content').on('touchend', function(event){ 442 if($('.form-slide').length){ 443 $('.form-slide').hide(); 444 } 445 }); 446 447 448 /*-- REPLACE <BREAK> IN PROPERTIES --*/ 449 function adaptProperties(){ 450 if($('body').hasClass('product') && !$('body').hasClass('uvod')){ 451 var $propertiescol = $('.section-properties .ulholder'); 452 var $break = $('.section-properties .ulholder').find('break'); 453 if($break.length){ 454 $break.html('<p class="properties-next"><a href="#">'+$('.properties-label').html()+'</a></p>'); 455 $oldheight = ($break.offset().top - $propertiescol.offset().top + 70) + 'px'; 456 $propertiescol.css('height', $oldheight); 457 } 458 } 459 } 460 461 462 /*-- #PRODUCT PROPERTIES ROLL DOWN --*/ 463 $(document).on('click touchend', '.properties-next a', function(event){ 464 event.preventDefault(); 465 if(width > 767){ 466 $('.section-properties .ulholder').css('height', PropertiesHeight); 467 }else{ 468 $('.section-properties .ulholder').css('height', 'auto'); 469 } 470 471 $(this).hide(); 472 }); 473 474
475 /*-- CHANGING LANGUAGE BY SELECT ON #VIDEO-ITEMS --*/ 476 $(document).on('change', '#video .form-language-selector', function(event){ 477 $('.form-language-select').submit(); 478 }); 479 480 481 /*-- SHOW OTHER COUNTRIES SELECT ON #DEALER PAGE -*/ 482 $(document).on('click', '#prodejci .othercountries, #aboutus .othercountries', function(event){ 483 event.preventDefault(); 484 $(this).parent().hide(); 485 $(".dealer-card .select").css('display', 'block'); 486 }); 487 488 /*-- CLOSING ALL MENUS AND PROPER ICON SWITCHING ON SMALLER DEVICES --*/ 489 $(document).on('click touchstart tap touch touchend', '#mm-blocker', function(event){ 490 checkClosing(); 491 $('.help-menu-mobile').removeClass('active'); 492 }); 493 494 495 496 $(document).on('click', '.mobile--menu a', function(event){ 497 event.preventDefault(); 498 if($('body').hasClass('menu')){ 499 $('body').removeClass('menu'); 500 }else{ 501 $('body').addClass('menu'); 502 } 503 }); 504 505 506 /*-- #ING-MANUALS SHOW TABS BY SELECTED LANGUAGE --*/ 507 $(document).on('change', 'select[name="lang"]', function(event){ 508 if($('body').hasClass('ingmanualy')){ 509 var searchfortab = $(this).val(); 510 var $panels = $(this).closest('.language-tabs').find('.tab-panel'); 511 $panels.each( function() { 512 var thisid = $(this).attr('id'); 513 if (searchfortab == thisid){ 514 $(this).css('display','block'); 515 }else{ 516 $(this).css('display','none'); 517 } 518 }); 519 } 520 }); 521 522 523 /*-- #PRODUCT DETAIL SENDING LINK ON MOBILE VERSION --*/ 524 $(document).on('click touchstart', '.section-mdownload.mobile button', function(event){ 525 event.preventDefault(); 526 if ($(this).prop('disabled')) { 527 return 1; 528 } 529 $(this).prop('disabled', true); 530 531 if (window.grecaptcha) { 532 grecaptcha.ready(function () { 533 var key = $("meta[name=captcha-key]").attr('content'); 534 var action = 'downloadMobile'; 535 grecaptcha.execute(key, {action: action}).then(function (token) { 536 $("input[name=grecaptcharesponse]").val(token); 537 var formData = $(".section-mdownload.mobile button").closest('form').serialize(); 538 var url = $(".section-mdownload.mobile button").closest('form').attr('action'); 539 $.ajax({ 540 dataType: "json", 541 url: url, 542 data: formData, 543 success: function (data) { 544 $('.message p').hide(); 545 $('.message p.message_'+data.result).show(); 546 $('.message').addClass('active'); 547 if (data.result != "1") { 548 $(".section-mdownload.mobile button").prop('disabled', false); 549 } else { 550 $(".section-mdownload.mobile").css("display", "none"); 551 } 552 } 553 }); 554 }); 555 }); 556 } 557 }); 558 559 /*-- #CLOSE MODAL MESSAGE --*/ 560 $(document).on('click', '.message', function(event){ 561 $(this).removeClass('active'); 562 }); 563 564 565 /*-- FLOATING MENU ON #PRODUCT CONTROLLER --*/ 566 $(document).on('click', '.section-float-menu a', function(event){ 567 var offset = $(this).attr('href').replace('#',''); 568 offset = parseInt($('#'+offset).offset().top) 569 $("html, body").animate({ scrollTop: (offset-100)+'px' }, 800); 570 }); 571 572 573 /*-- CART MENU FOR SMALLER DEVICES --*/ 574 575 var $mobilecart = $("li.item.cart .menu").clone(); 576 $mobilecart.attr( "id", "my-mobile-cart" ); 577 578 $mobilecart.mmenu({ 579 autoHeight: true, 580 extensions : [ 'effect-slide-menu' ], 581 offCanvas: { 582 position : "right" 583 } 584 }); 585 var APICart = $('#my-mobile-cart').data( "mmenu" ); 586 587 /*-- USER MENU FOR SMALLER DEVICES --*/ 588 589 var $mobileuser = $("li.item.user .user-menu").clone(); 590 $mobileuser.attr( "id", "my-mobile-login" ); 591 592 $mobileuser.mmenu({ 593 autoHeight: true, 594 extensions : [ 'effect-slide-menu' ], 595 offCanvas: { 596 position : "right" 597 } 598 }); 599 600 601 /*-- MAIN MENU FOR SMALLER DEVICES --*/ 602 var $menuMain = $('.menu-main li.item').clone(); 603 var $menuInfo = $('.menu-info li.languages').clone(); 604 var $menuCurrency = $('.menu-info li.currency').clone(); 605 var $menuRight = $('.menu-right').clone(); 606 var $menuGeo5 = $('#menu-tab-geo5').clone(); 607 var $menuFinec = $('#menu-tab-finec').clone(); 608 var $menuTruss = $('#menu-tab-truss').clone(); 609 var $menu = $(document.createElement('div')); 610 var $menuSupport = $menuMain.find("li.item"); 611 $menu.append('<ul class="mobile-menu"></ul>'); 612 // $menu.find('.mobile-menu').append($menuMain).append($menuInfo); 613 $menu.find('.mobile-menu').append($menuGeo5).append($menuFinec).append($menuTruss).append($menuInfo).append($menuCurrency).append($menuRight); 614 $menu.attr( "id", "my-mobile-menu" ); 615 $menu.mmenu({ 616 extensions : [ 'effect-slide-menu' ], 617 offCanvas: { position : "right" }, 618 pageSelector: ".content" 619 }); 620 var API = $menu.data( "mmenu" ); 621 var $logo = $('.mobile-header .logo a').clone(); 622 $logo.attr('id','cloned_logo'); 623 var $menuCart = $('.mobile--cart').clone(); 624 var $menuUser = $('.mobile--user').clone(); 625 var $menuSearch = $('.mobile--search').clone(); 626 $('.mm-navbar').append($menuCart).append($menuSearch).append($menuUser).prepend($logo); 627 628 629 /*-- SEARCH MENU FOR SMALLER DEVICES --*/ 630 $("#my-mobile-search").mmenu({ 631 offCanvas: { 632 position : "top", 633 zposition : "front" 634 } 635 }); 636 var APISearch = $("#my-mobile-search").data( "mmenu" ); 637 638
639 /*-- SUBMENU ON #SUPPORT PAGE FOR SMALLER DEVICES --*/ 640 if($('body').hasClass('OnlineSupport')){ 641 var $submenu = $('.menutemplate').clone(); 642 $submenu.attr( "id", "my-support-menu" ); 643 $submenu.removeClass('hidden'); 644 $submenu.mmenu({ 645 extensions : [ 'effect-slide-menu' ], 646 offCanvas: { position : "left" } 647 }); 648 var APISubmenu = $submenu.data( "mmenu" ); 649 } 650 651 652 /*-- WRAP ALL IMAGES TO LINK FOR LIGHTBOX CAUSE NOT CHANGING ADMIN DATA --*/ 653 /* if($('body').hasClass('OnlineSupport')){ 654 $('.support-container img').each( function() { 655 var $img = $(this), 656 href = $img.attr('src'); 657 $img.wrap('<a href="' + href + '" class="link" rel="lightbox"></a>'); 658 }); 659 } 660 */ 661 662 /*-- FLOATING MENUS ON #SUPPORT CONTROL --*/ 663 $(document).on('click', '#OnlineSupport .support-menu', function(event){ 664 event.preventDefault(); 665 if($('.rolled').length){ 666 $('.rolled').parent().find('.submenu').stop().slideUp(100); 667 $('.rolled').removeClass('rolled'); 668 $(this).parent().find('.submenu').stop().slideDown(100); 669 $(this).addClass('rolled'); 670 }else{ 671 $(this).parent().find('.submenu').stop().slideDown(100); 672 $(this).addClass('rolled'); 673 } 674 }); 675 676 $(document).on('click', '#OnlineSupport .submenu a', function(event){ 677 event.preventDefault(); 678 if($('.xrolled').length){ 679 $('.xrolled').parent().find('.subsubmenu').stop().slideUp(100); 680 $('.xrolled').removeClass('xrolled'); 681 $(this).parent().find('.subsubmenu').stop().slideDown(100); 682 $(this).addClass('xrolled'); 683 }else{ 684 $(this).parent().find('.subsubmenu').stop().slideDown(100); 685 $(this).addClass('xrolled'); 686 } 687 }); 688 689 690 /*-- ROLLDOWN LIST ON #CONTACT PAGE--*/ 691 $(document).on('click', '.contact-adress li a, .text-toggle', function(event){ 692 event.preventDefault(); 693 if(!$(this).hasClass('rolled')){ 694 $(this).parent().find('.submenu').stop().slideDown(100); 695 $(this).addClass('rolled'); 696 }else{ 697 $(this).parent().find('.submenu').stop().slideUp(100); 698 $(this).removeClass('rolled'); 699 } 700 }); 701 702 703 /*-- ROLLDOWN ON PAGES FROM ADMIN --*/ 704 $(document).on('click', '.slide-toggle', function(event){ 705 event.preventDefault(); 706 if(!$(this).hasClass('rolled')){ 707 $(this).parent().next('.slide-block').stop().slideDown(100); 708 $(this).addClass('rolled'); 709 }else{ 710 $(this).parent().next('.slide-block').stop().slideUp(100); 711 $(this).removeClass('rolled'); 712 } 713 }); 714 715 716 /*-- SUBMITS FORM ON CHANGE SELECTBOX --*/ 717 $(document).on('change', 'select[data-action=submit]', function(event){ 718 event.preventDefault(); 719 $(this).closest('form').submit(); 720 }); 721 722 723 /*-- SENDING SEARCHTERM AND HASH TO SEARCH PAGE FROM PRODUCT DETAIL --*/ 724 $(document).on('click', '#detailhelp', function(event){ 725 event.preventDefault(); 726 $("#detailhelpform").attr("action",$("#detailhelpform").attr("action")+"?text="+$("#detailhelptext").val()+"#help"); 727 $("#detailhelpform").submit(); 728 }); 729 730 /*-- #SCROLL TO TAB WHEN SELECTED CONTINENT --*/ 731 if($('body').hasClass('prodejci') && $('#hiddenRegion').val()=="1"){ 732 $("html, body").animate({ scrollTop: ($('#tabs').offset().top-100) }, 800); 733 } 734 735 736 737 /*-- #PRODUCT OWL CAROUSEL INIT + ADDING CONTROLS --*/ 738 if($('body').hasClass('product') && !$('body').hasClass('uvod')){ 739 var $carousel = $(".section-product-images .wrapper").clone(); 740 var $ArrowDivLeft = $('<div></div>').addClass("arrow").addClass("arrow-left"); 741 var $ArrowDivRight = $('<div></div>').addClass("arrow").addClass("arrow-right"); 742 $carousel.attr('id','my-mobile-carousel'); 743 $(".section-product-images").append($carousel) 744 $('#my-mobile-carousel').find('.product-column--free').remove();
745 $('#my-mobile-carousel').owlCarousel({margin: 20}); 746 $('#my-mobile-carousel').prepend($ArrowDivLeft).append($ArrowDivRight); 747 } 748 749 /*-- #PACKAGES OWL CAROUSEL INIT + ADDING CONTROLS --*/ 750 if($('body').hasClass('packages-page')){ 751 var $carousel = $(".section-product-images .packages-wrapper").clone(); 752 var $ArrowDivLeft = $('<div></div>').addClass("arrow").addClass("arrow-left"); 753 var $ArrowDivRight = $('<div></div>').addClass("arrow").addClass("arrow-right"); 754 $carousel.attr('id','packages-carousel'); 755 $(".section-product-images").append($carousel); 756 $('#packages-carousel').find('.product-column--free').remove(); 757 $('#packages-carousel').owlCarousel({margin: 20}); 758 $('#packages-carousel').prepend($ArrowDivLeft).append($ArrowDivRight); 759 } 760 761 if($('[data-component="languageSwitch"]').length){ 762 $('.languageSwitch a').click(function() { 763 event.preventDefault(); 764 var current = $(this).data('currency'); 765 var date = new Date(); 766 date.setTime(date.getTime() + (10*24*60*60*1000)); 767 var expires = "; expires=" + date.toUTCString(); 768 document.cookie = 'currency=' + current + expires + '; path=/'; 769 770 $('.languageSwitch a').removeClass('active'); 771 $('.languageSwitch a[data-currency="' + current + '"]').addClass('active'); 772 773 $('strong[data-currency]').hide(); 774 $('strong[data-currency="' + current + '"]').show(); 775 $('span[data-currency]').hide(); 776 $('span[data-currency="' + current + '"]').show(); 777 778 //replace currency anchor 779 $('.section-properties a').each(function() { 780 var href = $(this).attr('href'); 781 if (href.indexOf("#") != -1) { 782 href = href.substring(0, href.length - 4) + "_" + current; 783 $(this).attr('href', href); 784 } 785 }) 786 }) 787 } 788 789 if($('[data-component="accordeon"]').length){ 790 var $accordeon = $('[data-component="accordeon"]'); 791 var $accordeon_items = $accordeon.children('.accordeon-item'); 792 var $accordeon_nav_items = $('a[data-package]'); 793 var hash = $(location).attr('hash').split('#').pop(); 794 795 // Check for has in url and select active item 796 if (hash) { 797 $accordeon_items.each(function(index) { 798 if ($($accordeon_items[index]).data('id') == hash) { 799 $accordeon_items.removeClass('active'); 800 $($accordeon_items[index]).addClass('active'); 801 802 $accordeon_nav_items.removeClass('active'); 803 $('a[data-package="' + $($accordeon_items[index]).data('id') + '"]').addClass('active'); 804 } 805 }); 806 } 807 808 if ($(document).innerWidth() < 1024) { 809 $accordeon_items.each(function(index) { 810 $($accordeon_items[index]).find('.accordeon-body').css('max-height', ($($accordeon_items[index]).find('.accordeon-body').prop('scrollHeight') + 20) + 'px'); 811 }); 812 } else { 813 $accordeon.css('height', ($accordeon_items[0].scrollHeight + 20) + 'px'); 814 } 815 816 // Click event for desktop 817 $accordeon_nav_items.click(function(event) { 818 $accordeon_nav_items.removeClass('active'); 819 $(this).addClass('active'); 820 821 $accordeon_items.removeClass('active'); 822 $('.accordeon-item[data-id=' + $(this).data('package') + ']').addClass('active'); 823 }) 824 825 // Click event for mobile 826 $('.accordeon-header').click(function(event) { 827 event.preventDefault(); 828 829 var header = $(this) 830 setTimeout(function() { 831 $('html, body').scrollTop(header.offset().top - 40); 832 }, 50) 833 834 $accordeon_items.removeClass('active'); 835 $(this).closest('.accordeon-item').addClass('active'); 836 }) 837 838 // Resize event 839 $( window ).resize(function() { 840 if ($( window ).innerWidth() < 1024) { 841 $accordeon_items.each(function(index) { 842 $($accordeon_items[index]).find('.accordeon-body').css('max-height', ($($accordeon_items[index]).find('.accordeon-body').prop('scrollHeight') + 20) + 'px'); 843 }); 844 } else { 845 $accordeon.css('height', ($accordeon_items[0].scrollHeight + 20) + 'px'); 846 } 847 }) 848 } 849 850
851 /*-- #SUPPORT OWL CAROUSEL LISTENERY --*/ 852 $(document).on('click', '#my-mobile-carousel .arrow-left', function(event){ 853 var owl = $(".owl-carousel").data('owlCarousel'); 854 owl.prev(); 855 }); 856 $(document).on('click', '#my-mobile-carousel .arrow-right', function(event){ 857 var owl = $(".owl-carousel").data('owlCarousel'); 858 owl.next(); 859 }); 860 861 $(document).on('click', '#packages-carousel .arrow-left', function(event){ 862 var owl = $(".owl-carousel").data('owlCarousel'); 863 owl.prev(); 864 }); 865 $(document).on('click', '#packages-carousel .arrow-right', function(event){ 866 var owl = $(".owl-carousel").data('owlCarousel'); 867 owl.next(); 868 }); 869 870 /*-- #PACKAGES OWL CAROUSEL INIT + ADDING CONTROLS --*/ 871 872 873 874 /*-- #TESTIMONIALS CAROUSEL--*/ 875 if ($(".testimonial-carousel").length ) { 876 $(".testimonial-carousel").owlCarousel({ 877 singleItem: true, 878 center: true, 879 autoPlay: 20000, 880 stopOnHover: true 881 }); 882 var owl = $(".testimonial-carousel").data('owlCarousel'); 883 owl.jumpTo(Math.floor((Math.random() * 3))); 884 } 885 886 /*-- #HOMEPAGE CAROUSEL--*/ 887 if ($(".introduction-carousel").length ) { 888 $(".introduction-carousel").owlCarousel({ 889 singleItem: true, 890 autoPlay: 3000, 891 center: true, 892 stopOnHover: true 893 }); 894 } 895 896 897 /*-- #FEATURE CAROUSEL--*/ 898 if ($(".feature-carousel").length ) { 899 $(".feature-carousel").owlCarousel({ 900 singleItem: true, 901 pagination: true, 902 autoPlay: 3000, 903 center: true, 904 stopOnHover: true, 905 navigation: true, 906 transitionStyle : "fade", 907 navigationText: [ 908 '<span class="nav-btn prev-slide" aria-hidden="true"></span>', 909 '<span class="nav-btn next-slide" aria-hidden="true"></span>' 910 ] 911 }); 912 } 913 914 915 /*-- #DEALER SELECTOR --*/ 916 $(document).on('click', '#prodejci .section-support-menu-oneLevel a', function(event){ 917 event.preventDefault(); 918 var country = $(this).attr('href').substr(1); 919 $(".section-support-menu-oneLevel .active").removeClass('active'); 920 $(this).addClass('active'); 921 $(".dealer-list.preferred .countrylabel").html($(this).text()); 922 $(".dealer-list.preferred").removeClass("hidden"); 923 $(".dealer-list.preferred .dealer-item").remove(); 924 $(".dealer-item:not(.preferred)" ).each(function( index ) { 925 $(this).find('.countries span').each(function( index ) { 926 if($(this).data('rel') == country){ 927 var preferred = $(this).closest('.dealer-item').clone(); 928 $(".dealer-list.preferred").append(preferred); 929 } 930 }); 931 }); 932 $('html,body').animate({scrollTop:$(".dealer-list.preferred h2").offset().top}, 500); 933 }); 934 935 936 /*-- MENU CONTROLLER --*/ 937 // var timer; 938 // var delay = 200; 939 940 $('.menu .item .menu-label').hover(function() { 941 menuElement = $(this); 942 timer = setTimeout(function() { 943 if(window.innerWidth >= 700 && !menuElement.hasClass('no-menu')){ 944 $('.thismenuopened').removeClass('thismenuopened'); 945 menuElement.addClass('thismenuopened'); 946 adaptMenu(); 947 948 // IF MENU IS SEARCH THEN INSERT SEARCHED VALUE AND FOCUS 949 if(menuElement.hasClass('icon-search')){ 950 $('#menushaker').find('.searchfield').val($searchfield).focus(); 951 } 952 }else{ 953 $('#menushaker').css('opacity',0); 954 } 955 }, delay); 956 957 }, function() { 958 clearTimeout(timer); 959 }); 960 961 $(document).on('input', '#menushaker .searchfield', function(event){ 962 $searchfield = $(this).val(); 963 }); 964 965 $(document).on('mouseleave', '.site-nav', function(event){ 966 $('#menushaker').css('opacity','0').css('visibility', 'hidden'); 967 $('.thismenuopened').removeClass('thismenuopened'); 968 }); 969 970 $(document).on('click touchend', '.content', function(event){ 971 $('#menushaker').css('opacity','0').css('visibility', 'hidden'); 972 $('.thismenuopened').removeClass('thismenuopened'); 973 }); 974 975 $(document).on('mouseenter', '.site-nav', function(event){ 976 $('li.item').addClass('hiddenmenu'); 977 }); 978 979 $(document).on('mouseleave', '.site-nav', function(event){ 980 $('li.item').removeClass('hiddenmenu'); 981 }); 982 983 $(document).on('click', '.help-menu-settings a', function(event){ 984 $('.filters').slideToggle(); 985 $(this).parent().toggleClass('active'); 986 }); 987 988 $(document).on('click', '.help-menu-mobile a', function(event){ 989 $(this).parent().toggleClass('active'); 990 }); 991 992 993 /*-- CHANGE ICONS ON CLOSING MOBILE MENUS --*/ 994 function checkClosing() { 995 if($('.mobile--main a').hasClass('enable')){ 996 $('.mobile--main a').removeClass('icon-close'); 997 $('.mobile--main a').removeClass('enable'); 998 $('.mobile--main a').addClass('icon-mobile-menu-2'); 999 } 1000 if($('.mobile--search a').hasClass('enable')){ 1001 $('.mobile--main a').removeClass('icon-close'); 1002 $('.mobile--main a').removeClass('enable'); 1003 $('.mobile--main a').addClass('icon-mobile-menu-2'); 1004 } 1005 if($('.mobile--cart a').hasClass('enable')){ 1006 $('.mobile--main a').removeClass('icon-close'); 1007 $('.mobile--main a').removeClass('enable'); 1008 $('.mobile--main a').addClass('icon-mobile-menu-2'); 1009 } 1010 if($('.mobile--login a').hasClass('enable')){ 1011 $('.mobile--main a').removeClass('icon-close'); 1012 $('.mobile--main a').removeClass('enable'); 1013 $('.mobile--main a').addClass('icon-mobile-menu-2'); 1014 } 1015 } 1016 1017 /*-- ADAPTING MENU TO ALL RESOLUTIONS --*/ 1018 function adaptMenu(){ 1019 if ($('.thismenuopened').length){ 1020 var $menucontent = $('.thismenuopened').parent().find('.menu').clone(); 1021 var $unimenu = $('#menushaker'); 1022 var $menuwidthhalf = parseInt($('.thismenuopened').data('width'))/2; 1023 var $needoffset = parseInt($('.thismenuopened').data('offset')); 1024 var $top = ((parseInt($('.thismenuopened').offset().top)) + (parseInt($('.thismenuopened').outerHeight( true )))
1024- 1); 1025 var $right = ($(window).width() - ($('.thismenuopened').offset().left + $('.thismenuopened').outerWidth(true)) - $menuwidthhalf - $needoffset); 1026 1027 //setTimeout(function(){ }, 3000); 1028 1029 $unimenu.html(""); 1030 $unimenu.css('top',$top+'px'); 1031 $unimenu.css('opacity', 0.5); 1032 $unimenu.append($menucontent).css('visibility', 'visible'); 1033 $unimenu.css('opacity', 1); 1034 $unimenu.find('.triangle').css('left',($menuwidthhalf-(parseInt($unimenu.find('.triangle').data('offset'))))+'px'); 1035 1036 if(width>=1024){ 1037 if($right + parseInt($('.thismenuopened').data('width')) < width){ 1038 $unimenu.css('width',parseInt($('.thismenuopened').data('width'))+'px'); 1039 $unimenu.css('right',$right+'px'); 1040 }else{ 1041 $unimenu.css('width',parseInt($('.thismenuopened').data('width'))+'px'); 1042 $unimenu.css('right',width - parseInt($('.thismenuopened').data('width'))+'px'); 1043 $unimenu.find('.triangle').css('left','400px'); 1044 } 1045 } else{ 1046 if($('.thismenuopened').data('width')=="1024"){ 1047 $unimenu.css('width','100%'); 1048 $unimenu.css('right',0); 1049 $unimenu.find('.triangle').css('left',$('.thismenuopened').offset().left + parseInt($('.thismenuopened').data('tablet')) +'px'); 1050 }else{ 1051 $unimenu.css('width',$('.thismenuopened').data('width')+'px'); 1052 $unimenu.css('right',$right+'px'); 1053 } 1054 } 1055 1056 if($('.thismenuopened').parent().find('.menu').hasClass('learning') && $('.thismenuopened').parent().find('.menu').hasClass('lastitem') && $device == "projector"){ 1057 $unimenu.css('right',($right-375)+'px'); 1058 $unimenu.find('.triangle').css('left',($menuwidthhalf-(parseInt($unimenu.find('.triangle').data('offset'))+375))+'px'); 1059 } 1060 1061 1062 1063 if($('.thismenuopened').parent().find('.menu').hasClass('fin') && $device == "tablet"){ 1064 $unimenu.css('right',($right-90)+'px'); 1065 $unimenu.find('.triangle').css('left',($menuwidthhalf-(parseInt($unimenu.find('.triangle').data('offset'))+160))+'px'); 1066 1067 } 1068 //support adjustments 1069 if($('.thismenuopened').parent().find('.menu').hasClass('help') && $device == "tablet"){ 1070 $unimenu.css('right','0'); 1071 $unimenu.find('.triangle').css('left',($menuwidthhalf-(parseInt($unimenu.find('.triangle').data('offset'))-90))+'px'); 1072 console.log("tablet"); 1073 } 1074 if($('.thismenuopened').parent().find('.menu').hasClass('help') && $device == "lg"){ 1075 $unimenu.css('right','0'); 1076 $unimenu.find('.triangle').css('left',($menuwidthhalf-(parseInt($unimenu.find('.triangle').data('offset'))-70))+'px'); 1077 1078 } 1079 if($('.thismenuopened').parent().find('.menu').hasClass('help') && $device == "xl"){ 1080 $unimenu.css('right',($right+40)+'px'); 1081 $unimenu.find('.triangle').css('left',($menuwidthhalf-(parseInt($unimenu.find('.triangle').data('offset'))-45))+'px'); 1082 } 1083 //cart adjustments 1084 if($('.thismenuopened').parent().find('.menu').hasClass('cart') && $device == "lg"){ 1085 $unimenu.css('right',($right+5)+'px'); 1086 $unimenu.find('.triangle').css('left',($menuwidthhalf-(parseInt($unimenu.find('.triangle').data('offset'))-25))+'px'); 1087 } 1088 1089 if($('.thismenuopened').parent().find('.menu').hasClass('shop') && $('.thismenuopened').parent().find('.menu').hasClass('lastitem') && $device == "tablet"){ 1090 $unimenu.css('right',($right-125)+'px'); 1091 $unimenu.find('.triangle').css('left',($menuwidthhalf-(parseInt($unimenu.find('.triangle').data('offset'))+125))+'px'); 1092 } 1093 1094 var xwidth = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth; 1095 if($('.thismenuopened').parent().find('.menu').hasClass('geo5') && xwidth >= 1920){ 1096 $unimenu.find('.triangle').css('left','490px'); 1097 } 1098 } 1099 } 1100 1101 1102 /*-- ADAPTING BACKGROUND WHEN SMALLER SCREEN IS USED --*/ 1103 function adaptBG(){ 1104 var width = $(window).width(); 1105 var pattern = $('.homepage-background-pattern'); 1106 var backgro = $('.homepage-background-image'); 1107 var howmany = (width - 1300) / 2; 1108 var multiplier = 1; 1109 1110 if(width < 768){ 1111 multiplier = 500; 1112 }else if (width >= 768 && width < 1240){ 1113 multiplier = 0; 1114 }else if (width > 1024 && width < 1903){ 1115 multiplier = -275; 1116 }else{ 1117 multiplier = 0; 1118 } 1119 1120 if(width > 1240){ 1121 pattern.css('left',(howmany+multiplier) + 'px'); 1122 backgro.css('right',(howmany-multiplier) + 'px'); 1123 } 1124 } 1125 1126 1127 /*-- DETECT DEVICE RESOLUTION --*/ 1128 function deviceDetect(){ 1129 if(window.innerWidth < 768){ 1130 $device = "mobile"; 1131 }else if (window.innerWidth >= 768 && window.innerWidth < 1024){ 1132 $device = "tablet"; 1133 }else if (window.innerWidth > 1025 && window.innerWidth < 1199){ 1134 $device = "lg"; 1135 // console.log("lg") 1136 }else if (window.innerWidth > 1200 && window.innerWidth < 1400){ 1137 $device = "xl"; 1138 // console.log("xl") 1139 }else if (window.innerWidth > 1400 && window.innerWidth < 1600){ 1140 $device = "xxl"; 1141 }else if (window.innerWidth > 1600 && window.innerWidth < 1928){ 1142 $device = "xxxl"; 1143 }else if (window.innerWidth > 1025 && window.innerWidth < 1928){ 1144 $device = "desktop"; 1145 }else{ 1146 $device = "projector"; 1147 } 1148 1149 if(width > 680){ 1150 API.close(); 1151 APISearch.close(); 1152 // APICart.close() 1153 checkClosing(); 1154 } 1155 1156 if(width < 768 && $('body').hasClass('OnlineSupport')){ 1157 APISubmenu.close(); 1158 checkClosing(); 1159 } 1160 1161 1162 } 1163 1164 1165 /*-- GETTING OFFSET OF FLOATING ELEMENTS --*/ 1166 function offsetMenu(){ 1167 // if($floatmenu.length){ offset = parseInt($floatmenu.offset().top) - 40; } 1168 } 1169 1170 function adapt(){ 1171 var $olddevice = $device; 1172 deviceDetect(); 1173 adaptMenu(); 1174 adaptBG(); 1175 adaptProperties(); 1176 offsetMenu(); 1177 1178 1179 } 1180 1181 //change additional language functionality 1182 $(document).ready(function(){ 1183 $('#change_language_flag').click(function(event) { 1184 event.preventDefault(); 1185 var applyLang = $(this).attr('data-language-flag'); 1186 var select = $('#form-help-language'); 1187 var form = $('.form-support-filter'); 1188 if (select.length && form.length && applyLang.length) { 1189 select.val(applyLang); 1190 form.submit(); 1191 } 1192 }); 1193 }); 1194 1195 1196 // newCart.init(); 1197 deviceDetect(); 1198 $(document).ready(adapt); 1199 $(window).resize(adapt); 1200 1201})(); 1202/*-- MENU CONTROLLER --*/ 1203var timer;
1204var delay = 200; 1205var width = $(window).width(); 1206 1207$('.menu .item .menu-label').hover(function() { 1208 menuElement = $(this); 1209 timer = setTimeout(function() { 1210 if(window.innerWidth >= 700 && !menuElement.hasClass('no-menu')){ 1211 $('.thismenuopened').removeClass('thismenuopened'); 1212 menuElement.addClass('thismenuopened'); 1213 adaptMenu(); 1214 1215 // IF MENU IS SEARCH THEN INSERT SEARCHED VALUE AND FOCUS 1216 if(menuElement.hasClass('icon-search')){ 1217 $('#menushaker').find('.searchfield').val($searchfield).focus(); 1218 } 1219 }else{ 1220 $('#menushaker').css('opacity',0); 1221 } 1222 }, delay); 1223 1224}, function() { 1225 // on mouse out, cancel the timer 1226 clearTimeout(timer); 1227}); 1228 1229$(document).on('input', '#menushaker .searchfield', function(event){ 1230 $searchfield = $(this).val(); 1231}); 1232 1233$(document).on('mouseleave', '.site-nav', function(event){ 1234 $('#menushaker').css('opacity','0').css('visibility', 'hidden'); 1235 $('.thismenuopened').removeClass('thismenuopened'); 1236}); 1237 1238$(document).on('click touchend', '.content', function(event){ 1239 $('#menushaker').css('opacity','0').css('visibility', 'hidden'); 1240 $('.thismenuopened').removeClass('thismenuopened'); 1241}); 1242 1243$(document).on('mouseenter', '.site-nav', function(event){ 1244 $('li.item').addClass('hiddenmenu'); 1245}); 1246 1247$(document).on('mouseleave', '.site-nav', function(event){ 1248 $('li.item').removeClass('hiddenmenu'); 1249}); 1250 1251$(document).on('click', '.help-menu-settings a', function(event){ 1252 $('.filters').slideToggle(); 1253 $(this).parent().toggleClass('active'); 1254}); 1255 1256$(document).on('click', '.help-menu-mobile a', function(event){ 1257 $(this).parent().toggleClass('active'); 1258}); 1259 1260 1261 1262/*-- ADAPTING MENU TO ALL RESOLUTIONS --*/ 1263function adaptMenu(){ 1264 if ($('.thismenuopened').length){ 1265 var $menucontent = $('.thismenuopened').parent().find('.menu').clone(); 1266 var $unimenu = $('#menushaker'); 1267 var $menuwidthhalf = parseInt($('.thismenuopened').data('width'))/2; 1268 var $needoffset = parseInt($('.thismenuopened').data('offset')); 1269 var $top = ((parseInt($('.thismenuopened').offset().top)) + (parseInt($('.thismenuopened').outerHeight( true ))) - 1); 1270 var $right = ($(window).width() - ($('.thismenuopened').offset().left + $('.thismenuopened').outerWidth(true)) - $menuwidthhalf - $needoffset); 1271 1272 //setTimeout(function(){ }, 3000); 1273 1274 $unimenu.html(""); 1275 $unimenu.css('top',$top+'px'); 1276 $unimenu.css('opacity', 0.5); 1277 $unimenu.append($menucontent).css('visibility', 'visible'); 1278 $unimenu.css('opacity', 1); 1279 $unimenu.find('.triangle').css('left',($menuwidthhalf-(parseInt($unimenu.find('.triangle').data('offset'))))+'px'); 1280 1281 if(width>=1024){ 1282 if($right + parseInt($('.thismenuopened').data('width')) < width){ 1283 $unimenu.css('width',parseInt($('.thismenuopened').data('width'))+'px'); 1284 $unimenu.css('right',$right+'px'); 1285 }else{ 1286 $unimenu.css('width',parseInt($('.thismenuopened').data('width'))+'px'); 1287 $unimenu.css('right',width - parseInt($('.thismenuopened').data('width'))+'px'); 1288 $unimenu.find('.triangle').css('left','400px'); 1289 } 1290 }else{ 1291 if($('.thismenuopened').data('width')=="1024"){ 1292 $unimenu.css('width','100%'); 1293 $unimenu.css('right',0); 1294 $unimenu.find('.triangle').css('left',$('.thismenuopened').offset().left + parseInt($('.thismenuopened').data('tablet')) +'px'); 1295 }else{ 1296 $unimenu.css('width',$('.thismenuopened').data('width')+'px'); 1297 $unimenu.css('right',$right+'px'); 1298 } 1299 } 1300 1301 if($('.thismenuopened').parent().find('.menu').hasClass('help') && $('.thismenuopened').parent().find('.menu').hasClass('lastitem') && $device == "projector"){ 1302 $unimenu.css('right',($right-350)+'px'); 1303 $unimenu.find('.triangle').css('left',($menuwidthhalf-(parseInt($unimenu.find('.triangle').data('offset'))+350))+'px'); 1304 } 1305 1306 if($('.thismenuopened').parent().find('.menu').hasClass('shop') && $('.thismenuopened').parent().find('.menu').hasClass('lastitem') && $device == "projector"){ 1307 $unimenu.css('right',($right-125)+'px'); 1308 $unimenu.find('.triangle').css('left',($menuwidthhalf-(parseInt($unimenu.find('.triangle').data('offset'))+125))+'px'); 1309 } 1310 1311 var xwidth = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth; 1312 if($('.thismenuopened').parent().find('.menu').hasClass('geo5') && xwidth >= 1920){ 1313 $unimenu.find('.triangle').css('left','490px'); 1314 } 1315 } 1316} 1317 1318 1319/*-- ADAPTING BACKGROUND WHEN SMALLER SCREEN IS USED --*/ 1320function adaptBG(){ 1321 var width = $(window).width(); 1322 var pattern = $('.homepage-background-pattern'); 1323 var backgro = $('.homepage-background-image'); 1324 var howmany = (width - 1300) / 2; 1325 var multiplier = 1; 1326 1327 if(width < 768){ 1328 multiplier = 500; 1329 }else if (width >= 768 && width < 1240){ 1330 multiplier = 0; 1331 }else if (width > 1024 && width < 1903){ 1332 multiplier = -275; 1333 }else{ 1334 multiplier = 0; 1335 } 1336 1337 if(width > 1240){ 1338 pattern.css('left',(howmany+multiplier) + 'px'); 1339 backgro.css('right',(howmany-multiplier) + 'px'); 1340 } 1341} 1342 1343 1344/*-- DETECT DEVICE RESOLUTION --*/ 1345function deviceDetect(){ 1346 if(window.innerWidth < 768){ 1347 $device = "mobile"; 1348 }else if (window.innerWidth >= 768 && window.innerWidth < 1024){ 1349 $device = "tablet"; 1350 }else if (window.innerWidth > 1025 && window.innerWidth < 1199){ 1351 $device = "lg"; 1352 // console.log("lg") 1353 }else if (window.innerWidth > 1200 && window.innerWidth < 1400){ 1354 $device = "xl"; 1355 // console.log("xl") 1356 }else if (window.innerWidth > 1400 && window.innerWidth < 1600){ 1357 $device = "xxl"; 1358 }else if (window.innerWidth > 1600 && window.innerWidth < 1928){ 1359 $device = "xxxl"; 1360 }else if (window.innerWidth > 1025 && window.innerWidth < 1928){ 1361 $device = "desktop"; 1362 }else{ 1363 $device = "projector"; 1364 } 1365 1366 if(window.innerWidth > 680){ 1367 API.close(); 1368 APISearch.close(); 1369 // APICart.close() 1370 APIUser.close() 1371 checkClosing(); 1372 } 1373 1374 if(window.innerWidth < 768 && $('body').hasClass('OnlineSupport')){ 1375 APISubmenu.close(); 1376 checkClosing(); 1377 } 1378 1379 1380} 1381 1382 1383 1384function changeSelectedProductMenu() { 1385 // $('.menu-tab').hover(function () { 1386 // $(this).toggleClass('selected').siblings().removeClass('selected'); 1387 // }); 1388 1389 $('.menu-tab').on('mouseover', function() { 1390 1391 $('.menu-tab.active').removeClass('active'); 1392 $('.menu-tab.selected').removeClass('selected'); 1393 $(this).addClass('selected'); 1394 $('#menushaker').css('opacity','0').css('visibility', 'hidden'); 1395 1396 }); 1397 1398 $('#menushaker').on('mouseleave', function() { 1399 $('.menu-tab').removeClass('selected'); 1400 }); 1401 $('.site-nav').on('mouseleave', function() { 1402 if ($('#menushaker').css("visibility") == "hidden") { 1403 $('.menu-tab').removeClass('selected'); 1404 $('#menushaker').css('opacity','0').css('visibility', 'hidden'); 1405 } 1406 }); 1407 $('.logo--inner').on('mouseover', function() { 1408 $('.menu-tab.selected').removeClass('selected'); 1409 $('.menu-tab:first-child').addClass('selected'); 1410 }); 1411} 1412function changeMenuByProduct() { 1413 if (!$('body').hasClass("finec") || !$('body').hasClass("truss4")) { 1414 $('.menu-tab .geo5').parent().addClass('active'); 1415 } 1416 if ($('body').hasClass("geo5")) { 1417 $('.menu-tab .truss, .menu-tab .fin').on('mouseout', function(e) { 1418 var opened = $(this).find(".thismenuopened"); 1419 // console.log(opened); 1420 if (!opened.length>0) { 1421 $(this).parent().removeClass('selected'); 1422 $('.menu-tab .geo5').parent().addClass('selected'); 1423 $('#menushaker').css('opacity','0').css('visibility', 'hidden'); 1424 $('.thismenuopened').removeClass('thismenuopened'); 1425 } 1426 }); 1427 1428 }; 1429 if ($('body').hasClass("finec")) { 1430 1431 $('.menu-tab .fin').parent().addClass('active'); 1432 $('.menu-tab .truss, .menu-tab .geo5').on('mouseout', function(e) { 1433 var opened = $(this).find(".thismenuopened"); 1434 // console.log(opened); 1435 if (!opened.length>0) { 1436 $(this).parent().removeClass('selected'); 1437 $('.menu-tab .fin').parent().addClass('selected'); 1438 $('#menushaker').css('opacity','0').css('visibility', 'hidden'); 1439 $('.thismenuopened').removeClass('thismenuopened'); 1440 } 1441 }); 1442 1443 } 1444 if ($('body').hasClass("truss4")) { 1445 1446 $('.menu-tab .truss').parent().addClass('active'); 1447 $('.menu-tab .fin, .menu-tab .geo5').on('mouseout', function(e) { 1448 var opened = $(this).find(".thismenuopened"); 1449 // console.log(opened); 1450 if (!opened.length>0) { 1451 $(this).parent().removeClass('selected'); 1452 $('.menu-tab .truss').parent().addClass('selected'); 1453 $('#menushaker').css('opacity','0').css('visibility', 'hidden'); 1454 $('.thismenuopened').removeClass('thismenuopened'); 1455 } 1456 }); 1457 } 1458} 1459changeSelectedProductMenu(); 1460// changeMenuByProduct(); 1461
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.