--- documentViewer/documentViewer.py 2009/03/06 15:36:38 1.38 +++ documentViewer/documentViewer.py 2010/02/12 14:33:02 1.41 @@ -213,6 +213,7 @@ class documentViewer(Folder): ps = "&".join(["%s=%s"%(k,urllib.quote(v)) for (k, v) in params.items()]) url=self.REQUEST['URL1']+"?"+ps return url + def getInfo_xml(self,url,mode): """returns info about the document as XML""" @@ -384,7 +385,8 @@ class documentViewer(Folder): for x in range(cut): path=getParentDir(path) dom = self.getIndexMeta(path) - + + logging.debug("documentViewer (getbibinfofromindexmeta cutted) path: %s"%(path)) # put in all raw bib fields as dict "bib" bib = dom.xpath("//bib/*") if bib and len(bib)>0: @@ -499,13 +501,24 @@ class documentViewer(Folder): docinfo['textURL'] = textUrl + textUrls=dom.xpath("//texttool/text-url-path") + if textUrls and (len(textUrls)>0): + textUrl=getTextFromNode(textUrls[0]) + + docinfo['textURLPath'] = textUrl + presentationUrls=dom.xpath("//texttool/presentation") docinfo = self.getBibinfoFromIndexMeta(url,docinfo=docinfo,dom=dom) # get info von bib tag if presentationUrls and (len(presentationUrls)>0): # ueberschreibe diese durch presentation informationen # presentation url ergiebt sich ersetzen von index.meta in der url der fuer die Metadaten # durch den relativen Pfad auf die presentation infos - presentationUrl=url.replace('index.meta',getTextFromNode(presentationUrls[0])) + presentationPath = getTextFromNode(presentationUrls[0]) + if url.endswith("index.meta"): + presentationUrl=url.replace('index.meta',presentationPath) + else: + presentationUrl=url + "/" + presentationPath + docinfo = self.getBibinfoFromTextToolPresentation(presentationUrl,docinfo=docinfo,dom=dom) docinfo = self.getAuthinfoFromIndexMeta(url,docinfo=docinfo,dom=dom) # get access info @@ -539,14 +552,16 @@ class documentViewer(Folder): docinfo['imagePath'] = path docinfo=self.getDirinfoFromDigilib(path,docinfo=docinfo,cut=cut) + pathorig=path for x in range(cut): path=getParentDir(path) logging.error("PATH:"+path) imageUrl=self.digilibBaseUrl+"/servlet/Scaler?fn="+path docinfo['imageURL'] = imageUrl - docinfo = self.getBibinfoFromIndexMeta(path,docinfo=docinfo,cut=cut) - docinfo = self.getAuthinfoFromIndexMeta(path,docinfo=docinfo,cut=cut) + #path ist the path to the images it assumes that the index.meta file is one level higher. + docinfo = self.getBibinfoFromIndexMeta(pathorig,docinfo=docinfo,cut=cut+1) + docinfo = self.getAuthinfoFromIndexMeta(pathorig,docinfo=docinfo,cut=cut+1) return docinfo