コード例 #1
0
def cmd_me(ctx):

    bot = ctx.bot
    args = ctx.args
    author = ctx.author
    config = ctx.config

    ctx.alt = bot.options.parse_alt(args)
    selected_players, error = bot.options.parse_players(ctx, args)
    if error:
        return error

    if args:
        return bot.errors.unknown_parameters(args)

    lines = []
    for player in selected_players:

        author_str = 'Ally code of **<@%s>**' % player.discord_id
        ally_code_full_str = '%s is **`%s`**.' % (
            author_str, Player.format_ally_code(player.ally_code))
        lines.append(ally_code_full_str)
        lines.append('')

        language = Player.get_language_info(player.language)
        lines.append('Your language is set to **%s** %s.' %
                     (language[3], language[2]))
        lines.append('Please type **`%slanguage`** to change your language.' %
                     config['prefix'])
        lines.append('')

        timezone = player.timezone or 'Europe/London'
        lines.append('Your timezone is set to **%s**.' % timezone)
        lines.append('Please type **`%stimezone`** to change your timezone.' %
                     config['prefix'])
        lines.append('')

    lines_str = '\n'.join(lines)
    return [{
        'title': '',
        'description': 'Hello <@%s>,\n\n%s\n' % (author.id, lines_str),
    }]
コード例 #2
0
async def register_users(ctx, discord_ids, ally_codes):

	alt = ctx.alt
	bot = ctx.bot
	args = ctx.args
	author = ctx.author
	config = ctx.config

	if len(discord_ids) != len(ally_codes):
		return bot.errors.register_mismatch(ctx, discord_ids, ally_codes)

	lang = bot.options.parse_lang(ctx, args)
	language = Player.get_language_info(lang)

	players = await bot.client.players(ally_codes=ally_codes)
	if not players:
		return bot.errors.invalid_ally_codes(ally_codes)

	players = { x['allyCode']: x for x in players }

	lines = []
	for discord_id, ally_code in zip(discord_ids, ally_codes):

		jplayer = players[ally_code]

		db_player, created = Player.objects.get_or_create(discord_id=discord_id, alt=alt)

		author_str = 'Ally code of **<@%s>**' % discord_id
		ally_code_str = Player.format_ally_code(ally_code)
		ally_code_full_str = '%s is **`%s`**.' % (author_str, ally_code_str)
		if db_player.ally_code and db_player.ally_code != ally_code:
			ally_code_full_str = '%s has changed from **`%s`** to **`%s`**.' % (author_str, db_player.get_ally_code(), ally_code_str)
		db_player.ally_code   = ally_code
		db_player.timezone    = 'Europe/London'
		db_player.player_id   = jplayer['id']
		db_player.player_name = jplayer['name']
		await fill_user_info(config, bot, db_player)

		db_player.save()

		registered_str = 'Player **%s** already registered!' % db_player.player_name
		if created:
			registered_str = 'Registration successful for **%s**!' % db_player.player_name

		lines.append(registered_str)
		lines.append(ally_code_full_str)
		lines.append('')

		#language = Player.get_language_info(db_player.language)
		#lines.append('Your language is set to **%s** %s.' % (language[3], language[2]))
		#lines.append('Please type **`%slanguage`** to change your language.' % config['prefix'])
		#lines.append('')

		#timezone = db_player.timezone or 'Europe/London'
		#lines.append('Your timezone is set to **%s**.' % timezone)
		#lines.append('Please type **`%stimezone`** to change your timezone.' % config['prefix'])
		#lines.append('')

	lines_str = '\n'.join(lines)

	return [{
		'title': 'Register',
		'description': 'Hello <@%s>,\n\n%s' % (author.id, lines_str),
	}]
コード例 #3
0
async def register_users(request, discord_ids, ally_codes):

    author = request.author
    config = request.config

    if len(discord_ids) != len(ally_codes):
        return error_register_mismatch(config, author, discord_ids, ally_codes)

    lang = parse_opts_lang(request)
    language = Player.get_language_info(lang)

    players = await fetch_players(config, {
        'allycodes': ally_codes,
        'project': {
            'name': 1,
            'allyCode': 1,
        },
    })

    lines = []
    for discord_id, ally_code in zip(discord_ids, ally_codes):

        db_player, created = Player.objects.get_or_create(
            discord_id=discord_id)

        author_str = 'Ally code of **<@%s>**' % discord_id
        ally_code_str = Player.format_ally_code(ally_code)
        ally_code_full_str = '%s is **`%s`**.' % (author_str, ally_code_str)
        if db_player.ally_code and db_player.ally_code != ally_code:
            ally_code_full_str = '%s has changed from **`%s`** to **`%s`**.' % (
                author_str, db_player.get_ally_code(), ally_code_str)
        db_player.ally_code = ally_code
        db_player.game_nick = players[ally_code]['name']
        db_player.timezone = 'Europe/London'
        await fill_user_info(config, db_player)

        db_player.save()

        registered_str = 'Player **%s** already registered!' % db_player.game_nick
        if created:
            registered_str = 'Registration successful for **%s**!' % db_player.game_nick

        lines.append(registered_str)
        lines.append(ally_code_full_str)
        lines.append('')

        #language = Player.get_language_info(db_player.language)
        #lines.append('Your language is set to **%s** %s.' % (language[3], language[2]))
        #lines.append('Please type **`%slanguage`** to change your language.' % config['prefix'])
        #lines.append('')

        #timezone = db_player.timezone or 'Europe/London'
        #lines.append('Your timezone is set to **%s**.' % timezone)
        #lines.append('Please type **`%stimezone`** to change your timezone.' % config['prefix'])
        #lines.append('')

    lines_str = '\n'.join(lines)

    return [{
        'title': 'Register',
        'description': 'Hello <@%s>,\n\n%s' % (author.id, lines_str),
    }]