[[TOC]] = Pakistan Developers = If you have skills in Python, !JavaScript (jQuery, Ext &/or !OpenLayers) or CSS then you're most welcome to help with code. == Getting Started == * InstallationGuidelinesDeveloper * DeveloperGuidelines * [http://www.slideshare.net/AidIQ/sahana-introduction-to-the-code-v2 Tutorial Presentation] == Open Tickets == Please feel free to go ahead and resolve any of these tickets [http://eden.sahanafoundation.org/report/16 Open Tickets in Trac] == Feature Requests == === Requests Management === * #495: Request Priority level .represent doesn't work nicely in a Popup (done) * [BluePrintRequestTracking#UsabilitysuggestionforPakistanVersion Usability suggestions] * Add an Organisation default pre-fill routine (like staff in RAT) * Add hospital_id to the rms_req table & deprecate the mini-RMS inside HMS * Add a link to create a Req from a Hospital (just like we have from a Shelter) === Inventory === See: BluePrintInventoryManagement === Map === * Fix Clustering: #498 (done) * ~~Cluster Popups with multiple records should show 'name - type' not just 'name'~~ * Better still: {{{ Location A - - - Location B - - - If there is more than one location listed include: "Zoom in for detail" }}} * [wiki:BluePrintGISSelectLocationFromMap Add Location by placing cursor on Map]: #487 (done) * Read/Update screens should have a Marker visible to start with * Want to zoom to the relevant area of the map based on the selected locations hierarchy (needs polygon data) * Update map should use Drag tool not Draw tool? * When selecting Lat Lon from the map, change the mouse cursor to cross hairs * Map requires a refresh to get icons to appear at proper size (Firefox/IE. Chrome/Safari stay small): #493 * This makes the highlightControl popups much more painful * Approach to debug: http://docs.openlayers.org/help/minimize.html * Map Preview for a single Location shows too zoomed in: #483 (done) * Provide a Legend for Feature Layers in full-screen mode: #499 * Popups * Should add an 'Open' hyperlink to open the resource (in a new tab?) * Locations have a URL which doesn't work (wants to open map in JS div) * Hide blank fields? * Customised Popups for Incidents, Assessments & Requests * Hide fields which aren't so necessary to make the critical ones stand out * It would be good if the map pop-ups showed the resource type as a header at the top - currently it isn't entirely clear what the popup is showing. * Hierarchical Autocomplete for Locations: #502 * Add Location popup should set the Parent according to the hierarchy chosen in the main form Currently works only for 1st press of 'Add Location' not subsequent * Use HTML5 GeoLocation where available to pre-populate the location (using a 'nearby' algorithm?) * L1-L4 Feature Classes shouldn't be selctable by non-!MapAdmins (& should be auto-selected by !MapAdmins) * Could still use some work to provide sanity-checking of inputs (entering things in higher levels should clear lower levels?) * Import Locations * e.g. from [wiki:UserGuidelinesGISData#Geonames Geonames] * L1 Polygons: http://finder.geocommons.com/overlays/61368 * L1 & a few L2s: http://downloads.cloudmade.com/asia/pakistan * ~~Lock down L1-L3 Locations~~ * De-duplication of existing locations: #482 (code done: still needs someone to go through & make use of) * Fresh water source !PoIs * Water !FeatureClass is there in the Programme !FeatureGroup, so can be added already although a nicer UI would be great * Could use the Landmark model as a basis: http://pakistan.sahanafoundation.org/eden/gis/landmark * Could also have a custom map query which displays a Water layer for all Shelters which provide Water Services * Setup !GeoServer * Print the Map * [wiki:InstallationGuidelinesGISData#Printing] * http://trac.mapfish.org/trac/mapfish/ticket/161 * import !GeoData into that for more advanced GIS: #497 * Look for Overlays we could add to Map: * http://blog.fortiusone.com/2010/08/18/1435/ * Embed Potlatch to allow people to edit the OSM basemap from within Sahana === Shelter Registry === * On the map, where it shows the shelter, it should show the comments as well, so that one could easily find the requisite facilities. These facilities should be searchable though. * BluePrintShelterRegister - Usability suggestion * Move School Reports to CR (they are Shelters) (-> PTressel) * When adding a Union Council from a School Report, would be nice to have the Parent pre-populated too * Link CR to RMS * We can use auto complete in the Shelter/Relief Camp text box, as the number of shelters would be large; or we can use Ajax to populate the combo box of shelters that are registered at a location, after the user chooses the location. * Provide Estimations of Requirements === Assessments === * Complete [http://www.ecbproject.org/page/48 ECB's Rapid Assessment Tool] - Dominic === Incident Reporting === * .represent for irs_iimage.image as a thumbnail (like for gis_marker) * Provide normal users with a simplified set of options for Category: #508 * Full set of options provided to Editors who can thus refine the original classifications * need a simplified list & a mapping to which of the detailed list they should default to === Floods === * Add support for info from 2nd report on: http://www.radio.gov.pk/flood.asp === Reports === * Recent Activity on the site (read our own RSS feeds?) * Summary info (similar to the SUMMARY-FAP.pdf & WFP .ppt) * Flood alerts like: http://www.reliefweb.int/rw/fullmaps_sa.nsf/luFullMap/F4CC4F05DE48DA6EC1257783003580AC/$File/Map.jpg.jpg?OpenElement&emid=FL-2010-000141-PAK * jqplot? * Map * KML XSLT (=>Dominic) === Misc === * Would be good to write a custom PDF writer for this format of report so we can consider getting people to enter data into DB directly. * split column headers * (dominic) A nice printable HTML works as good as custom PDF, but can be achieved sooner * [BluePrintImporter PDF Importer?] * Test the XForms controller with component resource to have OCRable forms to collect this info === Rotary Club === Rotary Club are training 750-1000 volunteers to collect data. 1. We should be able to register volunteers, and assign them to geographic regions. This would help us query and know the number of people working in each geographic area. 2. Volunteers belonging to a group (like geographic area) could then be sent messages via SMS service. So an interface to let us do that that would be great. 3. When our volunteers go out, they would enter data about the status of inventory at their locations, and items required urgently. They would also be able to update the status of a shelter, in that they may setup a place as a shelter and provides its Lon/Lat, or they may remove a place as shelter for it may have been inundated too. 4. We want to record damages to people/life, and property. Currently, we can record life losses in Incident Reporting, while property losses can be registered in Situation Reports & Assessments. 5. We can also record loss to farm animal and cattle. There could be (a) field(s) to do that. Instead of going for a table of animal and then entering the number of lost animals, we could give an open text field. 6. We want to see the Situations, Assessments, Schools and Flood Reports to be visible on the map as well. Can that be done? 7. We would love to see an option where we could define a warehouse/shelter/school, where we could mention the inventory available there, and their count. This feature is available in Agasti. If provided, our volunteers would be able to trace themselves the items they need and where they are placed. 8. Missing Persons: * When adding a new missing person, we would need to provide his hometown (from where he was lost) and the location of his residence. Like someone could be missing from a camp/shelter in Peshawar, while his residence would be in Swat. * When reporting a missing person, we should be able to provide his photo too. This should be optional. * An option should be there, like a status/flag, to tell if the person has been found. Additional information like “where from” would be an added plus, but not essential. 9. When entering a shelter or inventory, we would like to identify the city/location where it is located. This is the first anchor of reference. Also, we should be allowed to (optionally) provide coordinates, or point the location on the map. That way, it should be visible on the map when someone takes a view of the map with shelter, inventory and incident overviews. This would be very helpful. 10. Since I can see the situation and incidents are different in the system, “Situation” should also be available in the map overlays. ==== Sync ==== Want to be able to collect data on offline laptops & sync to base * This means that the schema for this module is pretty fixed as we can't update remote laptops * Extra data can be incoporated into comments fields for transferring to new optional fields centrally by-hand * Can still develop UI tweaks to ease data entry (just won't be visible to remote laptops): Labels/Help * Can still develop Reporting functionality * Can still develop other modules * Power may be an issue, so best to have printed copies of the Assessment Tool as well * Sync process should be tested thoroughly (even if kept to a very simple Data upload facility) ==== SMS ==== * Outbound to alert teams (working with a local telco to get details) * SMS inbound for them to report incidents (separate to the general public whose reports we can pull from Ushahidi so can use the general shortcode) == After Action Notes == * Move to deployment_settings control: * Locations Hierarchy * Languages (For Local Location Names & Language Bar) * Enable ACLs (e.g. DVI, Editor, !MapAdmin) * Security Policy * RSS Feeds * Enabling Autocompletes (they're unnecessary for small deployments, but critical for big ones) * Define the autocompletes within the reusable fields like person_id & location_id * part of the rework to make them more reusbale through get_location_id() * Mapping * Make Feature Layers (i.e. Queries) definable in Service Catalogue * Fields: module, resource, layername, popup_label, marker * See if we can convert Mapping API to use a JS file in static which is merged with a bunch of JS vars written out in views * makes it faster to develop since no need to keep restarting server for module changes * makes it easier for OL devs to help out without needing to understand Python * May be hard due to so many different options available to us! * Break it up into snippets again... * Clustering * DRY instead of Copy/Paste * Cluster across Vector types (needed for changing filters without map-refresh anyway) * Can we just use allLayers for this? * Major rewrite? Do at same time as porting to JS with vars? (along with the refreshing of Vector layers without full server reload) * Rename javascript functions to s3_* to keep them tidy in the DOM * Make Index pages (& a space inside rheaders of other pages) into Wikis so that Editors can edit online docs more easily * Embed Potlatch & Wikipedia pages so that edits of this kind of data can be done 'upstream' in common sources ---- [wiki:Pakistan]