/* global jQuery:false */ var THEMEREX_MESSAGE_BOOKMARK_ADD = 'Add the bookmark' var THEMEREX_MESSAGE_BOOKMARK_ADDED = "Current page has been successfully added to the bookmarks. You can see it in the right panel on the tab \'Bookmarks\'" var THEMEREX_MESSAGE_BOOKMARK_TITLE = 'Enter bookmark title' var THEMEREX_MESSAGE_BOOKMARK_EXISTS = 'Current page already exists in the bookmarks list' var THEMEREX_MESSAGE_SEARCH_ERROR = 'Error occurs in AJAX search! Please, type your query and press search icon for the traditional search way.' var THEMEREX_MESSAGE_EMAIL_CONFIRM = 'On the e-mail address %s we sent a confirmation email.
Please, open it and click on the link.' var THEMEREX_MESSAGE_EMAIL_ADDED = 'Your address %s has been successfully added to the subscription list' var THEMEREX_REVIEWS_VOTE = 'Thanks for your vote! New average rating is:' var THEMEREX_REVIEWS_ERROR = 'Error saving your vote! Please, try again later.' var THEMEREX_MAGNIFIC_LOADING = 'Loading image #%curr% ...' var THEMEREX_MAGNIFIC_ERROR = 'The image #%curr% could not be loaded.' var THEMEREX_MESSAGE_ERROR_LIKE = 'Error saving your like! Please, try again later.' var THEMEREX_GLOBAL_ERROR_TEXT = 'Global error text' var THEMEREX_NAME_EMPTY = "The name can\'t be empty" var THEMEREX_NAME_LONG = 'Too long name' var THEMEREX_EMAIL_EMPTY = 'Too short (or empty) email address' var THEMEREX_EMAIL_LONG = 'Too long email address' var THEMEREX_EMAIL_NOT_VALID = 'Invalid email address' var THEMEREX_SUBJECT_EMPTY = "The subject can\'t be empty" var THEMEREX_SUBJECT_LONG = 'Too long subject' var THEMEREX_MESSAGE_EMPTY = "The message text can\'t be empty" var THEMEREX_MESSAGE_LONG = 'Too long message text' var THEMEREX_SEND_COMPLETE = 'Send message complete!' var THEMEREX_SEND_ORDER_COMPLETE = "Thank you! We\'ll be in touch." var THEMEREX_SEND_ERROR = 'Transmit failed!' var THEMEREX_LOGIN_EMPTY = "The Login field can\'t be empty" var THEMEREX_LOGIN_LONG = 'Too long login field' var THEMEREX_PASSWORD_EMPTY = "The password can\'t be empty and shorter then 5 characters" var THEMEREX_PASSWORD_LONG = 'Too long password' var THEMEREX_PASSWORD_NOT_EQUAL = 'The passwords in both fields are not equal' var THEMEREX_REGISTRATION_SUCCESS = 'Registration success! Please log in!' var THEMEREX_REGISTRATION_FAILED = 'Registration failed!' var THEMEREX_REGISTRATION_AUTHOR = 'Your account is waiting for the site admin moderation!' var THEMEREX_GEOCODE_ERROR = 'Geocode was not successful for the following reason:' var THEMEREX_GOOGLE_MAP_NOT_AVAIL = 'Google map API not available!' // Max scale factor for the portfolio and other isotope elements before relayout var THEMEREX_isotope_resize_delta = 0.3 // Internal vars - do not change it! var THEMEREX_ADMIN_MODE = false var THEMEREX_error_msg_box = null var THEMEREX_VIEWMORE_BUSY = false var THEMEREX_video_resize_inited = false var THEMEREX_top_height = 0 var THEMEREX_top_height_usermenu_area = 0 var THEMEREX_use_fixed_wrapper = true var THEMEREX_REMEMBERSCROLL = 0 // AJAX parameters var THEMEREX_ajax_url = '#' var THEMEREX_ajax_nonce = 'cdd65e5bff' // Site base url var THEMEREX_site_url = '#' // Theme base font var THEMEREX_theme_font = '' // Theme skin var THEMEREX_theme_skin = 'general' var THEMEREX_theme_skin_bg = '#ffffff' // Slider height var THEMEREX_slider_height = 100 // System message var THEMEREX_systemMessage = {message: '', status: '', header: ''} // User logged in var THEMEREX_userLoggedIn = false // Show table of content for the current page var THEMEREX_menu_toc = 'no' // Fix main menu var THEMEREX_menuFixed = false // Use responsive version for main menu var THEMEREX_menuResponsive = 1167 var THEMEREX_responsive_menu_click = true // Right panel demo timer var THEMEREX_demo_time = 3000 // Video and Audio tag wrapper var THEMEREX_useMediaElement = true // Use AJAX search var THEMEREX_useAJAXSearch = true var THEMEREX_AJAXSearch_min_length = 3 var THEMEREX_AJAXSearch_delay = 200 // Popup windows engine var THEMEREX_popupEngine = 'magnific' var THEMEREX_popupGallery = true // E-mail mask THEMEREX_EMAIL_MASK = '^([a-zA-Z0-9_\\-]+\\.)*[a-zA-Z0-9_\\-]+@[a-z0-9_\\-]+(\\.[a-z0-9_\\-]+)*\\.[a-z]{2,6}$' // Messages max length var THEMEREX_msg_maxlength_contacts = 1000 var THEMEREX_msg_maxlength_comments = 1000 // Remember visitors settings var THEMEREX_remember_visitors_settings = false function frontManualStart () { 'use strict' timelineResponsive() ready() timelineScrollFix() itemPageFull() mainMenuResponsive() scrollAction() calcMenuColumnsWidth() REX_parallax() fitLargerHeight() // Resize handlers jQuery(window).resize(function () { 'use strict' timelineResponsive() fullSlider() resizeSliders() itemPageFull() mainMenuResponsive() scrollAction() REX_parallax() setEqualHeight(jQuery('.relatedPostWrap .wrap.thumb'), jQuery('.relatedPostWrap .wrap.no_thumb')) }) // Scroll handlers jQuery(window).scroll(function () { 'use strict' timelineScrollFix() scrollAction() REX_parallax() }) }; function ready () { 'use strict'; // Form styler (function ($) { $(function () { $('.woocommerce-ordering input, .woocommerce-ordering select, .variations select, #calc_shipping_country, .widgetWrap select').styler() }) })(jQuery) // woocommerce jQuery('.woocommerce form:not(.formValid) input[type=checkbox]').wrap('') jQuery('.wrap-checkbox').click(function () { jQuery(this).toggleClass('active') }) jQuery('.wrap-checkbox input').each(function () { if (this.checked) { jQuery(this).parent('.wrap-checkbox').toggleClass('active') } }) // cart jQuery('.topWrap .cart_button').click(function (e) { 'use strict' if (jQuery('body').hasClass('openCart')) { jQuery(this).next('.sidebar_cart').fadeOut(200) jQuery('.cart_overflow').fadeOut(400) jQuery('body').removeClass('openCart') } else { jQuery(this).next('.sidebar_cart').fadeIn(200) jQuery('body').addClass('openCart') if (jQuery('.cart_overflow').length == 0) { jQuery('body').append('
') } jQuery('.cart_overflow').fadeIn(400) } e.preventDefault() return false }) jQuery(document).on('click', '.cart_overflow', function (e) { 'use strict' jQuery('.cart_overflow').fadeOut(400) jQuery('.topWrap .sidebar_cart').fadeOut(200) jQuery('body').removeClass('openCart') }) // Show system message if (THEMEREX_systemMessage.message) { if (THEMEREX_systemMessage.status == 'success') { themerex_message_success(THEMEREX_systemMessage.message, THEMEREX_systemMessage.header) } else if (THEMEREX_systemMessage.status == 'info') { themerex_message_info(THEMEREX_systemMessage.message, THEMEREX_systemMessage.header) } else if (THEMEREX_systemMessage.status == 'error' || THEMEREX_systemMessage.status == 'warning') { themerex_message_warning(THEMEREX_systemMessage.message, THEMEREX_systemMessage.header) } } // Top menu height THEMEREX_top_height = jQuery('header .topWrap').height() THEMEREX_top_height_usermenu_area = jQuery('header .topWrap .usermenu_area').height() // Blogger height function heightRelated () { if (jQuery('.sc_blogger.relatedPostWrap').length > 0) { if (!isotopeImagesComplete(jQuery('.sc_blogger.relatedPostWrap'))) { setTimeout(heightRelated, 500) return } jQuery('.sc_blogger.relatedPostWrap article').each(function () { 'use strict' var height = jQuery(this).height() var newHeight = jQuery(this).find('.title_wrap').outerHeight() /* jQuery(this).find('.wrap_bottom_info').css({'top': height - newHeight}); */ } ) } } heightRelated() try { jQuery(window).smartresize(heightRelated) } catch (e) { jQuery(window).resize(heightRelated) } THEMEREX_use_fixed_wrapper = jQuery('.topWrapFixed').parents('.fullScreenSlider').length == 0 || !jQuery('.topWrapFixed').parent().next().hasClass('sliderHomeBullets') // Close all dropdown elements jQuery(document).click(function (e) { 'use strict' jQuery('.pageFocusBlock').slideUp() jQuery('.inputSubmitAnimation:not(.opened)').removeClass('sFocus rad4').addClass('radCircle', 100) jQuery('ul.shareDrop').removeClass('open').slideUp().siblings('a.shareDrop').removeClass('selected') }) // Calendar handlers - change months jQuery('.widget_calendar').on('click', '.prevMonth a, .nextMonth a', function (e) { 'use strict' var calendar = jQuery(this).parents('.wp-calendar') var m = jQuery(this).data('month') var y = jQuery(this).data('year') var pt = jQuery(this).data('type') jQuery.post(THEMEREX_ajax_url, { action: 'calendar_change_month', nonce: THEMEREX_ajax_nonce, month: m, year: y, post_type: pt }).done(function (response) { var rez = JSON.parse(response) if (rez.error === '') { calendar.parent().fadeOut(200, function () { jQuery(this).empty().append(rez.data).fadeIn(200) }) } }) e.preventDefault() return false }) // Tabs for top widgets if (jQuery('.widgetTabs').length > 0) { // Collect widget's headers into tabs var THEMEREX_top_tabs = '' var THEMEREX_top_tabs_counter = 0 jQuery('.widgetTop .titleHide').each(function () { 'use strict' THEMEREX_top_tabs_counter++ var id = jQuery(this).parents('.widgetTop').attr('id') var title = jQuery(this).text() if (title == '') title = '#' + THEMEREX_top_tabs_counter THEMEREX_top_tabs += '
  • ' + title + '
  • ' }) jQuery('.widgetTabs .tabsButton ul').append(THEMEREX_top_tabs) // Break lists in top widgets on two parts jQuery('.widgetTop > ul:not(.tabs),.widgetTop > div > ul:not(.tabs)').each(function () { 'use strict' var ul2 = jQuery(this).clone() var li = jQuery(this).find('>li') var middle = Math.ceil(li.length / 2) - 1 li.eq(middle).nextAll().remove() ul2.find('>li').eq(middle + 1).prevAll().remove() jQuery(this).after(ul2) }) // Init tabs jQuery('.widgetTabs').tabs({ show: { effect: 'drop', direction: 'right', duration: 500 }, hide: { effect: 'drop', direction: 'left', duration: 500 }, activate: function (event, ui) { 'use strict' initShortcodes(ui.newPanel) } }) } // Add bookmarks if (jQuery('#tabsFavorite').length > 0) { jQuery('.addBookmark').click(function (e) { 'use strict' var title = window.document.title.split('|')[0] var url = window.location.href var list = jQuery.cookie('themerex_bookmarks') var exists = false if (list) { list = JSON.parse(list) for (var i = 0; i < list.length; i++) { if (list[i].url == url) { exists = true break } } } else { list = new Array() } if (!exists) { var THEMEREX_message_popup = themerex_message_dialog('
    ', THEMEREX_MESSAGE_BOOKMARK_ADD, null, function (btn, popup) { 'use strict' if (btn != 1) return title = THEMEREX_message_popup.find('#bookmark_title').val() list.push({title: title, url: url}) jQuery('.listBookmarks').append('
  • ' + title + '
  • ') jQuery.cookie('themerex_bookmarks', JSON.stringify(list), {expires: 365, path: '/'}) if (THEMEREX_Swipers['bookmarks_scroll'] !== undefined) THEMEREX_Swipers['bookmarks_scroll'].reInit() setTimeout(function () { themerex_message_success(THEMEREX_MESSAGE_BOOKMARK_ADDED, THEMEREX_MESSAGE_BOOKMARK_ADD) }, THEMEREX_MESSAGE_TIMEOUT / 4) }) } else { themerex_message_warning(THEMEREX_MESSAGE_BOOKMARK_EXISTS, THEMEREX_MESSAGE_BOOKMARK_ADD) } e.preventDefault() return false }) // Delete bookmarks jQuery('.listBookmarks').on('click', '.delBookmark', function (e) { 'use strict' var idx = jQuery(this).parent().index() var list = jQuery.cookie('themerex_bookmarks') if (list) { list = JSON.parse(list) list.splice(idx, 1) jQuery.cookie('themerex_bookmarks', JSON.stringify(list), {expires: 365, path: '/'}) } jQuery(this).parent().remove() e.preventDefault() return false }) // Sort bookmarks jQuery('.listBookmarks').sortable({ items: 'li', update: function (event, ui) { 'use strict' var list = new Array() ui.item.parent().find('li').each(function () { var a = jQuery(this).find('a:not(.delBookmark)').eq(0) list.push({title: a.text(), url: a.attr('href')}) }) jQuery.cookie('themerex_bookmarks', JSON.stringify(list), {expires: 365, path: '/'}) } }).disableSelection() } // Scroll to top jQuery('.upToScroll .scrollToTop').click(function (e) { 'use strict' jQuery('html,body').animate({ scrollTop: 0 }, 'slow') e.preventDefault() return false }) // Decorate nested lists in widgets and sidemenu jQuery('.widgetWrap ul > li,.sidemenu_area ul > li,.panelmenu_area ul > li,.widgetTop ul > li').each(function () { if (jQuery(this).find('ul').length > 0) { jQuery(this).addClass('dropMenu') } }) jQuery('.widgetWrap ul > li.dropMenu,.sidemenu_area ul > li.dropMenu,.panelmenu_area ul > li.dropMenu,.widgetTop ul > li.dropMenu').click(function (e) { 'use strict' jQuery(this).toggleClass('dropOpen') jQuery(this).find('ul').first().slideToggle(200) e.preventDefault() return false }) jQuery('.widgetWrap ul > li > a,.sidemenu_area ul > li > a,.panelmenu_area ul > li > a,.widgetTop ul > li > a').hover(function (e) { 'use strict' jQuery(this).parent().toggleClass('liHover') e.preventDefault() return false }) jQuery('.widgetWrap ul:not(.tabs) li > a,.sidemenu_area ul:not(.tabs) li > a,.panelmenu_area ul:not(.tabs) li > a,.widgetTop ul:not(.tabs) li > a').click(function (e) { 'use strict' if (jQuery(this).attr('href') != '#') { e.stopImmediatePropagation() if (jQuery(this).parent().hasClass('menu-item-has-children') && jQuery(this).parents('.sidemenu_area,.panelmenu_area').length > 0) { jQuery(this).parent().trigger('click') e.preventDefault() return false } } }) // Archive widget decoration jQuery('.widget_archive a').each(function () { var val = jQuery(this).html().split(' ') if (val.length > 1) { val[val.length - 1] = '' + val[val.length - 1] + '' jQuery(this).html(val.join(' ')) } }) // video bg if (jQuery('.videoBackground').length > 0) { jQuery('.videoBackground').each(function () { var youtube = jQuery(this).data('youtube-code') if (youtube) { jQuery(this).tubular({videoId: youtube}) } }) } setEqualHeight(jQuery('.relatedPostWrap .wrap.thumb'), jQuery('.relatedPostWrap .wrap.no_thumb')) // isotope if (jQuery('.isotopeNOanim,.isotope').length > 0) { initIsotope() jQuery(window).resize(resizeIsotope) // isotope filter jQuery('.isotopeFiltr').on('click', 'li a', function (e) { 'use strict' jQuery(this).parents('.isotopeFiltr').find('li').removeClass('active') jQuery(this).parent().addClass('active') var selector = jQuery(this).data('filter') jQuery(this).parents('.isotopeFiltr').siblings('.isotope').eq(0).isotope({ filter: selector }) if (selector == '*') { jQuery('#viewmore_link').fadeIn() } else { jQuery('#viewmore_link').fadeOut() } e.preventDefault() return false }) } // main Slider if (jQuery('.sliderBullets, .sliderHomeBullets').length > 0) { if (jQuery.rsCSS3Easing != undefined && jQuery.rsCSS3Easing != null) { jQuery.rsCSS3Easing.easeOutBack = 'cubic-bezier(0.175, 0.885, 0.320, 1.275)' } // Show Slider jQuery('.sliderHomeBullets').slideDown(200, function () { 'use strict' REX_parallax() fullSlider() initShortcodes(jQuery(this)) // Hack for the Royal Slider if (jQuery('body').hasClass('boxed')) { jQuery(this).trigger('resize') } }) } // fullScreen effect for Main Slider var homeSlider = jQuery('.sliderHomeBullets') if (homeSlider.length > 0 && homeSlider.hasClass('slider_engine_royal')) { var slideContent = homeSlider.find('.slideContent').eq(0) slideContent.addClass('sliderBGanima ' + slideContent.data('effect')) setTimeout(checkFullSlider, 500) } // Page Navigation jQuery('.pageFocusBlock').click(function (e) { 'use strict' if (e.target.nodeName.toUpperCase() != 'A') { e.preventDefault() return false } }) jQuery('.navInput').click(function (e) { 'use strict' jQuery('.pageFocusBlock').slideDown(300, function () { initShortcodes(jQuery('.pageFocusBlock').eq(0)) }) e.preventDefault() return false }) // Responsive Show menu jQuery('.openResponsiveMenu').click(function (e) { 'use strict' jQuery('.menuTopWrap').slideToggle() e.preventDefault() return false }) // Main Menu initSfMenu('.menuTopWrap > ul#mainmenu, .usermenu_area ul.usermenu_list') // Enable click on root menu items (without submenu) in iOS if (isiOS()) { jQuery('#mainmenu li:not(.menu-item-has-children) > a').on('click touchend', function (e) { 'use strict' if (jQuery(this).attr('href') != '#') { window.location.href = jQuery(this).attr('href') } }) jQuery('#mainmenu li.menu-item-has-children > a').hover( function (e) { 'use strict' if (jQuery('body').hasClass('responsive_menu')) { jQuery(this).trigger('click') } }, function () {} ) } // Submenu click handler jQuery('.menuTopWrap ul li a, .usermenu_area ul.usermenu_list li a').click(function (e) { 'use strict' if ((THEMEREX_responsive_menu_click || isMobile()) && jQuery('body').hasClass('responsive_menu') && jQuery(this).parent().hasClass('menu-item-has-children')) { if (jQuery(this).siblings('ul:visible').length > 0) { jQuery(this).siblings('ul').slideUp() } else { jQuery(this).siblings('ul').slideDown() } } if (jQuery(this).attr('href') == '#' || (jQuery('body').hasClass('responsive_menu') && jQuery(this).parent().hasClass('menu-item-has-children'))) { e.preventDefault() return false } }) // Show table of contents for the current page if (THEMEREX_menu_toc != 'no') { buildPageTOC() } // One page mode for menu links (scroll to anchor) jQuery('#toc, .menuTopWrap ul li, .usermenu_area ul.usermenu_list li').on('click', 'a', function (e) { 'use strict' var href = jQuery(this).attr('href') var pos = href.indexOf('#') if (pos < 0 || href.length == 1) return var loc = window.location.href var pos2 = loc.indexOf('#') if (pos2 > 0) loc = loc.substring(0, pos2) var now = pos == 0 if (!now) now = loc == href.substring(0, pos) if (now) { animateTo(href.substr(pos)) setLocation(pos == 0 ? loc + href : href) e.preventDefault() return false } }) // Open sidemenu jQuery('.sidemenu_wrap .sidemenu_button').click(function (e) { 'use strict' jQuery('body').addClass('openMenuFix') if (jQuery('.sidemenu_overflow').length == 0) { jQuery('body').append('
    ') } jQuery('.sidemenu_overflow').fadeIn(400) e.preventDefault() return false }) // Close sidemenu and right panel jQuery(document).on('click', '.sidemenu_overflow, .sidemenu_close', function (e) { 'use strict' jQuery('body').removeClass('openMenuFixRight openMenuFix') if (!isMobile()) jQuery('.swpRightPosButton').fadeIn(400) jQuery('.sidemenu_overflow').fadeOut(400) }) /* // Demo sidemenu var showed = false; if (THEMEREX_demo_time > 0 && jQuery(window).width() > 800 && jQuery('.sidemenu_wrap .sidemenu_button').length > 0) { showed = jQuery.cookie('themerex_demo_sidemenu'); if (!showed) { jQuery.cookie('themerex_demo_sidemenu', "1", {expires: 7, path: '/'}); showed = 1; setTimeout(function () { jQuery('.sidemenu_wrap .sidemenu_button').trigger('click'); setTimeout(function() { jQuery('.sidemenu_overflow').trigger('click'); }, THEMEREX_demo_time); }, THEMEREX_demo_time); } } */ // Open right menu jQuery('.openRightMenu,.swpRightPosButton').click(function (e) { 'use strict' if (jQuery('body').hasClass('openMenuFixRight')) { jQuery('body').removeClass('openMenuFixRight') if (!isMobile()) jQuery('.swpRightPosButton').fadeIn(400) jQuery('.sidemenu_overflow').fadeOut(400) } else { jQuery('body').addClass('openMenuFixRight') if (jQuery('.sidemenu_overflow').length == 0) { jQuery('body').append('
    ') } if (!isMobile()) jQuery('.swpRightPosButton').fadeOut(400) jQuery('.sidemenu_overflow').fadeIn(400) } e.preventDefault() return false }) // search jQuery('.topWrap .search').click(function (e) { 'use strict' if (jQuery(this).hasClass('searchOpen')) { if (e.target.nodeName.toUpperCase() != 'INPUT' && e.target.nodeName.toUpperCase() != 'A') { jQuery('.topWrap .search .searchForm').animate({'width': 'hide'}, 300) jQuery('.topWrap .ajaxSearchResults').fadeOut() var topSearch = jQuery(this) if (jQuery('header').hasClass('menu_center')) { topSearch.addClass('SearchHide') setTimeout(function () { topSearch.removeClass('SearchHide') }, 1000) } setTimeout(function () { jQuery('header').removeClass('topSearchShow') }, 400) jQuery('.topWrap .search').removeClass('searchOpen') e.preventDefault() return false } } else { jQuery(this).find('.searchForm').animate({'width': 'show'}, 300) jQuery('header').delay(300).addClass('topSearchShow') jQuery(this).delay(300).toggleClass('searchOpen') e.preventDefault() return false } }) jQuery('.topWrap .search').on('click', '.searchSubmit,.post_more', function (e) { 'use strict' if (jQuery('.topWrap .searchField').val() != '') { jQuery('.topWrap .searchForm form').get(0).submit() } e.preventDefault() return false }) jQuery('.search-form').on('click', '.search-button a', function (e) { 'use strict' if (jQuery(this).parents('.search-form').find('input[name="s"]').val() != '') { jQuery(this).parents('.search-form').get(0).submit() } e.preventDefault() return false }) // AJAX search if (THEMEREX_useAJAXSearch) { var THEMEREX_ajax_timer = null jQuery('.topWrap .searchField').keyup(function (e) { 'use strict' var s = jQuery(this).val() if (THEMEREX_ajax_timer) { clearTimeout(THEMEREX_ajax_timer) THEMEREX_ajax_timer = null } if (s.length >= THEMEREX_AJAXSearch_min_length) { THEMEREX_ajax_timer = setTimeout(function () { jQuery.post(THEMEREX_ajax_url, { action: 'ajax_search', nonce: THEMEREX_ajax_nonce, text: s }).done(function (response) { clearTimeout(THEMEREX_ajax_timer) THEMEREX_ajax_timer = null var rez = JSON.parse(response) if (rez.error === '') { jQuery('.topWrap .ajaxSearchResults').empty().append(rez.data).fadeIn() } else { themerex_message_warning(THEMEREX_MESSAGE_SEARCH_ERROR) } }) }, THEMEREX_AJAXSearch_delay) } }) } // search 404 jQuery('.inputSubmitAnimation').click(function (e) { 'use strict' e.preventDefault() return false }) jQuery('.inputSubmitAnimation a').click(function (e) { 'use strict' var form = jQuery(this).siblings('form') var parent = jQuery(this).parents('.inputSubmitAnimation') if (parent.hasClass('sFocus')) { if (form.length > 0 && form.find('input').val() != '') { if (jQuery(this).hasClass('sc_emailer_button')) { var group = jQuery(this).data('group') var email = form.find('input').val() var regexp = new RegExp(THEMEREX_EMAIL_MASK) if (!regexp.test(email)) { form.find('input').get(0).focus() themerex_message_warning(THEMEREX_EMAIL_NOT_VALID) } else { jQuery.post(THEMEREX_ajax_url, { action: 'emailer_submit', nonce: THEMEREX_ajax_nonce, group: group, email: email }).done(function (response) { var rez = JSON.parse(response) if (rez.error === '') { themerex_message_info(THEMEREX_MESSAGE_EMAIL_CONFIRM.replace('%s', email)) form.find('input').val('') } else { themerex_message_warning(rez.error) } }) } } else { form.get(0).submit() } } else { jQuery(document).trigger('click') } } else { parent.addClass('sFocus').removeClass('radCircle') } e.preventDefault() return false }) // Portfolio item Description if (isMobile()) { // if (/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)) { jQuery('.toggleButton').show() jQuery('.itemDescriptionWrap,.toggleButton').click(function (e) { 'use strict' jQuery(this).toggleClass('descriptionShow') jQuery(this).find('.toggleDescription').slideToggle() e.preventDefault() return false }) } else { jQuery('.itemDescriptionWrap').hover(function () { 'use strict' jQuery(this).toggleClass('descriptionShow') jQuery(this).find('.toggleDescription').slideToggle() }) } // Save placeholder for input fields jQuery('.formList input[type="text"], .formList input[type="password"]') .focus(function () { 'use strict' jQuery(this).attr('data-placeholder', jQuery(this).attr('placeholder')).attr('placeholder', '') jQuery(this).parent('li').addClass('iconFocus') }) .blur(function () { 'use strict' jQuery(this).attr('placeholder', jQuery(this).attr('data-placeholder')) jQuery(this).parent('li').removeClass('iconFocus') }) // Hide empty pagination if (jQuery('#nav_pages > ul > li').length < 3) { jQuery('#nav_pages').remove() } else { jQuery('.theme_paginaton a').addClass('theme_button') } // View More button jQuery('#viewmore_link').click(function (e) { 'use strict' if (!THEMEREX_VIEWMORE_BUSY) { jQuery(this).addClass('loading') jQuery(this).find('.viewmore_loading').addClass('fa-spin') jQuery.post().done(function (response) { 'use strict' var rez = JSON.parse(response) jQuery('#viewmore_link').removeClass('loading') jQuery('#viewmore_link').find('.viewmore_loading').removeClass('fa-spin') }) } e.preventDefault() return false }) // Infinite pagination if (jQuery('#viewmore.pagination_infinite').length > 0) { jQuery(window).scroll(infiniteScroll) } // WooCommerce handlers jQuery('.woocommerce .mode_buttons a,.woocommerce-page .mode_buttons a').click(function (e) { 'use strict' var mode = jQuery(this).hasClass('woocommerce_thumbs') ? 'thumbs' : 'list' jQuery.cookie('themerex_shop_mode', mode, {expires: 365, path: '/'}) jQuery(this).siblings('input').val(mode).parents('form').get(0).submit() e.preventDefault() return false }) // Added to cart jQuery('body').bind('added_to_cart', function () { // Update amount on the cart button var total = jQuery('.usermenu_cart .total .amount').text() if (total != undefined) { jQuery('.cart_button .cart_total').text(total) } }) initPostFormats() initShortcodes(jQuery('body').eq(0)) } // end ready // Init Superfish menu function initSfMenu (selector) { jQuery(selector).show().each(function () { if (isResponsiveNeed() && jQuery(this).attr('id') == 'mainmenu' && (THEMEREX_responsive_menu_click || isMobile())) return jQuery(this).addClass('inited').superfish({ delay: 500, animation: { opacity: 'show', height: 'show' }, speed: 'fast', autoArrows: false, dropShadows: false, onBeforeShow: function (ul) { if (jQuery(this).parents('ul').length > 1) { var w = jQuery(window).width() var par_offset = jQuery(this).parents('ul').offset().left var par_width = jQuery(this).parents('ul').outerWidth() var ul_width = jQuery(this).outerWidth() if (par_offset + par_width + ul_width > w - 20 && par_offset - ul_width > 0) { jQuery(this).addClass('submenu_left') } else { jQuery(this).removeClass('submenu_left') } } } }) }) } // Main Menu responsive function mainMenuResponsive () { if (THEMEREX_menuResponsive > 0) { if (isResponsiveNeed()) { if (!jQuery('body').hasClass('responsive_menu')) { jQuery('body').addClass('responsive_menu') if (jQuery('.boxedWrap > header').hasClass('menu_center') && !jQuery('.boxedWrap > header').hasClass('inited')) { jQuery('.topWrap .wrap_menu').append(jQuery('.menuTopWrap')) jQuery('.boxedWrap > header').addClass('inited') } jQuery('header').removeClass('fixedTopMenu').addClass('noFixMenu') if ((THEMEREX_responsive_menu_click || isMobile()) && jQuery('.menuTopWrap > ul#mainmenu').hasClass('inited')) { jQuery('.menuTopWrap > ul#mainmenu').removeClass('inited').superfish('destroy') } } } else { if (jQuery('body').hasClass('responsive_menu')) { jQuery('body').removeClass('responsive_menu') if (jQuery('.boxedWrap > header').hasClass('menu_center') && jQuery('.boxedWrap > header').hasClass('inited')) { jQuery('.topWrap .wrap_menu').prepend(jQuery('.menuTopWrap')) } jQuery('.menuTopWrap').show() if (THEMEREX_responsive_menu_click || isMobile()) { initSfMenu('.menuTopWrap > ul#mainmenu') } calcMenuColumnsWidth() } } } } // Make all columns (in custom menu) equal height function calcMenuColumnsWidth () { 'use strict' jQuery('#mainmenu li.custom_view_item ul.menu-panel ul.columns').each(function () { 'use strict' if (jQuery('body').hasClass('responsive_menu')) return jQuery(this).parents('.menu-panel').css({display: 'block', visibility: 'hidden'}) var h = 0, w = 0 jQuery(this).find('>li').css('height', 'auto').each(function () { var li = jQuery(this) var mt = parseInt(li.css('marginTop')), mb = parseInt(li.css('marginBottom')), mh = li.height() + (isNaN(mt) ? 0 : mt) + (isNaN(mb) ? 0 : mb) if (h < mh) h = mh var bl = parseInt(li.css('borderLeft')), pl = parseInt(li.css('paddingLeft')), br = parseInt(li.css('borderRight')), pr = parseInt(li.css('paddingRight')) w += li.width() + (isNaN(bl) ? 0 : bl) + (isNaN(pl) ? 0 : pl) + (isNaN(pr) ? 0 : pr) + (isNaN(br) ? 0 : br) }) jQuery(this).parents('.menu-panel').css({display: 'none', visibility: 'visible'}) if (w > jQuery('#mainmenu').width()) jQuery(this).width(w + 8) jQuery(this).find('>li').height(h) }) } // Check if responsive menu need function isResponsiveNeed () { 'use strict' var rez = false if (THEMEREX_menuResponsive > 0) { var w = window.innerWidth if (w == undefined) { w = jQuery(window).width() + (jQuery(window).height() < jQuery(document).height() || jQuery(window).scrollTop() > 0 ? 16 : 0) } rez = THEMEREX_menuResponsive > w } return rez } // Infinite Scroll function infiniteScroll () { 'use strict' var v = jQuery('#viewmore.pagination_infinite').offset() if (jQuery(this).scrollTop() + jQuery(this).height() + 100 >= v.top && !THEMEREX_VIEWMORE_BUSY) { jQuery('#viewmore_link').eq(0).trigger('click') } } // itemPageFull function itemPageFull () { 'use strict' var bodyHeight = jQuery(window).height() var st = jQuery(window).scrollTop() if (st > jQuery('.noFixMenu .topWrap').height() + jQuery('.topTabsWrap').height()) st = 0 var thumbHeight = Math.min(jQuery('.itemPageFull').width() / 16 * 9, bodyHeight - jQuery('#wpadminbar').height() - jQuery('.noFixMenu .topWrap').height() - jQuery('.topTabsWrap').height() + st) jQuery('.itemPageFull').height(thumbHeight) var padd1 = parseInt(jQuery('.sidemenu_wrap').css('paddingTop')) if (isNaN(padd1)) padd1 = parseInt(jQuery('.swpRightPos').css('paddingTop')) if (isNaN(padd1)) padd1 = 0 var padd2 = parseInt(jQuery('.swpRightPos .sc_tabs .tabsMenuBody').css('paddingTop')) * 2 if (isNaN(padd2)) padd2 = 0 var tabs_h = jQuery('.swpRightPos .sc_tabs .tabsMenuHead').height() if (isNaN(tabs_h)) tabs_h = 0 var butt_h = jQuery('.swpRightPos .sc_tabs .tabsMenuBody .addBookmarkArea').height() if (isNaN(butt_h)) butt_h = 0 jQuery('#sidemenu_scroll').height(bodyHeight - padd1) jQuery('.swpRightPos .sc_tabs .tabsMenuBody').height(bodyHeight - -padd1 - padd2 - tabs_h) jQuery('#custom_options_scroll').height(bodyHeight - padd1 - padd2 - tabs_h) jQuery('#sidebar_panel_scroll').height(bodyHeight - padd1 - padd2 - tabs_h) jQuery('#panelmenu_scroll').height(bodyHeight - padd1 - padd2 - tabs_h) jQuery('#bookmarks_scroll').height(bodyHeight - padd1 - padd2 - tabs_h - butt_h) } // scroll Action function scrollAction () { 'use strict' var buttonScrollTop = jQuery('.upToScroll') var scrollPositions = jQuery(window).scrollTop() var topMenuHeight = jQuery('header').height() if (scrollPositions > topMenuHeight) { buttonScrollTop.addClass('buttonShow') } else { buttonScrollTop.removeClass('buttonShow') } /* if (!jQuery('body').hasClass('responsive_menu') && THEMEREX_menuFixed) { var slider_height = 0; if (jQuery('.top_panel_below .sliderHomeBullets').length > 0) { slider_height = jQuery('.top_panel_below .sliderHomeBullets').height(); if (slider_height < 10) { slider_height = jQuery('.sliderHomeBullets').parents('.fullScreenSlider').length > 0 ? jQuery(window).height() : THEMEREX_slider_height; } } var topFixedHeight = Math.max(0, jQuery('.fixedTopMenu .topWrap').height()); if (scrollPositions > THEMEREX_top_height_usermenu_area + slider_height) { if (THEMEREX_REMEMBERSCROLL < scrollPositions) { if (scrollPositions > THEMEREX_top_height + slider_height) { jQuery('header .topWrap').css({'opacity': 0}); } if (jQuery('header').hasClass('fixedTopMenu')) { //scroll down jQuery('header .topWrap').css({'opacity': 0}); setTimeout(function () { jQuery('header').removeClass('fixedTopMenu').addClass('noFixMenu'); if (THEMEREX_use_fixed_wrapper) jQuery('.topWrapFixed').hide(); }, 300); } } else if (THEMEREX_REMEMBERSCROLL > scrollPositions) { if (!jQuery('header').hasClass('fixedTopMenu')) { //scroll up jQuery('header .topWrap').css({'opacity': 1}); if (THEMEREX_use_fixed_wrapper) jQuery('.topWrapFixed').height(THEMEREX_top_height).show(); jQuery('header').addClass('fixedTopMenu').removeClass('noFixMenu'); } } } else if (scrollPositions <= topFixedHeight - THEMEREX_top_height_usermenu_area + slider_height) { if (jQuery('header').hasClass('fixedTopMenu')) { jQuery('header').removeClass('fixedTopMenu').addClass('noFixMenu'); if (THEMEREX_use_fixed_wrapper) jQuery('.topWrapFixed').hide(); } } THEMEREX_REMEMBERSCROLL = scrollPositions; } */ if (!jQuery('body').hasClass('responsive_menu') && THEMEREX_menuFixed) { var slider_height = 0 if (jQuery('.top_panel_below .sliderHomeBullets').length > 0) { slider_height = jQuery('.top_panel_below .sliderHomeBullets').height() if (slider_height < 10) { slider_height = jQuery('.sliderHomeBullets').parents('.fullScreenSlider').length > 0 ? jQuery(window).height() : THEMEREX_slider_height } } var topFixedHeight = Math.max(0, jQuery('.fixedTopMenu .topWrap').height()) if (scrollPositions <= THEMEREX_top_height - topFixedHeight - 20 + slider_height) { if (jQuery('header').hasClass('fixedTopMenu')) { jQuery('header').removeClass('fixedTopMenu').addClass('noFixMenu') if (THEMEREX_use_fixed_wrapper) jQuery('.topWrapFixed').hide() } } else if (scrollPositions > THEMEREX_top_height + slider_height) { if (!jQuery('header').hasClass('fixedTopMenu')) { jQuery('header').addClass('fixedTopMenu').removeClass('noFixMenu') if (THEMEREX_use_fixed_wrapper) jQuery('.topWrapFixed').height(THEMEREX_top_height).show() } } } } // Fullscreen slider function fullSlider () { 'use strict' var fullSlider = jQuery('.fullScreenSlider') if (fullSlider.length > 0) { var h = jQuery(window).height() - jQuery('#wpadminbar').height() - (jQuery('.top_panel_above .fullScreenSlider header').css('position') == 'static' ? jQuery('.topWrap').height() : 0) // Slider Container fullSlider.find('.sliderHomeBullets').css('height', h) // Royal slider fullSlider.find('.sliderHomeBullets.slider_engine_royal > div,.sliderHomeBullets.slider_engine_royal .rsOverflow,.sliderHomeBullets.slider_engine_royal .rsContent,.sliderHomeBullets .slideContent,.sliderHomeBullets .sc_slider,.sliderHomeBullets .sc_slider .slides,.sliderHomeBullets .sc_slider .slides li').css('height', h) // Revolution slider fullSlider.find('.sliderHomeBullets.slider_engine_revo .rev_slider_wrapper,.sliderHomeBullets.slider_engine_revo .rev_slider').css({'height': h + 'px', 'maxHeight': h + 'px'}) fullSlider.find('.sliderHomeBullets.slider_engine_revo .rev_slider > ul').css({'maxHeight': h + 'px'}) fullSlider.find('.sliderHomeBullets.slider_engine_revo .rev_slider .defaultimg').css({'height': h + 'px', 'maxWidth': 'none'}) } else { var slider = jQuery('.sliderHomeBullets.slider_engine_revo') if (slider.length > 0) { var h = slider.find('.rev_slider').height() if (slider.height() != h) slider.css('height', h) } } } // Animation effect on fullscreen slider (only for Royal slider) function checkFullSlider () { 'use strict' var fullSlider = jQuery('.fullScreenSlider') if (fullSlider.length > 0) { var slider = fullSlider.find('.royalSlider').data('royalSlider') if (slider == undefined || slider == '') { setTimeout(checkFullSlider, 500) } else { slider.ev.on('rsBeforeAnimStart', function (event) { 'use strict' REX_parallax() var slideIndex = this.currSlideId var slideContent = jQuery('.slider_engine_royal').find('.slideContent') slideContent.each(function () { jQuery(this).removeClass('sliderBGanima ' + jQuery(this).data('effect')) }) slideContent.eq(slideIndex).addClass('sliderBGanima ' + slideContent.eq(slideIndex).data('effect')) }) } } } // Resize sliders function resizeSliders () { if (jQuery('.sc_slider_flex,.sc_slider_chop,.sc_slider_swiper').length > 0) { jQuery('.sc_slider_flex,.sc_slider_chop,.sc_slider_swiper').each(function () { if (jQuery(this).parents('.isotope, .isotopeNOanim').length == 0) calcSliderDimensions(jQuery(this)) }) } } // Time Line function timelineResponsive () { 'use strict' var tl = jQuery('#timeline_slider:not(.fixed)').eq(0) if (tl.length > 0) { if (jQuery(window).width() <= 1023) { tl.addClass('fixed') } else { var bodyHeight = jQuery(window).height() var tlHeight = jQuery(window).height() - tl.find('h2').height() - 150 tl.find('.sc_blogger').css('height', tlHeight).find('.sc_scroll').css('height', tlHeight) } } } // time line Scroll function timelineScrollFix () { 'use strict' var tl = jQuery('#timeline_slider:not(.fixed)').eq(0) if (tl.length > 0) { var scrollWind = jQuery(window).scrollTop() var headerHeight = jQuery('header').height() + jQuery('.topTabsWrap').height() - 20 var footerHeight = jQuery('.footerContentWrap').height() var footerVisible = jQuery(document).height() - footerHeight <= scrollWind + jQuery(window).height() if (jQuery(window).scrollTop() <= headerHeight) { if (parseFloat(tl.css('marginTop')) > 0) { tl.animate({ marginTop: 0 }, { queue: false, duration: 350 }) } } else { if (headerHeight <= scrollWind - 10 && !footerVisible) { tl.animate({ marginTop: (scrollWind - headerHeight) + 'px' }, { queue: false, duration: 350 }) } } } } // Init isotope THEMEREX_isotopeLoad = 0 var THEMEREX_isotopeInitCounter = 0 function initIsotope () { if (jQuery('.isotopeNOanim,.isotope').length > 0) { if (!isotopeImagesComplete(jQuery('.isotopeNOanim,.isotope'))) { setTimeout(function () { initIsotope() }, 2000) return } jQuery('.isotopeNOanim,.isotope').each(function () { 'use strict' // delay(1000) - set time before show all elements jQuery(this).addClass('inited').find('.isotopeElement').delay(1000).animate({opacity: 1}, 400, function () { jQuery(this).addClass('isotopeElementShow') }) var w = calcSizeIsotope(jQuery(this)) if (jQuery(this).hasClass('grid')) { jQuery(this).isotope({ resizable: jQuery(this).parents('.fullscreen,.sc_gap').length > 0 && !jQuery(this).hasClass('folio1col'), masonry: { columnWidth: 1 }, itemSelector: '.isotopeElement', animationOptions: { duration: 2000, easing: 'linear', queue: false } }) } else { jQuery(this).isotope({ resizable: jQuery(this).parents('.fullscreen,.sc_gap').length > 0 && !jQuery(this).hasClass('folio1col'), masonry: { columnWidth: w }, itemSelector: '.isotopeElement', animationOptions: { duration: 750, easing: 'linear', queue: false } }) } // Init shortcodes in isotope initShortcodes(jQuery(this)) // for Count filters var isotopeBox = jQuery(this) initCountIsotope(isotopeBox) // Again recalculate Isotope var elems = jQuery(this).find('.isotopeElement') if (jQuery(this).hasClass('grid')) { isotopeResizeGrid(jQuery(this), elems) setTimeout(function () { // for hover in portfolio Grid elems.each( function () { var newHeight = jQuery(this).find('.portfolioInfo').outerHeight() / 2 jQuery(this).find('.wrap_hover').css({'top': -newHeight}) } ) }, 1100) } else { setTimeout(function () { resizeIsotope() }, 500) } }) } } function initAppendedIsotope (posts_container, filters) { 'use strict' if (!isotopeImagesComplete(posts_container) && THEMEREX_isotopeInitCounter++ < 30) { setTimeout(function () { initAppendedIsotope(posts_container, filters) }, 200) return } calcSizeIsotope(posts_container) var flt = posts_container.siblings('.isotopeFiltr') var elems = posts_container.find('.isotopeElement:not(.isotopeElementShow)').addClass('isotopeElementShow') posts_container.isotope('appended', elems) for (var i in filters) { if (flt.find('a[data-filter=".flt_' + i + '"]').length == 0) { flt.find('ul').append('
  • ' + filters[i] + '
  • ') } } // for Count filters initCountIsotope(posts_container) timelineResponsive() timelineScrollFix() itemPageFull() initPostFormats() initShortcodes(posts_container) scrollAction() // Again recalculate Isotope - resizeIsotope() if (posts_container.hasClass('grid')) { resizeIsotope() } else { setTimeout(function () { resizeIsotope() }, 700) } } function isotopeImagesComplete (cont) { var complete = true cont.find('img').each(function () { if (!complete) return if (!jQuery(this).get(0).complete) complete = false }) return complete } function calcSizeIsotope (cont) { 'use strict' var columns = Math.max(1, Number(cont.data('columns'))) var element = cont.find('.isotopeElement:not(.isotope-item)') var elementWidth = 0, elementWidthNew = 0, elementHeight = 0, elementHeightNew = 0 if (cont.data('last-width') == cont.width()) return elementWidthNew var changeHeight = cont.hasClass('portfolio') var m1 = parseInt(cont.css('marginRight')) if (isNaN(m1)) m1 = 0 var m2 = parseInt(element.find('.isotopePadding').css('marginRight')) if (isNaN(m2)) m2 = 0 var lastWidth = cont.width() + (changeHeight ? 0 : m1 + m2) cont.data('last-width', lastWidth) elementWidth = changeHeight ? element.width() : Math.max(240, Math.floor(lastWidth / columns - m2)) cont.data('element-width', elementWidth) elementWidthNew = Math.floor(lastWidth / columns) var dir = elementWidthNew > elementWidth ? 1 : -1 while (dir * (elementWidthNew - elementWidth) / elementWidth > THEMEREX_isotope_resize_delta) { columns += dir if (columns == 0) break elementWidthNew = Math.floor(lastWidth / columns) } element.css({ width: elementWidthNew }) if (changeHeight) { elementHeight = element.height() cont.data('element-height', elementHeight) elementHeightNew = Math.floor(elementWidthNew / elementWidth * elementHeight) element.css({ height: elementHeightNew }) } return elementWidthNew } // Resize new Isotope elements function resizeIsotope () { jQuery('.isotope, .isotopeNOanim').each(function () { 'use strict' // for isotopeFull (grid) if (jQuery(this).hasClass('grid')) { var isotopeEll = jQuery(this).find('article') isotopeResizeGrid(jQuery(this), isotopeEll) // for hover in portfolio Grid setTimeout(function () { isotopeEll.each( function () { var newHeight = jQuery(this).find('.portfolioInfo').outerHeight() / 2 jQuery(this).find('.wrap_hover').css({'top': -newHeight}) }) }, 200) } // for all isotope else { var cont = jQuery(this) var columns = Math.max(1, Number(cont.data('columns'))) var changeHeight = cont.hasClass('portfolio') var element = cont.find('.isotopeElement') var m1 = parseInt(cont.css('marginRight')) if (isNaN(m1)) m1 = 0 var m2 = parseInt(element.find('.isotopePadding').css('marginRight')) if (isNaN(m2)) m2 = 0 var lastWidth = cont.width() + (changeHeight ? 0 : m1 + m2) cont.data('last-width', lastWidth) var elementWidth = parseFloat(cont.data('element-width')) var elementWidthNew = Math.floor(lastWidth / columns) var dir = elementWidthNew > elementWidth ? 1 : -1 while (dir * (elementWidthNew - elementWidth) / elementWidth > THEMEREX_isotope_resize_delta) { columns += dir if (columns == 0) break elementWidthNew = Math.floor(lastWidth / columns) } element.css({ width: elementWidthNew }) if (changeHeight) { var elementHeight = parseFloat(cont.data('element-height')) var elementHeightNew = Math.floor(elementWidthNew / elementWidth * elementHeight) element.css({ height: elementHeightNew }) } jQuery(this).isotope({ masonry: { columnWidth: elementWidthNew } }) cont.find('.sc_slider_flex,.sc_slider_chop,.sc_slider_swiper').each(function () { calcSliderDimensions(jQuery(this)) }) // for proper alignment indentation for video and slides setTimeout(function () { cont.isotope('layout') }, 1500) setTimeout(function () { // for hover in portfolio Masonry if (jQuery('.portfolioWrap .masonry').length > 0) { jQuery('.portfolioWrap .masonry article').each( function () { var newHeight = jQuery(this).find('.portfolioInfo').outerHeight() / 2 jQuery(this).find('.wrap_hover').css({'top': -newHeight}) // height var heightBox = jQuery(this).find('.hoverIncrease').outerHeight() jQuery(this).find('.wrap_hover').css({'height': heightBox}) } ) } // for safari hover if (jQuery('.masonryWrap .masonry').length > 0) { jQuery('.masonryWrap .masonry article').each( function () { var heightBox = jQuery(this).find('.hoverIncrease').outerHeight() jQuery(this).find('.wrap_hover').css({'height': heightBox}) } ) } }, 1600) } }) } function initPostFormats () { 'use strict' // MediaElement init initMediaElements(jQuery('body')) // hoverZoom img effect if (jQuery('.hoverIncrease:not(.inited)').length > 0) { jQuery('.hoverIncrease:not(.inited)') .addClass('inited') .each(function () { 'use strict' var img = jQuery(this).data('image') var title = jQuery(this).data('title') var link = jQuery(this).data('link') var target = jQuery(this).data('target') if (target) { target = ' target="' + target + '" ' } else { target = ' ' } if (img) { if (jQuery(this).hasClass('hoverTwo')) { jQuery(this).append('
    ') } else { jQuery(this).append('') } } }) // for hover in indent style if (jQuery('.relatedPostWrap .indent_style').length > 0) { jQuery('.relatedPostWrap .indent_style article').each( function () { var newHeight = jQuery(this).find('.relatedInfo').outerHeight() / 2 jQuery(this).find('.wrap_hover').css({'top': -newHeight}) } ) } } // Popup init if (THEMEREX_popupEngine == 'pretty' && typeof jQuery.prettyPhoto !== 'undefined') { jQuery("a[href$='jpg'],a[href$='jpeg'],a[href$='png'],a[href$='gif']").attr('rel', 'prettyPhoto' + (THEMEREX_popupGallery ? '[slideshow]' : '')) // .toggleClass('prettyPhoto', true); jQuery("a[rel*='prettyPhoto']:not(.inited):not([rel*='magnific']):not([data-rel*='magnific'])") .addClass('inited') .prettyPhoto({ social_tools: '', theme: 'facebook', deeplinking: false }) .click(function (e) { 'use strict' if (jQuery(window).width() < 480) { e.stopImmediatePropagation() window.location = jQuery(this).attr('href') } e.preventDefault() return false }) } else if (typeof jQuery.magnificPopup !== 'undefined') { jQuery("a[href$='jpg'],a[href$='jpeg'],a[href$='png'],a[href$='gif']").attr('rel', 'magnific') jQuery("a[rel*='magnific']:not(.inited):not(.prettyphoto):not([rel*='pretty']):not([data-rel*='pretty'])") .addClass('inited') .magnificPopup({ type: 'image', mainClass: 'mfp-img-mobile', closeOnContentClick: true, closeBtnInside: true, fixedContentPos: true, midClick: true, preloader: true, tLoading: THEMEREX_MAGNIFIC_LOADING, gallery: { enabled: THEMEREX_popupGallery }, image: { tError: THEMEREX_MAGNIFIC_ERROR, verticalFit: true } }) } // Popup windows with any html content if (jQuery('.user-popup-link').length > 0 || jQuery('a[href="#openLogin"]').length > 0) { jQuery('.user-popup-link:not(.inited),a[href="#openLogin"]:not(.inited)') .addClass('inited') .magnificPopup({ type: 'inline', removalDelay: 500, callbacks: { beforeOpen: function () { this.st.mainClass = 'mfp-zoom-in' }, open: function () { jQuery('html').css({ overflow: 'visible', margin: 0 }) }, close: function () { } }, midClick: true }) } // Share button if (jQuery('ul.shareDrop:not(.inited)').length > 0) { jQuery('ul.shareDrop:not(.inited)') .addClass('inited') .siblings('a').click(function (e) { 'use strict' var shareDrop = jQuery(this).siblings('ul.shareDrop') if (jQuery(this).hasClass('selected')) { jQuery(this).removeClass('selected').siblings('ul.shareDrop').slideUp(500) setTimeout(function () { shareDrop.removeClass('open') }, 600) } else { jQuery(this).addClass('selected').siblings('ul.shareDrop').slideDown(500) setTimeout(function () { shareDrop.addClass('open') }, 600) } e.preventDefault() return false }).end() .find('li a').click(function (e) { var shareDropClose = jQuery(this).siblings('ul.shareDrop') jQuery(this).parents('ul.shareDrop').slideUp(500).siblings('a.shareDrop').removeClass('selected') setTimeout(function () { shareDropClose.removeClass('open') }, 600) e.preventDefault() return false }) } // Like button if (jQuery('.postSharing:not(.inited),.masonryMore:not(.inited)').length > 0) { jQuery('.postSharing:not(.inited),.masonryMore:not(.inited)') .addClass('inited') .find('.likeButton a') .click(function (e) { var button = jQuery(this).parent() var inc = button.hasClass('like') ? 1 : -1 var post_id = button.data('postid') var likes = Number(button.data('likes')) + inc var cookie_likes = jQuery.cookie('themerex_likes') if (cookie_likes === undefined) cookie_likes = '' jQuery.post(THEMEREX_ajax_url, { action: 'post_counter', nonce: THEMEREX_ajax_nonce, post_id: post_id, likes: likes }).done(function (response) { var rez = JSON.parse(response) if (rez.error === '') { if (inc == 1) { var title = button.data('title-dislike') button.removeClass('like').addClass('likeActive') cookie_likes += (cookie_likes.substr(-1) != ',' ? ',' : '') + post_id + ',' } else { var title = button.data('title-like') button.removeClass('likeActive').addClass('like') cookie_likes = cookie_likes.replace(',' + post_id + ',', ',') } button.data('likes', likes).find('a').attr('title', title) jQuery.cookie('themerex_likes', cookie_likes, {expires: 365, path: '/'}) } else { themerex_message_warning(THEMEREX_MESSAGE_ERROR_LIKE) } }) e.preventDefault() return false }) } // Hover DIR if (jQuery('.portfolio > .isotopeElement:not(.inited)').length > 0) { jQuery('.portfolio > .isotopeElement:not(.inited)') .addClass('inited') .find('> .hoverDirShow').each(function () { 'use strict' jQuery(this).hoverdir() }) } // Add video on thumb click if (jQuery('.sc_video_play_button:not(.inited)').length > 0) { jQuery('.sc_video_play_button:not(.inited)').each(function () { 'use strict' var video = jQuery(this).data('video') var pos = video.indexOf('height=') if (pos > 0) { pos += 8 var pos2 = video.indexOf('"', pos) var h = parseInt(video.substring(pos, pos2)) if (!isNaN(h)) { jQuery(this).find('img').height(h) } } jQuery(this) .addClass('inited') .animate({opacity: 1}, 1000) .click(function (e) { 'use strict' if (!jQuery(this).hasClass('sc_video_play_button')) return var video = jQuery(this).removeClass('sc_video_play_button').data('video') if (video !== '') { jQuery(this).empty().html(video) videoDimensions() var video_tag = jQuery(this).find('video') var w = video_tag.width() var h = video_tag.height() initMediaElements(jQuery(this)) // Restore WxH attributes, because Chrome broke it! jQuery(this).find('video').css({'width': w, 'height': h}).attr({'width': w, 'height': h}) } e.preventDefault() return false }) }) } // IFRAME width and height constrain proportions if (jQuery('iframe,.sc_video_player,video.sc_video').length > 0) { if (!THEMEREX_video_resize_inited) { THEMEREX_video_resize_inited = true jQuery(window).resize(function () { 'use strict' videoDimensions() }) } videoDimensions() } } function initMediaElements (cont) { if (THEMEREX_useMediaElement && cont.find('audio,video').length > 0) { if (window.mejs) { window.mejs.MepDefaults.enableAutosize = false window.mejs.MediaElementDefaults.enableAutosize = false cont.find('audio:not(.wp-audio-shortcode),video:not(.wp-video-shortcode)').each(function () { // init Media Elements after init isotope if (jQuery(this).parents('.isotopeNOanim,.isotope').length > 0 && !isotopeImagesComplete(jQuery('.isotopeNOanim,.isotope'))) { setTimeout(function () { initMediaElements(cont) }, 2500) return } else if (jQuery(this).parents('.mejs-mediaelement').length == 0) { var settings = { enableAutosize: false, videoWidth: -1, // if set, overrides