diff --git a/jcommune-model/src/main/resources/org/jtalks/jcommune/model/entity/Group.hbm.xml b/jcommune-model/src/main/resources/org/jtalks/jcommune/model/entity/Group.hbm.xml index 0a2b8406f9..6eb1d41dbf 100644 --- a/jcommune-model/src/main/resources/org/jtalks/jcommune/model/entity/Group.hbm.xml +++ b/jcommune-model/src/main/resources/org/jtalks/jcommune/model/entity/Group.hbm.xml @@ -56,7 +56,7 @@ - + diff --git a/jcommune-view/jcommune-web-view/src/main/resources/org/jtalks/jcommune/web/view/messages_en.properties b/jcommune-view/jcommune-web-view/src/main/resources/org/jtalks/jcommune/web/view/messages_en.properties index 787165fe06..f490ea796f 100644 --- a/jcommune-view/jcommune-web-view/src/main/resources/org/jtalks/jcommune/web/view/messages_en.properties +++ b/jcommune-view/jcommune-web-view/src/main/resources/org/jtalks/jcommune/web/view/messages_en.properties @@ -494,6 +494,7 @@ label.registration.success.2=s label.search.user=Search user label.search.user.empty=No users found label.user.groups=Groups +label.user.groups.select.placeHolder=Select a group... label.user.group.add.error=Error on add group label.user.group.delete.error=Error on delete group diff --git a/jcommune-view/jcommune-web-view/src/main/resources/org/jtalks/jcommune/web/view/messages_es.properties b/jcommune-view/jcommune-web-view/src/main/resources/org/jtalks/jcommune/web/view/messages_es.properties index 7201c5f791..dd581b9523 100644 --- a/jcommune-view/jcommune-web-view/src/main/resources/org/jtalks/jcommune/web/view/messages_es.properties +++ b/jcommune-view/jcommune-web-view/src/main/resources/org/jtalks/jcommune/web/view/messages_es.properties @@ -468,3 +468,4 @@ label.user.groups=Groups label.connection.lost.genericError=Connection to the server was lost label.user.group.delete.error=Error on delete group label.user.group.add.error=Error on add group +label.user.groups.select.placeHolder=Select a group... diff --git a/jcommune-view/jcommune-web-view/src/main/resources/org/jtalks/jcommune/web/view/messages_ru.properties b/jcommune-view/jcommune-web-view/src/main/resources/org/jtalks/jcommune/web/view/messages_ru.properties index 448c4b3e90..5fc22b6c77 100644 --- a/jcommune-view/jcommune-web-view/src/main/resources/org/jtalks/jcommune/web/view/messages_ru.properties +++ b/jcommune-view/jcommune-web-view/src/main/resources/org/jtalks/jcommune/web/view/messages_ru.properties @@ -490,3 +490,4 @@ label.user.groups=\u0413\u0440\u0443\u043F\u043F\u044B label.connection.lost.genericError=\u041F\u043E\u0442\u0435\u0440\u044F\u043D\u043E \u0441\u043E\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u0435 \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043E\u043C label.user.group.delete.error=\u041E\u0448\u0438\u0431\u043A\u0430 \u043F\u0440\u0438 \u0443\u0434\u0430\u043B\u0435\u043D\u0438\u0438 \u0438\u0437 \u0433\u0440\u0443\u043F\u043F\u044B label.user.group.add.error=\u041E\u0448\u0438\u0431\u043A\u0430 \u043F\u0440\u0438 \u0434\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u0438\u0438 \u0432 \u0433\u0440\u0443\u043F\u043F\u0443 +label.user.groups.select.placeHolder=\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0433\u0440\u0443\u043F\u043F\u044B... diff --git a/jcommune-view/jcommune-web-view/src/main/resources/org/jtalks/jcommune/web/view/messages_uk.properties b/jcommune-view/jcommune-web-view/src/main/resources/org/jtalks/jcommune/web/view/messages_uk.properties index 2be18dcd78..ef0ac0bd48 100644 --- a/jcommune-view/jcommune-web-view/src/main/resources/org/jtalks/jcommune/web/view/messages_uk.properties +++ b/jcommune-view/jcommune-web-view/src/main/resources/org/jtalks/jcommune/web/view/messages_uk.properties @@ -494,3 +494,4 @@ label.connection.lost.genericError=\u0417'\u0454\u0434\u043D\u0430\u043D\u043D\u label.user.group.delete.error=\u041F\u043E\u043C\u0438\u043B\u043A\u0430 \u043F\u0440\u0438 \u0432\u0438\u0434\u0430\u043B\u0435\u043D\u043D\u0456 \u0437 \u0433\u0440\u0443\u043F\u0438 label.user.group.add.error=\u041F\u043E\u043C\u0438\u043B\u043A\u0430 \u043F\u0440\u0438 \u0434\u043E\u0434\u0430\u0432\u0430\u043D\u043D\u0456 \u0434\u043E \u0433\u0440\u0443\u043F\u0438 label.registration.success.1= +label.user.groups.select.placeHolder=\u0412\u0438\u0431\u0440\u0430\u0442\u0438 \u0433\u0440\u0443\u043F\u0438... diff --git a/jcommune-view/jcommune-web-view/src/main/webapp/WEB-INF/jsp/userSearch.jsp b/jcommune-view/jcommune-web-view/src/main/webapp/WEB-INF/jsp/userSearch.jsp index 1eff9edbb6..6aa3029633 100644 --- a/jcommune-view/jcommune-web-view/src/main/webapp/WEB-INF/jsp/userSearch.jsp +++ b/jcommune-view/jcommune-web-view/src/main/webapp/WEB-INF/jsp/userSearch.jsp @@ -66,14 +66,14 @@ - + - + - + " class="user-groups-select" data-user-id="${user.id}" multiple="multiple" style="width: 100%"> ${group.name} diff --git a/jcommune-view/jcommune-web-view/src/main/webapp/WEB-INF/template/jsMessages.jsp b/jcommune-view/jcommune-web-view/src/main/webapp/WEB-INF/template/jsMessages.jsp index 26e697c736..58589ddade 100644 --- a/jcommune-view/jcommune-web-view/src/main/webapp/WEB-INF/template/jsMessages.jsp +++ b/jcommune-view/jcommune-web-view/src/main/webapp/WEB-INF/template/jsMessages.jsp @@ -183,6 +183,6 @@ $labelNotLoggedInError = ''; $pollItemLength = ''; -$labelConnectionLostGenericError = ''; +$labelConnectionLostGenericError = ""; $labelUserGroupAddError = ''; $labelUserGroupDeleteError = ''; \ No newline at end of file diff --git a/jcommune-view/jcommune-web-view/src/main/webapp/resources/css/app/application.css b/jcommune-view/jcommune-web-view/src/main/webapp/resources/css/app/application.css index 658a77771a..21a914ae07 100644 --- a/jcommune-view/jcommune-web-view/src/main/webapp/resources/css/app/application.css +++ b/jcommune-view/jcommune-web-view/src/main/webapp/resources/css/app/application.css @@ -1231,15 +1231,4 @@ pre.prettyprint { .grid-row { background-color: #ffffff !important; -} - -.groups-button { - color: #0088cc; - cursor: pointer; -} - -.groups-button:hover { - color: #005580; - text-decoration: underline; - cursor: pointer; } \ No newline at end of file diff --git a/jcommune-view/jcommune-web-view/src/main/webapp/resources/javascript/app/userSearch.js b/jcommune-view/jcommune-web-view/src/main/webapp/resources/javascript/app/userSearch.js index 1e150a130f..4370b90fd3 100644 --- a/jcommune-view/jcommune-web-view/src/main/webapp/resources/javascript/app/userSearch.js +++ b/jcommune-view/jcommune-web-view/src/main/webapp/resources/javascript/app/userSearch.js @@ -68,14 +68,23 @@ userSearch.groupDeleted = function(userID, groupID) { }; userSearch.toggleUserGroups = function(event, userID) { - $('#user-groups-table-' + userID).toggle(0, function() { - if($(this).is(":visible")) { - userSearch.showUserGroups(userID); - } - }); + var userGroupsTable = $('#user-groups-table-' + userID); + if (!userGroupsTable.is(":visible")) { + userSearch.showUserGroups(userID, function() { + var chosenContainer = userGroupsTable.find('.chosen-container'); + chosenContainer.css({width: '100%'}); + chosenContainer.find('.search-field input').css({width: '100%'}); + userGroupsTable.toggle(); // show only after fetch + }); + } else { + userGroupsTable.toggle(); + } + event.preventDefault(); + event.stopPropagation(); + return false; }; -userSearch.showUserGroups = function(userID) { +userSearch.showUserGroups = function(userID, callback) { $.get($root + "/user/" + userID + "/groups", function (result) { var multiSelect = $("#user-groups-table-" + userID + " .user-groups-select"); multiSelect.val(result.result); @@ -83,6 +92,7 @@ userSearch.showUserGroups = function(userID) { // trigger changed event if chosen already applied if (multiSelect.next('.chosen-container').length) { multiSelect.trigger("chosen:updated"); + callback(); return; } @@ -99,6 +109,8 @@ userSearch.showUserGroups = function(userID) { userSearch.groupDeleted(userID, params.deselected); } }); + + callback(); }).fail(userSearch.connectionErrorCallback); };