# HG changeset patch # User abukhman # Date 1288356825 -7200 # Node ID 580db757e0eb4f356dced5ad48b5ec9881b0eeee # Parent 48d27e100d19212a2a1a4aef17c8f2a70fdbb9fc *** empty log message *** diff -r 48d27e100d19 -r 580db757e0eb documentViewer.py --- a/documentViewer.py Thu Oct 28 17:44:20 2010 +0200 +++ b/documentViewer.py Fri Oct 29 14:53:45 2010 +0200 @@ -51,15 +51,32 @@ buf.close() return s -def getBrowserType(self): - """get browser type object""" - if self.REQUEST.SESSION.has_key('browserType'): - return self.REQUEST.SESSION['browserType'] - else: - bt = browserCheck(self) - self.REQUEST.SESSION.set('browserType', bt) - logging.debug("documentViewer (BROWSER TYPE) bt %s"%bt) - return bt +def browserCheck(self): + """check the browsers request to find out the browser type""" + bt = {} + ua = self.REQUEST.get_header("HTTP_USER_AGENT") + bt['ua'] = ua + bt['isIE'] = False + bt['isN4'] = False + if string.find(ua, 'MSIE') > -1: + bt['isIE'] = True + else: + bt['isN4'] = (string.find(ua, 'Mozilla/4.') > -1) + + try: + nav = ua[string.find(ua, '('):] + ie = string.split(nav, "; ")[1] + if string.find(ie, "MSIE") > -1: + bt['versIE'] = string.split(ie, " ")[1] + except: pass + + bt['isMac'] = string.find(ua, 'Macintosh') > -1 + bt['isWin'] = string.find(ua, 'Windows') > -1 + bt['isIEWin'] = bt['isIE'] and bt['isWin'] + bt['isIEMac'] = bt['isIE'] and bt['isMac'] + bt['staticHTML'] = False + + return bt def getParentDir(path): @@ -309,7 +326,12 @@ ret+="mk=%s"%m return ret - + def getBrowser(self): + """getBrowser the version of browser """ + bt = browserCheck(self) + logging.debug("XXXXXXXXXXXXXXXX: %s"%bt) + return bt + def findDigilibUrl(self): """try to get the digilib URL from zogilib""" url = self.template.zogilib.getDLBaseUrl()