diff options
| author | Étienne Loks <etienne.loks@peacefrogs.net> | 2012-10-03 02:05:31 +0200 | 
|---|---|---|
| committer | Étienne Loks <etienne.loks@peacefrogs.net> | 2012-10-03 02:05:31 +0200 | 
| commit | 9b42872d4671070d746433b69624ff16232de207 (patch) | |
| tree | b653164e83c43968c1259b78c66e7a9c23f9953d /chimere/widgets.py | |
| parent | e0e9b2caada794fac94c409b95e7f11bb6dcc3ee (diff) | |
| download | Chimère-9b42872d4671070d746433b69624ff16232de207.tar.bz2 Chimère-9b42872d4671070d746433b69624ff16232de207.zip  | |
Add a custom layer box with ability to add some subcat as a "virtual" layer
Diffstat (limited to 'chimere/widgets.py')
| -rw-r--r-- | chimere/widgets.py | 15 | 
1 files changed, 11 insertions, 4 deletions
diff --git a/chimere/widgets.py b/chimere/widgets.py index 158df00..01a4bdb 100644 --- a/chimere/widgets.py +++ b/chimere/widgets.py @@ -70,18 +70,23 @@ def get_map_layers(area_name=''):              pass      map_layers, default = [], None      if area and area.layers.count(): -        map_layers = [layer.layer_code +        map_layers = [[layer.name, layer.layer_code, False]                  for layer in area.layers.order_by('arealayers__order').all()]          def_layer = area.layers.filter(arealayers__default=True)          if def_layer.count():              def_layer = def_layer.all()[0]              for order, map_layer in enumerate(map_layers): -                if map_layer == def_layer.layer_code: +                if map_layer[1] == def_layer.layer_code:                      default = order +                    map_layers[order][2] = True +        else: +            map_layers[0][2] = True      elif settings.CHIMERE_DEFAULT_MAP_LAYER: -        map_layers = [settings.CHIMERE_DEFAULT_MAP_LAYER] +        map_layers = [(_(u"Default layer"), settings.CHIMERE_DEFAULT_MAP_LAYER, +                       True)]      else: -        map_layers = ["new OpenLayers.Layer.OSM.Mapnik('Mapnik')"] +        map_layers = [(u"Mapnik", "new OpenLayers.Layer.OSM.Mapnik('Mapnik')", +                       True)]      return map_layers, default  class ChosenSelectWidget(forms.Select): @@ -260,6 +265,7 @@ class PointChooserWidget(forms.TextInput):              else:                  value = None          map_layers, default_area = get_map_layers(area_name) +        map_layers = [js for name, js, default in map_layers]          js = """          OpenLayers.ImgPath = '%schimere/img/';          var EPSG_DISPLAY_PROJECTION = epsg_display_projection = new OpenLayers.Projection('EPSG:%s'); @@ -339,6 +345,7 @@ class RouteChooserWidget(forms.TextInput):          '''          tpl = getMapJS(area_name)          map_layers, default_area = get_map_layers(area_name) +        map_layers = [js for name, js, default in map_layers]          js = """          OpenLayers.ImgPath = '%schimere/img/';          var EPSG_DISPLAY_PROJECTION = epsg_display_projection = new OpenLayers.Projection('EPSG:%s');  | 
