summaryrefslogtreecommitdiffstats
path: root/apps/settings/src
diff options
context:
space:
mode:
authorArcticFall <23174635+ArcticFall@users.noreply.github.com>2021-11-18 00:46:07 +0100
committerLouis Chemineau <louis@chmn.me>2022-02-01 12:54:55 +0100
commit849d3697d3d7b2d6fc68a73c08bb7a95faa1abbf (patch)
tree21480fc20d931e651e92609b30e705f94a51a8a8 /apps/settings/src
parent1f80d767b4668de42bc6f53efa20dbb6e28fd1b5 (diff)
downloadnextcloud-server-849d3697d3d7b2d6fc68a73c08bb7a95faa1abbf.tar.gz
nextcloud-server-849d3697d3d7b2d6fc68a73c08bb7a95faa1abbf.zip
Add js methods for renaming a group.
Signed-off-by: Martin Jänel <spammemore@posteo.de> Signed-off-by: Louis Chemineau <louis@chmn.me>
Diffstat (limited to 'apps/settings/src')
-rw-r--r--apps/settings/src/store/users.js33
1 files changed, 33 insertions, 0 deletions
diff --git a/apps/settings/src/store/users.js b/apps/settings/src/store/users.js
index 054380c8245..f09df7fb8b5 100644
--- a/apps/settings/src/store/users.js
+++ b/apps/settings/src/store/users.js
@@ -96,6 +96,15 @@ const mutations = {
console.error('Can\'t create group', e)
}
},
+ renameGroup(state, { gid, displayname }) {
+ const groupIndex = state.groups.findIndex(groupSearch => groupSearch.id === gid)
+ if (groupIndex >= 0) {
+ const updatedGroup = state.groups[groupIndex]
+ updatedGroup.name = displayname
+ state.groups[groupIndex] = updatedGroup
+ state.groups = orderGroups(state.groups, state.orderBy)
+ }
+ },
removeGroup(state, gid) {
const groupIndex = state.groups.findIndex(groupSearch => groupSearch.id === gid)
if (groupIndex >= 0) {
@@ -342,6 +351,30 @@ const actions = {
},
/**
+ * Rename group
+ *
+ * @param {Object} context store context
+ * @param {string} groupid Group id
+ * @param {string} displayName Group display name
+ * @returns {Promise}
+ */
+ renameGroup(context, { groupid, displayName }) {
+ return api.requireAdmin().then((response) => {
+ return api.put(generateOcsUrl('cloud/groups/{groupId}', { groupId: encodeURIComponent(groupid) }), { key: 'displayname', value: displayName })
+ .then((response) => {
+ context.commit('renameGroup', { gid: groupid, displayname: displayName })
+ return { groupid, displayName }
+ })
+ .catch((error) => { throw error })
+ }).catch((error) => {
+ context.commit('API_FAILURE', { groupid, error })
+ // let's throw one more time to prevent the view
+ // from renaming the group
+ throw error
+ })
+ },
+
+ /**
* Remove group
*
* @param {object} context store context