woocommerce/assets/js/admin/meta-boxes-product.min.js

1 line
12 KiB
JavaScript

jQuery(function(c){function e(){var t=c("select#product-type").val(),e=c("input#_virtual:checked").length,i=c("input#_downloadable:checked").length,o=".hide_if_downloadable, .hide_if_virtual",a=".show_if_downloadable, .show_if_virtual";c.each(woocommerce_admin_meta_boxes.product_types,function(t,e){o=o+", .hide_if_"+e,a=a+", .show_if_"+e}),c(o).show(),c(a).hide(),i&&c(".show_if_downloadable").show(),e&&(c(".show_if_virtual").show(),c(".shipping_options.shipping_tab").hasClass("active")&&c(".general_options.general_tab > a").trigger("click")),c(".show_if_"+t).show(),i&&c(".hide_if_downloadable").hide(),e&&c(".hide_if_virtual").hide(),c(".hide_if_"+t).hide(),c("input#_manage_stock").trigger("change"),c(".woocommerce_options_panel").each(function(){var t=c(this).children(".options_group");0!==t.length&&t.filter(function(){return"none"===c(this).css("display")}).length===t.length&&(t=c(this).prop("id"),c(".product_data_tabs").find('li a[href="#'+t+'"]').parent().hide())})}function t(t){var e=c(t).next().is(".hasDatepicker")?"minDate":"maxDate",i="minDate"==e?c(t).next():c(t).prev(),o=c(t).datepicker("getDate");c(i).datepicker("option",e,o),c(t).trigger("change")}c(function(){c('[id$="-all"] > ul.categorychecklist').each(function(){var t,e=c(this),i=e.find(":checked").first();i.length&&(t=e.find("input").position().top,i=i.position().top,e.closest(".tabs-panel").scrollTop(i-t+5))})}),c("#upsell_product_data").on("keypress",function(t){if(13===t.keyCode)return!1}),c("body").hasClass("wc-wp-version-gte-55")?c(".type_box").appendTo("#woocommerce-product-data .hndle"):c(".type_box").appendTo("#woocommerce-product-data .hndle span"),c(function(){var e=c("#woocommerce-product-data");e.find(".hndle").off("click.postboxes"),e.on("click",".hndle",function(t){c(t.target).filter("input, option, label, select").length||(e.hasClass("closed")?e.removeClass("closed"):e.addClass("closed"))})}),c("#catalog-visibility").find(".edit-catalog-visibility").on("click",function(){return c("#catalog-visibility-select").is(":hidden")&&(c("#catalog-visibility-select").slideDown("fast"),c(this).hide()),!1}),c("#catalog-visibility").find(".save-post-visibility").on("click",function(){c("#catalog-visibility-select").slideUp("fast"),c("#catalog-visibility").find(".edit-catalog-visibility").show();var t=c("input[name=_visibility]:checked").attr("data-label");return c("input[name=_featured]").is(":checked")&&(t=t+", "+woocommerce_admin_meta_boxes.featured_label,c("input[name=_featured]").attr("checked","checked")),c("#catalog-visibility-display").text(t),!1}),c("#catalog-visibility").find(".cancel-post-visibility").on("click",function(){c("#catalog-visibility-select").slideUp("fast"),c("#catalog-visibility").find(".edit-catalog-visibility").show();var t=c("#current_visibility").val(),e=c("#current_featured").val();c("input[name=_visibility]").prop("checked",!1),c("input[name=_visibility][value="+t+"]").attr("checked","checked");t=c("input[name=_visibility]:checked").attr("data-label");return"yes"===e?(t=t+", "+woocommerce_admin_meta_boxes.featured_label,c("input[name=_featured]").attr("checked","checked")):c("input[name=_featured]").prop("checked",!1),c("#catalog-visibility-display").text(t),!1}),c("select#product-type").on("change",function(){var t=c(this).val();"variable"===t?(c("input#_manage_stock").trigger("change"),c("input#_downloadable").prop("checked",!1),c("input#_virtual").prop("checked",!1)):"grouped"!==t&&"external"!==t||(c("input#_downloadable").prop("checked",!1),c("input#_virtual").prop("checked",!1)),e(),c("ul.wc-tabs li:visible").eq(0).find("a").trigger("click"),c(document.body).trigger("woocommerce-product-type-change",t,c(this))}).trigger("change"),c("input#_downloadable, input#_virtual").on("change",function(){e()}),c(".sale_price_dates_fields").each(function(){var t=c(this),e=!1,i=t.closest("div, table");t.find("input").each(function(){""!==c(this).val()&&(e=!0)}),e?(i.find(".sale_schedule").hide(),i.find(".sale_price_dates_fields").show()):(i.find(".sale_schedule").show(),i.find(".sale_price_dates_fields").hide())}),c("#woocommerce-product-data").on("click",".sale_schedule",function(){var t=c(this).closest("div, table");return c(this).hide(),t.find(".cancel_sale_schedule").show(),t.find(".sale_price_dates_fields").show(),!1}),c("#woocommerce-product-data").on("click",".cancel_sale_schedule",function(){var t=c(this).closest("div, table");return c(this).hide(),t.find(".sale_schedule").show(),t.find(".sale_price_dates_fields").hide(),t.find(".sale_price_dates_fields").find("input").val(""),!1}),c("#woocommerce-product-data").on("click",".downloadable_files a.insert",function(){return c(this).closest(".downloadable_files").find("tbody").append(c(this).data("row")),!1}),c("#woocommerce-product-data").on("click",".downloadable_files a.delete",function(){return c(this).closest("tr").remove(),!1}),c("input#_manage_stock").on("change",function(){var t;c(this).is(":checked")?(c("div.stock_fields").show(),c("p.stock_status_field").hide()):(t=c("select#product-type").val(),c("div.stock_fields").hide(),c("p.stock_status_field:not( .hide_if_"+t+" )").show()),c("input.variable_manage_stock").trigger("change")}).trigger("change"),c(".sale_price_dates_fields").each(function(){c(this).find("input").datepicker({defaultDate:"",dateFormat:"yy-mm-dd",numberOfMonths:1,showButtonPanel:!0,onSelect:function(){t(c(this))}}),c(this).find("input").each(function(){t(c(this))})});var i,o,a,n=c(".product_attributes").find(".woocommerce_attribute").get();function r(){c(".product_attributes .woocommerce_attribute").each(function(t,e){c(".attribute_position",e).val(parseInt(c(e).index(".product_attributes .woocommerce_attribute"),10))})}n.sort(function(t,e){t=parseInt(c(t).attr("rel"),10),e=parseInt(c(e).attr("rel"),10);return t<e?-1:e<t?1:0}),c(n).each(function(t,e){c(".product_attributes").append(e)}),c(".product_attributes .woocommerce_attribute").each(function(t,e){"none"!==c(e).css("display")&&c(e).is(".taxonomy")&&c("select.attribute_taxonomy").find('option[value="'+c(e).data("taxonomy")+'"]').attr("disabled","disabled")}),c("button.add_attribute").on("click",function(){var t=c(".product_attributes .woocommerce_attribute").length,e=c("select.attribute_taxonomy").val(),i=c(this).closest("#product_attributes"),o=i.find(".product_attributes"),a=c("select#product-type").val(),t={action:"woocommerce_add_attribute",taxonomy:e,i:t,security:woocommerce_admin_meta_boxes.add_attribute_nonce};return i.block({message:null,overlayCSS:{background:"#fff",opacity:.6}}),c.post(woocommerce_admin_meta_boxes.ajax_url,t,function(t){o.append(t),"variable"!==a&&o.find(".enable_variation").hide(),c(document.body).trigger("wc-enhanced-select-init"),r(),o.find(".woocommerce_attribute").last().find("h3").trigger("click"),i.unblock(),c(document.body).trigger("woocommerce_added_attribute")}),e&&(c("select.attribute_taxonomy").find('option[value="'+e+'"]').attr("disabled","disabled"),c("select.attribute_taxonomy").val("")),!1}),c(".product_attributes").on("blur","input.attribute_name",function(){c(this).closest(".woocommerce_attribute").find("strong.attribute_name").text(c(this).val())}),c(".product_attributes").on("click","button.select_all_attributes",function(){return c(this).closest("td").find("select option").prop("selected","selected"),c(this).closest("td").find("select").trigger("change"),!1}),c(".product_attributes").on("click","button.select_no_attributes",function(){return c(this).closest("td").find("select option").prop("selected",!1),c(this).closest("td").find("select").trigger("change"),!1}),c(".product_attributes").on("click",".remove_row",function(){var t;return window.confirm(woocommerce_admin_meta_boxes.remove_attribute)&&((t=c(this).parent().parent()).is(".taxonomy")?(t.find("select, input[type=text]").val(""),t.hide(),c("select.attribute_taxonomy").find('option[value="'+t.data("taxonomy")+'"]').prop("disabled",!1)):(t.find("select, input[type=text]").val(""),t.hide(),r())),!1}),c(".product_attributes").sortable({items:".woocommerce_attribute",cursor:"move",axis:"y",handle:"h3",scrollSensitivity:40,forcePlaceholderSize:!0,helper:"clone",opacity:.65,placeholder:"wc-metabox-sortable-placeholder",start:function(t,e){e.item.css("background-color","#f6f6f6")},stop:function(t,e){e.item.removeAttr("style"),r()}}),c(".product_attributes").on("click","button.add_new_attribute",function(){c(".product_attributes").block({message:null,overlayCSS:{background:"#fff",opacity:.6}});var e=c(this).closest(".woocommerce_attribute"),t=e.data("taxonomy"),i=window.prompt(woocommerce_admin_meta_boxes.new_attribute_prompt);return i?(i={action:"woocommerce_add_new_attribute",taxonomy:t,term:i,security:woocommerce_admin_meta_boxes.add_attribute_nonce},c.post(woocommerce_admin_meta_boxes.ajax_url,i,function(t){t.error?window.alert(t.error):t.slug&&(e.find("select.attribute_values").append('<option value="'+t.term_id+'" selected="selected">'+t.name+"</option>"),e.find("select.attribute_values").trigger("change")),c(".product_attributes").unblock()})):c(".product_attributes").unblock(),!1}),c(".save_attributes").on("click",function(){c(".product_attributes").block({message:null,overlayCSS:{background:"#fff",opacity:.6}});var t=c(".product_attributes").find("input, select, textarea"),t={post_id:woocommerce_admin_meta_boxes.post_id,product_type:c("#product-type").val(),data:t.serialize(),action:"woocommerce_save_attributes",security:woocommerce_admin_meta_boxes.save_attributes_nonce};c.post(woocommerce_admin_meta_boxes.ajax_url,t,function(t){t.error?window.alert(t.error):t.data&&(c(".product_attributes").html(t.data.html),c(".product_attributes").unblock(),e(),c("select.attribute_taxonomy").find("option").prop("disabled",!1),c(".product_attributes .woocommerce_attribute").each(function(t,e){"none"!==c(e).css("display")&&c(e).is(".taxonomy")&&c("select.attribute_taxonomy").find('option[value="'+c(e).data("taxonomy")+'"]').prop("disabled",!0)}),t=(t=window.location.toString()).replace("post-new.php?","post.php?post="+woocommerce_admin_meta_boxes.post_id+"&action=edit&"),c("#variable_product_options").load(t+" #variable_product_options_inner",function(){c("#variable_product_options").trigger("reload")}))})}),c(document.body).on("click",".upload_file_button",function(t){var e=c(this);o=e.closest("tr").find("td.file_url input"),t.preventDefault(),i||(t=[new wp.media.controller.Library({library:wp.media.query(),multiple:!0,title:e.data("choose"),priority:20,filterable:"uploaded"})],(i=wp.media.frames.downloadable_file=wp.media({title:e.data("choose"),library:{type:""},button:{text:e.data("update")},multiple:!0,states:t})).on("select",function(){var e="";i.state().get("selection").map(function(t){(t=t.toJSON()).url&&(e=t.url)}),o.val(e).trigger("change")}),i.on("ready",function(){i.uploader.options.uploader.params={type:"downloadable_product"}})),i.open()}),c(".downloadable_files tbody").sortable({items:"tr",cursor:"move",axis:"y",handle:"td.sort",scrollSensitivity:40,forcePlaceholderSize:!0,helper:"clone",opacity:.65});var l=c("#product_image_gallery"),s=c("#product_images_container").find("ul.product_images");c(".add_product_images").on("click","a",function(t){var o=c(this);t.preventDefault(),a||(a=wp.media.frames.product_gallery=wp.media({title:o.data("choose"),button:{text:o.data("update")},states:[new wp.media.controller.Library({title:o.data("choose"),filterable:"all",multiple:!0})]})).on("select",function(){var t=a.state().get("selection"),i=l.val();t.map(function(t){var e;(t=t.toJSON()).id&&(i=i?i+","+t.id:t.id,e=(t.sizes&&t.sizes.thumbnail?t.sizes.thumbnail:t).url,s.append('<li class="image" data-attachment_id="'+t.id+'"><img src="'+e+'" /><ul class="actions"><li><a href="#" class="delete" title="'+o.data("delete")+'">'+o.data("text")+"</a></li></ul></li>"))}),l.val(i)}),a.open()}),s.sortable({items:"li.image",cursor:"move",scrollSensitivity:40,forcePlaceholderSize:!0,forceHelperSize:!1,helper:"clone",opacity:.65,placeholder:"wc-metabox-sortable-placeholder",start:function(t,e){e.item.css("background-color","#f6f6f6")},stop:function(t,e){e.item.removeAttr("style")},update:function(){var e="";c("#product_images_container").find("ul li.image").css("cursor","default").each(function(){var t=c(this).attr("data-attachment_id");e=e+t+","}),l.val(e)}}),c("#product_images_container").on("click","a.delete",function(){c(this).closest("li.image").remove();var e="";return c("#product_images_container").find("ul li.image").css("cursor","default").each(function(){var t=c(this).attr("data-attachment_id");e=e+t+","}),l.val(e),c("#tiptip_holder").removeAttr("style"),c("#tiptip_arrow").removeAttr("style"),!1})});