Hi,
To reproduce create add a lat/lon field to a node. Edit the node and set the values to something other than their default. Create a new user role that doesn't have permissions to edit the geo field. Edit the node as the user without permissions to edit the field and save the node. The geo field value is now set to null.
I'm not an expert on CCK but the problem seems to lie in the "geo_field" function in "geo_field.module". Specifically it appears to be appear in the call to "geo_content_is_empty" during the presave operation. When a user has permissions to edit the geo field the $items variable structure is $items['geo'], when the user doesn't have permissions the structure is completely different e.g. $items[0]['gis type'] so the call to "geo_content_is_empty" fails. I've attached a screen shot showing what I'm trying to explain!
Hope this helps,
| Comment | File | Size | Author |
|---|---|---|---|
| debug_structure.jpg | 26.61 KB | idontknowtheanswer |
Comments
Comment #1
idontknowtheanswer commentedAnyone agree/disagree with this? We're still having problems with this...
Comment #2
gagarine commentedI think is linked to #667034: node_save does not save geo fields
Comment #3
gagarine commentedDo you have try with the two patches summited on #667034: node_save does not save geo fields?
Comment #4
idontknowtheanswer commentedThanks. I'll give that a go.
Comment #5
gagarine commentedDuplicate of #667034: node_save does not save geo fields