log.debug('Member {} on server {} can show announcement {}.'.format(member.name, server.name, announcement.id))
return announcement
- if command in ['edit', 'delete', 'schedule']:
+ if command in ['asap', 'edit', 'delete', 'schedule']:
if announcement is not None:
if announcement.member_id == author.id:
log.debug('Anyone can manage own announcements.')
if member.top_role > announcer.top_role:
log.debug('Member {} with role {} on server {} can edit announcements from lower role.'.format(member.name, member.top_role.name, server.name))
return announcement
- elif member.top_role == announcer.top_role:
+ elif command == 'asap' or member.top_role == announcer.top_role:
if member.top_role == member.server.me.top_role:
log.debug('Member {} with role {} on server {} can edit announcements.'.format(member.name, member.top_role.name, server.name))
return announcement
await cat.yelp(message.channel)
async def schedule_announcement(self, message, id, **args):
- announcement = await self.can_manage_announcements(message.author, message.channel, 'schedule', id = id)
+ announcement = await self.can_manage_announcements(message.author, message.channel, 'schedule' if 'pause' in args else 'asap', id = id)
if not announcement:
return