7453: Add "Add new group" button to user admin page.
[arvados.git] / apps / workbench / app / assets / javascripts / add_group.js
1 $(document).on('shown.bs.modal', '#add-group-modal', function(event) {
2     $('input[type=text]', event.target).val('');
3     $('#add-group-error', event.target).hide();
4 }).on('submit', '#add-group-form', function(event) {
5     var $form = $(event.target),
6     $submit = $(':submit', $form),
7     $error = $('#add-group-error', $form),
8     group_name = $('input[name="group_name"]', $form).val();
9
10     $submit.prop('disabled', true);
11
12     $error.hide();
13     $.ajax('/groups',
14            {method: 'POST',
15             dataType: 'json',
16             data: {group: {name: group_name, group_class: 'role'}},
17             context: $form}).
18         done(function(data, status, jqxhr) {
19             location.reload();
20         }).
21         fail(function(jqxhr, status, error) {
22             var errlist = jqxhr.responseJSON.errors;
23             var errmsg;
24             if (Array.isArray(errlist)) {
25                 errmsg = errlist.join();
26             } else {
27                 errmsg = ("The server returned an error when creating " +
28                           "this group (status " + jqxhr.status +
29                           ": " + errlist + ").");
30             }
31             $error.text(errmsg);
32             $error.show();
33             $submit.prop('disabled', false);
34         });
35     return false;
36 });