diff --git a/app/assets/javascripts/admin/spree/image_settings.js.erb b/app/assets/javascripts/admin/spree/image_settings.js.erb new file mode 100644 index 0000000000..161a3c7164 --- /dev/null +++ b/app/assets/javascripts/admin/spree/image_settings.js.erb @@ -0,0 +1,62 @@ +$(document).ready(function() { + + if ($('input#preferences_use_s3[type="checkbox"]:checked').length > 0) { + $('#s3_settings, #s3_headers').show(); + } + + // Toggle display of S3 settings based on value of use_s3 checkbox + $('input#preferences_use_s3[type="checkbox"]').click(function() { + $('#s3_settings, #s3_headers').toggle(); + }); + + $(document).on('click', '.destroy_style', function(e) { + e.preventDefault(); + $(this).parent().remove(); + }); + + $(document).on('click', '.destroy_new_attachment_styles', function(e) { + e.preventDefault(); + $(this).closest('.new_attachment_styles').remove(); + }); + + $(document).on('click', '.destroy_new_s3_headers', function(e) { + e.preventDefault(); + $(this).closest('.new_s3_headers').remove(); + }); + + // Handle adding new styles + var styles_hash_index = 1; + $(document).on('click', '.add_new_style', function(e) { + e.preventDefault(); + $('#new-styles').append(generate_html_for_hash("new_attachment_styles", styles_hash_index)); + }); + + // Handle adding new headers + var headers_hash_index = 1; + $(document).on('click', '.add_header', function(e) { + e.preventDefault(); + $('#headers_list').append(generate_html_for_hash("new_s3_headers", headers_hash_index)); + }); + + // Generates html for new paperclip styles form fields + generate_html_for_hash = function(hash_name, index) { + var html = '