added updating roles

This commit is contained in:
hydrabolt
2015-10-26 13:29:01 +00:00
parent a3b2f9c2d4
commit 08ffd473e4
5 changed files with 113 additions and 49 deletions

View File

@@ -12,7 +12,7 @@ var Channel = require("./channel.js");
var Message = require("./message.js");
var Invite = require("./invite.js");
var PMChannel = require("./PMChannel.js");
var ServerPermissions = require("./ServerPermissions.js");
var gameMap = require("../ref/gameMap.json");
//node modules
@@ -712,23 +712,52 @@ var Client = (function () {
return prom;
};
Client.prototype.createRole = function createRole(server) {
Client.prototype.createRole = function createRole(dest) {
var cb = arguments.length <= 1 || arguments[1] === undefined ? function (err, perm) {} : arguments[1];
var self = this;
return new Promise(function (resolve, reject) {
var ddest = self.resolveServerID(dest);
request.post(Endpoints.SERVERS + "/" + ddest + "/roles").set("authorization", self.token).end(function (err, res) {
if (err) {
cb(err);
reject(err);
} else {
var perms = self.getServer("id", ddest).addRole(res.body);
resolve(perms);
cb(null, perms);
}
});
});
};
Client.prototype.updateRole = function updateRole(server, role) {
var cb = arguments.length <= 2 || arguments[2] === undefined ? function (err, perm) {} : arguments[2];
var self = this;
return new Promise(function (resolve, reject) {
server = self.resolveServerID(server);
request.post(Endpoints.SERVERS + "/" + server + "/roles").set("authorization", self.token).end(function (err, res) {
request.patch(Endpoints.SERVERS + "/" + server + "/roles/" + role.id).set("authorization", self.token).send({
color: role.color,
hoist: role.hoist,
name: role.name,
permissions: role.packed
}).end(function (err, res) {
if (err) {
cb(err);
reject(err);
} else {
var data = self.getServer("id", server).addRole(res.body);
var data = self.getServer("id", server).updateRole(res.body);
resolve(data);
cb(null, data);
}
@@ -1120,8 +1149,6 @@ var Client = (function () {
self.trigger("serverRoleCreate", server, server.addRole(role));
server.removeRole(role.id);
break;
case "GUILD_ROLE_DELETE":

View File

@@ -86,7 +86,7 @@ var Server = (function () {
var role = _ref3;
if (role.id === id) {
if (role.id == id) {
return role;
}
}
@@ -110,7 +110,6 @@ var Server = (function () {
var oldRole = this.getRole(data.id);
if (oldRole) {
var index = this.roles.indexOf(oldRole);
this.roles[index] = new ServerPermissions(data);