Example #1
0
def authorize_user():
    # get authorization
    OAuth_code = request.args.get("code")
    access_info = ANTENNA.connect_to_reddit(OAuth_code)

    # establish player in DB
    username = ANTENNA.account_info.name
    memory.handle_player_memory(g.db, username, accessInfo=dumps(access_info))
    LOG.info("Received OAuth for {}".format(username))

    # handle session info
    if memory.get_attrib_of_player(g.db, username, "usertype") == -1:
        return redirect("/")
    session["usertype"] = memory.get_attrib_of_player(g.db, username, "usertype")
    session["username"] = username
    session["logged_in"] = True
    session["side"] = memory.get_attrib_of_player(g.db, username, "side")
    return redirect("/")
Example #2
0
def authorize_bot():
    """
    Allow me to authorize a bot
    """

    # make sure no one else can do it
    if session["usertype"] != 2:
        return redirect("/")
    bot_name = request.args.get("bot_name")
    bot_side = int(request.args.get("bot_side"))
    LOG.debug("Attempting to authorize {} bot for side {}".format(bot_name, bot_side))
    if len(memory.get_players_with(g.db, side=bot_side, usertype=-1)) > 0:
        LOG.warning("{} is already registered with side {}!".format(bot_name, bot_side))
        LOG.warning(
            "List returned by memory: {}".format(memory.get_players_with(g.db, side=bot_side, usertype=-1).__str__())
        )
        return redirect("/")
    memory.handle_player_memory(g.db, bot_name, side=bot_side, usertype=-1)
    LOG.info("Authorized {} bot for side {}".format(bot_name, bot_side))
    return redirect(ANTENNA.get_OAuth_URL("bot"))