def prepare(self, name, value, attrs=None): wkt_array = [] for geom, attr in self.info: wkt = utils.get_ewkt(geom) if isinstance(attr, dict): wkt_array.append([wkt, utils.translate_options(attr)]) else: wkt_array.append([wkt, attr]) info_json = simplejson.dumps(wkt_array) if name and not self.options.has_key('name'): self.options['name'] = forms.forms.pretty_name(name) context = { 'info_array': info_json, 'options': simplejson.dumps(utils.translate_options(self.options)), 'STATIC_URL': settings.STATIC_URL, } js = mark_safe(render_to_string(self.template, context)) html = "" return (js, html)
def prepare(self, name, value, attrs=None): wkt_array = [] for geom, attr in self.info: wkt = utils.get_ewkt(geom) if isinstance(attr, dict): wkt_array.append([wkt, utils.translate_options(attr)]) else: wkt_array.append([wkt, attr]) info_json = simplejson.dumps(wkt_array) if name and not self.options.has_key("name"): self.options["name"] = forms.forms.pretty_name(name) context = { "info_array": info_json, "options": simplejson.dumps(utils.translate_options(self.options)), "STATIC_URL": settings.STATIC_URL, } js = mark_safe(render_to_string(self.template, context)) html = "" return (js, html)
def prepare(self, name, value, attrs=None): wkt_array = [] for geom, attr in self.info: wkt = utils.get_ewkt(geom) if isinstance(attr, dict): wkt_array.append([wkt, utils.translate_options(attr)]) else: wkt_array.append([wkt, attr]) info_json = json.dumps(wkt_array) if name and not self.options.has_key('name'): self.options['name'] = forms.forms.pretty_name(name) context = { 'info_array': info_json, 'options': json.dumps(utils.translate_options(self.options)), 'STATIC_URL': settings.STATIC_URL, } context.update(self.get_extra_context()) js = mark_safe(render_to_string(self.template, context)) html = "" return (js, html)
def prepare(self, name, value, attrs=None): if not attrs: attrs = {} if name and not self.options.has_key('name'): self.options['name'] = forms.forms.pretty_name(name) attrs['id'] = attrs.get('id', "id_%s" % id(self)) wkt = utils.get_ewkt(value) context = { 'id': attrs['id'], 'options': simplejson.dumps(utils.translate_options(self.options)), 'STATIC_URL': settings.STATIC_URL, } js = mark_safe(render_to_string(self.template, context)) html = mark_safe(forms.Textarea().render(name, wkt, attrs)) return (js, html)
def prepare(self, name, value, attrs=None): if not attrs: attrs = {} if name and not self.options.has_key("name"): self.options["name"] = forms.forms.pretty_name(name) attrs["id"] = attrs.get("id", "id_%s" % id(self)) wkt = utils.get_ewkt(value) context = { "id": attrs["id"], "options": simplejson.dumps(utils.translate_options(self.options)), "STATIC_URL": settings.STATIC_URL, } js = mark_safe(render_to_string(self.template, context)) html = mark_safe(forms.Textarea().render(name, wkt, attrs)) return (js, html)
def prepare(self, name, value, attrs=None): if not attrs: attrs = {} if name and not self.options.has_key('name'): self.options['name'] = forms.forms.pretty_name(name) attrs['id'] = attrs.get('id', "id_%s" % id(self)) wkt = utils.get_ewkt(value) context = { 'id': attrs['id'], 'options': simplejson.dumps(utils.translate_options(self.options)), 'STATIC_URL': settings.STATIC_URL, } context.update(self.get_extra_context()) js = mark_safe(render_to_string(self.template, context)) html = mark_safe(forms.Textarea().render(name, wkt, attrs)) return (js, html)
def render(self, name, value, attrs=None): if value is None: values = [None for i in range(len(self.vector_layers))] elif not isinstance(value, (list, tuple)): values = [value] else: values = value attrs = attrs or {} # Get an arbitrary unique ID if we weren't handed one (e.g. widget used # outside of a form). # map_id = attrs.get('id', "id_%s" % id(self)) map_id = self.options.get("id", "id_%s" % id(self)) layer_js = [] layer_html = [] layer_names = self._get_layer_names(name) value_count = 0 for i, layer in enumerate(self.vector_layers): if layer.editable: value = values[value_count] value_count += 1 else: value = None lyr_name = layer_names[i] id_ = "%s_%s" % (map_id, lyr_name) # Use "prepare" rather than "render" to get both js and html (js, html) = layer.prepare(lyr_name, value, attrs={"id": id_}) layer_js.append(js) layer_html.append(html) context = { "id": map_id, "layer_js": layer_js, "layer_html": layer_html, "map_opts": json.dumps(utils.translate_options(self.options)), "setup_custom_layer_types": self._custom_layer_types_js(), "STATIC_URL": settings.STATIC_URL, } context.update(self.get_extra_context()) return render_to_string(self.template, context)
def render(self, name, value, attrs=None): if value is None: values = [None for i in range(len(self.vector_layers))] elif not isinstance(value, (list, tuple)): values = [value] else: values = value attrs = attrs or {} # Get an arbitrary unique ID if we weren't handed one (e.g. widget used # outside of a form). map_id = attrs.get('id', "id_%s" % id(self)) layer_js = [] layer_html = [] layer_names = self._get_layer_names(name) value_count = 0 for i, layer in enumerate(self.vector_layers): if layer.editable: value = values[value_count] value_count += 1 else: value = None lyr_name = layer_names[i] id_ = "%s_%s" % (map_id, lyr_name) # Use "prepare" rather than "render" to get both js and html (js, html) = layer.prepare(lyr_name, value, attrs={'id': id_}) layer_js.append(js) layer_html.append(html) context = { 'id': map_id, 'layer_js': layer_js, 'layer_html': layer_html, 'map_opts': simplejson.dumps(utils.translate_options(self.options)), 'setup_custom_layer_types': self._custom_layer_types_js(), 'STATIC_URL': settings.STATIC_URL, } context.update(self.get_extra_context()) return render_to_string(self.template, context)