Ejemplo n.º 1
0
def add_global_admin(user_id):
    from rowboat.redis import rdb
    from rowboat.models.user import User
    init_db(ENV)
    rdb.sadd('global_admins', user_id)
    User.update(admin=True).where(User.user_id == user_id).execute()
    print 'Ok, added {} as a global admin'.format(user_id)
Ejemplo n.º 2
0
def rmv_global_admin(user_id):
    from rowboat.redis import rdb
    from rowboat.models.user import User
    init_db(ENV)
    rdb.srem('global_admins', user_id)
    User.update(admin=False).where(User.user_id == user_id).execute()
    print 'Ok, removed {} as a global admin'.format(user_id)
Ejemplo n.º 3
0
    def on_presence_update(self, event):
        updates = {}

        if event.user.avatar != UNSET:
            updates['avatar'] = event.user.avatar

        if event.user.username != UNSET:
            updates['username'] = event.user.username

        if event.user.discriminator != UNSET:
            updates['discriminator'] = int(event.user.discriminator)

        if not updates:
            return

        User.update(**updates).where((User.user_id == event.user.id)).execute()
Ejemplo n.º 4
0
    def on_presence_update(self, event):
        updates = {}

        if event.user.avatar is not None:
            updates['avatar'] = event.user.avatar

        if event.user.username is not None:
            updates['username'] = event.user.username

        if event.user.discriminator is not None:
            updates['discriminator'] = event.user.discriminator

        if event.user.bot:
            return

        if not updates:
            return

        User.update(**updates).where((User.user_id == event.user.id)).execute()
Ejemplo n.º 5
0
    def update_users(self):
        already_updated = set()

        while True:
            # Only update so many at a time
            if len(already_updated) > 10000:
                return

            try:
                user_id, data = self.user_updates.get_nowait()
            except Empty:
                return

            if user_id in already_updated:
                continue

            already_updated.add(user_id)

            try:
                User.update(**data).where(User.user_id == user_id).execute()
            except:
                self.log.exception('Failed to update user %s: ', user_id)