(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( $('