diff --git a/docs/docs_permissionconstants.rst b/docs/docs_permissionconstants.rst index efea8be74..8282ac04b 100644 --- a/docs/docs_permissionconstants.rst +++ b/docs/docs_permissionconstants.rst @@ -22,6 +22,8 @@ Valid Permission Names manageChannels, manageChannel, manageServer, + changeNickname, + manageNicknames, // text readMessages, sendMessages, diff --git a/docs/docs_server.rst b/docs/docs_server.rst index 539f2d832..805f23704 100644 --- a/docs/docs_server.rst +++ b/docs/docs_server.rst @@ -111,7 +111,8 @@ Returns an object containing metadata of a user within the server, containing a mute: false, selfMute: false, deaf: false, - selfDeaf: false + selfDeaf: false, + nick: 'Nickname' } leave() diff --git a/lib/Client/InternalClient.js b/lib/Client/InternalClient.js index 1b20d2678..63ab6dfdf 100644 --- a/lib/Client/InternalClient.js +++ b/lib/Client/InternalClient.js @@ -1030,7 +1030,7 @@ var InternalClient = (function () { nick = nick || ""; user = this.resolver.resolveUser(user); server = this.resolver.resolveServer(server); - return this.apiRequest("patch", _Constants.Endpoints.SERVER_MEMBERS(server.id) + "/" + user.id, true, { nick: nick }); + return this.apiRequest("patch", _Constants.Endpoints.SERVER_MEMBERS(server.id) + "/" + (user.id === this.user.id ? "@me/nick" : user.id), true, { nick: nick }); }; // def createRole diff --git a/src/Client/InternalClient.js b/src/Client/InternalClient.js index 23de59ffd..a7b3e20c9 100644 --- a/src/Client/InternalClient.js +++ b/src/Client/InternalClient.js @@ -868,7 +868,7 @@ export default class InternalClient { nick = nick || ""; user = this.resolver.resolveUser(user); server = this.resolver.resolveServer(server); - return this.apiRequest("patch", `${Endpoints.SERVER_MEMBERS(server.id)}/${user.id}`, true, { nick: nick }); + return this.apiRequest("patch", `${Endpoints.SERVER_MEMBERS(server.id)}/${user.id === this.user.id ? "@me/nick" : user.id}`, true, { nick: nick }); } // def createRole