GeoNode/geonode — pull request #1563 by jj0hns0n (2014-06-30 16:12:53+00:00)
Title: Map snapshot and urls

This PR adds a few new pieces of functionality, and includes model changes, so want to get it in soon so that we can get to a model freeze.

* Allows a urlsuffix for the map to be specified such that you can reference maps like this http://localhost:8000/maps/jeffs-cool-map rather than just buy ID. URLs like this also work of course http://localhost:8000/maps/jeffs-cool-map/metadata http://localhost:8000/maps/jeffs-cool-map/view etc
* Allows another string/slug to be specified to feature the map at the root url, so URLs like this are possible http://localhost:8000/awesome-map
* Saves snapshot versions of the map every time the user saves. These are stored as a json string in a new MapSnapshot model and assigned a sequential name A, B, C etc. A new endpoint is provided to give the map history http://localhost:8000/maps/jeffs-cool-map/history

WorldMap has geoext/gxp code that displays the map history in GeoExplorer and allows you to revert to an older version. This will take some effort to make work in the geoexplorer used by default, but this same functionality could also be added to the map detail page.

Some screenshots below.

![test_map__explore_maps_-_example_com](https://cloud.githubusercontent.com/assets/506078/3432100/19cbf460-0071-11e4-9142-0289cedd1486.png)

![localhost_8000_maps_jeffs-cool-map_history](https://cloud.githubusercontent.com/assets/506078/3432130/61266336-0071-11e4-8077-16b71d8299dc.png)