#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.

Reply via email to