def __init__(self, context, request): super(Placemark, self).__init__(context, request) # styles are stored as annotation! # see collective/geo/contentlocations/geostylemanager.py self.styles = deepcopy(self.styles) # Manipulates the marker image as defined by the query # e.g. @@kml-document?letter=A letter = self.request.get('letter', None) or None marker = IMapMarker(self.context) self.styles['marker_image'] = u'string:' + marker.url(letter)
def test_url(self): self.login('admin') directory = api.content.create( container=self.new_temporary_folder(), type='seantis.dir.roadworks.directory', title='directory' ) item = api.content.create( container=directory, type='seantis.dir.roadworks.item', title='item' ) marker = IMapMarker(item) url = marker.url('A') expected = \ '++resource++seantis.dir.roadworks.images/construction-marker.png' self.assertIn(expected, url)
def marker_image(self, item): """ Returns the marker image used in the mapfields. """ marker = IMapMarker(item) return marker.url(self.lettermap.get(item.id, None))
def marker_url(self): letter = self.request.get('letter', None) or None marker = IMapMarker(self.context) return u'string:' + marker.url(letter)