--- ECHO_content/ECHO_Nav.py 2012/09/03 14:14:27 1.84.2.4 +++ ECHO_content/ECHO_Nav.py 2012/01/03 13:02:31 1.85 @@ -1,6 +1,4 @@ # Objekte zur Erzeugung von Navigationselement -# 29-8-2012 Referenzen zum Storagemanager entfernt - from AccessControl import ClassSecurityInfo from Globals import DTMLFile from OFS.Image import Image,cookId @@ -31,7 +29,6 @@ from Products.PageTemplates.ZopePageTemp import os.path import urllib -import ECHO_helpers from ECHO_helpers import displayTypes,checkOnlyOneInGroup,unicodify from ECHO_collection import content_html import logging @@ -41,7 +38,7 @@ def logger(txt,method,txt2): """logging""" logging.info(txt+ txt2) - +STORAGEMANAGER_URL_DEFAULT = "http://storage-web.mpiwg-berlin.mpg.de/storage/storeOnline?path=" try: from Products.ZSQLExtend.ZSQLExtend import ZSQLExtendFolder except: @@ -53,7 +50,9 @@ class ECHO_ZCatalogElement(SimpleItem): """Erzeuge navigation aus ZCatalog-abfrage""" meta_type="ECHO_ZCatalogElement" baseUrl="" - + + + def __init__(self,id,title,field,catalogId,baseUrl,weight,contentType): """init""" self.id=id @@ -90,7 +89,7 @@ class ECHO_ZCatalogElement(SimpleItem): def changeECHO_ZCatalogElementForm(self): """change""" - pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','ChangeECHO_ZCatalogElement.zpt')).__of__(self) + pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','changeECHO_ZCatalogElement.zpt')).__of__(self) return pt() def changeECHO_ZCatalogElement(self,title,field,catalogId,baseUrl,weight,contentType,RESPONSE=None): @@ -384,14 +383,7 @@ class ECHO_pageTemplate(ZopePageTemplate else: return 0 - def getCrumb(self): - """returns breadcrumb for this object""" - return ECHO_helpers.getCrumb(self) - - def getHierCrumbs(self): - """returns a list of hierarchical breadcrumbs from self to the ECHO_root""" - return ECHO_helpers.getHierCrumbs(self); - + ## def __init__(self, id, text=None, contentType=None): @@ -455,6 +447,16 @@ class ECHO_navigation(Folder): meta_type="ECHO_Navigation" management_page_charset="utf-8" + + def getFullTextBasisUrl(self): + #return die Basis url auf fulltexte, z.B. + #Beispiel http://mpdl-text.mpiwg-berlin.mpg.de/mpdl/getDoc?doc=/archimedes/la/achil_propo_087_la_1545.xml + return getattr(self, "fullTextBasisUrl","http://mpdl-text.mpiwg-berlin.mpg.de/mpdl/getDoc?doc=%s") + + def getStandardMD(self): + #return self.standardMD_old + return self.metadata.main.meta.bib + def getUsername(self): """get name of user""" username=str(self.REQUEST['AUTHENTICATED_USER']) @@ -566,7 +568,11 @@ class ECHO_navigation(Folder): displayableMetaTypes=displayTypes - + def getImageViewers(self): + """images""" + viewers=self.ZopeFind(self.standardImageViewer,obj_metatypes=['OSAS_ViewerObject']) + return viewers + def getR(self): """re""" return self.REQUEST @@ -585,20 +591,21 @@ class ECHO_navigation(Folder): ) displayedMetaTypes=displayTypes - - + def getStorageManagerURL(self): + """returns the URL to the storagemanager""" + return getattr(self,"storageManagerURL",STORAGEMANAGER_URL_DEFAULT) def ECHO_navigationConfigForm(self): """configForm""" pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','ChangeECHO_navigation.zpt')).__of__(self) return pt() - def ECHO_navigationConfig(self,title,pathToHierarchy,displayedMetaTypes=displayTypes,RESPONSE=None): + def ECHO_navigationConfig(self,title,pathToHierarchy,fullTextBasisUrl="",storageManagerURL="",displayedMetaTypes=displayTypes,RESPONSE=None): """config""" self.title=title self.pathToHierarchy=pathToHierarchy self.displayedMetaTypes=toList(displayedMetaTypes)[0:] - - + self.storageManagerURL=storageManagerURL + self.fullTextBasisUrl=fullTextBasisUrl if RESPONSE is not None: RESPONSE.redirect('manage_main') @@ -804,25 +811,8 @@ class ECHO_navigation(Folder): return style + 'sel' else: return style - - - def getCrumb(self): - """returns breadcrumb for this object""" - # ignore this object if title is empty - if not self.title: - return None - # we use title for the label TODO: add label to ECHO_root - crumb = {'obj': self, - 'url': self.absolute_url(), - 'label': self.title} - return crumb - - def getHierCrumbs(self): - """returns a list of hierarchical breadcrumbs from self to the ECHO_root""" - return ECHO_helpers.getHierCrumbs(self) - - + def buttonsFromHash(self,hash,start=None,orientation="horizontal"): """Generate Buttons"""