#23137: Error when use OSMapWidget.js
----------------------------+--------------------
Reporter: koyoyo | Owner: nobody
Type: Bug | Status: new
Component: GIS | Version: 1.6
Severity: Normal | Keywords:
Triage Stage: Unreviewed | Has patch: 0
Easy pickings: 0 | UI/UX: 0
----------------------------+--------------------
I try to create my form with GeoDjango and I didn't found an good example
in document.
So, I use django/contrib/gis/static/gis/js/OSMapWidget.js and found that
have some of bugs.
First, in line 173 (miss .) eg. if geom_name = 'MultiPoint', then
options['geom_type'] will be '''OpenLayers.GeometryMultiPoint'''
{{{
else options['geom_type'] = eval('OpenLayers.Geometry' +
options['geom_name']);
}}}
changed to
{{{
else options['geom_type'] = eval('OpenLayers.Geometry.' +
options['geom_name']);
}}}
Second, line 181 (check is_collection) It is wrong use of function
"isinstanceof". It cannot check constructor isinstanceof constructor.
{{{
is_collection: options['geom_name'] instanceof
OpenLayers.Geometry.Collection,
}}}
changed to
{{{
is_collection: (options['geom_name'].substr(0, 5) == 'Multi' || options[
'geom_type' ] == 'GeometryCollection'),
}}}
Third, in function getControls (line 366, 369, 372) These are not check
for Collection.
{{{
if (this.options.geom_name == 'LineString'' || this.options.geom_name ==
'Unknown') {
if (this.options.geom_name == 'Polygon' || this.options.geom_name ==
'Unknown') {
if (this.options.geom_name == 'Point' || this.options.geom_name ==
'Unknown') {
}}}
changed to
{{{
if (this.options.geom_name == 'LineString' || this.options.geom_name ==
'MultiLineString' || this.options.geom_name == 'Unknown') {
if (this.options.geom_name == 'Polygon' || this.options.geom_name ==
'MultiPolygon' || this.options.geom_name == 'Unknown') {
if (this.options.geom_name == 'Point' || this.options.geom_name ==
'MultiPoint' || this.options.geom_name == 'Unknown') {
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/23137>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-updates/049.d18a0f0d70a24c8b3c3fbe3116a2a1e1%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.