]> git.ipfire.org Git - ipfire.org.git/blob - src/web/location.py
Use Python's internal asyncio stuff instead of Tornado's
[ipfire.org.git] / src / web / location.py
1
2 #!/usr/bin/python
3
4 import logging
5 import tornado.web
6
7 from . import base
8
9 class IndexHandler(base.BaseHandler):
10 def get(self):
11 self.render("location/index.html")
12
13
14 class LookupHandler(base.BaseHandler):
15 async def get(self, address):
16 peer = self.geoip.get_all(address)
17 if peer:
18 peer["country_name"] = self.geoip.get_country_name(peer.country)
19
20 # Lookup address
21 address = self.geoip.lookup(address)
22
23 # Lookup blacklists
24 is_blacklisted = await address.is_blacklisted()
25
26 self.render("location/lookup.html",
27 address=address, is_blacklisted=is_blacklisted, peer=peer)
28
29
30 class BlacklistsHandler(base.BaseHandler):
31 async def get(self, address):
32 peer = self.geoip.get_all(address)
33
34 # Lookup address
35 address = self.geoip.lookup(address)
36
37 # Lookup blacklists
38 blacklists = await address.get_blacklists()
39
40 self.render("location/blacklists.html",
41 address=address, blacklists=blacklists)