mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-18 12:33:30 +01:00
Updated overwritePermissions function
This commit is contained in:
@@ -441,6 +441,25 @@ var Client = (function (_EventEmitter) {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// def overwritePermissions
|
||||||
|
|
||||||
|
Client.prototype.overwritePermissions = function overwritePermissions(channel, role) {
|
||||||
|
var options = arguments.length <= 2 || arguments[2] === undefined ? {} : arguments[2];
|
||||||
|
var callback = arguments.length <= 3 || arguments[3] === undefined ? function (err) {} : arguments[3];
|
||||||
|
|
||||||
|
var self = this;
|
||||||
|
return new Promise(function (resolve, reject) {
|
||||||
|
|
||||||
|
self.internal.overwritePermissions(channel, role, options).then(function () {
|
||||||
|
callback();
|
||||||
|
resolve();
|
||||||
|
})["catch"](function (e) {
|
||||||
|
callback(e);
|
||||||
|
reject(e);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
_createClass(Client, [{
|
_createClass(Client, [{
|
||||||
key: "users",
|
key: "users",
|
||||||
get: function get() {
|
get: function get() {
|
||||||
|
|||||||
@@ -677,7 +677,11 @@ var InternalClient = (function () {
|
|||||||
return new Promise(function (resolve, reject) {
|
return new Promise(function (resolve, reject) {
|
||||||
channel = self.resolver.resolveChannel(channel)["catch"](reject).then(next);
|
channel = self.resolver.resolveChannel(channel)["catch"](reject).then(next);
|
||||||
function next(channel) {
|
function next(channel) {
|
||||||
var user = self.resolver.resolverUser(role);
|
|
||||||
|
var user;
|
||||||
|
if (role instanceof User) {
|
||||||
|
user = role;
|
||||||
|
}
|
||||||
|
|
||||||
var data = {};
|
var data = {};
|
||||||
data.allow = 0;
|
data.allow = 0;
|
||||||
@@ -697,49 +701,24 @@ var InternalClient = (function () {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (var _iterator3 = updated.allow, _isArray3 = Array.isArray(_iterator3), _i3 = 0, _iterator3 = _isArray3 ? _iterator3 : _iterator3[Symbol.iterator]();;) {
|
for (var perm in updated) {
|
||||||
var _ref3;
|
if (updated[perm]) {
|
||||||
|
if (perm instanceof String || typeof perm === "string") {
|
||||||
if (_isArray3) {
|
data.allow |= Constants.Permissions[perm] || 0;
|
||||||
if (_i3 >= _iterator3.length) break;
|
} else {
|
||||||
_ref3 = _iterator3[_i3++];
|
data.allow |= perm;
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
_i3 = _iterator3.next();
|
if (perm instanceof String || typeof perm === "string") {
|
||||||
if (_i3.done) break;
|
data.deny |= Constants.Permissions[perm] || 0;
|
||||||
_ref3 = _i3.value;
|
} else {
|
||||||
}
|
data.deny |= perm;
|
||||||
|
}
|
||||||
var perm = _ref3;
|
|
||||||
|
|
||||||
if (perm instanceof String || typeof perm === "string") {
|
|
||||||
data.allow |= Constants.Permissions[perm] || 0;
|
|
||||||
} else {
|
|
||||||
data.allow |= perm;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (var _iterator4 = updated.deny, _isArray4 = Array.isArray(_iterator4), _i4 = 0, _iterator4 = _isArray4 ? _iterator4 : _iterator4[Symbol.iterator]();;) {
|
request.put(Endpoints.CHANNEL_PERMISSIONS(channel.id) + "/" + data.id).set("authorization", self.token).send(data).end(function (err) {
|
||||||
var _ref4;
|
console.log(err);
|
||||||
|
|
||||||
if (_isArray4) {
|
|
||||||
if (_i4 >= _iterator4.length) break;
|
|
||||||
_ref4 = _iterator4[_i4++];
|
|
||||||
} else {
|
|
||||||
_i4 = _iterator4.next();
|
|
||||||
if (_i4.done) break;
|
|
||||||
_ref4 = _i4.value;
|
|
||||||
}
|
|
||||||
|
|
||||||
var perm = _ref4;
|
|
||||||
|
|
||||||
if (perm instanceof String || typeof perm === "string") {
|
|
||||||
data.deny |= Constants.Permissions[perm] || 0;
|
|
||||||
} else {
|
|
||||||
data.deny |= perm;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
request.put(Endpoints.CHANNEL_PERMISSIONS(channel) + "/" + data.id).set("authorization", self.token).send(data).end(function (err) {
|
|
||||||
if (err) {
|
if (err) {
|
||||||
reject(err);
|
reject(err);
|
||||||
} else {
|
} else {
|
||||||
@@ -887,19 +866,19 @@ var InternalClient = (function () {
|
|||||||
var server = self.servers.get("id", data.id);
|
var server = self.servers.get("id", data.id);
|
||||||
if (server) {
|
if (server) {
|
||||||
|
|
||||||
for (var _iterator5 = server.channels, _isArray5 = Array.isArray(_iterator5), _i5 = 0, _iterator5 = _isArray5 ? _iterator5 : _iterator5[Symbol.iterator]();;) {
|
for (var _iterator3 = server.channels, _isArray3 = Array.isArray(_iterator3), _i3 = 0, _iterator3 = _isArray3 ? _iterator3 : _iterator3[Symbol.iterator]();;) {
|
||||||
var _ref5;
|
var _ref3;
|
||||||
|
|
||||||
if (_isArray5) {
|
if (_isArray3) {
|
||||||
if (_i5 >= _iterator5.length) break;
|
if (_i3 >= _iterator3.length) break;
|
||||||
_ref5 = _iterator5[_i5++];
|
_ref3 = _iterator3[_i3++];
|
||||||
} else {
|
} else {
|
||||||
_i5 = _iterator5.next();
|
_i3 = _iterator3.next();
|
||||||
if (_i5.done) break;
|
if (_i3.done) break;
|
||||||
_ref5 = _i5.value;
|
_ref3 = _i3.value;
|
||||||
}
|
}
|
||||||
|
|
||||||
var channel = _ref5;
|
var channel = _ref3;
|
||||||
|
|
||||||
self.channels.remove(channel);
|
self.channels.remove(channel);
|
||||||
}
|
}
|
||||||
|
|||||||
15
lib/index.js
15
lib/index.js
@@ -13,17 +13,12 @@ a.on("warn", function (m) {
|
|||||||
});
|
});
|
||||||
var start = Date.now();
|
var start = Date.now();
|
||||||
a.on("message", function (m) {
|
a.on("message", function (m) {
|
||||||
console.log("msgmsgmsg");
|
|
||||||
if (m.content === "$$$") {
|
if (m.content === "$$$") {
|
||||||
a.createServer("pongping", "london").then(function (server) {
|
a.internal.overwritePermissions(m.channel, m.author, {
|
||||||
a.createChannel(server, "pingpong", "text").then(function (channel) {
|
manageRoles: true
|
||||||
a.sendMessage(channel, "$$$").then(function (msg) {
|
})["catch"](error).then(function () {
|
||||||
a.leaveServer(msg.channel.server).then(function () {
|
return console.log("hihihihihi!");
|
||||||
console.log("!!! " + (Date.now() - start));
|
});
|
||||||
});
|
|
||||||
})["catch"](error);
|
|
||||||
})["catch"](error);
|
|
||||||
})["catch"](error);
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
a.on("userTypingStart", function (user, chan) {
|
a.on("userTypingStart", function (user, chan) {
|
||||||
|
|||||||
@@ -423,6 +423,24 @@ class Client extends EventEmitter {
|
|||||||
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// def overwritePermissions
|
||||||
|
overwritePermissions(channel, role, options={}, callback=function(err){}){
|
||||||
|
var self = this;
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
|
||||||
|
self.internal.overwritePermissions(channel, role, options)
|
||||||
|
.then(() => {
|
||||||
|
callback();
|
||||||
|
resolve();
|
||||||
|
})
|
||||||
|
.catch(e => {
|
||||||
|
callback(e);
|
||||||
|
reject(e);
|
||||||
|
})
|
||||||
|
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
module.exports = Client;
|
module.exports = Client;
|
||||||
@@ -721,7 +721,11 @@ class InternalClient {
|
|||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
channel = self.resolver.resolveChannel(channel).catch(reject).then(next);
|
channel = self.resolver.resolveChannel(channel).catch(reject).then(next);
|
||||||
function next(channel){
|
function next(channel){
|
||||||
var user = self.resolver.resolverUser(role);
|
|
||||||
|
var user;
|
||||||
|
if(role instanceof User){
|
||||||
|
user = role;
|
||||||
|
}
|
||||||
|
|
||||||
var data = {};
|
var data = {};
|
||||||
data.allow = 0;
|
data.allow = 0;
|
||||||
@@ -741,27 +745,28 @@ class InternalClient {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
for(var perm of updated.allow){
|
for(var perm in updated){
|
||||||
if(perm instanceof String || typeof perm === "string"){
|
if(updated[perm]){
|
||||||
data.allow |= (Constants.Permissions[perm] || 0);
|
if(perm instanceof String || typeof perm === "string"){
|
||||||
|
data.allow |= (Constants.Permissions[perm] || 0);
|
||||||
|
}else{
|
||||||
|
data.allow |= perm;
|
||||||
|
}
|
||||||
}else{
|
}else{
|
||||||
data.allow |= perm;
|
if(perm instanceof String || typeof perm === "string"){
|
||||||
}
|
data.deny |= (Constants.Permissions[perm] || 0);
|
||||||
}
|
}else{
|
||||||
|
data.deny |= perm;
|
||||||
for(var perm of updated.deny){
|
}
|
||||||
if(perm instanceof String || typeof perm === "string"){
|
|
||||||
data.deny |= (Constants.Permissions[perm] || 0);
|
|
||||||
}else{
|
|
||||||
data.deny |= perm;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
request
|
request
|
||||||
.put(Endpoints.CHANNEL_PERMISSIONS(channel)+"/"+data.id)
|
.put(Endpoints.CHANNEL_PERMISSIONS(channel.id)+"/"+data.id)
|
||||||
.set("authorization", self.token)
|
.set("authorization", self.token)
|
||||||
.send(data)
|
.send(data)
|
||||||
.end(function (err) {
|
.end(function (err) {
|
||||||
|
console.log(err);
|
||||||
if (err) {
|
if (err) {
|
||||||
reject(err);
|
reject(err);
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
20
src/index.js
20
src/index.js
@@ -7,24 +7,10 @@ a.on("debug", (m) => console.log("[debug]",m));
|
|||||||
a.on("warn", (m) => console.log("[warn]", m));
|
a.on("warn", (m) => console.log("[warn]", m));
|
||||||
var start = Date.now();
|
var start = Date.now();
|
||||||
a.on("message", m => {
|
a.on("message", m => {
|
||||||
console.log("msgmsgmsg");
|
|
||||||
if(m.content === "$$$"){
|
if(m.content === "$$$"){
|
||||||
a.createServer("pongping", "london")
|
a.internal.overwritePermissions(m.channel, m.author, {
|
||||||
.then( server => {
|
manageRoles : true
|
||||||
a.createChannel(server, "pingpong", "text")
|
}).catch(error).then(()=>console.log("hihihihihi!"));
|
||||||
.then( channel => {
|
|
||||||
a.sendMessage(channel, "$$$")
|
|
||||||
.then( msg => {
|
|
||||||
a.leaveServer(msg.channel.server)
|
|
||||||
.then(() => {
|
|
||||||
console.log("!!! " + (Date.now() - start));
|
|
||||||
});
|
|
||||||
})
|
|
||||||
.catch(error);
|
|
||||||
})
|
|
||||||
.catch(error);
|
|
||||||
})
|
|
||||||
.catch(error)
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
a.on("userTypingStart", (user, chan) => {
|
a.on("userTypingStart", (user, chan) => {
|
||||||
|
|||||||
Reference in New Issue
Block a user