1 | | = Tasks = |
2 | | [[TOC]] |
3 | | |
4 | | These are quick tasks suitable for GCI or Hackathons. |
5 | | |
6 | | For other tasks, see: |
7 | | * [wiki:Contribute/Code] |
8 | | |
9 | | == Easy Tasks == |
10 | | ''Tasks for beginning coders, or if new to Python or web services'' |
11 | | |
12 | | === Action !ToDos in code === |
13 | | NOTE: The line reference may no longer be correct, so the code for {{{@ToDo}}} or the variable names, e.g.: |
14 | | * Migrate represents to S3Represent |
15 | | * project_assignee_represent (https://github.com/flavour/eden/blob/master/modules/s3db/project.py#L4928), for an example see: project_TaskRepresent (https://github.com/flavour/eden/blob/master/modules/s3db/project.py#L5677) or search for other uses of S3Represent. |
16 | | * Migrate custom methods to use settings.get_ui_formstyle() |
17 | | * S3ImportPoI (https://github.com/flavour/eden/blob/master/modules/s3/s3gis.py#L8634) |
18 | | * Extend S3AddPersonWidget2 to have an option to enter names into 2-3 different fields instead of a single field |
19 | | * https://github.com/flavour/eden/blob/master/modules/s3/s3widgets.py#L619 |
20 | | * https://github.com/flavour/eden/blob/master/static/scripts/S3/s3.add_person.js |
21 | | * Complete S3UpdateLocation() |
22 | | * https://github.com/flavour/eden/blob/master/modules/s3/s3track.py#L707 |
23 | | * e.g. with the event_resource model: https://github.com/flavour/eden/blob/master/modules/s3db/event.py#L933 |
24 | | * For all {{@ToDo}}}s see: https://github.com/flavour/eden/search?q=%22%40todo%22&type=Code |
25 | | === Fix a Ticket === |
26 | | Pick a ticket (which could be a bug or an enhancement) from http://eden.sahanafoundation.org/report/1. First ensure that you can repeat this in your local instance - if not: MODIFY TICKET > resolve as > worksforme. If the bug is still present, assign the ticket to yourself. Then fix the bug or implement the feature. Submit your code as a patch to the ticket on Trac, then notify the Sahana-Eden mailing list about your patch for verification. Please submit as a patch file, not zipped. That makes it easier to review without downloading and unzipping. Alternatively (preferred method) push your code in a single commit to your Github repository and make a pull request. |
27 | | |
28 | | Easy tickets to get started on are listed here: http://eden.sahanafoundation.org/report/18 |
29 | | |
30 | | There are also a number of tasks for the [wiki:Deployments/Philippines/Haiyan Hilippines Haiyan Response] listed here: https://hackpad.com/Typhoon-Haiyan-opXJaZLz8gu which can be completed (these can count towards GCI). |
31 | | |
32 | | When you are working on the ticket as a part of GCI task, first add a keyword to the ticket "GCI TASK". If you unclaim the task or want to work on another ticket please remove the keyword. |
33 | | |
34 | | === Resolve an issue from a Disaster Response === |
35 | | During disasters the Sahana Community does a lot of work to deploy Sahana to help affected communities. Often there is more work than can be completed - but you can help to address some of these issues before the next disaster: |
36 | | * [https://hackpad.com/Typhoon-Haiyan-opXJaZLz8gu Typhoon Haiyan] |
37 | | |
38 | | === Common Operational Datasets === |
39 | | * Purpose and schemas for common datasets (schemas are at end): http://oneresponse.info/resources/imtoolbox/publicdocuments/IASC%20Guidelines%20on%20Common%20Operational%20Datasets%20in%20Disaster%20Preparedness%20and%20Response%201%20Nov.%202010.pdf |
40 | | * Add model definitions for these schemas. This work was started but is not included in the current version of Eden. An example from an old version is here: [http://bazaar.launchpad.net/~flavour/sahana-eden/trunk/view/head:/models/08_assess.py#L1825 models/08_assess.py] |
41 | | * Think about how we could make use of them. |
42 | | * Display on the Map? |
43 | | * Have Reports which compare the baseline & situational assessments? |
44 | | |
45 | | === GIS/Mapping [multiple tasks] === |
46 | | These are various GIS/Mapping Tasks: |
47 | | * [=#FeaturePopupWindow]'''Make the display_feature() & display_features() popup a Window''' instead of opening in a DIV |
48 | | * This was working in FF before: http://eden.sahanafoundation.org/browser/views/sahana_scripts_min.html?rev=836#L39 |
49 | | * [=#LayerTree]'''[http://dev.geoext.org/trunk/geoext/examples/tree.html Layer Tree]''' |
50 | | * [=#MapPreview]'''Map Preview when !Lat/Lon set in pr/person/presence''' (auto or not) |
51 | | |
52 | | [DeveloperGuidelines/GIS Use the Mapping API to:] |
53 | | * [=#ColorCodedMaps]'''Color coded maps according to Geo-data''' (threats, needs, etc) |
54 | | * [=#VariableSizedMarkers]'''Place variable sized markers on the map in proportion to data''' (number of people in camp, number of families needing food) |
55 | | |
56 | | === !Lat/Lon converter [GCI] === |
57 | | Portuguese Volunteer Firefighters ([Deployments/Portugal/Bombeiros Bombeiros]) use Eden. |
58 | | |
59 | | They get given !Lat/Lon coordinates in degrees minutes seconds, but Eden stores internally as decimal degrees. |
60 | | |
61 | | Tasks: |
62 | | * Create a validator (& possibly widget) to allow entry of this format (allowing for variations in input format like spaces and absence of the degree symbol, which most keyboards don't have) & have it converted to decimal degrees for storage |
63 | | |
64 | | === Scale Uploaded Images [GCI] === |
65 | | When images are uploaded we can limit the size, however larger pictures should be scaled instead. Example: personal profile picture. |
66 | | |
67 | | * [GCI task, #1017] UI to to allow user to crop image (this would be a widget: {{{modules/s3/s3widgets.py}}}) |
68 | | * Ideally the image would be resized client-side to make it faster to upload...this might be hard with pure JS, so would need to be Flash? |
69 | | * Maybe: http://labs.corefive.com/Projects/FileManager/ (e.g. from http://code.google.com/p/django-ckeditor-filemanager/ ) |
| 1 | See: Contribute/Code |