--- ECHO_content/ECHO_helpers.py 2008/08/21 07:58:21 1.89
+++ ECHO_content/ECHO_helpers.py 2008/12/17 12:05:00 1.96
@@ -27,6 +27,10 @@ def logger(txt,method,txt2):
displayTypes = ['ZSQLExtendFolder','ZSQLBibliography','ECHO_group','ECHO_collection','ECHO_resource','ECHO_link','ECHO_sqlElement','ECHO_pageTemplate','ECHO_externalLink','ImageCollectionIFrame','VLP_resource','VLP_essay','ECHO_ZCatalogElement','ImageCollection','versionedFileFolder','extVersionedFileFolder','ECHO_movie']
+def normalizeCt(str):
+ """normalizes content_type"""
+ #str= str.replace(" ","_")
+ return str.replace("-"," ").lower()
#decode and compress for xmlrpc communication with OSAS_server
@@ -84,6 +88,35 @@ class ECHO_basis:
management_page_charset="utf-8"
isVisible = True
+ # Managment for the PID
+ def setPID(self,pid):
+ """set the pid"""
+ logging.debug(self.getID()+" PID set to "+pid)
+ self.pid=pid
+ return True
+
+ def getPID(self):
+ """get the pid"""
+
+ pid =getattr(self,'pid',None)
+
+ if pid == self.getParentPID():
+ return None
+ else:
+ return pid
+
+
+ def getParentPID(self):
+ """get the PID of the parent"""
+ parent = self.aq_parent
+
+ pidF = getattr(parent,'getPID',None)
+
+ if pidF is None:
+ return None
+
+ else:
+ return pidF()
def unicodify(self, s):
"""return unicode object for string (utf-8 or latin1) or unicode object s"""
@@ -207,6 +240,12 @@ class ECHO_basis:
return self.isVisible
return True
+ def getDescription(self):
+ """get content of description field"""
+
+
+ return self.unicodify(getattr(self,'description',''));
+
def getTitle(self):
"""title"""
if hasattr(self,'getLanguage'):
@@ -419,20 +458,33 @@ class ECHO_basis:
"""generate map link"""
bt = BrowserCheck(self)
id = ob.getFullId()
- link = ob.getLinkId()
+ url = ob.getTargetUrl()
+ if url == "":
+ # ECHOResource with empty link -> no link
+ href = 'href="#" onclick="return false;"'
+ else:
+ href = 'href="%s"'%ob.getLinkId()
+
+ if target is None:
+ targetattr = ""
+ else:
+ targetattr = 'target="%s"'%target
+
if text is None:
text = ob.getLabel()
+
if text is None:
text = "link"
+
tiptext = ob.getTip()
tag = ""
if bt.isN4:
# N4 needs layer for highlighting
- tag += '