version 1.37, 2004/07/23 15:28:21
|
version 1.43, 2004/08/25 16:31:28
|
Line 14 import urllib
|
Line 14 import urllib
|
import types |
import types |
from Globals import package_home |
from Globals import package_home |
|
|
ZOGIVERSION = "0.9.7 ROC:21.7.2004" |
ZOGIVERSION = "0.9.8 ROC:27.7.2004" |
|
|
def cropf(f): |
def cropf(f): |
"""returns a float with reduced precision""" |
"""returns a float with reduced precision""" |
Line 454 class zogiLib(Folder):
|
Line 454 class zogiLib(Folder):
|
except: |
except: |
return ret |
return ret |
|
|
def formatHTML(self,url,label=None,viewUrl=None): |
|
|
|
|
def formatHTML(self,url,label=None,viewUrl=None): |
|
|
sets=xml.dom.minidom.parse(urllib.urlopen(url)).getElementsByTagName('dataset') |
sets=xml.dom.minidom.parse(urllib.urlopen(url)).getElementsByTagName('dataset') |
ret="" |
ret="" |
Line 475 class zogiLib(Folder):
|
Line 475 class zogiLib(Folder):
|
ret+="</table>" |
ret+="</table>" |
return ret |
return ret |
|
|
|
|
def getMetaData(self): |
def getMetaData(self): |
"""getMetaData""" |
"""getMetaData""" |
try: |
try: |
Line 521 class zogiLib(Folder):
|
Line 522 class zogiLib(Folder):
|
return self.formatHTML(link+'fn=%s&pn=%s&object=%s'%(fn,pn,ob),label,url) |
return self.formatHTML(link+'fn=%s&pn=%s&object=%s'%(fn,pn,ob),label,url) |
return ret |
return ret |
|
|
|
|
def getDLInfo(self): |
def getDLInfo(self): |
"""get DLInfo from digilib server""" |
"""get DLInfo from digilib server""" |
paramH={} |
paramH={} |
baseUrl=self.dlServerURL+"/dlInfo-xml.jsp" |
baseUrl=self.dlServerURL+"/dlInfo-xml.jsp" |
try: |
try: |
url=urllib.urlopen(baseUrl+self.REQUEST['QUERY_STRING']) |
url=urllib.urlopen(baseUrl+'?'+self.REQUEST['QUERY_STRING']) |
dom=xml.dom.minidom.parse(url) |
dom=xml.dom.minidom.parse(url) |
params=dom.getElementsByTagName('parameter') |
params=dom.getElementsByTagName('parameter') |
for param in params: |
for param in params: |
Line 757 class zogiLib(Folder):
|
Line 759 class zogiLib(Folder):
|
else: |
else: |
modes=[] |
modes=[] |
|
|
self.REQUEST.SESSION['query'] = dlParams |
self.REQUEST.SESSION['ZogiLibQuery'] = dlParams |
self.REQUEST.SESSION['dlModes'] = modes |
self.REQUEST.SESSION['dlModes'] = modes |
self.REQUEST.SESSION['dlInfo'] = self.getDLInfo() |
self.REQUEST.SESSION['dlInfo'] = self.getDLInfo() |
if not self.REQUEST.SESSION.has_key('browserType'): |
if not self.REQUEST.SESSION.has_key('browserType'): |
Line 767 class zogiLib(Folder):
|
Line 769 class zogiLib(Folder):
|
|
|
def checkQuery(self): |
def checkQuery(self): |
"""check if the query has been stored""" |
"""check if the query has been stored""" |
if not (self.REQUEST.SESSION and self.REQUEST.SESSION.has_key('query')) : |
if not (self.REQUEST.SESSION and self.REQUEST.SESSION.has_key('ZogiLibQuery')) : |
print "ZOGILIB: have to store query!!" |
print "ZOGILIB: have to store query!!" |
self.storeQuery() |
self.storeQuery() |
return |
return |
Line 790 class zogiLib(Folder):
|
Line 792 class zogiLib(Folder):
|
def getDLParam(self, param): |
def getDLParam(self, param): |
"""returns parameter""" |
"""returns parameter""" |
try: |
try: |
return self.REQUEST.SESSION['query'][param] |
return self.REQUEST.SESSION['ZogiLibQuery'][param] |
except: |
except: |
return |
return |
|
|
def setDLParam(self, param, value): |
def setDLParam(self, param, value): |
"""sets parameter""" |
"""sets parameter""" |
self.REQUEST.SESSION['query'][param] = value |
self.REQUEST.SESSION['ZogiLibQuery'][param] = value |
return |
return |
|
|
def getAllDLParams(self): |
def getAllDLParams(self): |
"""parameter string for digilib""" |
"""parameter string for digilib""" |
dlParams = self.REQUEST.SESSION['query'] |
dlParams = self.REQUEST.SESSION['ZogiLibQuery'] |
# save modes |
# save modes |
modes = self.REQUEST.SESSION['dlModes'] |
modes = self.REQUEST.SESSION['dlModes'] |
dlParams['mo'] = string.join(modes, ',') |
dlParams['mo'] = string.join(modes, ',') |
Line 1157 def manage_addZogiLibForm(self):
|
Line 1159 def manage_addZogiLibForm(self):
|
pt=PageTemplateFile(os.path.join(package_home(globals()), 'zpt/addZogiLibForm')).__of__(self) |
pt=PageTemplateFile(os.path.join(package_home(globals()), 'zpt/addZogiLibForm')).__of__(self) |
return pt() |
return pt() |
|
|
def manage_addZogiLib(self,id,title,dlServerURL,layout="book",basePath="",dlTarget="digilib",dlToolbarBaseURL=None,RESPONSE=None): |
def manage_addZogiLib(self,id,title,dlServerURL,version="book",basePath="",dlTarget="digilib",dlToolbarBaseURL=None,RESPONSE=None): |
"""add dgilib""" |
"""add dgilib""" |
newObj=zogiLib(id,title,dlServerURL, localFileBase, version, basePath, dlTarget, dlToolbarBaseURL) |
newObj=zogiLib(id,title,dlServerURL, version, basePath, dlTarget, dlToolbarBaseURL) |
self.Destination()._setObject(id,newObj) |
self.Destination()._setObject(id,newObj) |
if RESPONSE is not None: |
if RESPONSE is not None: |
RESPONSE.redirect('manage_main') |
RESPONSE.redirect('manage_main') |