--- ECHO_content/ECHO_helpers.py 2008/08/21 07:44:56 1.88
+++ ECHO_content/ECHO_helpers.py 2008/09/08 19:23:18 1.91
@@ -419,20 +419,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 += '" + text + ""
else:
# a-element
- tag = '" + text + ""
@@ -633,10 +646,10 @@ def getSubCols(self, sortfield=None,
return cmp(x[0],y[0])
else:
if type(x[0])==types.StringType:
- tmpX=unicode(x[0])
+ tmpX=unicodify(x[0])
tmpY=y[0]
else:
- tmpY=unicode(y[0])
+ tmpY=unicodify(y[0])
tmpX=x[0]
return cmp(tmpX,tmpY)
@@ -1229,6 +1242,21 @@ class MapArea(SimpleItem):
return self.aq_parent.label or self.aq_parent.id
return self.label
+ def getTargetUrl(self):
+ """returns the URL of the linked object"""
+ if hasattr(self, 'aq_parent'):
+ p = self.aq_parent
+ # ECHOResource and ECHOLink have 'link' attribute
+ if hasattr(p, 'link'):
+ if p.link is None:
+ # return empty string for empty link
+ return ""
+ else:
+ return p.link
+
+ # return None for unknown type
+ return None
+
def setLabel(self, label):
"""sets the label"""
self.label = label