--- ECHO_content/ECHO_helpers.py 2005/06/10 10:23:54 1.55
+++ ECHO_content/ECHO_helpers.py 2005/06/13 10:35:04 1.56
@@ -178,8 +178,19 @@ class ECHO_basis:
def getMapAreas(self):
"""returns the list of MapAreas"""
+ forcetypes = self.REQUEST.get('map_force_types', None)
+ if forcetypes:
+ typelist = forcetypes.split(',')
+ else:
+ typelist = None
+ areas = []
# get all contained MapAreas
- areas = [res[1] for res in self.ZopeFind(self, obj_metatypes=('MapArea'))]
+ for res in self.ZopeFind(self, obj_metatypes=('MapArea')):
+ area = res[1]
+ # check the allowed types
+ if typelist is not None and area.getType() not in typelist:
+ continue
+ areas.append(area)
return areas
def addMapArea(self, newarea):
@@ -250,12 +261,14 @@ class ECHO_basis:
if RESPONSE is not None:
RESPONSE.redirect('ECHO_graphicEntry')
- def createJSAreas(self, areas, forcepermanent=None):
+ def createJSAreas(self, areas):
"""create area calls for JavaScript"""
+ forceperm = self.REQUEST.get('map_force_permanent', None)
js="\n"
for ob in areas:
- if forcepermanent is not None:
- perm = forcepermanent
+ # check for force-permanent
+ if forceperm is not None:
+ perm = forceperm
else:
perm = ob.isPermanent()
js+="""addArea('%s', 'overview', %s, '%s', '%s');\n"""%(ob.getFullId(),ob.getCoordString(),ob.getType(),perm)
@@ -296,11 +309,11 @@ class ECHO_basis:
tag = ""
if bt.isN4:
# N4 needs layer for highlighting
- tag += '