File tree Expand file tree Collapse file tree 1 file changed +12
-2
lines changed Expand file tree Collapse file tree 1 file changed +12
-2
lines changed Original file line number Diff line number Diff line change 2
2
import datetime
3
3
import hashlib
4
4
import logging
5
+ import os
5
6
import re
6
7
import traceback
8
+
7
9
import werkzeug
8
10
import werkzeug .routing
9
11
12
14
from openerp .addons .base .ir import ir_qweb
13
15
from openerp .addons .website .models .website import slug , url_for , _UNSLUG_RE
14
16
from openerp .http import request
17
+ from openerp .tools import config
15
18
from openerp .osv import orm
16
19
17
20
logger = logging .getLogger (__name__ )
@@ -54,12 +57,19 @@ def _dispatch(self):
54
57
55
58
request .website_multilang = request .website_enabled and func and func .routing .get ('multilang' , True )
56
59
57
- if not request .session . has_key ( 'geoip' ) :
60
+ if 'geoip' not in request .session :
58
61
record = {}
59
62
if self .geo_ip_resolver is None :
60
63
try :
61
64
import GeoIP
62
- self .geo_ip_resolver = GeoIP .open ('/usr/share/GeoIP/GeoIP.dat' , GeoIP .GEOIP_STANDARD )
65
+ # updated database can be downloaded on MaxMind website
66
+ # http://dev.maxmind.com/geoip/legacy/install/city/
67
+ geofile = config .get ('geoip_database' , '/usr/share/GeoIP/GeoLiteCity.dat' )
68
+ if os .path .exists (geofile ):
69
+ self .geo_ip_resolver = GeoIP .open (geofile , GeoIP .GEOIP_STANDARD )
70
+ else :
71
+ self .geo_ip_resolver = False
72
+ logger .warning ('GeoIP database file %r does not exists' , geofile )
63
73
except ImportError :
64
74
self .geo_ip_resolver = False
65
75
if self .geo_ip_resolver and request .httprequest .remote_addr :
You can’t perform that action at this time.
0 commit comments