Пример #1
0
def blizzard_get_token_and_save():
    """
    Gets token and saves
    :return:
    """
    token = blizzard_get_token()
    db = blizzard_db()
    DataStore.set(db, "token", value=token['access_token'])
    DataStore.set(db, "token_created", value=str(time.time()).split('.')[0])
Пример #2
0
def blizzard_support_get_token():
    """
    Returns the token
    :return:
    """
    if blizzard_support_is_token_expired():
        blizzard_get_token_and_save()
    return DataStore.get(blizzard_db(), "token").value
Пример #3
0
def blizzard_support_is_token_expired():
    """
    Returns true, if token expired
    :return:
    """
    try:
        created = int(DataStore.get(blizzard_db(), "token_created").value)
    except Exception:
        created = 0
    return (time.time() - created) > 60 * 60
Пример #4
0
    def update_info():
        """
        Updates the main guild info
        :return:
        """
        db = blizzard_db()
        data = blizzard_guild_info()

        logger.info(f"Guild identifier: {data['id']}")
        DataStore.set(db, "gid", data["id"])

        logger.info(f"Guild name: {data['name']}")
        DataStore.set(db, "guild_name", data["name"])

        logger.info(f"Guild achievement points: {data['achievement_points']}")
        DataStore.set(db, "achievement_points", data["achievement_points"])

        logger.info(f"Guild faction: {data['faction']['name']}")
        DataStore.set(db, "faction_name", data['faction']['name'])
        DataStore.set(db, "faction_type", data['faction']['type'])

        logger.info(f"Guild created timestamp: {data['created_timestamp']}")
        DataStore.set(db, "created_timestamp", data['created_timestamp'])

        logger.info(f"Guild players: {data['member_count']}")
        DataStore.set(db, "players", data['member_count'])

        logger.info(f"Guild crest: {data['crest']['emblem']['id']}")
        crest_url = f'https://render-eu.worldofwarcraft.com/guild/tabards/emblem_{data["crest"]["emblem"]["id"]}.png'
        background_color = data["crest"]["background"]["color"]["rgba"]
        background_color = f"{background_color['r']}, {background_color['g']}, {background_color['b']}, {background_color['a']}"
        DataStore.set(db, "crest_emblem_url", crest_url)
        DataStore.set(db, "crest_background_color", background_color)
Пример #5
0
def guild_get_info(param: str, db=Depends(get_db)):
    return DataStore.get(db, field=param)
Пример #6
0
def guild_get_info_object(db=Depends(get_db)):
    o = {}
    for it in DataStore.list(db):
        if it.field != 'token':
            o[it.field] = it.value
    return o
Пример #7
0
def guild_get_info(db=Depends(get_db)):
    return list(filter(lambda x: x.field != 'token', DataStore.list(db)))
Пример #8
0
def api_data_remove(field: str, db=Depends(get_db)):
    return DataStore.remove(db, field=field)
Пример #9
0
def api_data_get(field: str, db=Depends(get_db)):
    return DataStore.get(db, field=field)
Пример #10
0
def api_data_set(field: str, body: _DataValueBody, db=Depends(get_db)):
    return DataStore.set(db, field=field, value=body.value)
Пример #11
0
def api_data_list(db=Depends(get_db)):
    return DataStore.list(db)