(function ($) {
'use strict';
$(document).ready(function () {
// ========================================
// Product edit page: Free Photo tab
// ========================================
if ($('#studiou_fpp_product_data').length) {
initProductTab();
}
// ========================================
// Product edit page: Variation quantity discount tiers
// ========================================
initVariationQtyTiers();
// ========================================
// Admin summary page
// ========================================
if ($('.studiou-fpp-admin-wrap').length) {
initSummaryPage();
}
function initVariationQtyTiers() {
// Add tier row
$(document).on('click', '.studiou-fpp-qty-tier-add', function (e) {
e.preventDefault();
var $btn = $(this);
var loop = $btn.data('loop');
var $tbody = $btn.closest('.studiou-fpp-qty-tiers-field').find('.studiou-fpp-qty-tiers-table tbody');
var idx = Date.now() + '_' + Math.floor(Math.random() * 10000);
var row =
'
' +
'
' +
'
' +
'
' +
'
';
$tbody.append(row);
markVariationChanged($btn);
});
// Remove tier row
$(document).on('click', '.studiou-fpp-qty-tier-remove', function (e) {
e.preventDefault();
var $btn = $(this);
$btn.closest('tr').remove();
markVariationChanged($btn);
});
// Mark variation as modified on any input change inside the tier table
$(document).on('change input', '.studiou-fpp-qty-tiers-table input', function () {
markVariationChanged($(this));
});
function markVariationChanged($el) {
var $variation = $el.closest('.woocommerce_variation');
if ($variation.length) {
$variation.addClass('variation-needs-update');
$('button.cancel-variation-changes, button.save-variation-changes').removeAttr('disabled');
$('#variable_product_options').trigger('woocommerce_variations_input_changed');
}
}
}
function initProductTab() {
// Show/hide new media category form
$('.studiou-fpp-add-media-cat-btn').on('click', function () {
$('.studiou-fpp-new-media-cat-form').toggle();
});
$('.studiou-fpp-cancel-media-cat-btn').on('click', function () {
$('.studiou-fpp-new-media-cat-form').hide();
$('#studiou_fpp_new_cat_name').val('');
});
// Save new media category
$('.studiou-fpp-save-media-cat-btn').on('click', function () {
var name = $('#studiou_fpp_new_cat_name').val().trim();
if (!name) {
return;
}
var $btn = $(this);
$btn.prop('disabled', true);
$.ajax({
url: studiouWcfpp.ajaxUrl,
type: 'POST',
data: {
action: 'studiou_wcfpp_add_media_category',
nonce: studiouWcfpp.nonce,
name: name
},
success: function (response) {
if (response.success) {
var $select = $('#_studiou_fpp_media_category');
$select.append(
$('