| | 108 | |
| | 109 | === !ToDo === |
| | 110 | * Get the newly-developed features merged into ODK Trunk: |
| | 111 | * jaxdroid work on Sahana compatibility |
| | 112 | * access to Image Library |
| | 113 | * Wireless location fix |
| | 114 | * SMS form submission |
| | 115 | |
| | 116 | * Dropdown support within the forms (which will be difficult to FKs) |
| | 117 | |
| | 118 | * Client-side validation where possible (which probably needs to be added/maintained manually...but we need somewhere to put these) |
| | 119 | |
| | 120 | * Can the client currently understand validation errors & present these back to the user? |
| | 121 | * We currently send back JSON |
| | 122 | |
| | 123 | * Send Images |
| | 124 | * Generate appropriate XForms from image_id fields (ideally using XSLT) |
| | 125 | * [http://code.google.com/p/opendatakit/source/browse/Geo+Tagger.xml?repo=forms&r=34910a944c745232d285d2caecf876c3dcae9674 GeoTagger] is a sample Form for ODK which can be used as a template for what needs to be produced by {{{controllers/xforms.py}}} |
| | 126 | * Provide an interface in Sahana through which users can submit these images via ODK Collect & have them stored (in the doc_image table, referenced by the image_id foreign key) |
| | 127 | * {{{controllers/xforms.py}}} |
| | 128 | * ideally use an XSLT to convert the XForm to S3XML |
| | 129 | * See [https://docs.google.com/document/d/1SSl8vtA7RYBrrXmPuqQvA7rQLyzv77ESZjB7KH9s6H4/edit?hl=en Sahana Eden Mobile Photo Upload Blueprint] for additional information. |
| | 130 | |
| | 131 | * Send Location Coordinates |
| | 132 | * Generate appropriate XForms from location_id fields (ideally using XSLT) |
| | 133 | * [http://code.google.com/p/opendatakit/source/browse/Geo+Tagger.xml?repo=forms&r=34910a944c745232d285d2caecf876c3dcae9674 GeoTagger] is a sample Form for ODK which can be used as a template for what needs to be produced by {{{controllers/xforms.py}}} |
| | 134 | * Provide an interface in Sahana through which users can submit these coordinates via ODK Collect & have them stored (in the gis_location table, referenced by the location_id foreign key) |
| | 135 | * {{{controllers/xforms.py}}} |
| | 136 | * ideally use an XSLT to convert the XForm to S3XML |
| | 137 | * Sahana's Location should have the lower accuracy marked when fix was obtained wirelessly: either source or ce fields (ideally the latter if we have a numeric value available). |
| | 138 | |
| | 139 | * Support Component Tabs for a multi-table form |
| | 140 | |
| | 141 | * SMS (building on the current NCSU code) |
| | 142 | * Need to give user feedback that SMS is sent when HTTP fails (currently they just get a 'Submission failed' message!) |
| | 143 | * Should really give them an optional Prompt |
| | 144 | * Need to compress the form submissions |
| | 145 | * Use the [http://bitbucket.org/javarosa/javarosa/wiki/SMSSendingAPI OpenRosa SMS API] |
| | 146 | * Strip out empty/default fields |
| | 147 | * encode the characters more efficiently |
| | 148 | * Need to authenticate the form submissions |
| | 149 | * Needs to work on the Sahana server side with more than just the controllers.msg.tropo() method (like sms_handler_modem) |
| | 150 | * Should have optional response notifications per complete form to say one of: |
| | 151 | * Submission Successful: URL of record: http://..../ |
| | 152 | * Validator Error: xxx |
| | 153 | * Need to delete the submitted form from the mobile device when it the submission was confirmed successful. |
| | 154 | * The [MobileAndroid#SMSStructure current multi-part transmission] uses a very custom sequence number, which should be made more standard (& take up less room) |
| | 155 | * Want to be able to download Forms via SMS |
| | 156 | * Push updates from server |
| | 157 | * Pull requests from client |
| | 158 | |
| | 159 | * QR Code to download the Trunk version (which should update from this version & not default ODK location) |
| | 160 | * UserGuidelines on creating/embedding a custom QR code for a deployment-specific version |
| | 161 | |
| | 162 | * Have the list of downloadable XForms more easily configurable (currently hardcoded in controllers/xforms.py formList()) |
| | 163 | * e.g. Use the same approach as Importer does by marking resources in the modules list in 000_config.py |
| | 164 | |
| | 165 | |