/* global woodmart_settings */
(function($) {
$.each([
'frontend/element_ready/wd_products.default',
'frontend/element_ready/wd_products_tabs.default'
], function(index, value) {
woodmartThemeModule.wdElementorAddAction(value, function() {
woodmartThemeModule.quickViewInit();
});
});
woodmartThemeModule.quickViewInit = function() {
woodmartThemeModule.$document.on('click', '.open-quick-view', function(e) {
e.preventDefault();
if ($('.open-quick-view').hasClass('loading')) {
return true;
}
var $this = $(this),
productId = $this.data('id'),
loopName = $this.data('loop-name'),
loop = $this.data('loop'),
prev = '',
next = '',
loopBtns = $('.quick-view').find('[data-loop-name="' + loopName + '"]');
$this.addClass('loading');
if (typeof loopBtns[loop - 1] != 'undefined') {
prev = loopBtns.eq(loop - 1).addClass('quick-view-prev');
prev = $('<div>').append(prev.clone()).html();
}
if (typeof loopBtns[loop + 1] != 'undefined') {
next = loopBtns.eq(loop + 1).addClass('quick-view-next');
next = $('<div>').append(next.clone()).html();
}
woodmartThemeModule.quickViewLoad(productId, $this, prev, next);
});
};
woodmartThemeModule.quickViewLoad = function(id, btn) {
var data = {
id : id,
action: 'woodmart_quick_view'
};
if ('undefined' !== typeof btn.data('attribute')) {
$.extend(data, btn.data('attribute'));
}
var initPopup = function(data) {
var items = $(data);
$.magnificPopup.open({
items : {
src : items,
type: 'inline'
},
tClose : woodmart_settings.close,
tLoading : woodmart_settings.loading,
removalDelay : 600,
fixedContentPos: true,
callbacks : {
beforeOpen: function() {
this.wrap.addClass('wd-popup-slide-from-left');
},
open : function() {
var $form = $(this.content[0]).find('.variations_form');
$form.each(function() {
$(this).wc_variation_form().find('.variations select:eq(0)').trigger('change');
});
$form.trigger('wc_variation_form');
woodmartThemeModule.$body.trigger('woodmart-quick-view-displayed');
woodmartThemeModule.$document.trigger('wdQuickViewOpen');
setTimeout(function() {
woodmartThemeModule.$document.trigger('wdQuickViewOpen300');
}, 300);
}
}
});
};
$.ajax({
url : woodmart_settings.ajaxurl,
data : data,
method : 'get',
success : function(data) {
woodmartThemeModule.removeDuplicatedStylesFromHTML(data, function(data){
if (woodmart_settings.quickview_in_popup_fix) {
$.magnificPopup.close();
setTimeout(function() {
initPopup(data);
}, 500);
} else {
initPopup(data);
}
});
},
complete: function() {
btn.removeClass('loading');
}
});
};
$(document).ready(function() {
woodmartThemeModule.quickViewInit();
});
})(jQuery);