{"version":3,"sources":["../public/js/main.js"],"names":["themo_support_mobile_navigation","Modernizr","mq","jQuery","attr","removeAttr","themo_is_touch_device","checkScreenSize","deviceAgent","navigator","userAgent","toLowerCase","isTouch","touch","match","isMobileSize","themo_no_transparent_header_for_mobile","length","window","console","m","i","document","ready","$","firstBlock","first","find","offset","top","lineHeight","last","css","timeline","height","maxHeight","Math","max","apply","map","this","setNewsPostsHeight","setPartnersPostsHeight","setTeamBlocksHeight","fixedHeight","log","setdbotFeaturesBlocksHeight","on","hasClass","removeClass","siblings","slideUp","addClass","slideDown","parents","Swiper","pagination","paginationClickable","setTimeout","scrollTop","indexOf","niceScroll","zindex","scrollspeed","mousescrollstep","cursorborderradius","cursorborder","cursorcolor","cursorwidth","err","isotope","itemSelector","percentPosition","masonry","columnWidth","gutter","click","event","show","hide","elem","headerHeight","parseInt","each","newPadding","replace","padding-top","themo_adjust_padding_transparent_header","$header_preloader","full_header_imgs","querySelectorAll","imagesLoaded","scrollUp","animationSpeed","animation","scrollSpeed","scrollImg","active","type","src","parent","mywindow","isAccordion","isTab","hash","pathname","location","host","slashedHash","slice","smoothScroll_offset","smoothScroll","scrollTarget","beforeScroll","bsNav","afterScroll","links","split","bbq","pushState","bind","tgt","getElementById","trigger","scroll","themo_init_one_page_scroll","e","preventDefault","filterValue","parent_class","closest","$container","layoutMode","filter","resize"],"mappings":"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","file":"static/js/main.f9055282.chunk.js","sourcesContent":["\"use strict\";\n/*\r\n # Helper Functions\r\n # On Window Resize\r\n # On Window Load\r\n */\n//======================================================================\n// Helper Functions\n//======================================================================\n//-----------------------------------------------------\n// NAVIGATION - Adds support for Mobile Navigation\n// Detect screen size, add / subtract data-toggle\n// for mobile dropdown menu.\n//-----------------------------------------------------\n\nfunction setNewsPostsHeight() {\n if (jQuery('#news').length) {\n //Reset height\n jQuery('#news .block .inner').height('auto'); //Get value of highest element\n\n var maxHeight = Math.max.apply(Math, jQuery('#news .block .inner').map(function () {\n return jQuery(this).height();\n }));\n jQuery('#news .block .inner').height(maxHeight);\n }\n}\n\nfunction setPartnersPostsHeight() {\n if (jQuery('#partners').length) {\n //Reset height\n jQuery('#partners .block .inner').height('auto'); //Get value of highest element\n\n var maxHeight = Math.max.apply(Math, jQuery('#partners .block .inner').map(function () {\n return jQuery(this).height();\n }));\n jQuery('#partners .block .inner').height(maxHeight);\n }\n}\n\nfunction setTeamBlocksHeight() {\n if (jQuery('.team-all').length) {\n //Reset height\n jQuery('.team-all .team-block').height('auto'); //Get value of highest element\n\n var maxHeight = Math.max.apply(Math, jQuery('.team-all .team-block').map(function () {\n return jQuery(this).height();\n }));\n jQuery('.team-all .team-block').height(maxHeight);\n }\n}\n\nfunction setdbotFeaturesBlocksHeight() {\n if (jQuery('section.features').length) {\n //Reset height\n var fixedHeight = (jQuery('section.features .centered-image').height() - 180) / 3;\n jQuery('section.features .block').height('auto');\n console.log(fixedHeight); //Get value of highest element\n\n jQuery('section.features .block').height(fixedHeight);\n }\n}\n\nfunction splitDbotCounterNumber() {// var number = jQuery.trim(jQuery('.counter-wraper').text());\n // var numberArr = number.split('');\n // var ret = \"\";\n // jQuery.each(numberArr, function (k, v) {\n // \tret += \"\" + v + \"\";\n // });\n // jQuery('.counter-wraper').html(ret);\n}\n\nfunction accordion() {\n jQuery('.faq-row .title-row').on('click', function () {\n if (jQuery(this).hasClass('active')) {\n jQuery(this).removeClass('active');\n jQuery(this).siblings('.content-row').slideUp('slow');\n } else {\n jQuery(this).addClass('active');\n jQuery(this).siblings('.content-row').slideDown('slow');\n jQuery(this).parents('.faq-row').siblings('.faq-row').find('.content-row').slideUp('slow');\n jQuery(this).parents('.faq-row').siblings('.faq-row').find('.title-row').removeClass('active');\n }\n });\n}\n\nfunction themo_support_mobile_navigation() {\n // If mobile navigation is active, add data attributes for mobile touch / toggle\n if (Modernizr.mq('(max-width: 767px)')) {\n //console.log('Adding data-toggle, data-target');\n jQuery(\"li.dropdown .dropdown-toggle\").attr(\"data-toggle\", \"dropdown\");\n jQuery(\"li.dropdown .dropdown-toggle\").attr(\"data-target\", \"#\");\n } // If mobile navigation is NOT active, remove data attributes for mobile touch / toggle\n\n\n if (Modernizr.mq('(min-width:768px)')) {\n //console.log('Removing data-toggle, data-target');\n jQuery(\"li.dropdown .dropdown-toggle\").removeAttr(\"data-toggle\", \"dropdown\");\n jQuery(\"li.dropdown .dropdown-toggle\").removeAttr(\"data-target\", \"#\");\n }\n /*\r\n Support for Old Browsers | OLD IE | Might need this after testing.\r\n var windowWidth = jQuery( window ).width();\r\n if(windowWidth > 767){\r\n \tconsole.log('Remove data-toggle');\r\n \tjQuery(\"li.dropdown .dropdown-toggle\").removeAttr(\"data-toggle\", \"dropdown\");\r\n \tjQuery(\"li.dropdown .dropdown-toggle\").removeAttr(\"data-target\", \"#\");\r\n }else {\r\n \tif(windowWidth < 767){\r\n \t\tconsole.log('Adding data-toggle');\r\n \t\tjQuery(\"li.dropdown .dropdown-toggle\").attr(\"data-toggle\", \"dropdown\");\r\n \t\tjQuery(\"li.dropdown .dropdown-toggle\").attr(\"data-target\", \"#\");\r\n \t}\r\n }*/\n\n}\n\nfunction timeline() {\n if (jQuery('#timeline').length) {\n var firstBlock = jQuery('#timeline .block').first().find('h2').offset().top;\n var lastBlock = jQuery('#timeline .block').last().find('h2').offset().top;\n var lineHeight = lastBlock - firstBlock;\n jQuery('#timeline .line span').css('height', lineHeight);\n }\n} //-----------------------------------------------------\n// ANIMATION - Adds support for CS3 Animations\n// Check if element is visible after scrolling\n//-----------------------------------------------------\n\n\nfunction themo_animate_scrolled_into_view(elem, animation, time_to_delay) {\n // If elem does not exist, break.\n if (!jQuery(elem).length) {\n return false;\n } // If an anmiated class has already beed added, then skip it.\n\n\n if (jQuery(elem).is('.slideUp, .slideDown, .slideLeft, .slideRight, .fadeIn')) {//console.log('skip');\n } else {\n var offset = 0; // Off set from bottom of screen\n\n var offset_large = jQuery(window).height() - 700; // Offset for tall images.\n //console.log('Window Height '+jQuery(window).height())\n\n var docViewTop = jQuery(window).scrollTop(); // top of window position\n //console.log('Window Top '+docViewTop)\n\n var docViewBottom = docViewTop + jQuery(window).height(); // bottom of window position\n //console.log('Window Bottom '+docViewBottom)\n\n var elemTop = jQuery(elem).offset().top; // Top of element position\n //console.log(elem.selector + ' Top '+elemTop)\n\n var elemBottom = elemTop + jQuery(elem).height(); // bottom of element position\n //console.log(elem.selector + ' Height '+jQuery(elem).height())\n //console.log(elem.selector + ' Bottom '+elemBottom)\n //console.log(\"----------------------------\");\n\n /*\r\n Caveat:\tWe are working with a numbered positions so if X has highter numbered pos (100) than Y does(50), it actually has a lower phyisial position on the screen.\r\n \t\tIf the top of the windows position is 100 is X has a position of 150, it means that X is lower on the page than the top of the window.\r\n \t\t\t1) IF the bottom of element is physically lower than the top of the Window.\r\n \t\t> e.g. Bottom elem = 100 and the top of window is 50, means bottom of elem has a lower physical position than the top of window\r\n \t\t> This could happen when the element bottom enters from the top of the window.\r\n \t\t\t2) IF the top of element is physically higher than the bottom of (the Window + offset).\r\n \t\t> e.g. Top elem = 100 and the bottom of window is 150, means top of elem is above the bottom of the window\r\n \t\t> This could happen when the element top enteres from the bottom of the window.\r\n \t\t\t#3 and #4 ensure that the entire element is inside the window so the animation won't kick in until the whole thing is visible and between the top and bottom of the window.\r\n \t\t\t3) IF the bottom of the element is above the bottom of the screen.\r\n \t\t> e.g. bottom of elem = 100 and bottom of window = 150, means bottom of elem is above the bottom of the window\r\n \t\t> This could happen when the element bottom enteres from the bottom of the window.\r\n \t\t\t4) IF the top of the element is lower than the top of the window.\r\n \t\t> e.g. top of elem = 100 and top of window = 50, means top of elem is lower than the top of the window\r\n \t\t> This could happen when the element top enteres from the top of the window.\r\n \t\t\t#5 & #6\tFor the edge case where the elem is taller than the window, so at one point the top is above the window and bottom is below.\r\n \t\tTo resovle this we use offset, to prompt the elme to animate once we know its top or bottom is into the screen deep enough to be animated.\r\n \t\t\t5) IF top of elem is above (bottom of window - large offset)\r\n \t\t\t6) If bottom of elem is below (top of window + large offest) */\n\n if (elemBottom >= docViewTop && elemTop <= docViewBottom - offset && elemBottom <= docViewBottom - offset && elemTop >= docViewTop || elemTop <= docViewBottom - offset_large && elemBottom >= docViewTop + offset_large) {\n setTimeout(function () {\n //console.log(elem.selector)\n jQuery(elem).addClass(animation);\n }, time_to_delay);\n }\n }\n}\n\n; //-----------------------------------------------------\n// Adjust Padding for Transparent Header\n// Need to adjust padding if transparent header is enabled,\n// since we'll be using position: absolute and that will cause\n// padding issues with the first page header or slider.\n//-----------------------------------------------------\n\nfunction themo_adjust_padding_transparent_header(elem) {\n // Check if Transparency is enabled.\n if (jQuery('body').find('header.banner[data-transparent-header=\"true\"]').length > 0) {\n // Get the height of the navigation header\n var headerHeight = parseInt(jQuery(\"header.banner\").height()); //console.log('DIGGITY DOG!');\n //console.log('Header Height '+headerHeight);\n // Adjust Padding for all sliders and page headers.\n //jQuery( \"#main-flex-slider .themo_slider_0, section#themo_page_header_1\" ).each(function() {\n\n jQuery(elem).each(function () {\n // Get current padding\n var currentPadding = parseInt(jQuery(this).css(\"padding-top\").replace(/[^-\\d\\.]/g, '')); //console.log('Current Padding '+currentPadding);\n // Calculate\n\n var newPadding = currentPadding + headerHeight; //console.log('New Padding '+newPadding);\n // Adjust and set new padding.\n\n jQuery(this).css({\n \"padding-top\": newPadding + \"px\"\n }); //console.log(\"----------------------------\");\n });\n }\n\n ;\n} //-----------------------------------------------------\n// Detect if touch device via modernizr, return true\n//-----------------------------------------------------\n\n\nfunction themo_is_touch_device(checkScreenSize) {\n if (typeof checkScreenSize === \"undefined\" || checkScreenSize === null) {\n checkScreenSize = true;\n }\n\n var deviceAgent = navigator.userAgent.toLowerCase();\n var isTouch = Modernizr.touch || deviceAgent.match(/(iphone|ipod|ipad)/) || deviceAgent.match(/(android)/) || deviceAgent.match(/iphone/i) || deviceAgent.match(/ipad/i) || deviceAgent.match(/ipod/i) || deviceAgent.match(/blackberry/i);\n\n if (checkScreenSize) {\n var isMobileSize = Modernizr.mq('(max-width:767px)');\n } else {\n var isMobileSize = false;\n }\n\n if (isTouch || isMobileSize) {\n return true;\n }\n\n return false;\n} //-----------------------------------------------------\n// Disable Transparent Header for Mobile\n//-----------------------------------------------------\n\n\nfunction themo_no_transparent_header_for_mobile(isTouch) {\n if (jQuery(\".navbar[data-transparent-header]\").length) {\n if (isTouch) {\n jQuery('.navbar').attr(\"data-transparent-header\", \"false\");\n } else {\n jQuery('.navbar').attr(\"data-transparent-header\", \"true\");\n }\n }\n} //-----------------------------------------------------\n// Scroll Up\n//-----------------------------------------------------\n\n\nfunction themo_start_scrollup() {\n jQuery.scrollUp({\n animationSpeed: 200,\n animation: 'fade',\n scrollSpeed: 500,\n scrollImg: {\n active: true,\n type: 'background',\n src: '../../images/top.png'\n }\n });\n}\n\n;\n\nfunction themo_disable_animation_for_mobile() {\n //console.log('Disable touch for mobile');\n // Detect and set isTouch for touch screens\n var isTouchAnimation = themo_is_touch_device(false);\n\n if (isTouchAnimation) {\n jQuery(\".hide-animation\").removeClass(\"hide-animation\"); //jQuery.each.removeClass(\"hide-animation\");\n }\n}\n\n;\n\nfunction themo_init_one_page_scroll() {\n /* When page loads, set first link to active. */\n if (jQuery('nav ul.navbar-nav .th-anchor').hasClass(\"active\")) {\n jQuery('nav ul.navbar-nav .th-anchor').removeClass('active');\n jQuery('nav ul.navbar-nav .th-anchor-top').addClass('active');\n }\n /* Cache some variables */\n\n\n var slide = jQuery('section').parent('div');\n var mywindow = jQuery(window);\n var htmlbody = jQuery('html,body');\n var isTouch = themo_is_touch_device(false);\n /* Smooth Scroll */\n\n jQuery(document).on('click', 'a[href*=\"#\"]', function () {\n /* If click originates from Accordion Toggle, exit. */\n var isAccordion = jQuery(this).hasClass(\"accordion-toggle\");\n var isTab = jQuery(this).attr('data-toggle');\n\n if (isAccordion || isTab) {\n //console.log('abort, exit completely out of click handler');\n return;\n }\n\n if (this.hash && this.pathname === location.pathname && this.host === location.host) {\n var slashedHash = '#/' + this.hash.slice(1);\n\n if (this.hash) {\n if (slashedHash === location.hash) {\n // There are a few offsets that need to be calculated\n var smoothScroll_offset = 0;\n var navbar_collapse_offset = 0;\n\n if (jQuery(\"header\").hasClass(\"headhesive--clone\")) {\n smoothScroll_offset = jQuery(\".headhesive--clone\").height();\n\n if (jQuery(\"header nav.navbar-collapse\").hasClass(\"in\")) {\n navbar_collapse_offset = jQuery(\"header nav.navbar-collapse.in\").height();\n smoothScroll_offset = smoothScroll_offset - navbar_collapse_offset;\n }\n }\n\n jQuery.smoothScroll({\n offset: -smoothScroll_offset,\n scrollTarget: this.hash,\n beforeScroll: function beforeScroll() {\n // Close Mobile Menu\n var bsNav = jQuery('header .navbar-collapse');\n\n if (bsNav.hasClass(\"collapse in\")) {\n bsNav.removeClass(\"in\"); //mainNav.removeClass(\"open\");\n }\n },\n afterScroll: function afterScroll() {\n // Update Active Links, but not for mobile / touch\n if (!isTouch) {\n var links = jQuery('nav ul.navbar-nav').find('li.th-anchor a');\n jQuery(links).each(function () {\n var hashtag = jQuery(this).attr('href').split('#')[1];\n\n if (hashtag === this.hash) {\n jQuery(this).parent('li').addClass('active');\n } else {\n jQuery(this).parent('li').removeClass('active');\n }\n });\n }\n }\n });\n } else {\n jQuery.bbq.pushState(slashedHash);\n }\n\n return false;\n }\n }\n }).ready(function () {\n jQuery(window).bind('hashchange', function (event) {\n var tgt = location.hash.replace(/^#\\/?/, '');\n\n if (document.getElementById(tgt)) {\n // There are a few offsets that need to be calculated\n var smoothScroll_offset = 0;\n var navbar_collapse_offset = 0;\n\n if (jQuery(\"header\").hasClass(\"headhesive--clone\")) {\n smoothScroll_offset = jQuery(\".headhesive--clone\").height();\n\n if (jQuery(\"header nav.navbar-collapse\").hasClass(\"in\")) {\n navbar_collapse_offset = jQuery(\"header nav.navbar-collapse.in\").height();\n smoothScroll_offset = smoothScroll_offset - navbar_collapse_offset;\n }\n }\n\n jQuery.smoothScroll({\n offset: -smoothScroll_offset,\n scrollTarget: '#' + tgt,\n beforeScroll: function beforeScroll() {\n // Close Mobile Menu\n var bsNav = jQuery('header .navbar-collapse');\n\n if (bsNav.hasClass(\"collapse in\")) {\n bsNav.removeClass(\"in\"); //mainNav.removeClass(\"open\");\n }\n },\n afterScroll: function afterScroll() {\n // Update Active Links, but not for mobile / touch\n if (!isTouch) {\n var links = jQuery('nav ul.navbar-nav').find('li.th-anchor a');\n jQuery(links).each(function () {\n var hashtag = jQuery(this).attr('href').split('#')[1];\n\n if (hashtag === tgt) {\n jQuery(this).parent('li').addClass('active');\n } else {\n jQuery(this).parent('li').removeClass('active');\n }\n });\n }\n }\n });\n }\n });\n jQuery(window).trigger('hashchange');\n }); //waypoints doesnt detect the first slide when user scrolls back up to the top so we add this little bit of code, that removes the class\n //from navigation link slide 2 and adds it to navigation link slide 1.\n\n if (!isTouch) {\n mywindow.scroll(function () {\n if (mywindow.scrollTop() == 0) {\n if (jQuery('nav ul.navbar-nav .th-anchor').hasClass('active')) {\n jQuery('nav ul.navbar-nav .th-anchor').removeClass('active');\n jQuery('nav ul.navbar-nav .th-anchor-top').addClass('active');\n }\n }\n });\n }\n}\n\n;\n\nfunction themo_init_isotope() {\n // filter items on click handler\n jQuery('.portfolio-filters').on('click', 'a', function (e) {\n e.preventDefault(); // Get Data-filter value\n\n var filterValue = jQuery(this).attr('data-filter'); // Get Parent Class\n\n if (filterValue == '*') {\n console.log('NOTHING');\n var parent_class = jQuery(this).closest('section').attr(\"id\");\n } else {\n var parent_class = jQuery(filterValue).closest('section').attr(\"id\");\n } // Remove .current class from all a links inside .portfolio-filters\n\n\n jQuery('#' + parent_class + ' .portfolio-filters a').removeClass(\"current\"); // Add .current class to current filter link.\n\n jQuery(this).addClass(\"current\"); //console.log(filterValue);\n //console.log(parent_class);\n // Get the container element to initialize isotope.\n\n var $container = jQuery('#' + parent_class + ' .portfolio-row'); // init\n\n $container.isotope({\n // options\n itemSelector: '.portfolio-item',\n layoutMode: 'fitRows'\n });\n $container.isotope({\n filter: filterValue\n });\n });\n}\n\nvar nice = false;\n/**\r\n * Protect window.console method calls, e.g. console is not defined on IE\r\n * unless dev tools are open, and IE doesn't define console.debug\r\n */\n\n(function () {\n if (!window.console) {\n window.console = {};\n } // union of Chrome, FF, IE, and Safari console methods\n\n\n var m = [\"log\", \"info\", \"warn\", \"error\", \"debug\", \"trace\", \"dir\", \"group\", \"groupCollapsed\", \"groupEnd\", \"time\", \"timeEnd\", \"profile\", \"profileEnd\", \"dirxml\", \"assert\", \"count\", \"markTimeline\", \"timeStamp\", \"clear\"]; // define undefined methods as noops to prevent errors\n\n for (var i = 0; i < m.length; i++) {\n if (!window.console[m[i]]) {\n window.console[m[i]] = function () {};\n }\n }\n})(); //======================================================================\n// Executes when HTML-Document is loaded and DOM is ready\n//======================================================================\n\n\njQuery(document).ready(function ($) {\n \"use strict\";\n\n timeline();\n setNewsPostsHeight();\n setPartnersPostsHeight();\n setTeamBlocksHeight();\n setdbotFeaturesBlocksHeight();\n splitDbotCounterNumber();\n accordion();\n var swiper = new Swiper('.swiper-container', {\n pagination: '.swiper-pagination',\n paginationClickable: true\n }); // If flex slider loading then wait a max of 5 seconds.\n // else check if images are loaded\n\n if (jQuery(\"#main-flex-slider\")[0]) {\n // Do nothing / flex will figure it out.\n //console.log('Let Flex Take Care of It');\n setTimeout(function () {\n console.log('Took too long, timeout and clear preloader');\n jQuery('body').addClass('loaded');\n }, 10000);\n } else {\n jQuery('body').addClass('loaded');\n } // Add support for mobile navigation\n\n\n themo_support_mobile_navigation($);\n $(window).on(\"scroll\", function () {\n if ($(this).scrollTop() < $('.site-header').height()) {\n $('.site-header').removeClass(\"fixed-header-menu\");\n } else if ($(this).scrollTop() > $('.site-header').height()) {\n $('.site-header').addClass(\"fixed-header-menu\");\n }\n\n ;\n\n if ($(this).scrollTop() < 750) {\n $('#scrollUp').removeClass(\"show\");\n } else if ($(this).scrollTop() > 750) {\n $('#scrollUp').addClass(\"show\");\n }\n });\n\n if (navigator.userAgent.indexOf('Safari') != -1 && navigator.userAgent.indexOf('Chrome') == -1) {\n console.log('Smooth Scroll Off (Safari).');\n } else {\n try {\n // Initialise with options\n nice = jQuery(\"html\").niceScroll({\n zindex: 20000,\n scrollspeed: 60,\n mousescrollstep: 60,\n cursorborderradius: '10px',\n // Scroll cursor radius\n cursorborder: '1px solid rgba(255, 255, 255, 0.4)',\n cursorcolor: 'rgba(0, 0, 0, 0.6)',\n // Scroll cursor color\n //autohidemode: 'true', // Do not hide scrollbar when mouse out\n cursorwidth: '10px' // Scroll cursor width\n\n });\n } catch (err) {\n console.log('Smooth Scroll Off.');\n }\n }\n\n if (Modernizr.mq('(min-width:768px)')) {//fixheight();\n }\n\n $('.grid').isotope({\n itemSelector: '.grid-item',\n percentPosition: true,\n masonry: {\n columnWidth: '.grid-sizer',\n gutter: 26\n }\n });\n $('.schedule-demo-home-btn').click(function (event) {\n $('.demo-form-pop-up').show();\n $('.cancel-schedule-demo').click(function (event) {\n $('.demo-form-pop-up').hide();\n });\n });\n}); //======================================================================\n// On Window Load - executes when complete page is fully loaded, including all frames, objects and images\n//======================================================================\n\njQuery(window).on('load', function ($) {\n \"use strict\"; // Disable animation for mobile.\n\n themo_disable_animation_for_mobile(); // Vertically Align Tour Copy\n //themo_vertical_align_tour();\n // Vertically Align Project Thumb\n //themo_vertical_align_project_thumb();\n // Adjust padding for transparent header\n\n themo_adjust_padding_transparent_header('section#themo_page_header_1'); // Preloader for background images.\n\n var $header_preloader = jQuery(\".full-header-img\").parents(\".preloader\"); //-----------------------------------------------------\n // Select all full header img classes and wait until images are loaded\n // before updating loading class to loaded\n //-----------------------------------------------------\n\n var full_header_imgs = document.querySelectorAll('.full-header-img');\n imagesLoaded(full_header_imgs, function () {\n // Detect when images have been loaded (preloader)\n $header_preloader.removeClass('loading').addClass('loaded'); // once images are loaded, remove preloader animation\n }); // Detect and set isTouch for touch screens\n\n var isTouch = themo_is_touch_device(); // Disable Transparent Header for Mobile / touch\n\n themo_no_transparent_header_for_mobile(isTouch); // Initiate Masonry Script\n //themo_start_masonry();\n // Initiate Lightbox\n //themo_active_lightbox();\n // Adjust Pricing Table Height\n //themo_adjust_pricing_table_height();\n // Start Scroll Up\n\n themo_start_scrollup(); // Headhesive\n //var header = new Headhesive('.navbar-static-top');\n\n /*\r\n // Set options\r\n if(!isTouch){\r\n \tvar options = {\r\n \t\t// Scroll offset. Accepts Number or \"String\" (for class/ID)\r\n \t\toffset: 125, // OR — offset: '.classToActivateAt',\r\n \n \t\tclasses: {\r\n \t\t\tclone: 'headhesive--clone',\r\n \t\t\tstick: 'headhesive--stick',\r\n \t\t\tunstick: 'headhesive--unstick'\r\n \t\t}\r\n \t};\r\n \n \ttry\r\n \t{\r\n \t\t// Initialise with options\r\n \t\tvar banner = new Headhesive('.banner', options);\r\n \t\tjQuery('body').addClass('headhesive');\r\n \t}\r\n \tcatch (err) {\r\n \t\tconsole.log('Sticky Header Off.');\r\n \t}\r\n }else{\r\n \tconsole.log('Sticky Header Off.');\r\n }\r\n \n */\n // setup one page scrolling\n\n themo_init_one_page_scroll(); // Headhesive destroy\n // banner.destroy();\n // start isotope\n\n themo_init_isotope();\n});\n\nfunction fixheight() {\n var lastHeight = 0;\n $.each($('.team-all').find('.fix-height p'), function (index, val) {\n /* iterate through array or object */\n if ($(val).height() > lastHeight) {\n lastHeight = $(val).height();\n $('.team-all .fix-height').height(lastHeight);\n console.log(lastHeight);\n }\n });\n} //======================================================================\n// On Window Resize\n//======================================================================\n\n\njQuery(window).resize(function ($) {\n \"use strict\"; // Detect and set isTouch for touch screens\n\n var isTouch = themo_is_touch_device();\n\n if (Modernizr.mq('(min-width:768px)')) {} //fixheight();\n // Add support for mobile navigation\n\n\n themo_support_mobile_navigation(); // Vertically Align Tour Copy\n //themo_vertical_align_tour();\n // Vertically Align Project Thumb\n //themo_vertical_align_project_thumb();\n // Disable Transparent Header for Mobile / touch\n\n themo_no_transparent_header_for_mobile(isTouch);\n});"],"sourceRoot":""}