(function($) { "use strict"; var common = {}; eltdf.modules.common = common; common.eltdfFluidVideo = eltdfFluidVideo; common.eltdfEnableScroll = eltdfEnableScroll; common.eltdfDisableScroll = eltdfDisableScroll; common.eltdfOwlSlider = eltdfOwlSlider; common.eltdfInitParallax = eltdfInitParallax; common.eltdfInitSelfHostedVideoPlayer = eltdfInitSelfHostedVideoPlayer; common.eltdfSelfHostedVideoSize = eltdfSelfHostedVideoSize; common.eltdfPrettyPhoto = eltdfPrettyPhoto; common.eltdfStickySidebarWidget = eltdfStickySidebarWidget; common.getLoadMoreData = getLoadMoreData; common.setLoadMoreAjaxData = setLoadMoreAjaxData; common.eltdfOnDocumentReady = eltdfOnDocumentReady; common.eltdfOnWindowLoad = eltdfOnWindowLoad; common.eltdfOnWindowResize = eltdfOnWindowResize; $(document).ready(eltdfOnDocumentReady); $(window).on('load', eltdfOnWindowLoad); $(window).resize(eltdfOnWindowResize); /* All functions to be called on $(document).ready() should be in this function */ function eltdfOnDocumentReady() { eltdfIconWithHover().init(); eltdfDisableSmoothScrollForMac(); eltdfInitAnchor().init(); eltdfInitBackToTop(); eltdfBackButtonShowHide(); eltdfInitSelfHostedVideoPlayer(); eltdfSelfHostedVideoSize(); eltdfFluidVideo(); eltdfOwlSlider(); eltdfPreloadBackgrounds(); eltdfPrettyPhoto(); eltdfSearchPostTypeWidget(); eltdfDashboardForm(); } /* All functions to be called on $(window).load() should be in this function */ function eltdfOnWindowLoad() { eltdfInitParallax(); eltdfSmoothTransition(); eltdfStickySidebarWidget().init(); } /* All functions to be called on $(window).resize() should be in this function */ function eltdfOnWindowResize() { eltdfSelfHostedVideoSize(); } /* ** Disable smooth scroll for mac if smooth scroll is enabled */ function eltdfDisableSmoothScrollForMac() { var os = navigator.appVersion.toLowerCase(); if (os.indexOf('mac') > -1 && eltdf.body.hasClass('eltdf-smooth-scroll')) { eltdf.body.removeClass('eltdf-smooth-scroll'); } } function eltdfDisableScroll() { if (window.addEventListener) { window.addEventListener('DOMMouseScroll', eltdfWheel, false); } window.onmousewheel = document.onmousewheel = eltdfWheel; document.onkeydown = eltdfKeydown; } function eltdfEnableScroll() { if (window.removeEventListener) { window.removeEventListener('DOMMouseScroll', eltdfWheel, false); } window.onmousewheel = document.onmousewheel = document.onkeydown = null; } function eltdfWheel(e) { eltdfPreventDefaultValue(e); } function eltdfKeydown(e) { var keys = [37, 38, 39, 40]; for (var i = keys.length; i--;) { if (e.keyCode === keys[i]) { eltdfPreventDefaultValue(e); return; } } } function eltdfPreventDefaultValue(e) { e = e || window.event; if (e.preventDefault) { e.preventDefault(); } e.returnValue = false; } /* ** Anchor functionality */ var eltdfInitAnchor = function() { /** * Set active state on clicked anchor * @param anchor, clicked anchor */ var setActiveState = function(anchor){ var headers = $('.eltdf-main-menu, .eltdf-mobile-nav, .eltdf-fullscreen-menu'); headers.each(function(){ var currentHeader = $(this); if (anchor.parents(currentHeader).length) { currentHeader.find('.eltdf-active-item').removeClass('eltdf-active-item'); anchor.parent().addClass('eltdf-active-item'); currentHeader.find('a').removeClass('current'); anchor.addClass('current'); } }); }; /** * Check anchor active state on scroll */ var checkActiveStateOnScroll = function(){ var anchorData = $('[data-eltdf-anchor]'), anchorElement, siteURL = window.location.href.split('#')[0]; if (siteURL.substr(-1) !== '/') { siteURL += '/'; } anchorData.waypoint( function(direction) { if(direction === 'down') { if ($(this.element).length > 0) { anchorElement = $(this.element).data("eltdf-anchor"); } else { anchorElement = $(this).data("eltdf-anchor"); } setActiveState($("a[href='"+siteURL+"#"+anchorElement+"']")); } }, { offset: '50%' }); anchorData.waypoint( function(direction) { if(direction === 'up') { if ($(this.element).length > 0) { anchorElement = $(this.element).data("eltdf-anchor"); } else { anchorElement = $(this).data("eltdf-anchor"); } setActiveState($("a[href='"+siteURL+"#"+anchorElement+"']")); } }, { offset: function(){ return -($(this.element).outerHeight() - 150); } }); }; /** * Check anchor active state on load */ var checkActiveStateOnLoad = function(){ var hash = window.location.hash.split('#')[1]; if(hash !== "" && $('[data-eltdf-anchor="'+hash+'"]').length > 0){ anchorClickOnLoad(hash); } }; /** * Handle anchor on load */ var anchorClickOnLoad = function ($this) { var scrollAmount, anchor = $('.eltdf-main-menu a, .eltdf-mobile-nav a, .eltdf-fullscreen-menu a'), hash = $this, anchorData = hash !== '' ? $('[data-eltdf-anchor="' + hash + '"]') : ''; if (hash !== '' && anchorData.length > 0) { var anchoredElementOffset = anchorData.offset().top; scrollAmount = anchoredElementOffset - headerHeightToSubtract(anchoredElementOffset) - eltdfGlobalVars.vars.eltdfAddForAdminBar; if(anchor.length) { anchor.each(function(){ var thisAnchor = $(this); if(thisAnchor.attr('href').indexOf(hash) > -1) { setActiveState(thisAnchor); } }); } eltdf.html.stop().animate({ scrollTop: Math.round(scrollAmount) }, 1000, function () { //change hash tag in url if (history.pushState) { history.pushState(null, '', '#' + hash); } }); return false; } }; /** * Calculate header height to be substract from scroll amount * @param anchoredElementOffset, anchorded element offset */ var headerHeightToSubtract = function (anchoredElementOffset) { if (eltdf.modules.stickyHeader.behaviour === 'eltdf-sticky-header-on-scroll-down-up') { eltdf.modules.stickyHeader.isStickyVisible = (anchoredElementOffset > eltdf.modules.header.stickyAppearAmount); } if (eltdf.modules.stickyHeader.behaviour === 'eltdf-sticky-header-on-scroll-up') { if ((anchoredElementOffset > eltdf.scroll)) { eltdf.modules.stickyHeader.isStickyVisible = false; } } var headerHeight = eltdf.modules.stickyHeader.isStickyVisible ? eltdfGlobalVars.vars.eltdfStickyHeaderTransparencyHeight : eltdfPerPageVars.vars.eltdfHeaderTransparencyHeight; if (eltdf.windowWidth < 1025) { headerHeight = 0; } return headerHeight; }; /** * Handle anchor click */ var anchorClick = function () { eltdf.document.on("click", ".eltdf-main-menu a, .eltdf-fullscreen-menu a, .eltdf-btn, .eltdf-anchor, .eltdf-mobile-nav a", function () { var scrollAmount, anchor = $(this), hash = anchor.prop("hash").split('#')[1], anchorData = hash !== '' ? $('[data-eltdf-anchor="' + hash + '"]') : ''; if (hash !== '' && anchorData.length > 0) { var anchoredElementOffset = anchorData.offset().top; scrollAmount = anchoredElementOffset - headerHeightToSubtract(anchoredElementOffset) - eltdfGlobalVars.vars.eltdfAddForAdminBar; setActiveState(anchor); eltdf.html.stop().animate({ scrollTop: Math.round(scrollAmount) }, 1000, function () { //change hash tag in url if (history.pushState) { history.pushState(null, '', '#' + hash); } }); return false; } }); }; return { init: function () { if ($('[data-eltdf-anchor]').length) { anchorClick(); checkActiveStateOnScroll(); $(window).on('load', function () { checkActiveStateOnLoad(); }); } } }; }; function eltdfInitBackToTop() { var backToTopButton = $('#eltdf-back-to-top'); backToTopButton.on('click', function (e) { e.preventDefault(); eltdf.html.animate({scrollTop: 0}, eltdf.window.scrollTop() / 3, 'linear'); }); } function eltdfBackButtonShowHide() { eltdf.window.scroll(function () { var b = $(this).scrollTop(), c = $(this).height(), d; if (b > 0) { d = b + c / 2; } else { d = 1; } if (d < 1e3) { eltdfToTopButton('off'); } else { eltdfToTopButton('on'); } }); } function eltdfToTopButton(a) { var b = $("#eltdf-back-to-top"); b.removeClass('off on'); if (a === 'on') { b.addClass('on'); } else { b.addClass('off'); } } function eltdfInitSelfHostedVideoPlayer() { var players = $('.eltdf-self-hosted-video'); if (players.length) { players.mediaelementplayer({ audioWidth: '100%' }); } } function eltdfSelfHostedVideoSize(){ var selfVideoHolder = $('.eltdf-self-hosted-video-holder .eltdf-video-wrap'); if(selfVideoHolder.length) { selfVideoHolder.each(function(){ var thisVideo = $(this), videoWidth = thisVideo.closest('.eltdf-self-hosted-video-holder').outerWidth(), videoHeight = videoWidth / eltdf.videoRatio; if(navigator.userAgent.match(/(Android|iPod|iPhone|iPad|IEMobile|Opera Mini)/)){ thisVideo.parent().width(videoWidth); thisVideo.parent().height(videoHeight); } thisVideo.width(videoWidth); thisVideo.height(videoHeight); thisVideo.find('video, .mejs-overlay, .mejs-poster').width(videoWidth); thisVideo.find('video, .mejs-overlay, .mejs-poster').height(videoHeight); }); } } function eltdfFluidVideo() { fluidvids.init({ selector: ['iframe'], players: ['www.youtube.com', 'player.vimeo.com'] }); } function eltdfSmoothTransition() { if (eltdf.body.hasClass('eltdf-smooth-page-transitions')) { //check for preload animation if (eltdf.body.hasClass('eltdf-smooth-page-transitions-preloader')) { var loader = $('body > .eltdf-smooth-transition-loader.eltdf-mimic-ajax'); loader.fadeOut(500); $(window).on( 'pageshow', function (event) { if (event.originalEvent.persisted) { loader.fadeOut(500); } }); } //if back button is pressed, than reload page to avoid state where content is on display:none window.addEventListener( "pageshow", function ( event ) { var historyPath = event.persisted || ( typeof window.performance != "undefined" && window.performance.navigation.type === 2 ); if ( historyPath ) { window.location.reload(); } }); //check for fade out animation if (eltdf.body.hasClass('eltdf-smooth-page-transitions-fadeout')) { var linkItem = $('a'); linkItem.on('click', function (e) { var a = $(this); if ((a.parents('.eltdf-shopping-cart-dropdown').length || a.parent('.product-remove').length) && a.hasClass('remove')) { return; } if ( e.which === 1 && // check if the left mouse button has been pressed a.attr('href').indexOf(window.location.host) >= 0 && // check if the link is to the same domain (typeof a.data('rel') === 'undefined') && //Not pretty photo link (typeof a.attr('rel') === 'undefined') && //Not VC pretty photo link (!a.hasClass('lightbox-active')) && //Not lightbox plugin active (typeof a.attr('target') === 'undefined' || a.attr('target') === '_self') && // check if the link opens in the same window (a.attr('href').split('#')[0] !== window.location.href.split('#')[0]) // check if it is an anchor aiming for a different page ) { e.preventDefault(); $('.eltdf-wrapper-inner').fadeOut(1000, function () { window.location = a.attr('href'); }); } }); } } } /* * Preload background images for elements that have 'eltdf-preload-background' class */ function eltdfPreloadBackgrounds(){ var preloadBackHolder = $('.eltdf-preload-background'); if(preloadBackHolder.length) { preloadBackHolder.each(function() { var preloadBackground = $(this); if(preloadBackground.css('background-image') !== '' && preloadBackground.css('background-image') !== 'none') { var bgUrl = preloadBackground.attr('style'); bgUrl = bgUrl.match(/url\(["']?([^'")]+)['"]?\)/); bgUrl = bgUrl ? bgUrl[1] : ""; if (bgUrl) { var backImg = new Image(); backImg.src = bgUrl; $(backImg).load(function(){ preloadBackground.removeClass('eltdf-preload-background'); }); } } else { $(window).on('load', function(){ preloadBackground.removeClass('eltdf-preload-background'); }); //make sure that eltdf-preload-background class is removed from elements with forced background none in css } }); } } function eltdfPrettyPhoto() { /*jshint multistr: true */ var markupWhole = '
\
 
\
\
\
\
\
\
\
\
\
\
\
\ Expand \
\ \ \
\
\
\
\ Previous \

0/0

\ Next \
\

\ {pp_social} \ Close \
\
\
\
\
\
\
\
\
\
\
\
\
'; $("a[data-rel^='prettyPhoto']").prettyPhoto({ hook: 'data-rel', animation_speed: 'normal', /* fast/slow/normal */ slideshow: false, /* false OR interval time in ms */ autoplay_slideshow: false, /* true/false */ opacity: 0.80, /* Value between 0 and 1 */ show_title: true, /* true/false */ allow_resize: true, /* Resize the photos bigger than viewport. true/false */ horizontal_padding: 0, default_width: 960, default_height: 540, counter_separator_label: '/', /* The separator for the gallery counter 1 "of" 2 */ theme: 'pp_default', /* light_rounded / dark_rounded / light_square / dark_square / facebook */ hideflash: false, /* Hides all the flash object on a page, set to TRUE if flash appears over prettyPhoto */ wmode: 'opaque', /* Set the flash wmode attribute */ autoplay: true, /* Automatically start videos: True/False */ modal: false, /* If set to true, only the close button will close the window */ overlay_gallery: false, /* If set to true, a gallery will overlay the fullscreen image on mouse over */ keyboard_shortcuts: true, /* Set to false if you open forms inside prettyPhoto */ deeplinking: false, custom_markup: '', social_tools: false, markup: markupWhole }); } function eltdfSearchPostTypeWidget() { var searchPostTypeHolder = $('.eltdf-search-post-type'); if (searchPostTypeHolder.length) { searchPostTypeHolder.each(function () { var thisSearch = $(this), searchField = thisSearch.find('.eltdf-post-type-search-field'), resultsHolder = thisSearch.siblings('.eltdf-post-type-search-results'), searchLoading = thisSearch.find('.eltdf-search-loading'), searchIcon = thisSearch.find('.eltdf-search-icon'); searchLoading.addClass('eltdf-hidden'); var postType = thisSearch.data('post-type'), keyPressTimeout; searchField.on('keyup paste', function() { var field = $(this); field.attr('autocomplete','off'); searchLoading.removeClass('eltdf-hidden'); searchIcon.addClass('eltdf-hidden'); clearTimeout(keyPressTimeout); keyPressTimeout = setTimeout( function() { var searchTerm = field.val(); if(searchTerm.length < 3) { resultsHolder.html(''); resultsHolder.fadeOut(); searchLoading.addClass('eltdf-hidden'); searchIcon.removeClass('eltdf-hidden'); } else { var ajaxData = { action: 'calla_elated_search_post_types', term: searchTerm, postType: postType }; $.ajax({ type: 'POST', data: ajaxData, url: eltdfGlobalVars.vars.eltdfAjaxUrl, success: function (data) { var response = JSON.parse(data); if (response.status === 'success') { searchLoading.addClass('eltdf-hidden'); searchIcon.removeClass('eltdf-hidden'); resultsHolder.html(response.data.html); resultsHolder.fadeIn(); } }, error: function(XMLHttpRequest, textStatus, errorThrown) { console.log("Status: " + textStatus); console.log("Error: " + errorThrown); searchLoading.addClass('eltdf-hidden'); searchIcon.removeClass('eltdf-hidden'); resultsHolder.fadeOut(); } }); } }, 500); }); searchField.on('focusout', function () { searchLoading.addClass('eltdf-hidden'); searchIcon.removeClass('eltdf-hidden'); resultsHolder.fadeOut(); }); }); } } /** * Initializes load more data params * @param container with defined data params * return array */ function getLoadMoreData(container){ var dataList = container.data(), returnValue = {}; for (var property in dataList) { if (dataList.hasOwnProperty(property)) { if (typeof dataList[property] !== 'undefined' && dataList[property] !== false) { returnValue[property] = dataList[property]; } } } return returnValue; } /** * Sets load more data params for ajax function * @param container with defined data params * @param action with defined action name * return array */ function setLoadMoreAjaxData(container, action) { var returnValue = { action: action }; for (var property in container) { if (container.hasOwnProperty(property)) { if (typeof container[property] !== 'undefined' && container[property] !== false) { returnValue[property] = container[property]; } } } return returnValue; } /** * Object that represents icon with hover data * @returns {{init: Function}} function that initializes icon's functionality */ var eltdfIconWithHover = function() { //get all icons on page var icons = $('.eltdf-icon-has-hover'); /** * Function that triggers icon hover color functionality */ var iconHoverColor = function(icon) { if(typeof icon.data('hover-color') !== 'undefined') { var changeIconColor = function(event) { event.data.icon.css('color', event.data.color); }; var hoverColor = icon.data('hover-color'), originalColor = icon.css('color'); if(hoverColor !== '') { icon.on('mouseenter', {icon: icon, color: hoverColor}, changeIconColor); icon.on('mouseleave', {icon: icon, color: originalColor}, changeIconColor); } } }; return { init: function() { if(icons.length) { icons.each(function() { iconHoverColor($(this)); }); } } }; }; /* ** Init parallax */ function eltdfInitParallax(){ var parallaxHolder = $('.eltdf-parallax-row-holder'); if(parallaxHolder.length){ parallaxHolder.each(function() { var parallaxElement = $(this), image = parallaxElement.data('parallax-bg-image'), speed = parallaxElement.data('parallax-bg-speed') * 0.4, height = 0; if (typeof parallaxElement.data('parallax-bg-height') !== 'undefined' && parallaxElement.data('parallax-bg-height') !== false) { height = parseInt(parallaxElement.data('parallax-bg-height')); } parallaxElement.css({'background-image': 'url('+image+')'}); if(height > 0) { parallaxElement.css({'min-height': height+'px', 'height': height+'px'}); } parallaxElement.parallax('50%', speed); }); } } /* ** Init sticky sidebar widget */ function eltdfStickySidebarWidget(){ var sswHolder = $('.eltdf-widget-sticky-sidebar'), headerHolder = $('.eltdf-page-header'), headerHeight = headerHolder.length ? headerHolder.outerHeight() : 0, widgetTopOffset = 0, widgetTopPosition = 0, sidebarHeight = 0, sidebarWidth = 0, objectsCollection = []; function addObjectItems() { if (sswHolder.length) { sswHolder.each(function () { var thisSswHolder = $(this), mainSidebarHolder = thisSswHolder.parents('aside.eltdf-sidebar'), widgetiseSidebarHolder = thisSswHolder.parents('.wpb_widgetised_column'), sidebarHolder = '', sidebarHolderHeight = 0; widgetTopOffset = thisSswHolder.offset().top; widgetTopPosition = thisSswHolder.position().top; sidebarHeight = 0; sidebarWidth = 0; if (mainSidebarHolder.length) { sidebarHeight = mainSidebarHolder.outerHeight(); sidebarWidth = mainSidebarHolder.outerWidth(); sidebarHolder = mainSidebarHolder; sidebarHolderHeight = mainSidebarHolder.parent().parent().outerHeight(); var blogHolder = mainSidebarHolder.parent().parent().find('.eltdf-blog-holder'); if (blogHolder.length) { sidebarHolderHeight -= parseInt(blogHolder.css('marginBottom')); } } else if (widgetiseSidebarHolder.length) { sidebarHeight = widgetiseSidebarHolder.outerHeight(); sidebarWidth = widgetiseSidebarHolder.outerWidth(); sidebarHolder = widgetiseSidebarHolder; sidebarHolderHeight = widgetiseSidebarHolder.parents('.vc_row').outerHeight(); } objectsCollection.push({ 'object': thisSswHolder, 'offset': widgetTopOffset, 'position': widgetTopPosition, 'height': sidebarHeight, 'width': sidebarWidth, 'sidebarHolder': sidebarHolder, 'sidebarHolderHeight': sidebarHolderHeight }); }); } } function initStickySidebarWidget() { if (objectsCollection.length) { $.each(objectsCollection, function (i) { var thisSswHolder = objectsCollection[i]['object'], thisWidgetTopOffset = objectsCollection[i]['offset'], thisWidgetTopPosition = objectsCollection[i]['position'], thisSidebarHeight = objectsCollection[i]['height'], thisSidebarWidth = objectsCollection[i]['width'], thisSidebarHolder = objectsCollection[i]['sidebarHolder'], thisSidebarHolderHeight = objectsCollection[i]['sidebarHolderHeight']; if (eltdf.body.hasClass('eltdf-fixed-on-scroll')) { var fixedHeader = $('.eltdf-fixed-wrapper.fixed'); if (fixedHeader.length) { headerHeight = fixedHeader.outerHeight() + eltdfGlobalVars.vars.eltdfAddForAdminBar; } } else if (eltdf.body.hasClass('eltdf-no-behavior')) { headerHeight = eltdfGlobalVars.vars.eltdfAddForAdminBar; } if (eltdf.windowWidth > 1024 && thisSidebarHolder.length) { var sidebarPosition = -(thisWidgetTopPosition - headerHeight), sidebarHeight = thisSidebarHeight - thisWidgetTopPosition - 40; // 40 is bottom margin of widget holder //move sidebar up when hits the end of section row var rowSectionEndInViewport = thisSidebarHolderHeight + thisWidgetTopOffset - headerHeight - thisWidgetTopPosition - eltdfGlobalVars.vars.eltdfTopBarHeight; if ((eltdf.scroll >= thisWidgetTopOffset - headerHeight) && thisSidebarHeight < thisSidebarHolderHeight) { if (thisSidebarHolder.hasClass('eltdf-sticky-sidebar-appeared')) { thisSidebarHolder.css({'top': sidebarPosition + 'px'}); } else { thisSidebarHolder.addClass('eltdf-sticky-sidebar-appeared').css({ 'position': 'fixed', 'top': sidebarPosition + 'px', 'width': thisSidebarWidth, 'margin-top': '-10px' }).animate({'margin-top': '0'}, 200); } if (eltdf.scroll + sidebarHeight >= rowSectionEndInViewport) { var absBottomPosition = thisSidebarHolderHeight - sidebarHeight + sidebarPosition - headerHeight; thisSidebarHolder.css({ 'position': 'absolute', 'top': absBottomPosition + 'px' }); } else { if (thisSidebarHolder.hasClass('eltdf-sticky-sidebar-appeared')) { thisSidebarHolder.css({ 'position': 'fixed', 'top': sidebarPosition + 'px' }); } } } else { thisSidebarHolder.removeClass('eltdf-sticky-sidebar-appeared').css({ 'position': 'relative', 'top': '0', 'width': 'auto' }); } } else { thisSidebarHolder.removeClass('eltdf-sticky-sidebar-appeared').css({ 'position': 'relative', 'top': '0', 'width': 'auto' }); } }); } } return { init: function () { addObjectItems(); initStickySidebarWidget(); $(window).scroll(function () { initStickySidebarWidget(); }); }, reInit: initStickySidebarWidget }; } /** * Init Owl Carousel */ function eltdfOwlSlider() { var sliders = $('.eltdf-owl-slider'); if (sliders.length) { sliders.each(function(){ var slider = $(this), owlSlider = $(this), slideItemsNumber = slider.children().length, numberOfItems = 1, loop = true, autoplay = true, autoplayHoverPause = true, sliderSpeed = 5000, sliderSpeedAnimation = 600, margin = 0, responsiveMargin = 0, responsiveMargin1 = 0, stagePadding = 0, stagePaddingEnabled = false, center = false, autoWidth = false, animateInClass = false, // keyframe css animation animateOutClass = false, // keyframe css animation navigation = true, pagination = false, thumbnail = false, thumbnailSlider, sliderIsPortfolio = !!slider.hasClass('eltdf-pl-is-slider'), sliderDataHolder = sliderIsPortfolio ? slider.parent() : slider; // this is condition for portfolio slider if (typeof slider.data('number-of-items') !== 'undefined' && slider.data('number-of-items') !== false && !sliderIsPortfolio) { numberOfItems = slider.data('number-of-items'); } if (typeof sliderDataHolder.data('number-of-columns') !== 'undefined' && sliderDataHolder.data('number-of-columns') !== false && sliderIsPortfolio) { numberOfItems = sliderDataHolder.data('number-of-columns'); } if (sliderDataHolder.data('enable-loop') === 'no') { loop = false; } if (sliderDataHolder.data('enable-autoplay') === 'no') { autoplay = false; } if (sliderDataHolder.data('enable-autoplay-hover-pause') === 'no') { autoplayHoverPause = false; } if (typeof sliderDataHolder.data('slider-speed') !== 'undefined' && sliderDataHolder.data('slider-speed') !== false) { sliderSpeed = sliderDataHolder.data('slider-speed'); } if (typeof sliderDataHolder.data('slider-speed-animation') !== 'undefined' && sliderDataHolder.data('slider-speed-animation') !== false) { sliderSpeedAnimation = sliderDataHolder.data('slider-speed-animation'); } if (typeof sliderDataHolder.data('slider-margin') !== 'undefined' && sliderDataHolder.data('slider-margin') !== false) { if (sliderDataHolder.data('slider-margin') === 'no') { margin = 0; } else { margin = sliderDataHolder.data('slider-margin'); } } else { if(slider.parent().hasClass('eltdf-huge-space')) { margin = 60; } else if (slider.parent().hasClass('eltdf-large-space')) { margin = 50; } else if (slider.parent().hasClass('eltdf-medium-space')) { margin = 40; } else if (slider.parent().hasClass('eltdf-normal-space')) { margin = 30; } else if (slider.parent().hasClass('eltdf-small-space')) { margin = 20; } else if (slider.parent().hasClass('eltdf-tiny-space')) { margin = 10; } } if (sliderDataHolder.data('slider-padding') === 'yes') { stagePaddingEnabled = true; stagePadding = parseInt(slider.outerWidth() * 0.28); margin = 50; } if (sliderDataHolder.data('enable-center') === 'yes') { center = true; } if (sliderDataHolder.data('enable-auto-width') === 'yes') { autoWidth = true; } if (typeof sliderDataHolder.data('slider-animate-in') !== 'undefined' && sliderDataHolder.data('slider-animate-in') !== false) { animateInClass = sliderDataHolder.data('slider-animate-in'); } if (typeof sliderDataHolder.data('slider-animate-out') !== 'undefined' && sliderDataHolder.data('slider-animate-out') !== false) { animateOutClass = sliderDataHolder.data('slider-animate-out'); } if (sliderDataHolder.data('enable-navigation') === 'no') { navigation = false; } if (sliderDataHolder.data('enable-pagination') === 'yes') { pagination = true; } if (sliderDataHolder.data('enable-thumbnail') === 'yes') { thumbnail = true; } if(navigation && pagination) { slider.addClass('eltdf-slider-has-both-nav'); } if (slideItemsNumber <= 1) { loop = false; autoplay = false; navigation = false; pagination = false; } var responsiveNumberOfItems1 = 1, responsiveNumberOfItems2 = 2, responsiveNumberOfItems3 = 3, responsiveNumberOfItems4 = numberOfItems; if (numberOfItems < 3) { responsiveNumberOfItems2 = numberOfItems; responsiveNumberOfItems3 = numberOfItems; } if (numberOfItems > 4) { responsiveNumberOfItems4 = 4; } if (stagePaddingEnabled || margin > 30) { responsiveMargin = 20; responsiveMargin1 = 30; } if (margin > 0 && margin <= 30) { responsiveMargin = margin; responsiveMargin1 = margin; } slider.waitForImages(function () { owlSlider = slider.owlCarousel({ items: numberOfItems, loop: loop, autoplay: autoplay, autoplayHoverPause: autoplayHoverPause, autoplayTimeout: sliderSpeed, smartSpeed: sliderSpeedAnimation, margin: margin, stagePadding: stagePadding, center: center, autoWidth: autoWidth, animateIn: animateInClass, animateOut: animateOutClass, dots: pagination, nav: navigation, navText: [ '', '' ], responsive: { 0: { items: responsiveNumberOfItems1, margin: responsiveMargin, stagePadding: 0, center: false, autoWidth: false }, 681: { items: responsiveNumberOfItems2, margin: responsiveMargin1 }, 769: { items: responsiveNumberOfItems3, margin: responsiveMargin1 }, 1025: { items: responsiveNumberOfItems4 }, 1281: { items: numberOfItems } }, onInitialize: function () { slider.css('visibility', 'visible'); eltdfInitParallax(); if(thumbnail) { thumbnailSlider.find('.eltdf-slider-thumbnail-item:first-child').addClass('active'); } }, onTranslate: function(e) { if(thumbnail) { var index = e.item.index + 1; thumbnailSlider.find('.eltdf-slider-thumbnail-item.active').removeClass('active'); thumbnailSlider.find('.eltdf-slider-thumbnail-item:nth-child(' + index + ')').addClass('active'); } }, onDrag: function (e) { if (eltdf.body.hasClass('eltdf-smooth-page-transitions-fadeout')) { var sliderIsMoving = e.isTrigger > 0; if (sliderIsMoving) { slider.addClass('eltdf-slider-is-moving'); } } }, onDragged: function () { if (eltdf.body.hasClass('eltdf-smooth-page-transitions-fadeout') && slider.hasClass('eltdf-slider-is-moving')) { setTimeout(function () { slider.removeClass('eltdf-slider-is-moving'); }, 500); } } }); }); if(thumbnail) { thumbnailSlider = slider.parent().find('.eltdf-slider-thumbnail'); var numberOfThumbnails = parseInt(thumbnailSlider.data('thumbnail-count')); var numberOfThumbnailsClass = ''; switch (numberOfThumbnails % 6) { case 2 : numberOfThumbnailsClass = 'two'; break; case 3 : numberOfThumbnailsClass = 'three'; break; case 4 : numberOfThumbnailsClass = 'four'; break; case 5 : numberOfThumbnailsClass = 'five'; break; case 0 : numberOfThumbnailsClass = 'six'; break; default : numberOfThumbnailsClass = 'six'; break; } if(numberOfThumbnailsClass !== '') { thumbnailSlider.addClass('eltdf-slider-columns-' + numberOfThumbnailsClass) } thumbnailSlider.find('.eltdf-slider-thumbnail-item').on('click', function () { $(this).siblings('.active').removeClass('active'); $(this).addClass('active'); owlSlider.trigger('to.owl.carousel', [$(this).index(), sliderSpeedAnimation]); }); } }); } } function eltdfDashboardForm(){ var forms = $('.eltdf-dashboard-form'); if ( forms.length ) { forms.each(function(){ var thisForm = $(this), btnText = thisForm.find('button'), updatingBtnText = btnText.data('updating-text'), updatedBtnText = btnText.data('updated-text'), actionName = thisForm.data('action'); thisForm.on('submit', function (e) { e.preventDefault(); var prevBtnText = btnText.html(), gallery = $(this).find('.eltdf-dashboard-gallery-upload-hidden'), namesArray = [], action = ''; btnText.html(updatingBtnText); //get data var formData = new FormData(); //get files gallery.each(function(){ var thisGallery = $(this), thisName = thisGallery.attr('name'), thisRepeaterID = thisGallery.attr('id'), thisFiles = thisGallery[0].files, newName; //this part is needed for repeater with image uploads //adding specific names so they can be sorted in regular files and files in repeater if (thisName.indexOf("[") != "-1") { newName = thisName.substring(0,thisName.indexOf("["))+'_eltdf_regarray_'; var firstIndex = thisRepeaterID.indexOf('['); var lastIndex = thisRepeaterID.indexOf(']'); var index = thisRepeaterID.substring(firstIndex+1,lastIndex); namesArray.push(newName); newName = newName + index + '_'; } else { newName = thisName + '_eltdf_reg_'; } //if file not sent, send dummy file - so repeater fields are sent if (thisFiles.length == 0){ formData.append(newName, new File([""], "eltdf-dummy-file.txt", { type: "text/plain", })); } for (var i = 0; i < thisFiles.length; i++) { formData.append(newName+i, thisFiles[i]); }; }); formData.append('action', actionName); //get data from form var otherData = $(this).serialize(); formData.append('data',otherData); $.ajax({ type: 'POST', data: formData, contentType: false, processData: false, url: eltdfGlobalVars.vars.eltdfAjaxUrl, success: function (data) { var response; response = JSON.parse(data); // append ajax response html eltdf.modules.socialLogin.eltdfRenderAjaxResponseMessage(response); if (response.status == 'success') { btnText.html(updatedBtnText); window.location = response.redirect; } else { btnText.html(prevBtnText); } } }); return false; }); }); } } })(jQuery);