2018-07-24 22:47:57 +02:00
import logging
from typing import List
from pluralkit . bot import utils
from pluralkit . bot . commands import *
logger = logging . getLogger ( " pluralkit.commands " )
2018-07-27 07:29:10 +02:00
@command ( cmd = " mod log " , usage = " [channel] " , description = " Sets the bot to log events to a specified channel. Leave blank to disable. " , category = " Moderation commands " , system_required = False )
2018-07-24 22:47:57 +02:00
async def set_log ( ctx : CommandContext , args : List [ str ] ) :
if not ctx . message . author . server_permissions . administrator :
raise CommandError ( " You must be a server administrator to use this command. " )
server = ctx . message . server
if len ( args ) == 0 :
channel_id = None
else :
channel = utils . parse_channel_mention ( args [ 0 ] , server = server )
if not channel :
raise CommandError ( " Channel not found. " )
channel_id = channel . id
await db . update_server ( ctx . conn , server . id , logging_channel_id = channel_id )
return " Updated logging channel. " if channel_id else " Cleared logging channel. "