]> jfr.im git - irc/rizon/acid.git/blob - pyva/pyva/src/main/python/esim/api/citizen.py
Split pyva plugin into pyva.core and pyva.pyva
[irc/rizon/acid.git] / pyva / pyva / src / main / python / esim / api / citizen.py
1 import feed
2 import utils
3 from feed import get_json, HtmlFeed
4 from datetime import datetime
5 from decimal import Decimal
6 from urllib import quote
7
8 def from_name(name, secura=False):
9 if isinstance(name, unicode):
10 name = name.encode('utf-8')
11 # Another "easy" way around. To be changed.
12 server = 'secura' if secura else 'primera'
13 return Citizen(feed.get_json('http://%s.e-sim.org/apiCitizenByName.html?name=%s' % (server, quote(name))))
14
15 def from_id(id, secura=False):
16 # Another "easy" way around. To be changed.
17 server = 'secura' if secura else 'primera'
18 return Citizen(feed.get_json('http://%s.e-sim.org/apiCitizenById.html?id=%d' % (server, int(id))))
19
20 class Citizen:
21 def __init__(self, data):
22 if 'error' in data:
23 raise feed.FeedError(data['error'])
24
25 self.id = data['id']
26 self.name = data['login']
27 self.exp = data['xp']
28 self.level = data['level']
29 self.strength = data['strength']
30 self.rank = utils.get_rank(data['rank'])
31 self.economySkill = data['economySkill']
32 self.dmgToday = data['damageToday']
33 self.dmgTotal = data['totalDamage']
34 self.citizenship = data['citizenship']
35 self.is_organization = data['organization']