| 1 |
jQuery(document).ready(function ($) { |
| 2 |
jQuery('.uam_group_selection').on('click', '.uam_group_date', function () { |
| 3 |
var $element = jQuery(this); |
| 4 |
var $next = $element.next('.uam_group_date_form'); |
| 5 |
$next.toggle(); |
| 6 |
$element.hide(); |
| 7 |
}); |
| 8 |
|
| 9 |
//Functions for the setting page |
| 10 |
var toggleGroup = function (group, elementIndex, hiddenFlag, elementsToHide) { |
| 11 |
hiddenFlag = hiddenFlag || 'true'; |
| 12 |
var $group = jQuery(group); |
| 13 |
var $inputs = jQuery('tr:eq('+elementIndex+') input', $group); |
| 14 |
|
| 15 |
var toggleElement = function (element) { |
| 16 |
var $element = jQuery(element); |
| 17 |
var $subElements = jQuery('tr:gt('+elementIndex+')', $group); |
| 18 |
var currentState = ($element.val() === hiddenFlag); |
| 19 |
elementsToHide = elementsToHide || $subElements.length; |
| 20 |
|
| 21 |
for (var index = 0; index < $subElements.length; index++) { |
| 22 |
var $subElement = jQuery($subElements[index]); |
| 23 |
var data = $subElement.data('hidden') || {}; |
| 24 |
data[elementIndex] = (index < elementsToHide) ? currentState : !currentState; |
| 25 |
$subElement.data('hidden', data); |
| 26 |
|
| 27 |
var showElement = true; |
| 28 |
|
| 29 |
jQuery.each(data, function(key, value) { |
| 30 |
if (value === true) { |
| 31 |
showElement = false; |
| 32 |
return null; |
| 33 |
} |
| 34 |
}); |
| 35 |
|
| 36 |
$subElement.toggle(showElement); |
| 37 |
} |
| 38 |
}; |
| 39 |
|
| 40 |
$inputs.on('change', function () { |
| 41 |
toggleElement(this); |
| 42 |
}); |
| 43 |
|
| 44 |
toggleElement($inputs.filter(':checked')); |
| 45 |
}; |
| 46 |
|
| 47 |
toggleGroup('.uam_settings_group_post_type', 0); |
| 48 |
toggleGroup('.uam_settings_group_post_type:not(.default)', 1); |
| 49 |
toggleGroup('.uam_settings_group_taxonomies:not(.default)', 0); |
| 50 |
toggleGroup('.uam_settings_group_file:not(.default)', 1); |
| 51 |
toggleGroup('#uam_settings_group_file', 0, 'false'); |
| 52 |
toggleGroup('#uam_settings_group_file', 4, 'false', 1); |
| 53 |
|
| 54 |
// Functions for the setup page |
| 55 |
jQuery('#uam_reset_confirm').on('change paste keyup', function () { |
| 56 |
var $button = jQuery('#uam_reset_submit'); |
| 57 |
|
| 58 |
if (jQuery(this).val() === 'reset') { |
| 59 |
$button.removeAttr('disabled'); |
| 60 |
} else if (typeof $button.attr('disabled') === 'undefined') { |
| 61 |
$button.attr('disabled', 'disabled'); |
| 62 |
} |
| 63 |
}); |
| 64 |
|
| 65 |
jQuery('#uam_settings_group_section').on('change', function () { |
| 66 |
var $selected = jQuery(this).find(':selected'); |
| 67 |
window.location.href = $selected.data('link'); |
| 68 |
}); |
| 69 |
|
| 70 |
/** global: ajaxurl */ |
| 71 |
$('#uam_dynamic_groups').uamGroupSuggest(ajaxurl + '?action=uam-get-dynamic-group', { delay: 500, multiple: true }); |
| 72 |
$('.uam_time_input').uamTimeInput(); |
| 73 |
}); |