More docs

This commit is contained in:
hydrabolt
2015-10-27 21:20:29 +00:00
parent d21372e0f6
commit 6b18f42728
4 changed files with 94 additions and 3 deletions

80
docs/docs_permissions.rst Normal file
View File

@@ -0,0 +1,80 @@
.. include:: ./vars.rst
Permissions Documentation
=========================
The Permissions Class represents data of permissions/roles.
ServerPermissions
-----------------
ServerPermissions are also known as roles. They give the general gist of permissions of all users in a Server.
name
~~~~
`String` that is the name of the role.
color
~~~~~
`Number` that is the color of role, use Discord.Color to resolve (see source code under refs/colors.js)
hoist
~~~~~
`Boolean`, whether the role should be a separate category in the users list.
managed
~~~~~~~
`Boolean`, whether the permission is managed by Discord. Currently only used by Twitch integration.
position
~~~~~~~~
`Number`, the position of the role that states its importance.
id
~~
`Number`, the ID of the role.
server
~~~~~~
Server_ that the role belongs to.
Actual Permissions:
~~~~~~~~~~~~~~~~~~~
`Actual Permissions` is not an attribute, however the following permissions are attributes of ServerPermissions. They are self-explanatory.
.. code-block:: js
{
createInstantInvite,
manageRoles, // if this is true all the others are true
manageChannels,
readMessages,
sendMessages,
sendTTSMessages,
manageMessages, // deleting, editing etc
embedLinks,
attachFiles,
readMessageHistory,
mentionEveryone,
voiceConnect,
voiceSpeak,
voiceMuteMembers,
voiceDeafenMembers,
voiceMoveMembers,
voiceUseVoiceActivation
}
serialize()
~~~~~~~~~~~
**Aliases** : *serialise()*
To get a valid `Object` of the actual permissions of the object, just do `serverPermissions.serialise()` to get an object with the above mentioned permissions

View File

@@ -8,4 +8,7 @@
.. _Invite : ./docs_invite.html
.. _Channel Resolvable : ./docs_resolvable.html#channel-resolvable
.. _Invite Resolvable : ./docs_resolvable.html#invite-resolvable
.. _Promises : https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Promise
.. _Promises : https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Promise
.. _ServerPermissions : ./docs_permissions.html#ServerPermissions
.. _ChannelPermissions : ./docs_permissions.html#ChannelPermissions
.. _EvaluatedPermissions : ./docs_permissions.html#EvaluatedPermissions

View File

@@ -41,11 +41,15 @@ var ServerPermissions = (function () {
voiceSpeak: this.voiceSpeak,
voiceMuteMembers: this.voiceMuteMembers,
voiceDeafenMembers: this.voiceDeafenMembers,
voiceMoveMember: this.voiceMoveMembers,
voiceMoveMembers: this.voiceMoveMembers,
voiceUseVoiceActivation: this.voiceUseVoiceActivation
};
};
ServerPermissions.prototype.serialize = function serialize() {
return this.serialise();
};
ServerPermissions.prototype.getBit = function getBit(x) {
if ((this.packed >>> 3 & 1) === 1) {
return true;

View File

@@ -35,10 +35,14 @@ class ServerPermissions {
voiceSpeak: this.voiceSpeak,
voiceMuteMembers: this.voiceMuteMembers,
voiceDeafenMembers: this.voiceDeafenMembers,
voiceMoveMember: this.voiceMoveMembers,
voiceMoveMembers: this.voiceMoveMembers,
voiceUseVoiceActivation: this.voiceUseVoiceActivation
}
}
serialize(){
return this.serialise();
}
get createInstantInvite() { return this.getBit(0); }
set createInstantInvite(val) { this.setBit(0, val); }