..
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37 | import re
class OldBrowserMiddleware:
def __init__(self, get_response):
self.get_response = get_response
def __call__(self, request):
user_agent = request.META.get('HTTP_USER_AGENT', '').lower()
old_browser = False
onclick = True
browser_patterns = [
'msie [1-8]',
'firefox/[1-3]\.',
'chrome/[1-9]\.',
'safari/[1-5]\.',
'opera/[1-9]\.',
'classilla'
]
onclick_patterns = [
'msie [1-8]',
'classilla'
]
for pattern in browser_patterns:
if re.search(pattern, user_agent):
old_browser = True
break
for pattern in onclick_patterns:
if re.search(pattern, user_agent):
onclick = False
break
request.old_browser = old_browser
request.onclick = onclick
response = self.get_response(request)
return response
|
|