diff --git a/Lib/lang.php b/Lib/lang.php index 7e581b3..fa4bae6 100644 --- a/Lib/lang.php +++ b/Lib/lang.php @@ -58,9 +58,9 @@ 'pl.grouperlite.message.flash.group-detail-members-failed' => 'Error in viewing the members of this group, please try again later.', - 'pl.grouperlite.message.flash.add-subscriber-success' => 'Added subscriber.', + 'pl.grouperlite.message.flash.add-subscriber-success' => 'has been added to the group:', 'pl.grouperlite.message.flash.add-subscriber-failed' => 'Error in adding subscriber.', - 'pl.grouperlite.message.flash.remove-subscriber-success' => 'Removed subscriber.', + 'pl.grouperlite.message.flash.remove-subscriber-success' => 'has been removed from the group:', 'pl.grouperlite.message.flash.remove-subscriber-failed' => 'Error in removing subscriber.', 'pl.grouperlite.table.name' => 'Name', diff --git a/View/GrouperGroups/index.ctp b/View/GrouperGroups/index.ctp index f696efe..8e40978 100644 --- a/View/GrouperGroups/index.ctp +++ b/View/GrouperGroups/index.ctp @@ -63,7 +63,6 @@ provide: { collapsed: , optAction: "", - allowAddSubscribers: , owner: , url: "", grouperUrl: "", @@ -174,22 +173,4 @@
- - - Form->create(false, array( - 'url' => array('controller' => 'grouper_groups', 'action' => isset($optAction) ? $optAction : ''), - 'class' => 'd-flex justify-content-center', - 'id' => 'group-action' - )); ?> - - - - Form->end(null); ?> - */ ?> \ No newline at end of file + \ No newline at end of file diff --git a/webroot/js/autocomplete.js b/webroot/js/autocomplete.js index 3625779..284ff57 100644 --- a/webroot/js/autocomplete.js +++ b/webroot/js/autocomplete.js @@ -8,12 +8,13 @@ export default { data() { return { search: '', - val: '' + val: '', + item: null, }; }, methods: { addUser(search) { - this.$emit('add', search); + this.$emit('add', this.item); } }, mounted(el) { @@ -24,11 +25,14 @@ export default { maxShowItems: 10, focus: function( event, ui ) { this.search = ui.item.label; + this.val = ui.item.identifier; + this.item = ui.item; return false; }, select: (event, ui) => { this.val = ui.item.identifier; this.search = ui.item.label; + this.item = ui.item; $("#addUserbutton").prop('disabled', false).focus(); return false; }, @@ -39,7 +43,7 @@ export default {
- diff --git a/webroot/js/groups-table.js b/webroot/js/groups-table.js index 8efea6d..f6581f2 100644 --- a/webroot/js/groups-table.js +++ b/webroot/js/groups-table.js @@ -5,10 +5,7 @@ export default { mixins: [ Table ], - - data() { - - }, + data() {}, computed: { }, created() {}, diff --git a/webroot/js/groups.js b/webroot/js/groups.js index 132af93..c7e0ddf 100644 --- a/webroot/js/groups.js +++ b/webroot/js/groups.js @@ -65,10 +65,10 @@ export default { }); if (resp.ok) { this.loadGroups(this.apiPath, this.query, false); - generateFlash(`${this.txt.leaveSuccess}: ${group.displayName}`, 'success'); + generateFlash(`${this.txt.leaveSuccess} ${group.displayName}`, 'success'); } else { this.error = resp; - generateFlash(`${this.txt.leaveError}: ${group.displayName}`, 'error'); + generateFlash(`${this.txt.leaveError} ${group.displayName}`, 'error'); } }, async joinGroup(group) { @@ -83,10 +83,10 @@ export default { }); if (resp.ok) { this.loadGroups(this.apiPath, this.query, false); - generateFlash(`${this.txt.joinSuccess}: ${group.displayName}`, 'success'); + generateFlash(`${this.txt.joinSuccess} ${group.displayName}`, 'success'); } else { this.error = resp; - generateFlash(`${this.txt.joinError}: ${group.displayName}`, 'error'); + generateFlash(`${this.txt.joinError} ${group.displayName}`, 'error'); } } }, diff --git a/webroot/js/members.js b/webroot/js/members.js index 3023230..3896239 100644 --- a/webroot/js/members.js +++ b/webroot/js/members.js @@ -29,6 +29,7 @@ import Autocomplete from './autocomplete.js'; export default { props: { add: Boolean, + remove: Boolean, default: false }, inject: ['txt', 'api'], @@ -78,7 +79,7 @@ export default { this.loading = false; }, - async removeSubscriber({name}, {id}) { + async removeSubscriber({name}, {id, label}) { this.loading = true; const resp = await fetch(`${this.api.remove}?group=${encodeURIComponent(name)}&userId=${id}`, { method: "DELETE", @@ -90,7 +91,7 @@ export default { if (resp.ok) { this.subscribers = []; this.loadGroupSubscribers(this.group); - generateFlash(this.txt.removeSubscriberSuccess, 'success'); + generateFlash(`${label} ${this.txt.removeSubscriberSuccess} ${encodeURIComponent(name)}`, 'success'); } else { this.disabled = [ ...this.disabled, id ]; generateFlash(this.txt.removeSubscriberError, 'error'); @@ -98,7 +99,7 @@ export default { this.loading = false; }, - async addSubscriber(id) { + async addSubscriber({ identifier: id, label }) { this.loading = true; const { name } = this.group; const formData = new FormData(); @@ -114,7 +115,7 @@ export default { }); if (resp.ok) { this.loadGroupSubscribers(this.group); - generateFlash(this.txt.addSubscriberSuccess, 'success'); + generateFlash(`${label} ${this.txt.addSubscriberSuccess} ${encodeURIComponent(name)}`, 'success'); } else { generateFlash(this.txt.addSubscriberError, 'error'); } @@ -157,7 +158,7 @@ export default {
- +
@@ -172,10 +173,10 @@ export default { {{ subscriber.name }} - + {{ subscriber.id }} - + diff --git a/webroot/js/page/GroupMember.js b/webroot/js/page/GroupMember.js index c7b0735..bb4fd90 100644 --- a/webroot/js/page/GroupMember.js +++ b/webroot/js/page/GroupMember.js @@ -15,7 +15,7 @@ export default { Members, NestedTable, }, - inject: ['txt', 'api', 'allowAddSubscribers', 'owner'], + inject: ['txt', 'api', 'owner'], data() { return { view: null, @@ -32,9 +32,6 @@ export default { } }, computed: { - nestedColumns() { - return this.owner ? ['name', 'role', 'description'] : ['name', 'description'] - }, routePath() { return `/groupmember/co:${this.api.co}/glid:${this.api.glid}`; } @@ -44,7 +41,6 @@ export default { if (view !== 'working' && view !== 'adhoc') { view = 'adhoc'; } - console.log(view); this.view = view; }, template: /*html*/` @@ -61,7 +57,7 @@ export default { @@ -73,7 +69,7 @@ export default { @@ -81,6 +77,6 @@ export default { - + ` } \ No newline at end of file diff --git a/webroot/js/page/GroupOwner.js b/webroot/js/page/GroupOwner.js index efb5f4d..d330043 100644 --- a/webroot/js/page/GroupOwner.js +++ b/webroot/js/page/GroupOwner.js @@ -12,7 +12,7 @@ export default { GroupsTable, Members }, - inject: ['api', 'allowAddSubscribers'], + inject: ['api'], methods: { showSubscribers(group) { this.$refs.members.show(group); @@ -26,13 +26,13 @@ export default { - + ` } \ No newline at end of file diff --git a/webroot/js/pagination.js b/webroot/js/pagination.js index 677f195..e0babab 100644 --- a/webroot/js/pagination.js +++ b/webroot/js/pagination.js @@ -32,6 +32,9 @@ export default { }, perPage(newValue) { setQueryParam('limit', newValue); + if (newValue === 'all') { + this.currentPage = 1; + } }, records(newValue) { if (this.numbers <= 1) {