app/assets/javascripts/jqr-helpers.js in jqr-helpers-1.0.30 vs app/assets/javascripts/jqr-helpers.js in jqr-helpers-1.0.31
- old
+ new
@@ -325,27 +325,41 @@
}
});
return false;
}
- function ujsQuickButtonClick(event) {
- var radio = $(event.currentTarget).prev('input');
+ function updateQuickButton(radio, label) {
var form = radio[0].form;
var name = $(radio).attr('name');
$(form).find('input[name="' + name + '"]').each(function() {
$(this).next('label').removeClass('ui-state-active');
});
- $(event.currentTarget).addClass('ui-state-active');
+ label.addClass('ui-state-active');
+
}
+ function ujsQuickButtonChange(event) {
+ var radio = $(event.currentTarget);
+ var label = radio.next('label');
+ updateQuickButton(radio, label);
+ }
+
+ function ujsQuickButtonClick(event) {
+ var label = $(event.currentTarget);
+ var radio = label.prev('input');
+ updateQuickButton(radio, label);
+ }
+
function ujsQuickButtonHover(event) {
$j(event.currentTarget).toggleClass('ui-state-hover');
}
function ujsLoadPlugins(event) {
+ $j('.ujs-quick-buttonset input:checked').change();
+
function addHiddenField(form, name, value) {
var input = $('<input type="hidden">');
input.attr('name', name);
input.attr('value', value);
form.append(input);
@@ -425,10 +439,12 @@
$(document).on('click', '.ujs-ajax-button', ujsButtonClick);
$(document).on('ajax:beforeSend', '.ujs-ajax', ujsAjaxBeforeSend);
$(document).on('ajax:success', '.ujs-ajax', ujsAjaxSuccess);
$(document).on('ajax:error', '.ujs-ajax', ujsAjaxError);
$(document).on('click', '[data-ujs-confirm=true]', ujsConfirmClick);
+ $(document).on('change', '.ujs-quick-buttonset input',
+ ujsQuickButtonChange);
$(document).on('click', '.ujs-quick-buttonset label',
ujsQuickButtonClick);
$(document).on('mouseenter mouseleave', '.ujs-quick-buttonset label',
ujsQuickButtonHover);
}
@@ -440,9 +456,10 @@
$('.ujs-ajax-button').live('click', ujsButtonClick);
$('.ujs-ajax').live('ajax:beforeSend', ujsAjaxBeforeSend);
$('.ujs-ajax').live('ajax:success', ujsAjaxSuccess);
$('.ujs-ajax').live('ajax:error', ujsAjaxError);
$('[data-ujs-confirm=true]').live('click', ujsConfirmClick);
+ $('.ujs-quick-buttonset input').live('change', ujsQuickButtonChange);
$('.ujs-quick-buttonset label').live('click', ujsQuickButtonClick);
$('.ujs-quick-buttonset label').live('mouseenter mouseleave',
ujsQuickButtonHover);
}
$('body').trigger('jqr.load');