Documentation ¶
Index ¶
- Constants
- Variables
- type AndModifier
- type CacophonyBotPermission
- func (p *CacophonyBotPermission) Give(db *gorm.DB, userID string) error
- func (p *CacophonyBotPermission) Match(state interfaces.State, db *gorm.DB, userID string, channelID string, dm bool, ...) bool
- func (p *CacophonyBotPermission) Name() string
- func (p *CacophonyBotPermission) Remove(db *gorm.DB, userID string) error
- type Discord
- type DiscordDM
- type DiscordRole
- type NotModifier
- type OrModifier
Constants ¶
View Source
const ( // DiscordCacophonyServerGuildID is the Guild ID of the Cacophony Guild DiscordCacophonyServerGuildID = "435420687906111498" // DiscordCacophonyPatronRoleID is the Role ID of the Patron role on the Cacophony Guild DiscordCacophonyPatronRoleID = "578650002361155626" )
Variables ¶
View Source
var ( // BotAdmin has Manage_Server permissions on the Bot Server BotAdmin = newCacophonyBotAdmin( DiscordCacophonyServerGuildID, ) // Patron has the Patron Role on the Bot Server Patron = newCacophonyPatron( DiscordCacophonyServerGuildID, DiscordCacophonyPatronRoleID, ) // CacoFileStorage has ability to use commands that store files CacoFileStorage = newCacophonyDefaultPermission( "CacoFileStorage", "cacophony:permission:storage", ) )
View Source
var ( DiscordReadMessages = NewDiscordPermission( "Read Messages", discordgo.PermissionViewChannel, ) DiscordSendMessages = NewDiscordPermission( "Send Messages", discordgo.PermissionSendMessages, ) DiscordSendTTSMessages = NewDiscordPermission( "Send TTS Messages", discordgo.PermissionSendTTSMessages, ) DiscordManageMessages = NewDiscordPermission( "Manage Messages", discordgo.PermissionManageMessages, ) DiscordEmbedLinks = NewDiscordPermission( "Embed Links", discordgo.PermissionEmbedLinks, ) DiscordAttachFiles = NewDiscordPermission( "Attach Files", discordgo.PermissionAttachFiles, ) DiscordReadMessageHistory = NewDiscordPermission( "Read Message History", discordgo.PermissionReadMessageHistory, ) DiscordMentionEveryone = NewDiscordPermission( "Mention Everyone", discordgo.PermissionMentionEveryone, ) DiscordUseExternalEmojis = NewDiscordPermission( "Use External Emojis", discordgo.PermissionUseExternalEmojis, ) DiscordVoiceConnect = NewDiscordPermission( "Voice Connect", discordgo.PermissionVoiceConnect, ) DiscordVoiceSpeak = NewDiscordPermission( "Voice Speak", discordgo.PermissionVoiceSpeak, ) DiscordVoiceMuteMembers = NewDiscordPermission( "Voice Mute Members", discordgo.PermissionVoiceMuteMembers, ) DiscordVoiceDeafenMembers = NewDiscordPermission( "Voice Deafen Members", discordgo.PermissionVoiceDeafenMembers, ) DiscordVoiceMoveMembers = NewDiscordPermission( "Voice Move Members", discordgo.PermissionVoiceMoveMembers, ) DiscordVoiceUseVAD = NewDiscordPermission( "Voice Use VAD", discordgo.PermissionVoiceUseVAD, ) DiscordChangeNickname = NewDiscordPermission( "Change Nickname", discordgo.PermissionChangeNickname, ) DiscordManageNicknames = NewDiscordPermission( "Manage Nicknames", discordgo.PermissionManageNicknames, ) DiscordManageRoles = NewDiscordPermission( "Manage Roles", discordgo.PermissionManageRoles, ) DiscordManageWebhooks = NewDiscordPermission( "Manage Webhooks", discordgo.PermissionManageWebhooks, ) DiscordManageEmojis = NewDiscordPermission( "Manage Emojis", discordgo.PermissionManageEmojis, ) DiscordCreateInstantInvite = NewDiscordPermission( "Create Instant Invite", discordgo.PermissionCreateInstantInvite, ) DiscordKickMembers = NewDiscordPermission( "Kick Members", discordgo.PermissionKickMembers, ) DiscordBanMembers = NewDiscordPermission( "Ban Members", discordgo.PermissionBanMembers, ) DiscordAdministrator = NewDiscordPermission( "Administrator", discordgo.PermissionAdministrator, ) DiscordManageChannels = NewDiscordPermission( "Manage Channels", discordgo.PermissionManageChannels, ) DiscordManageServer = NewDiscordPermission( "Manage Server", discordgo.PermissionManageServer, ) DiscordAddReactions = NewDiscordPermission( "Add Reactions", discordgo.PermissionAddReactions, ) DiscordViewAuditLogs = NewDiscordPermission( "View Audit Logs", discordgo.PermissionViewAuditLogs, ) )
View Source
var (
DiscordChannelDM = newDiscordDM()
)
Functions ¶
This section is empty.
Types ¶
type AndModifier ¶
type AndModifier struct {
// contains filtered or unexported fields
}
func And ¶
func And( firstPermission interfaces.Permission, secondPermission interfaces.Permission, additionalPermissions ...interfaces.Permission, ) *AndModifier
func (*AndModifier) Match ¶
func (p *AndModifier) Match(state interfaces.State, db *gorm.DB, userID string, channelID string, dm bool, superUser bool) bool
func (*AndModifier) Name ¶
func (p *AndModifier) Name() string
type CacophonyBotPermission ¶
type CacophonyBotPermission struct {
// contains filtered or unexported fields
}
func (*CacophonyBotPermission) Give ¶
func (p *CacophonyBotPermission) Give(db *gorm.DB, userID string) error
func (*CacophonyBotPermission) Match ¶
func (p *CacophonyBotPermission) Match(state interfaces.State, db *gorm.DB, userID string, channelID string, dm bool, superUser bool) bool
func (*CacophonyBotPermission) Name ¶
func (p *CacophonyBotPermission) Name() string
type Discord ¶
type Discord struct {
// contains filtered or unexported fields
}
func NewDiscordPermission ¶
type DiscordRole ¶
type DiscordRole struct {
// contains filtered or unexported fields
}
func NewDiscordRole ¶
func NewDiscordRole(state interfaces.State, guildID, roleID string) *DiscordRole
func (*DiscordRole) Match ¶
func (p *DiscordRole) Match( state interfaces.State, db *gorm.DB, userID string, channelID string, dm bool, superUser bool, ) bool
func (*DiscordRole) Name ¶
func (p *DiscordRole) Name() string
type NotModifier ¶
type NotModifier struct {
// contains filtered or unexported fields
}
func Not ¶
func Not(permission interfaces.Permission) *NotModifier
func (*NotModifier) Match ¶
func (p *NotModifier) Match( state interfaces.State, db *gorm.DB, userID string, channelID string, dm bool, superUser bool, ) bool
func (*NotModifier) Name ¶
func (p *NotModifier) Name() string
type OrModifier ¶
type OrModifier struct {
// contains filtered or unexported fields
}
func Or ¶
func Or( firstPermission interfaces.Permission, secondPermission interfaces.Permission, additionalPermissions ...interfaces.Permission, ) *OrModifier
func (*OrModifier) Match ¶
func (p *OrModifier) Match( state interfaces.State, db *gorm.DB, userID string, channelID string, dm bool, superUser bool, ) bool
func (*OrModifier) Name ¶
func (p *OrModifier) Name() string
Click to show internal directories.
Click to hide internal directories.