version 1.206, 2005/01/23 16:45:01
|
version 1.222, 2005/04/13 15:13:19
|
Line 64 import xml.dom.minidom
|
Line 64 import xml.dom.minidom
|
import ECHO_helpers |
import ECHO_helpers |
from ECHO_helpers import * |
from ECHO_helpers import * |
from ECHO_language import * |
from ECHO_language import * |
|
from ECHO_movie import * |
|
|
#regexp for extracting elements from xml |
#regexp for extracting elements from xml |
patternTXT=r"<\s*txt.*?>(.*?)</txt>" |
patternTXT=r"<\s*txt.*?>(.*?)</txt>" |
Line 153 class ECHO_layoutTemplate(ZopePageTempla
|
Line 153 class ECHO_layoutTemplate(ZopePageTempla
|
|
|
self.ZBindings_edit(self._default_bindings) |
self.ZBindings_edit(self._default_bindings) |
if text is None: |
if text is None: |
self._default_content_fn = os.path.join(package_home(globals()), |
self._default_content_fn = os.path.join(package_home(globals()),'zpt','ECHO_%s_template_standard.zpt'%EchoType) |
'zpt/ECHO_%s_template_standard.zpt'%EchoType) |
|
text = open(self._default_content_fn).read() |
text = open(self._default_content_fn).read() |
self.pt_edit(text, content_type) |
self.pt_edit(text, content_type) |
|
|
Line 212 class ECHO_fullText(ZopePageTemplate,ECH
|
Line 211 class ECHO_fullText(ZopePageTemplate,ECH
|
|
|
def getPage(self,nr='1'): |
def getPage(self,nr='1'): |
"""get page n""" |
"""get page n""" |
dom=xml.dom.minidom.parseString(self()) |
#return self().encode('latin-1','ignore') |
|
dom=xml.dom.minidom.parseString(self().encode('utf-8','ignore')) |
pages=dom.getElementsByTagName('page') |
pages=dom.getElementsByTagName('page') |
|
|
return pages[int(nr)-1].toxml('utf-8') |
return pages[int(nr)-1].toxml() |
|
|
# Product registration and Add support |
# Product registration and Add support |
manage_addECHO_fullTextForm = PageTemplateFile( |
manage_addECHO_fullTextForm = PageTemplateFile( |
Line 561 class ECHO_resource(Folder,Persistent,EC
|
Line 561 class ECHO_resource(Folder,Persistent,EC
|
startpage=self.createImageUrl() |
startpage=self.createImageUrl() |
|
|
params="startpage=%s"%startpage |
params="startpage=%s"%startpage |
print 'http://xserve02.mpiwg-berlin.mpg.de:18880/echo_nav/storage/downloadExternalXML?index_meta_url=%s&xml_url=%s'%(self.metalink,self.absolute_url()+'/newMetaXML'+urllib.quote('?'+params)) |
#print 'http://xserve02.mpiwg-berlin.mpg.de:18880/echo_nav/storage/downloadExternalXML?index_meta_url=%s&xml_url=%s'%(self.metalink,self.absolute_url()+'/newMetaXML'+urllib.quote('?'+params)) |
|
|
ECHO_helpers.urlopen('http://xserve02.mpiwg-berlin.mpg.de:18880/echo_nav/storage/downloadExternalXML?index_meta_url=%s&xml_url=%s'%(self.metalink,self.absolute_url()+'/newMetaXML'+urllib.quote('?'+params))).read() |
ECHO_helpers.urlopen('http://xserve02.mpiwg-berlin.mpg.de:18880/echo_nav/storage/downloadExternalXML?index_meta_url=%s&xml_url=%s'%(self.metalink,self.absolute_url()+'/newMetaXML'+urllib.quote('?'+params))).read() |
|
|
Line 655 class ECHO_resource(Folder,Persistent,EC
|
Line 655 class ECHO_resource(Folder,Persistent,EC
|
|
|
|
|
|
|
|
security.declarePublic('content_html') |
def content_html(self): |
def content_html(self): |
"""template fuer content""" |
"""template fuer content""" |
return ECHO_basis.content_html(self,'resource') |
return ECHO_basis.content_html(self,'resource') |
Line 968 class ECHO_resource(Folder,Persistent,EC
|
Line 968 class ECHO_resource(Folder,Persistent,EC
|
|
|
|
|
def getMDValue(self,fieldName,empty=None): |
def getMDValue(self,fieldName,empty=None): |
if empty: |
if not empty: |
return self.metaDataHash.get(fieldName,'!!NOT USED HERE in Type: %s'%self.contentType) |
return self.metaDataHash.get(fieldName,'!!NOT USED HERE in Type: %s'%self.contentType) |
|
|
else: |
else: |
Line 1065 class ECHO_resource(Folder,Persistent,EC
|
Line 1065 class ECHO_resource(Folder,Persistent,EC
|
if ret == "": |
if ret == "": |
return None |
return None |
else: |
else: |
|
|
return ret |
return ret |
except: |
except: |
return None |
return None |
Line 1199 class ECHO_resource(Folder,Persistent,EC
|
Line 1200 class ECHO_resource(Folder,Persistent,EC
|
if not error=="": #Fehler beim Auslesen des Metafiles |
if not error=="": #Fehler beim Auslesen des Metafiles |
return "ERROR:",error |
return "ERROR:",error |
|
|
|
if not self.contentType: |
|
self.contentType=metadict['bib_type'].lower() |
|
|
if not (metadict['bib_type'].lower()==self.contentType.lower()): |
if not (metadict['bib_type'].lower()==self.contentType.lower()): |
self.REQUEST.SESSION['contentStorage']=metadict['bib_type'] |
self.REQUEST.SESSION['contentStorage']=metadict['bib_type'] |
Line 1304 def manage_addECHO_resourceForm(self):
|
Line 1307 def manage_addECHO_resourceForm(self):
|
|
|
|
|
|
|
def manage_addECHO_resource(self,id,title,label,description,responsible,link,metalink,weight,copyrightType=None,resourceID=None,contentType=None,renderingType=None,credits=None,coords=None,RESPONSE=None): |
def manage_addECHO_resource(self,id,title,label,description="",responsible="",link="",metalink="",weight="",copyrightType=None,resourceID=None,contentType=None,renderingType=None,credits=None,coords=None,RESPONSE=None): |
"""addaresource""" |
"""addaresource""" |
|
|
newObj=ECHO_resource(id,link,metalink,resourceID,title,label,description,contentType,renderingType,copyrightType,responsible,credits,weight,coords) |
newObj=ECHO_resource(id,link,metalink,resourceID,title,label,description,contentType,renderingType,copyrightType,responsible,credits,weight,coords) |
Line 1320 class ECHO_externalLink(Folder,ECHO_basi
|
Line 1323 class ECHO_externalLink(Folder,ECHO_basi
|
security=ClassSecurityInfo() |
security=ClassSecurityInfo() |
meta_type='ECHO_externalLink' |
meta_type='ECHO_externalLink' |
|
|
|
security.declarePublic('content_html') |
def content_html(self): |
def content_html(self): |
"""template fuer content""" |
"""template fuer content""" |
return ECHO_basis.content_html(self,'externalLink') |
return ECHO_basis.content_html(self,'externalLink') |
Line 1410 def manage_addECHO_linkForm(self):
|
Line 1413 def manage_addECHO_linkForm(self):
|
return pt() |
return pt() |
|
|
|
|
def manage_addECHO_link(self,id,title,label,description,contentType,responsible,link,weight,coords=None,credits=None,RESPONSE=None): |
def manage_addECHO_link(self,id,title,label,description="",contentType="",responsible="",link="",weight="",coords=[],credits=None,RESPONSE=None): |
"""Add an external Link""" |
"""Add an external Link""" |
|
|
newObj=ECHO_link(id,link,title,label,description,contentType,responsible,credits,weight,coords) |
newObj=ECHO_link(id,link,title,label,description,contentType,responsible,credits,weight,coords) |
Line 1528 class ECHO_collection(Folder, Persistent
|
Line 1531 class ECHO_collection(Folder, Persistent
|
ret="" |
ret="" |
argv=self.REQUEST.form |
argv=self.REQUEST.form |
|
|
resources=self.ZopeFind(self,obj_metatypes=['ECHO_pageTemplate','ECHO_resource','ECHO_collection','ECHO_link','ECHO_externalLink']) |
resources=self.ZopeFind(self,obj_metatypes=['ECHO_pageTemplate','ECHO_movie','ECHO_resource','ECHO_collection','ECHO_link','ECHO_externalLink']) |
for resource in resources: |
for resource in resources: |
|
|
try: |
try: |
Line 1543 class ECHO_collection(Folder, Persistent
|
Line 1546 class ECHO_collection(Folder, Persistent
|
ret="" |
ret="" |
argv=self.REQUEST.form |
argv=self.REQUEST.form |
|
|
resources=self.ZopeFind(self,obj_metatypes=['ECHO_resource']) |
resources=self.ZopeFind(self,obj_metatypes=['ECHO_pageTemplate','ECHO_movie','ECHO_resource','ECHO_collection','ECHO_link','ECHO_externalLink']) |
for resource in resources: |
for resource in resources: |
|
|
try: |
try: |
Line 1553 class ECHO_collection(Folder, Persistent
|
Line 1556 class ECHO_collection(Folder, Persistent
|
pass |
pass |
return ret |
return ret |
|
|
|
def changeLabelsInCollection(self): |
|
"""change all lables of a collection""" |
|
ret="" |
|
argv=self.REQUEST.form |
|
|
|
resources=self.ZopeFind(self,obj_metatypes=['ECHO_pageTemplate','ECHO_movie','ECHO_resource','ECHO_collection','ECHO_link','ECHO_externalLink']) |
|
for resource in resources: |
|
|
|
try: |
|
ret+=resource[1].getId()+" "+argv[resource[1].getId()]+"</br>" |
|
resource[1].label=argv[resource[1].getId()][0:] |
|
except: |
|
pass |
|
return ret |
|
|
def updateCollection(self,RESPONSE=None): |
def updateCollection(self,RESPONSE=None): |
"""liest verzeichnisse aus dem pfad und legt sie dann als objekte in den ordner""" |
"""liest verzeichnisse aus dem pfad und legt sie dann als objekte in den ordner""" |
files=os.listdir(self.path) |
files=os.listdir(self.path) |
Line 1765 class ECHO_collection(Folder, Persistent
|
Line 1783 class ECHO_collection(Folder, Persistent
|
manage_addECHO_resource(self,id,label.encode('ascii'),label.encode('ascii'),"","","",link.encode('ascii'),"","") |
manage_addECHO_resource(self,id,label.encode('ascii'),label.encode('ascii'),"","","",link.encode('ascii'),"","") |
return ret |
return ret |
|
|
|
security.declarePublic('getImageTag') |
def getImageTag(self): |
def getImageTag(self): |
"""GetTag""" |
"""GetTag""" |
try: |
try: |
Line 1772 class ECHO_collection(Folder, Persistent
|
Line 1791 class ECHO_collection(Folder, Persistent
|
except: |
except: |
return "" |
return "" |
|
|
|
|
|
def addMovie(self,id,title,label,description,contentType,responsible,link,thumbUrl,rawFile,lowresFile,metalink,weight,credits=None,coords=None,RESPONSE=None): |
|
"""SSS""" |
|
print "we are here" |
|
#manage_addECHO_movie(self,id,title,label,description,responsible,link,thumbUrl,rawFile,metalink,weight,credits=None,coords=None,RESPONSE=None) |
|
if not hasattr(self,id): |
|
try: |
|
manage_addECHO_movie(self,id,title,label,description,responsible,link,thumbUrl,rawFile,lowresFile,metalink,weight,credits=None,coords=None,RESPONSE=None) |
|
return "done" |
|
except: |
|
return None |
|
else: |
|
obj=getattr(self,id) |
|
obj.changeECHO_movie_main(metalink,link,rawFile,lowresFile,thumbUrl,title,label,description,contentType,weight=weight) |
|
|
|
return "changed" |
|
|
def addResource(self,id,title,label,description,contentType,responsible,link,metalink,weight,credits=None,coords=None,RESPONSE=None): |
def addResource(self,id,title,label,description,contentType,responsible,link,metalink,weight,credits=None,coords=None,RESPONSE=None): |
"""SSS""" |
"""SSS""" |
try: |
try: |
Line 1868 class ECHO_collection(Folder, Persistent
|
Line 1904 class ECHO_collection(Folder, Persistent
|
return ECHO_rerenderLinksMD(self,obj,types) |
return ECHO_rerenderLinksMD(self,obj,types) |
|
|
|
|
def __init__(self,id,title,label,description,contentType,responsible,credits,weight,sortfield,coords,secondaryLinkTitle,secondaryLink,imageTag="",bgcolour=""): |
def __init__(self,id,title,label,description="",contentType="",responsible="",credits="",weight="",sortfield="",coords=[],secondaryLinkTitle="",secondaryLink="",imageTag="",bgcolour=""): |
|
|
self.id = id |
self.id = id |
"""Festlegen der ID""" |
"""Festlegen der ID""" |
Line 1979 class ECHO_collection(Folder, Persistent
|
Line 2015 class ECHO_collection(Folder, Persistent
|
elif hasattr(self,'collection_index_template'): |
elif hasattr(self,'collection_index_template'): |
ret=self.collection_index_template() |
ret=self.collection_index_template() |
elif hasattr(self,'main_index_template'): |
elif hasattr(self,'main_index_template'): |
ret=self.main_index_template() |
|
|
ret=self.main_index_template.__of__(self)(self.main_template) |
else: |
else: |
pt=zptFile(self, 'zpt/ECHO_main_index_template_standard.zpt') |
pt=zptFile(self, 'zpt/ECHO_main_index_template_standard.zpt') |
pt.content_type="text/html" |
pt.content_type="text/html" |
Line 1988 class ECHO_collection(Folder, Persistent
|
Line 2025 class ECHO_collection(Folder, Persistent
|
self.ZCacheable_set(ret) |
self.ZCacheable_set(ret) |
return ret |
return ret |
|
|
|
security.declarePublic('content_html') |
def content_html(self,**argv): |
def content_html(self,**argv): |
"""template fuer content""" |
"""template fuer content""" |
#print "NN",argv |
#print "NN",argv |
Line 2032 class ECHO_collection(Folder, Persistent
|
Line 2070 class ECHO_collection(Folder, Persistent
|
"""Give list of coordinates""" |
"""Give list of coordinates""" |
mapColTypes=['ECHO_collection','ECHO_resource'] |
mapColTypes=['ECHO_collection','ECHO_resource'] |
areas=[] |
areas=[] |
for entry in self.getSubCols(self,subColTypes=mapColTypes): |
for entry in self.getSubCols(subColTypes=mapColTypes): |
object=entry |
object=entry |
areas.extend(object.getMapAreas()) |
areas.extend(object.getMapAreas()) |
return areas |
return areas |
Line 2059 def manage_addECHO_collectionForm(self):
|
Line 2097 def manage_addECHO_collectionForm(self):
|
return pt() |
return pt() |
|
|
|
|
def manage_addECHO_collection(self,id,title,label,description,contentType,responsible,weight,sortfield,coords="",secondaryLinkTitle="",secondaryLink="",credits=None,RESPONSE=None,imageTag="",bgcolour=""): |
def manage_addECHO_collection(self,id,title,label,description="",contentType="",responsible="",weight=0,sortfield="weight",coords="",secondaryLinkTitle="",secondaryLink="",credits=None,RESPONSE=None,imageTag="",bgcolour=""): |
"""add a echo collection""" |
"""add a echo collection""" |
|
|
|
|
Line 2167 class ECHO_group(ECHO_collection):
|
Line 2205 class ECHO_group(ECHO_collection):
|
except: |
except: |
return "ECHO_groups" |
return "ECHO_groups" |
|
|
|
security.declarePublic('content_html') |
def content_html(self): |
def content_html(self): |
"""template fuer content""" |
"""template fuer content""" |
return ECHO_basis.content_html(self,'group') |
return ECHO_basis.content_html(self,'group') |
Line 2348 class ECHO_root(Folder,Persistent,Implic
|
Line 2387 class ECHO_root(Folder,Persistent,Implic
|
|
|
meta_type="ECHO_root" |
meta_type="ECHO_root" |
|
|
|
def printer(self,txt): |
|
print txt |
|
print txt[2] |
|
print txt[2].getImageTag() |
|
print "HO" |
|
return txt[2].getImageTag() |
|
|
|
def printer2(self,txt): |
|
print txt |
|
|
|
|
|
def item2(self,txt): |
|
return txt[2] |
|
|
def getContentOverviewTemplate(self): |
def getContentOverviewTemplate(self): |
"""produces overview template with macro""" |
"""produces overview template with macro""" |
pt = zptObjectOrFile(self, 'content_overview_template') |
pt = zptObjectOrFile(self, 'content_overview_template') |
Line 2373 class ECHO_root(Folder,Persistent,Implic
|
Line 2426 class ECHO_root(Folder,Persistent,Implic
|
|
|
def checkResource(self,id): |
def checkResource(self,id): |
"""checks if a resource is in the tree, gives back none or list of resources""" |
"""checks if a resource is in the tree, gives back none or list of resources""" |
|
if not id: |
|
id="" |
splitted=id.split("/") |
splitted=id.split("/") |
id=splitted[len(splitted)-1] |
id=splitted[len(splitted)-1] |
if hasattr(self,"_v_checkResource") and self._v_checkResource.has_key(id): #existiert ein cache und id ist bereits drin? |
if hasattr(self,"_v_checkResource") and self._v_checkResource.has_key(id): #existiert ein cache und id ist bereits drin? |
Line 2596 class ECHO_root(Folder,Persistent,Implic
|
Line 2651 class ECHO_root(Folder,Persistent,Implic
|
except: |
except: |
return "" |
return "" |
|
|
|
security.declarePublic('getImageTag') |
def getImageTag(self): |
def getImageTag(self): |
"""needed by main_template""" |
"""needed by main_template""" |
return "" |
return "" |
|
|
secondaryLink="" #needed by main_template |
secondaryLink="" #needed by main_template |
secondaryLinkTitle="" #needed by main_template |
secondaryLinkTitle="" #needed by main_template |
|
|
Line 2606 class ECHO_root(Folder,Persistent,Implic
|
Line 2663 class ECHO_root(Folder,Persistent,Implic
|
"""hack""" |
"""hack""" |
return "#dddddd" |
return "#dddddd" |
|
|
|
security.declareProtected('View','contentTypeSelector_HTML') |
def contentTypeSelector_HTML(self,selected=None): |
def contentTypeSelector_HTML(self,selected=None): |
"""give type selector""" |
"""give type selector""" |
if not selected: |
if not selected: |
Line 2876 class ECHO_root(Folder,Persistent,Implic
|
Line 2934 class ECHO_root(Folder,Persistent,Implic
|
|
|
if self.checkRef(ref): |
if self.checkRef(ref): |
if pn: |
if pn: |
link.setAttribute("href",self.aq_parent.absolute_url()+"/references?id="+ref+"&p="+pn) |
link.setAttribute("href",self.aq_parent.absolute_url()+"/references?id="+ref+"&page="+pn) |
else: |
else: |
link.setAttribute("href",self.aq_parent.absolute_url()+"/references?id="+ref) |
link.setAttribute("href",self.aq_parent.absolute_url()+"/references?id="+ref) |
|
|
Line 2959 class ECHO_root(Folder,Persistent,Implic
|
Line 3017 class ECHO_root(Folder,Persistent,Implic
|
|
|
return libpq.PgQuoteString(string) |
return libpq.PgQuoteString(string) |
|
|
|
security.declareProtected('View','getPartners') |
def getPartners(self): |
def getPartners(self): |
"""Get list of Partners. Presently only from a subfolder partners""" |
"""Get list of Partners. Presently only from a subfolder partners""" |
if hasattr(self,'partners'): |
if hasattr(self,'partners'): |