A very very simple implementation of Google Maps v3 API and Address - Latitude - Longitude storage for Stream Core API
Uses the Google Maps Javascript API v3 tied to a textfield to autocomplete geocode data in the location address field. When the address is selected, populates the map and fills in the read only lat/lng fields. Very very simple in what it does, in that it stores an address, latitude and longitude.
These should be placed in addons/shared_addons/field_types or whatever floats your boat.
Typical usage:
$fields = array( array( 'name' => 'Location address', 'slug' => 'location_address', 'namespace' => , 'type' => 'geocode', 'extra' => array( 'max_length' => 255, 'latlng_fields' => array( 'lat'=> 'location_lat', //required 'lng'=> 'location_lng', //required 'map_width' => '100%', //optional 'map_height' => '300px' //optional ) ), 'assign' => , ), array( 'name' => 'Location latitude', 'slug' => 'location_lat', 'namespace' => , 'type' => 'latlng', 'assign' => , ), array( 'name' => 'Location longitude', 'slug' => 'location_lng', 'namespace' => , 'type' => 'latlng', 'assign' => , ), );
It is essential that you match the latlng_fields to the correct slug of the location_lat and location_lng fields to allow the system to fill in the correct fields.
Works very well for what I used it for. Again very simple so should be quite extensible. Don't expect miracles and your milage may vary.