Ejemplo n.º 1
0
    def get(self):
        print('=' * 20)
        characters = []
        token = request.args.get('code')
        cli = None
        try:  # refresh page, just relogin instead of storing tokens between sessions (bad)
            cli = api.ESIClient(token)
        except APIException:
            return make_response(redirect('/api/v1/login'))

        data = cli.get_info()
        cID = data['CharacterID']
        cName = data['CharacterName']
        enc_data = urlencode({
            'n': cName,
            'cid': cID,
            'rtok': cli.token['refresh_token']
        })  # need a quick way to access other route

        html = '<!DOCTYPE html>'
        html += '<html>'
        html += '<head>'
        html += '<title>API key info</title>'
        html += '<link rel="stylesheet" type="text/css" href="/static/style.css" />'
        html += '</head>'
        html += '<body>'
        html += '<a href=/api/v1/skillcheck/{0}>skillcheck</a>'.format(
            enc_data)
        html += '<br><br>'
        html += '<a href=/api/v1/login><img src=https://web.ccpgamescdn.com/eveonlineassets/developers/eve-sso-login-black-small.png /></a>'
        html += '<br><br>'
        html += 're-login to see other toons on account'
        html += '</body>'
        html += '</html>'

        sdb = StaticDB()

        charsheet = api.get_skills(cli, cID)

        skills = {}
        for skill in charsheet['skills']:
            skill_id = int(skill['skill_id'])
            skill_level = int(skill['trained_skill_level'])
            skill_name = sdb.skill_name(skill_id)
            skill_group = sdb.skill_group(skill_id)
            if skill_group not in skills:
                skills[skill_group] = []
            skills[skill_group].append((skill_name, skill_id, skill_level))

        html += '<h2>{0}</h2>'.format(cName)
        for group in sorted(skills.keys()):
            html += '<h3>{0}</h3>'.format(group)
            html += '<table class="skills">'
            for skill in sorted(skills[group]):
                skill_name, skill_id, skill_level = skill
                html += '<tr>'
                html += '<td>' if skill_level < 5 else '<td class="l5skill">'
                html += '<a class="igblink" onclick="CCPEVE.showInfo({0})">{1}</a></td>'.format(
                    skill_id, skill_name)  # rip igb o7
                html += '<td><img src="/static/gfx/level{0}.png" alt="Level {1}" /></td>'.format(
                    skill_level, skill_level)
                html += '</tr>'
            html += '</table>'

        html += '</body>'
        html += '</html>'
        return html
Ejemplo n.º 2
0
print('<title>API key info</title>')
print('<link rel="stylesheet" type="text/css" href="style.css" />')
print('</head>')
print('<body>')

sdb = StaticDB()
for character in characters:
    char_id, char_name = character
    api_args['characterID'] = char_id
    charsheet = api.query('/char/CharacterSheet', api_args)
    skills = {}
    for skill in charsheet.xpath("result/rowset[@name='skills']/row"):
        skill_id = int(skill.attrib['typeID'])
        skill_level = int(skill.attrib['level'])
        skill_name = sdb.skill_name(skill_id)
        skill_group = sdb.skill_group(skill_id)
        if skill_group not in skills:
            skills[skill_group] = []
        skills[skill_group].append((skill_name, skill_id, skill_level))

    print('<h2>%s</h2>' % char_name)
    for group in sorted(skills.keys()):
        print('<h3>%s</h3>' % group)
        print('<table class="skills">')
        for skill in sorted(skills[group]):
            skill_name, skill_id, skill_level = skill
            print('<tr>')
            print('<td>' if skill_level < 5 else '<td class="l5skill">')
            print('<a class="igblink" onclick="CCPEVE.showInfo(%s)">%s</a>'
                  '</td>' % (skill_id, skill_name))
            print('<td><img src="gfx/level%s.png" alt="Level %s" /></td>' %
Ejemplo n.º 3
0
print('<title>API key info</title>')
print('<link rel="stylesheet" type="text/css" href="style.css" />')
print('</head>')
print('<body>')

sdb = StaticDB()
for character in characters:
    char_id, char_name = character
    api_args['characterID'] = char_id
    charsheet = api.query('/char/CharacterSheet', api_args)
    skills = {}
    for skill in charsheet.xpath("result/rowset[@name='skills']/row"):
        skill_id = int(skill.attrib['typeID'])
        skill_level = int(skill.attrib['level'])
        skill_name = sdb.skill_name(skill_id)
        skill_group = sdb.skill_group(skill_id)
        if skill_group not in skills:
            skills[skill_group] = []
        skills[skill_group].append((skill_name, skill_id, skill_level))

    print('<h2>%s</h2>' % char_name)
    for group in sorted(skills.keys()):
        print('<h3>%s</h3>' % group)
        print('<table class="skills">')
        for skill in sorted(skills[group]):
            skill_name, skill_id, skill_level = skill
            print('<tr>')
            print('<td>' if skill_level < 5 else '<td class="l5skill">')
            print('<a class="igblink" onclick="CCPEVE.showInfo(%s)">%s</a>'
                  '</td>' % (skill_id, skill_name))
            print('<td><img src="gfx/level%s.png" alt="Level %s" /></td>'