Currently WMS support in Ushahidi is several different ways, with different hack and plugins. This project is an effort to build a robust way to include WMS base layers and overlays on Ushahidi maps.
WMS support was previously hacked in for http://sidce.colombiassh.org/
Requirements:
1. WMS layers can be added through /admin/manage/layers
2. Both WMS overlays and baselayers can be added
Suggested modifications
- Create extra fields in the layers table
- Modify the view and controller for /admin/manage/layers to allow adding WMS layers
- Modify ushahidi.js to manage adding WMS layers (similar to KML layers)
- Use the map helper to generate OpenLayers code for WMS base layers
- Modify the main controller to send the WMS layers as array variable (similar to KML layers)
- Modify the main JS to include WMS overlays using ushahidi.js
Seth:
The new WMS plugin (https://github.com/kigen/Ushahidi-plugin-wms) already has interface for adding layers, and tables for storing data, which can me moved to core without much modification.
The only part that will need implementation is the actual integration of the map layers
Robbie I'm happy with this either as a plugin or in core, but since KML layers are already supported in core I think maybe WMS should be too.
Background on Ushahidi's layers and map handling
- baselayers are currently handled by the application/helpers/map.php and added to the map in main_js
- KML layers are handled in admin/manage/layers and added to the map using ushahidi.js (called from main_js)
- Ushahidi.js wraps most openlayers functionality and all special handling for the reports layer