Changeset 386

Show
Ignore:
Timestamp:
07/10/06 03:01:21
Author:
piv
Message:

Map select content including Markers, for Markers added color property

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • qPloneGoogleMaps/trunk/content/Map.py

    r385 r386  
    11from AccessControl import ClassSecurityInfo 
    22from Products.CMFCore.permissions import ModifyPortalContent, View 
     3from Products.CMFCore.utils import getToolByName 
    34 
    45try: 
     
    156157    def getOverlayMarkers(self): 
    157158        """ Return markers of the contained overlays """ 
    158  
    159         return [{el.getMarkersColor():el.getMarkers()} for el in self.folderlistingFolderContents(contentFilter={'portal_type': 'Overlay'})] 
     159        catalog = getToolByName(self, 'portal_catalog') 
     160        result = {} 
     161        for el in self.folderlistingFolderContents(): 
     162            if el.portal_type == 'Overlay': 
     163                color = el.getMarkersColor() 
     164                markers = el.getMarkers() 
     165            elif el.portal_type == 'Marker': 
     166                color = el.getColor() 
     167                markers = list(catalog(path='/'.join(el.getPhysicalPath()))) 
     168            else: continue 
     169            result[color] = result.get(color, []) + markers 
     170        return result 
    160171 
    161172registerType(Map, PROJECTNAME) 
  • qPloneGoogleMaps/trunk/skins/qPloneGoogleMaps/map_view.pt

    r385 r386  
    3131      Description 
    3232    </p> 
    33 <!-- <p tal:content="python:here.maps_markers(longlat=here.getOverlayMarkers(), node='map', controls=here.getMapControl(), loc=here.geoLocation(), typeControls=here.getTypeControl(), overviewControls=here.getOverviewControl(), events=True, maptype=here.getMapType(), color=False, zoom=here.getZoom())"></p> --> 
     33 
    3434    <!-- gmarker  
    3535    <ul> 
  • qPloneGoogleMaps/trunk/skins/qPloneGoogleMaps/maps_markers.py

    r385 r386  
    2929 
    3030if (not color) and longlat: 
    31     lat = [float(e.geoLocation[0]) for el in longlat for e in el.values()[0]
    32     lon = [float(e.geoLocation[1]) for el in longlat for e in el.values()[0]
    33     sMarkers = "\n".join(["""addMarker(%f, %f, "%s", "%s", "%s", "%s");""" % (float(e.geoLocation[0]), float(e.geoLocation[1]), e.Title, e.getURL(), processDesc(e.Description), el.keys()[0]) for el in longlat for e in el.values()[0]]) 
     31    lat = [float(e.geoLocation[0]) for el in longlat.values() for e in el
     32    lon = [float(e.geoLocation[1]) for el in longlat.values() for e in el
     33    sMarkers = "\n".join(["""addMarker(%f, %f, "%s", "%s", "%s", "%s");""" % (float(e.geoLocation[0]), float(e.geoLocation[1]), e.Title, e.getURL(), processDesc(e.Description), el) for el, value in longlat.items() for e in value]) 
    3434elif longlat: 
    3535    lat = [float(el.geoLocation[0]) for el in longlat] 
  • qPloneGoogleMaps/trunk/skins/qPloneGoogleMaps/marker_view.pt

    r385 r386  
    99            tal:attributes="src string:http://maps.google.com/maps?file=api&amp;v=2&amp;key=${key}"> 
    1010    </script> 
    11     <span tal:replace="structure python:here.maps_markers(here.portal_catalog(path='/'.join(here.getPhysicalPath())), node='map', events=True, loc=here.geoLocation(), controls='large', typeControls=True, overviewControls=True, marker=True)" /> 
     11    <span tal:replace="structure python:here.maps_markers(here.portal_catalog(path='/'.join(here.getPhysicalPath())), node='map', events=True, loc=here.geoLocation(), controls='large', typeControls=True, overviewControls=True, marker=True, color=here.getColor())" /> 
    1212 
    1313  </metal:block>