diff --git a/src/main/scala/app/UserManagementController.scala b/src/main/scala/app/UserManagementController.scala
index faa2513..2b2b9d7 100644
--- a/src/main/scala/app/UserManagementController.scala
+++ b/src/main/scala/app/UserManagementController.scala
@@ -126,4 +126,8 @@
} getOrElse NotFound
})
+ post("/admin/users/_usercheck")(adminOnly {
+ getAccountByUserName(params("userName")).isDefined
+ })
+
}
\ No newline at end of file
diff --git a/src/main/twirl/admin/users/group.scala.html b/src/main/twirl/admin/users/group.scala.html
index 030b92c..3cc297a 100644
--- a/src/main/twirl/admin/users/group.scala.html
+++ b/src/main/twirl/admin/users/group.scala.html
@@ -61,9 +61,6 @@
return false;
}
- // TODO check existence
-
-
// check duplication
var exists = $('#members li').filter(function(){
return $(this).data('name') == userName;
@@ -73,19 +70,28 @@
return false;
}
- // add member
- $('#members').append($('
')
- .data('name', userName)
- .append($('').attr('href', '@path/' + userName).text(userName))
- .append(' ')
- .append($('').attr('href', '#').addClass('remove').text('(remove)')));
- $('#memberName').val('');
+ // check existence
+ $.post('@path/admin/users/_usercheck', {
+ 'userName': userName
+ }, function(data, status){
+ if(data == 'true'){
+ // add member
+ $('#members').append($('')
+ .data('name', userName)
+ .append($('').attr('href', '@path/' + userName).text(userName))
+ .append(' ')
+ .append($('').attr('href', '#').addClass('remove').text('(remove)')));
+ $('#memberName').val('');
- // update hidden value
- var userNames = $('#members li').map(function(i, e){
- return $(e).data('name');
- }).get().join(',');
- $('#memberNames').val(userNames);
+ // update hidden value
+ var userNames = $('#members li').map(function(i, e){
+ return $(e).data('name');
+ }).get().join(',');
+ $('#memberNames').val(userNames);
+ } else {
+ $('#error-memberName').text('User does not exist.');
+ }
+ });
});
$(document).on('click', '.remove', function(){
@@ -98,5 +104,11 @@
}).get().join(',');
$('#memberNames').val(userNames);
});
+
+ // Don't submit form by ENTER key
+ $('#memberName').keypress(function(e){
+ console.log(e.keyCode);
+ return !(e.keyCode == 13);
+ });
});
\ No newline at end of file