comparison documentViewer.py @ 425:fd8bef319208

browserCheck
author abukhman
date Wed, 12 Jan 2011 15:10:45 +0100
parents 6646227c281e
children 70db19d7b3b1
comparison
equal deleted inserted replaced
424:6646227c281e 425:fd8bef319208
56 bt = {} 56 bt = {}
57 ua = self.REQUEST.get_header("HTTP_USER_AGENT") 57 ua = self.REQUEST.get_header("HTTP_USER_AGENT")
58 bt['ua'] = ua 58 bt['ua'] = ua
59 bt['isIE'] = False 59 bt['isIE'] = False
60 bt['isN4'] = False 60 bt['isN4'] = False
61 bt['versFirefox']=""
62 bt['versIE']=""
63 bt['versSafariChrome']=""
64 bt['versOpera']=""
65
61 if string.find(ua, 'MSIE') > -1: 66 if string.find(ua, 'MSIE') > -1:
62 bt['isIE'] = True 67 bt['isIE'] = True
63 else: 68 else:
64 bt['isN4'] = (string.find(ua, 'Mozilla/4.') > -1) 69 bt['isN4'] = (string.find(ua, 'Mozilla/4.') > -1)
65 70 # Safari oder Chrome identification
71 try:
72 nav = ua[string.find(ua, '('):]
73 nav1=ua[string.find(ua,')'):]
74 nav2=nav1[string.find(nav1,'('):]
75 nav3=nav2[string.find(nav2,')'):]
76 ie = string.split(nav, "; ")[1]
77 ie1 =string.split(nav1, " ")[2]
78 ie2 =string.split(nav3, " ")[1]
79 ie3 =string.split(nav3, " ")[2]
80 if string.find(ie3, "Safari") >-1:
81 bt['versSafariChrome']=string.split(ie2, "/")[1]
82 except: pass
83 # IE identification
66 try: 84 try:
67 nav = ua[string.find(ua, '('):] 85 nav = ua[string.find(ua, '('):]
68 ie = string.split(nav, "; ")[1] 86 ie = string.split(nav, "; ")[1]
69 if string.find(ie, "MSIE") > -1: 87 if string.find(ie, "MSIE") > -1:
70 bt['versIE'] = string.split(ie, " ")[1] 88 bt['versIE'] = string.split(ie, " ")[1]
71 except: pass 89 except:pass
90 # Firefox identification
91 try:
92 nav = ua[string.find(ua, '('):]
93 nav1=ua[string.find(ua,')'):]
94 if string.find(ie1, "Firefox") >-1:
95 nav5= string.split(ie1, "/")[1]
96 logging.debug("FIREFOX: %s"%(nav5))
97 bt['versFirefox']=string.split(nav5, ".")[1]
98 except:pass
99 #Opera identification
100 try:
101 if string.find(ua,"Opera") >-1:
102 nav = ua[string.find(ua, '('):]
103 nav1=nav[string.find(nav,')'):]
104 bt['versOpera']=string.split(nav1,"/")[2]
105 except:pass
72 106
73 bt['isMac'] = string.find(ua, 'Macintosh') > -1 107 bt['isMac'] = string.find(ua, 'Macintosh') > -1
74 bt['isWin'] = string.find(ua, 'Windows') > -1 108 bt['isWin'] = string.find(ua, 'Windows') > -1
75 bt['isIEWin'] = bt['isIE'] and bt['isWin'] 109 bt['isIEWin'] = bt['isIE'] and bt['isWin']
76 bt['isIEMac'] = bt['isIE'] and bt['isMac'] 110 bt['isIEMac'] = bt['isIE'] and bt['isMac']