diff --git a/src/components/app/Popouts/Popouts/ServerSettingsPanels/General.vue b/src/components/app/Popouts/Popouts/ServerSettingsPanels/General.vue index 7b2efd9..62b9706 100644 --- a/src/components/app/Popouts/Popouts/ServerSettingsPanels/General.vue +++ b/src/components/app/Popouts/Popouts/ServerSettingsPanels/General.vue @@ -22,7 +22,7 @@ @change="changeEvent('default_channel_id', $event.channelID)" /> -
Save Changes
+
Save Changes
@@ -49,10 +49,19 @@ export default { }, changeEvent(name, value) { this.$set(this.update, name, value); + }, + async updateServer() { + const {ok, error, result} = await ServerService.updateServer(this.server.server_id, this.update); + if (ok) { + this.update = {}; + } } }, watch: { - update(test) { + update(obj) { + if ( Object.keys(obj).length === 0 ){ + return this.changed = false + } this.changed = true; } }, diff --git a/src/components/app/Popouts/Popouts/ServerSettingsPanels/ManageChannels.vue b/src/components/app/Popouts/Popouts/ServerSettingsPanels/ManageChannels.vue index fd08ffb..5c2dc50 100644 --- a/src/components/app/Popouts/Popouts/ServerSettingsPanels/ManageChannels.vue +++ b/src/components/app/Popouts/Popouts/ServerSettingsPanels/ManageChannels.vue @@ -10,6 +10,7 @@
Save Changes
+
Cannot delete default channel
{{deleteButtonConfirmed ? 'ARE YOU SURE?' : 'Delete Channel' }}
diff --git a/src/services/ServerService.js b/src/services/ServerService.js index 0651e37..461cb79 100644 --- a/src/services/ServerService.js +++ b/src/services/ServerService.js @@ -4,6 +4,9 @@ export default { post ( data ) { return wrapper(instance().post('/server', data)); }, + updateServer (serverID, data) { + return wrapper(instance().patch(`/server/${serverID}`, data)); + }, getChannels(serverID) { return wrapper(instance().get(`/server/channels/${serverID}`)); }, diff --git a/src/store/modules/channelModule.js b/src/store/modules/channelModule.js index 927b518..d0d704c 100644 --- a/src/store/modules/channelModule.js +++ b/src/store/modules/channelModule.js @@ -30,7 +30,7 @@ const actions = { context.commit('removeChannel', channelID) }, updateChannel(context, data) { - const update = Object.assign(context.state.channels[data.channelID], data); + const update = Object.assign({}, context.state.channels[data.channelID], data); context.commit('channel', update) }, selectedChannelID(context, channelID) { diff --git a/src/store/modules/serversModule.js b/src/store/modules/serversModule.js index 8bc05fa..28940c9 100644 --- a/src/store/modules/serversModule.js +++ b/src/store/modules/serversModule.js @@ -34,6 +34,10 @@ const actions = { setServer(context, server) { context.commit('SET_SERVER', server); }, + updateServer(context, {server_id, server}) { + const update = Object.assign({}, context.state.servers[server_id], server) + context.commit('SET_SERVER', update); + }, removeServer(context, serverID) { context.commit('REMOVE_SERVER', serverID); }, diff --git a/src/store/modules/socketIOModule.js b/src/store/modules/socketIOModule.js index f027ef9..6c1eb00 100644 --- a/src/store/modules/socketIOModule.js +++ b/src/store/modules/socketIOModule.js @@ -268,6 +268,10 @@ const actions = { context.dispatch('servers/removeServerChannel', {server_id, channelID}); // context.dispatch('removeChannel', {channelID}); }, + ['socket_server:updateServer'](context, data) { + context.dispatch('servers/updateServer', {server_id: data.server_id, server: data}); + // context.dispatch('removeChannel', {channelID}); + }, } export default { diff --git a/src/utils/changelog.js b/src/utils/changelog.js index af19454..387c02b 100644 --- a/src/utils/changelog.js +++ b/src/utils/changelog.js @@ -13,10 +13,45 @@ } const config = [ + + + + + + { + version: 5.0, + title: "Change server name and default server channel", + shortTitle: "Change server name and default server channel", + date: "15/07/2019", + headColor: "rgba(255, 0, 0, 0.77)", + new: [ + "You can now change the name of your server.", + "You can now change the default channel to something else.", + ], + fix: ['Some bugs have been fixed.'], + next: ["Change servers avatar."], + }, + + + + + + + + + + + + + + + + + { version: 4.9, title: "Color codeblocks and create multiple channels!", - shortTitle: "", + shortTitle: "Color codeblocks and create multiple channels!", date: "12/07/2019", headColor: "rgba(190, 40, 40, 0.77)", new: [