Skip to content

Instantly share code, notes, and snippets.

def permission_required(*perms, **options):
def decorator(method):
def wrapper(self, *args, **kwargs):
for perm in perms:
perm = perm.split('.')
assert self.perms[perm[0]][perm[1]], \
options.get('message', 'You have attempted to perform an action that you do not have permission to perform.')
method(self, *args, **kwargs)
class Forums(Module):
can_moderate_forums = Permission('Can moderate forums')
can_start_threads = Permission('Can start new threads', groups=['root_user', 'guild_guest', 'guild_member'])
can_reply_to_threads = Permission('Can reply to threads', groups=['root_user', 'guild_guest', 'guild_member'])
can_delete_own_posts = Permission('Can delete own posts')
can_edit_own_posts = Permission('Can edit own posts', groups=['root_user', 'guild_guest', 'guild_member'])
can_create_polls = Permission('Can create polls', groups=['root_user', 'guild_guest', 'guild_member'])
can_vote_in_polls = Permission('Can vote in polls', groups=['root_user', 'guild_guest', 'guild_member'])
can_rate_posts = Permission('Can rate posts', groups=['root_user', 'guild_guest', 'guild_member'])
{
'abyss': {
'points': {
'week': 50422,
'total': 52785,
'day': 13140
},
'kills': {
'week': 98,
'total': 4490,
{
'stats': {
'displayid': 34960,
'reqlevel': 80,
'slotbak': 28,
'reqarenartng': 1700
},
'level': u '270',
'subclass': u '7',
'id': u '51478',
{
'stats': {
'slotbak': 12,
'spi': 90,
'reqlevel': 80,
'displayid': 56181,
'sellprice': 107343,
'avgbuyout': 8450112
},
'level': u '200',