2016-10-26 08:02:58 +00:00
|
|
|
/* eslint-disable */
|
2016-08-31 14:28:58 +00:00
|
|
|
((w) => {
|
2016-09-01 15:22:53 +00:00
|
|
|
w.gl = w.gl || {};
|
2016-08-31 14:28:58 +00:00
|
|
|
|
2016-09-02 13:19:11 +00:00
|
|
|
class Members {
|
2016-08-31 14:28:58 +00:00
|
|
|
constructor() {
|
|
|
|
this.addListeners();
|
|
|
|
}
|
|
|
|
|
|
|
|
addListeners() {
|
2016-10-13 09:25:38 +00:00
|
|
|
$('.project_member, .group_member').off('ajax:success').on('ajax:success', this.removeRow);
|
|
|
|
$('.js-member-update-control').off('change').on('change', this.formSubmit);
|
|
|
|
$('.js-edit-member-form').off('ajax:success').on('ajax:success', this.formSuccess);
|
2016-09-06 03:28:59 +00:00
|
|
|
gl.utils.disableButtonIfEmptyField('#user_ids', 'input[name=commit]', 'change');
|
2016-08-31 14:28:58 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
removeRow(e) {
|
|
|
|
const $target = $(e.target);
|
|
|
|
|
|
|
|
if ($target.hasClass('btn-remove')) {
|
2016-09-02 08:25:53 +00:00
|
|
|
$target.closest('.member')
|
|
|
|
.fadeOut(function () {
|
|
|
|
$(this).remove();
|
|
|
|
});
|
2016-08-31 14:28:58 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2016-09-05 14:11:45 +00:00
|
|
|
formSubmit() {
|
2016-10-06 14:42:48 +00:00
|
|
|
$(this).closest('form').trigger("submit.rails").end().disable();
|
2016-09-05 14:11:45 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
formSuccess() {
|
|
|
|
$(this).find('.js-member-update-control').enable();
|
2016-08-31 14:28:58 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2016-09-02 13:19:11 +00:00
|
|
|
gl.Members = Members;
|
2016-08-31 14:28:58 +00:00
|
|
|
})(window);
|