--- zogiLib/zogiLib.py 2004/04/21 08:59:14 1.8 +++ zogiLib/zogiLib.py 2004/05/18 17:54:34 1.17 @@ -1,3 +1,4 @@ + from Products.PageTemplates.PageTemplateFile import PageTemplateFile from Products.PageTemplates.PageTemplate import PageTemplate from Products.PageTemplates.ZopePageTemplate import ZopePageTemplate @@ -19,7 +20,27 @@ def getString(self,key,default=''): except: return default - +def sendFile(self, filename, type): + """sends an object or a local file (in the product) as response""" + paths = filename.split('/') + object = self + # look for an object called filename + for path in paths: + if hasattr(object, path): + object = getattr(object, path) + else: + object = None + break + if object: + # send the object + object() + 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()) + return + class zogiLib_navTemplate(ZopePageTemplate): """pageTemplate Objekt""" meta_type="zogiLib_navTemplate" @@ -502,7 +523,7 @@ class zogiLib(Folder): def getPageNumTotal(self): """pagenums""" - return self.getDlInfo()['pt'] + return self.getDlInfo()['pt'].encode('utf-8') def generateImageFolder(self): @@ -529,7 +550,7 @@ class zogiLib(Folder): self.localFileBase=localFileBase #self._setObject('topTemplate',zogiLib_navTemplate(id='topTemplate')) self._setObject('mainTemplate',zogiLib_mainTemplate(id='mainTemplate',version=version)) - self.generateImageFolder() + #self.generateImageFolder() manage_options = Folder.manage_options+( @@ -538,7 +559,9 @@ class zogiLib(Folder): def option_js(self): """option_js""" - ret="""function setDLParam(e) { + ret=""" + function setDLParam(e) { + var s; if (document.all) { s=e.srcElement; } else { @@ -548,8 +571,8 @@ class zogiLib(Folder): window.opener.setParameter(s.name, s.value); window.opener.display(9); } else { - document.setParameter(s.name, s.value); - document.display(9); + setParameter(s.name, s.value); + display(9); } }""" return ret @@ -557,8 +580,11 @@ class zogiLib(Folder): def navigation_js(self): """Javascript""" - fileName=os.path.join(package_home(globals()),'js/navigation.js') - return file(fileName).read() + fileName = os.path.join(package_home(globals()),'js/js_lib.js') + js = file(fileName).read() + fileName = os.path.join(package_home(globals()),'js/dl_lib.js') + js += file(fileName).read() + return js @@ -586,6 +612,7 @@ class zogiLib(Folder): newParameter('ddpiy', '', 9); var picsize = new Size(100, 100); document.id='digilib'; + """ return ret @@ -593,11 +620,74 @@ class zogiLib(Folder): def generateScalerImg(self,requestString): """generate Scaler IMG Tag""" retStr=self.digilibBaseUrl+requestString - jS=""""""%retStr return jS + + def mark1(self): + """mark image""" + sendFile(self, 'images/mark1.gif', 'image/gif') + return + + def mark2(self): + """mark image""" + sendFile(self, 'images/mark2.gif', 'image/gif') + return + + def mark3(self): + """mark image""" + sendFile(self, 'images/mark3.gif', 'image/gif') + return + + def mark4(self): + """mark image""" + sendFile(self, 'images/mark4.gif', 'image/gif') + return + + def mark5(self): + """mark image""" + sendFile(self, 'images/mark5.gif', 'image/gif') + return + + def mark6(self): + """mark image""" + sendFile(self, 'images/mark6.gif', 'image/gif') + return + + def mark7(self): + """mark image""" + sendFile(self, 'images/mark7.gif', 'image/gif') + return + + def mark8(self): + """mark image""" + sendFile(self, 'images/mark8.gif', 'image/gif') + return + + def corner1(self): + """mark image""" + sendFile(self, 'images/olinks.gif', 'image/gif') + return + + def corner2(self): + """mark image""" + sendFile(self, 'images/orechts.gif', 'image/gif') + return file(fileName).read() + + def corner3(self): + """mark image""" + sendFile(self, 'images/ulinks.gif', 'image/gif') + return file(fileName).read() + + def corner4(self): + """mark image""" + sendFile(self, 'images/urechts.gif', 'image/gif') + return file(fileName).read() + + + def changeZogiLibForm(self): """Main configuration""" pt=PageTemplateFile('Products/zogiLib/zpt/changeZogiLibForm.zpt').__of__(self) @@ -630,7 +720,6 @@ class zogiLib(Folder): def index_html(self): """main action""" - #pt=PageTemplateFile('Products/zogiLib/zpt/zogiLibMain_image.zpt').__of__(self) #return pt() return self.mainTemplate() @@ -677,7 +766,7 @@ class zogiLib(Folder): ws=self.getParam('ws') if ws: if int(ws)==1: - return + return 1 else: return int(ws)-1 else: