--- zogiLib/zogiLib.py 2005/06/09 06:46:12 1.57 +++ zogiLib/zogiLib.py 2005/10/11 20:06:05 1.58 @@ -30,18 +30,18 @@ def sendFile(self, filename, type): # look for an object called filename for path in paths: if hasattr(object, path): - object = getattr(object, path) - else: - object = None - break + object = getattr(object, path) + else: + object = None + break if object: - # if the object exists then send it - return object.index_html(self.REQUEST.REQUEST, self.REQUEST.RESPONSE) + # if the object exists then send it + return object.index_html(self.REQUEST.REQUEST, self.REQUEST.RESPONSE) else: - # send a local file with the given content-type - fn = os.path.join(package_home(globals()), filename) - self.REQUEST.RESPONSE.setHeader("Content-Type", type) - self.REQUEST.RESPONSE.write(file(fn).read()) + # send a local file with the given content-type + fn = os.path.join(package_home(globals()), filename) + self.REQUEST.RESPONSE.setHeader("Content-Type", type) + self.REQUEST.RESPONSE.write(file(fn).read()) return def browserCheck(self): @@ -314,8 +314,8 @@ class zogiLib(Folder): def createHeadJS(self): """generate all javascript tags for head""" - self.checkQuery() - bt = self.REQUEST.SESSION.get('browserType', {}) + self.checkQuery() + bt = self.REQUEST.SESSION.get('browserType', {}) if bt['staticHTML']: return @@ -324,19 +324,37 @@ class zogiLib(Folder): def createParamJS(self): """generate javascript for parameters only""" - self.checkQuery() - bt = self.REQUEST.SESSION['browserType'] + self.checkQuery() + bt = self.REQUEST.SESSION['browserType'] if bt['staticHTML']: return pt=PageTemplateFile(os.path.join(package_home(globals()), 'zpt/zogilib_param_js')).__of__(self) return pt() - + + def getScalerUrl(self,requestString=None): + """send scaler url""" + if requestString: + return self.dlServerURL+'/servlet/Scaler?'+requestString + else: + return self.dlServerURL+'/servlet/Scaler?' + + def scaledImage(self,requestString=None): + """scaled Image""" + + if not requestString: + requestString=self.REQUEST['QUERY_STRING'] + + self.REQUEST.RESPONSE.redirect(self.getScalerUrl(requestString)) + + return True + + def createScalerImg(self, requestString=None, bottom=0, side=0, width=500, height=500): """generate Scaler IMG Tag""" - self.checkQuery() - bt = self.REQUEST.SESSION['browserType'] + self.checkQuery() + bt = self.REQUEST.SESSION['browserType'] # override with parameters from session if self.REQUEST.SESSION.has_key('scalerDiv'): (requestString, bottom, side, width, height) = self.REQUEST.SESSION['scalerDiv'] @@ -372,7 +390,7 @@ class zogiLib(Folder): def createScalerDiv(self, requestString = None, bottom = 0, side = 0, width=500, height=500): """generate scaler img and table with navigation arrows""" - self.checkQuery() + self.checkQuery() if requestString != None or bottom != 0 or side != 0: self.REQUEST.SESSION['scalerDiv'] = (requestString, bottom, side, width, height) else: @@ -385,8 +403,8 @@ class zogiLib(Folder): def createAuxDiv(self): """generate other divs""" - self.checkQuery() - bt = self.REQUEST.SESSION['browserType'] + self.checkQuery() + bt = self.REQUEST.SESSION['browserType'] if bt['staticHTML']: return if bt['isN4']: @@ -411,15 +429,15 @@ class zogiLib(Folder): def optionwindow(self): """showoptions""" - self.checkQuery() - bt = self.REQUEST.SESSION['browserType'] + self.checkQuery() + bt = self.REQUEST.SESSION['browserType'] if bt['staticHTML']: pt=PageTemplateFile(os.path.join(package_home(globals()), 'zpt/optionwindow_static.zpt')).__of__(self) else: tp = "viewingTools.zpt" if hasattr(self, tp): pt = getattr(self, tp) - else: + else: pt=PageTemplateFile(os.path.join(package_home(globals()), 'zpt/optionwindow.zpt')).__of__(self) return pt() @@ -492,12 +510,12 @@ class zogiLib(Folder): def index_html(self): """main action""" - self.checkQuery() - bt = self.REQUEST.SESSION['browserType'] + self.checkQuery() + bt = self.REQUEST.SESSION['browserType'] tp = "zogiLibMainTemplate" if hasattr(self, tp): - pt = getattr(self, tp) + pt = getattr(self, tp) else: tpt = self.layout @@ -541,10 +559,10 @@ class zogiLib(Folder): return def checkQuery(self): - """check if the query has been stored""" - if not (self.REQUEST.SESSION and self.getSubSession('dlQuery')) : - print "ZOGILIB: have to store query!!" - self.storeQuery() + """check if the query has been stored""" + if not (self.REQUEST.SESSION and self.getSubSession('dlQuery')) : + print "ZOGILIB: have to store query!!" + self.storeQuery() return def zogilibPath(self, otherbase=None): @@ -679,13 +697,13 @@ class zogiLib(Folder): def setStaticHTML(self, static=True): """sets the preference to static HTML""" self.checkQuery() - self.REQUEST.SESSION['browserType']['staticHTML'] = static + self.REQUEST.SESSION['browserType']['staticHTML'] = static return def isStaticHTML(self): """returns if the page is using static HTML only""" self.checkQuery() - return self.REQUEST.SESSION['browserType']['staticHTML'] + return self.REQUEST.SESSION['browserType']['staticHTML'] def getPT(self): """pagenums"""