diff --git a/assets/just_custom_fields.js b/assets/just_custom_fields.js index 6c9c9f1..ce16b30 100755 --- a/assets/just_custom_fields.js +++ b/assets/just_custom_fields.js @@ -92,14 +92,14 @@ function initFieldsetsEdit() { }) // init delete button on change popup - jQuery('#jcf_ajax_content .jcf_edit_fieldset a.field-control-remove').live('click', function() { + jQuery('#jcf_ajax_content .jcf_edit_fieldset a.field-control-remove').on('click', function() { var f_id = jQuery(this).parents('form:first').find('input[name=fieldset_id]').val(); jQuery('#jcf_fieldset_' + f_id + ' a.jcf_fieldset_delete').click(); return false; }); // save on edit form - jQuery('#jcform_edit_fieldset').live('submit', function( e ) { + jQuery('#jcform_edit_fieldset').on('submit', function( e ) { e.preventDefault(); var f_id = jQuery(this).find('input[name=fieldset_id]').val(); var data = { @@ -139,7 +139,7 @@ function initFieldsetsEdit() { }); // choose base for visibility rule (page template/taxonomy) - jQuery('#rule-based-on').live('change', function() { + jQuery('#rule-based-on').on('change', function() { var data = { 'based_on': jQuery(this).val(), 'action': 'jcf_get_rule_options', @@ -151,7 +151,7 @@ function initFieldsetsEdit() { }); // choose taxonomy terms for visibility rule - jQuery('#rule-taxonomy').live('change', function() { + jQuery('#rule-taxonomy').on('change', function() { var data = { 'taxonomy': jQuery(this).val(), 'action': 'jcf_get_taxonomy_terms', @@ -165,7 +165,7 @@ function initFieldsetsEdit() { }); //parse rule block for saving - jQuery('.save_rule_btn, .update_rule_btn').live('click', function(e) { + jQuery('.save_rule_btn, .update_rule_btn').on('click', function(e) { e.preventDefault(); var f_id = jQuery(this).parents('form').find('input[name=fieldset_id]').val(); @@ -202,7 +202,7 @@ function initFieldsetsEdit() { }); // add form for new visibility rule - jQuery('.add_rule_btn').live('click', function(e) { + jQuery('.add_rule_btn').on('click', function(e) { e.preventDefault(); var data = { @@ -216,7 +216,7 @@ function initFieldsetsEdit() { }); // delete visibility rule - jQuery('a.remove-rule').live('click', function(e) { + jQuery('a.remove-rule').on('click', function(e) { e.preventDefault(); var rule_id = jQuery(this).data('rule_id'); var f_id = jQuery(this).parents('form').find('input[name=fieldset_id]').val(); @@ -233,7 +233,7 @@ function initFieldsetsEdit() { }); // edit visibility rule - jQuery('a.edit-rule').live('click', function(e) { + jQuery('a.edit-rule').on('click', function(e) { e.preventDefault(); var rule_id = jQuery(this).data('rule_id'); var f_id = jQuery(this).parents('form').find('input[name=fieldset_id]').val(); @@ -253,7 +253,7 @@ function initFieldsetsEdit() { }); // show/hide visibility options for fieldset - jQuery('a.visibility_toggle').live('click', function(e) { + jQuery('a.visibility_toggle').on('click', function(e) { e.preventDefault(); jQuery('#visibility').toggle(); jQuery(this).find('span').toggleClass('dashicons-arrow-down-alt2'); @@ -261,14 +261,14 @@ function initFieldsetsEdit() { }); // cancel form for add or edit visibility rule - jQuery('.cancel_rule_btn').live('click', function(e) { + jQuery('.cancel_rule_btn').on('click', function(e) { e.preventDefault(); jQuery(this).parents('fieldset#fieldset_visibility_rules').remove(); jQuery('.add_rule_btn').show(); }); // adding new term for visility - jQuery('.termadd').live('click', function(e) { + jQuery('.termadd').on('click', function(e) { e.preventDefault(); if ( !jQuery('#new-term').attr('data-term_id') && !jQuery('#new-term').attr('data-term_label') ) { var taxonomy = jQuery('.taxonomy-options #rule-taxonomy').val(); @@ -348,10 +348,93 @@ function initFieldsetFields() { return false; }); + // delete button + jQuery('#jcf_fieldsets tbody span.delete a').on('click', function() { + if ( confirm(jcf_textdomain.confirm_field_delete) ) { + var row = jQuery(this).parents('tr:first'); + var f_id = jQuery(this).parents('tbody:first').attr('id').replace('the-list-', ''); + var data = { + action: 'jcf_delete_field', + fieldset_id: f_id, + field_id: jQuery(this).attr('rel') + }; + + jcf_ajax(data, 'json', null, function( response ) { + row.next('td.collection_list:first').remove(); + row.remove(); + // close edit box if exists + jcf_hide_ajax_container(); + }); + } + return false; + }) + + // edit button + jQuery('#jcf_fieldsets tbody span.edit a, #jcf_fieldsets tbody strong > a').on('click', function() { + var f_id = jQuery(this).parents('tbody:first').attr('id').replace('the-list-', ''); + var data = { + action: 'jcf_edit_field', + fieldset_id: f_id, + field_id: jQuery(this).attr('rel') + }; + + jcf_ajax(data, 'html', null, function( response ) { + + jcf_show_ajax_container(response); + + }); + + return false; + }) + + // delete button in edit form + jQuery('#jcform_edit_field a.field-control-remove').on('click', function( e ) { + var field_id = jQuery(this).parents('form:first').find('input[name=field_id]').val(); + var row = jQuery('#field_row_' + field_id); + row.find('span.delete a').click(); + return false; + }); + + // init sortable + jQuery('#jcf_fieldsets table.fieldset-fields-table > tbody').sortable({ + handle: 'span.drag-handle', + opacity: 0.7, + placeholder: 'sortable_placeholder', + scroll: true, + start: function( event, ui ) { + ui.placeholder.html('