version 1.151, 2004/07/23 12:29:14
|
version 1.153, 2004/07/30 16:46:04
|
Line 30 from Globals import Persistent, package_
|
Line 30 from Globals import Persistent, package_
|
from Acquisition import Implicit |
from Acquisition import Implicit |
from ECHO_helpers import displayTypes |
from ECHO_helpers import displayTypes |
import urllib |
import urllib |
|
import time |
|
|
try: |
try: |
from psycopg import libpq |
from psycopg import libpq |
Line 46 import xml.dom.minidom
|
Line 47 import xml.dom.minidom
|
from ECHO_graphicalOverview import javaHandler,javaScriptMain |
from ECHO_graphicalOverview import javaHandler,javaScriptMain |
import ECHO_helpers |
import ECHO_helpers |
|
|
|
def ECHO_rerenderLinksMD(self,obj=None,types=['title','label']): |
|
"""Rerender all Links""" |
|
ret="" |
|
|
|
if not obj: |
|
obj = self |
|
|
|
entries=obj.ZopeFind(obj,obj_metatypes=['ECHO_resource'],search_sub=1) |
|
|
|
for entry in entries: |
|
if entry[1].meta_type == 'ECHO_resource': |
|
try: |
|
entry[1].ECHO_getResourceMD(template="no") |
|
if "title" in types: |
|
entry[1].generate_title() |
|
if "label" in types: |
|
entry[1].generate_label() |
|
ret+="OK:"+entry[0]+"-- "+entry[1].getTitle().decode('utf-8')+"-- "+entry[1].getTitle().decode('utf-8')+"<br>" |
|
except: |
|
ret+="Error:"+entry[0]+"<br>" |
|
|
|
|
|
|
|
|
|
return "<html><body>"+ret+"Rerenderd all links to resources in: "+self.title+"</html></body>" |
|
|
|
def reloadMetaDataFromStorage(self,RESPONSE=None): |
|
"""copy metadata from the storage to ECHO""" |
|
ret="" |
|
resources=self.ZopeFind(self,obj_metatypes=['ECHO_resource'],search_sub=1) |
|
|
|
for resource in resources: |
|
x=str(resource[1].copyIndex_meta2echo_resource())+"<br>" |
|
ret+=x |
|
#print x |
|
|
|
|
|
if RESPONSE is not None: |
|
#RESPONSE.redirect('./manage_main') |
|
return "<html><body>"+ret+"</html></body>" |
|
|
|
return ret |
|
|
def getRDFDescription(self,linkURL,urn=None,nameDef=None,typeName=None): |
def getRDFDescription(self,linkURL,urn=None,nameDef=None,typeName=None): |
"""rdf""" |
"""rdf""" |
|
|
Line 1365 class ECHO_resource(Folder,Persistent):
|
Line 1409 class ECHO_resource(Folder,Persistent):
|
self.metaDataHash={} |
self.metaDataHash={} |
if not error=="": #Fehler beim Auslesen des Metafiles |
if not error=="": #Fehler beim Auslesen des Metafiles |
|
|
return "ERROR:",error |
return "ERROR:",error,self.absolute_url() |
|
|
self.contentType=metadict['bib_type'][0:] |
self.contentType=metadict['bib_type'][0:] |
fields=self.findTagsFromMapping(self.contentType) |
fields=self.findTagsFromMapping(self.contentType) |
Line 1802 class ECHO_collection(Folder, Persistent
|
Line 1846 class ECHO_collection(Folder, Persistent
|
def changeViewerTemplateSets(self,project,xslt,thumbtemplate,topbar,digiLibTemplate,RESPONSE=None): |
def changeViewerTemplateSets(self,project,xslt,thumbtemplate,topbar,digiLibTemplate,RESPONSE=None): |
"""change the templates""" |
"""change the templates""" |
|
|
resources=self.ZopeFind(self,obj_metatypes=['ECHO_resource']) |
resources=self.ZopeFind(self,obj_metatypes=['ECHO_resource'],search_sub=1) |
|
|
for resource in resources: |
for resource in resources: |
|
|
Line 1812 class ECHO_collection(Folder, Persistent
|
Line 1856 class ECHO_collection(Folder, Persistent
|
RESPONSE.redirect('manage_main') |
RESPONSE.redirect('manage_main') |
|
|
|
|
|
def setStartpageFolderForm(self): |
|
"""Form for changing the startpage""" |
|
|
|
|
|
pt=PageTemplateFile('Products/ECHO_content/zpt/ChangeECHO_resourceStartPageFolder.zpt').__of__(self) |
|
pt.content_type="text/html" |
|
return pt() |
|
|
|
def setStartpageFolder(self,startpage=None,RESPONSE=None): |
|
"""change the templates""" |
|
|
|
resources=self.ZopeFind(self,obj_metatypes=['ECHO_resource'],search_sub=1) |
|
|
|
for resource in resources: |
|
|
|
resource[1].setStartPage(startpage) |
|
|
|
if RESPONSE is not None: |
|
RESPONSE.redirect('manage_main') |
|
|
|
|
|
|
def copySearchFields(self,RESPONSE=None): |
def copySearchFields(self,RESPONSE=None): |
"""copys import metadatafields to the object""" |
"""copys import metadatafields to the object""" |
resources=self.ZopeFind(self,obj_metatypes=['ECHO_resource']) |
resources=self.ZopeFind(self,obj_metatypes=['ECHO_resource']) |
Line 1823 class ECHO_collection(Folder, Persistent
|
Line 1889 class ECHO_collection(Folder, Persistent
|
if RESPONSE is not None: |
if RESPONSE is not None: |
RESPONSE.redirect('manage_main') |
RESPONSE.redirect('manage_main') |
|
|
|
def reloadMetaDataFromStorageWarning(self,RESPONSE=None): |
|
"""warning""" |
|
pt=PageTemplateFile('Products/ECHO_content/zpt/reloadMetaDataFromStorageWarning.zpt').__of__(self) |
|
pt.content_type="text/html" |
|
return pt() |
|
|
def reloadMetaDataFromStorage(self,RESPONSE=None): |
def reloadMetaDataFromStorage(self,RESPONSE=None): |
"""copy metadata from the storage to ECHO""" |
"""copy metadata from the storage to ECHO""" |
ret="" |
|
resources=self.ZopeFind(self,obj_metatypes=['ECHO_resource']) |
|
|
|
for resource in resources: |
return reloadMetaDataFromStorage(self,RESPONSE=None) |
|
|
ret+=str(resource[1].copyIndex_meta2echo_resource())+"<br>" |
|
|
|
|
|
if RESPONSE is not None: |
|
# RESPONSE.redirect('manage_main') |
|
return ret |
|
|
|
def getPartnerCopyright(self,name,sonst="generic"): |
def getPartnerCopyright(self,name,sonst="generic"): |
"""gibt generisches copyright eines partners aus, sonst behalte jetzige einsteillung""" |
"""gibt generisches copyright eines partners aus, sonst behalte jetzige einsteillung""" |
#print "hi",name,sonst |
#print "hi",name,sonst |
Line 2084 class ECHO_collection(Folder, Persistent
|
Line 2148 class ECHO_collection(Folder, Persistent
|
|
|
security.declarePublic('ECHO_rerenderLinksMD') |
security.declarePublic('ECHO_rerenderLinksMD') |
|
|
def ECHO_rerenderLinksMD(self,obj=None,types=['title','label']): |
|
"""Rerender all Links""" |
|
ret="" |
|
|
|
if not obj: |
|
obj = self |
|
|
|
entries=obj.ZopeFind(obj,obj_metatypes=['ECHO_resource','ECHO_collection']) |
def ECHO_rerenderLinksMDWarning(self): |
|
"""change form""" |
for entry in entries: |
pt=PageTemplateFile('Products/ECHO_content/zpt/rerenderLinksWarning').__of__(self) |
if entry[1].meta_type == 'ECHO_resource': |
pt.content_type="text/html" |
try: |
return pt() |
entry[1].ECHO_getResourceMD(template="no") |
|
if "title" in types: |
|
entry[1].generate_title() |
|
if "label" in types: |
|
entry[1].generate_label() |
|
ret+="OK:"+entry[0]+"-- "+entry[1].getTitle().decode('utf-8')+"-- "+entry[1].getTitle().decode('utf-8')+"<br>" |
|
except: |
|
ret+="Error:"+entry[0]+"<br>" |
|
|
|
else: |
|
self.ECHO_rerenderLinksMD(entry[1]) |
|
|
|
|
|
|
def ECHO_rerenderLinksMD(self,obj=None,types=['title','label']): |
|
"""Rerender all Links""" |
|
return ECHO_rerenderLinksMD(self,obj,types) |
|
|
return ret+"Rerenderd all links to resources in: "+self.title |
|
|
|
security.declarePublic('ECHO_newViewerLink') |
security.declarePublic('ECHO_newViewerLink') |
|
|
Line 2150 class ECHO_collection(Folder, Persistent
|
Line 2200 class ECHO_collection(Folder, Persistent
|
{'label':'Main Config','action':'ECHO_collection_config'}, |
{'label':'Main Config','action':'ECHO_collection_config'}, |
{'label':'Change Labels','action':'changeLabels'}, |
{'label':'Change Labels','action':'changeLabels'}, |
{'label':'Change Titles','action':'changeTitles'}, |
{'label':'Change Titles','action':'changeTitles'}, |
{'label':'Rerender Labels and Titles','action':'ECHO_rerenderLinksMD'}, |
{'label':'Rerender Labels and Titles','action':'ECHO_rerenderLinksMDWarning'}, |
{'label':'Graphics','action':'ECHO_graphicEntry'}, |
{'label':'Graphics','action':'ECHO_graphicEntry'}, |
{'label':'create resources from XML','action':'createRessourcesFromXMLForm'}, |
{'label':'create resources from XML','action':'createRessourcesFromXMLForm'}, |
|
{'label':'Set Startpage','action':'setStartpageFolderForm'}, |
{'label':'Change Viewer Templates','action':'changeViewerTemplateSetsForm'}, |
{'label':'Change Viewer Templates','action':'changeViewerTemplateSetsForm'}, |
{'label':'Reload Metadata','action':'reloadMetaDataFromStorage'}, |
{'label':'Reload Metadata','action':'reloadMetaDataFromStorageWarning'}, |
{'label':'ImportCollection','action':'updateCollection'}, |
{'label':'ImportCollection','action':'updateCollection'}, |
{'label':'Copy MD for indexing and search','action':'copySearchFields'}, |
{'label':'Copy MD for indexing and search','action':'copySearchFields'}, |
) |
) |
Line 2360 class ECHO_group(ECHO_collection):
|
Line 2411 class ECHO_group(ECHO_collection):
|
|
|
manage_options = Folder.manage_options+( |
manage_options = Folder.manage_options+( |
{'label':'Main Config','action':'ECHO_group_config'}, |
{'label':'Main Config','action':'ECHO_group_config'}, |
{'label':'Rerender Links','action':'ECHO_rerenderLinksMD'}, |
{'label':'Rerender Links','action':'ECHO_rerenderLinksMDWarning'}, |
{'label':'Graphics','action':'ECHO_graphicEntry'}, |
{'label':'Graphics','action':'ECHO_graphicEntry'}, |
) |
) |
|
|
Line 2613 class ECHO_root(Folder,Persistent,Implic
|
Line 2664 class ECHO_root(Folder,Persistent,Implic
|
|
|
meta_type="ECHO_root" |
meta_type="ECHO_root" |
|
|
|
|
|
manage_options=Folder.manage_options+( |
|
{'label':'Main Config','action':'ECHO_copyright_configForm'}, |
|
{'label':'Reload Metadata','action':'reloadMetaDataFromStorageWarning'}, |
|
) |
|
|
|
|
def showRDF(self): |
def showRDF(self): |
"""showrdf""" |
"""showrdf""" |
self.REQUEST.RESPONSE.setHeader('Content-Type','text/xml') |
self.REQUEST.RESPONSE.setHeader('Content-Type','text/xml') |
Line 2622 class ECHO_root(Folder,Persistent,Implic
|
Line 2680 class ECHO_root(Folder,Persistent,Implic
|
ret+="""</RDF:RDF>""" |
ret+="""</RDF:RDF>""" |
return ret |
return ret |
|
|
|
|
|
def reloadMetaDataFromStorageWarning(self,RESPONSE=None): |
|
"""warning""" |
|
pt=PageTemplateFile('Products/ECHO_content/zpt/reloadMetaDataFromStorageWarning.zpt').__of__(self) |
|
pt.content_type="text/html" |
|
return pt() |
|
|
|
def reloadMetaDataFromStorage(self,RESPONSE=None): |
|
"""reload MD from Storage""" |
|
|
|
return reloadMetaDataFromStorage(self,RESPONSE) |
|
|
def getRDF(self,urn=None): |
def getRDF(self,urn=None): |
"""rdf of the collection""" |
"""rdf of the collection""" |
|
|
Line 2765 class ECHO_root(Folder,Persistent,Implic
|
Line 2835 class ECHO_root(Folder,Persistent,Implic
|
retStr+="""<option value="%s">%s\n"""%(copyrightType[0],copyrightType[0]) |
retStr+="""<option value="%s">%s\n"""%(copyrightType[0],copyrightType[0]) |
|
|
for copyrightTypeSelf in self.ZopeFind(object,obj_metatypes=["ECHO_copyrightType"],search_sub=1): |
for copyrightTypeSelf in self.ZopeFind(object,obj_metatypes=["ECHO_copyrightType"],search_sub=1): |
|
if selected and (copyrightTypeSelf[0]==selected): |
|
retStr+="""<option selected value="%s">%s\n"""%(copyrightTypeSelf[0],copyrightTypeSelf[0]) |
|
else: |
retStr+="""<option value="%s">%s\n"""%(copyrightTypeSelf[0],copyrightTypeSelf[0]) |
retStr+="""<option value="%s">%s\n"""%(copyrightTypeSelf[0],copyrightTypeSelf[0]) |
|
|
except: |
except: |
Line 3108 class ECHO_root(Folder,Persistent,Implic
|
Line 3181 class ECHO_root(Folder,Persistent,Implic
|
if filter and not re.search(filter,viewer_url): |
if filter and not re.search(filter,viewer_url): |
continue |
continue |
|
|
ret+="""\n<resource resourceLink="%s" metaLink="%s"/>"""%(urllib.quote(echo_url,safe='/:?'),urllib.quote(meta_url,safe='/:?')) |
#modificationDate=time.strptime(str(resource[1].bobobase_modification_time()),"%Y/%m/%d %H:%M:%S %Z") |
|
|
|
modificationDate=resource[1].bobobase_modification_time().strftime("%Y/%m/%d %H:%M:%S") |
|
|
|
ret+="""\n<resource resourceLink="%s" metaLink="%s" modificationDate="%s"/>"""%(urllib.quote(echo_url,safe='/:?'),urllib.quote(meta_url,safe='/:?'),modificationDate) |
|
|
|
|
ret +="""\n</index>""" |
ret +="""\n</index>""" |
|
|