60 | | * Dropdown support within the forms (which will be difficult to FKs) |
61 | | |
62 | | * Client-side validation where possible (which probably needs to be added/maintained manually...but we need somewhere to put these) |
63 | | |
64 | | * Can the client currently understand validation errors & present these back to the user? |
65 | | * We currently send back JSON |
66 | | |
67 | | * Send Images |
68 | | * Generate appropriate XForms from image_id fields (ideally using XSLT) |
69 | | * [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}}} |
70 | | * 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) |
71 | | * {{{controllers/xforms.py}}} |
72 | | * ideally use an XSLT to convert the XForm to S3XML |
73 | | * See [https://docs.google.com/document/d/1SSl8vtA7RYBrrXmPuqQvA7rQLyzv77ESZjB7KH9s6H4/edit?hl=en Sahana Eden Mobile Photo Upload Blueprint] for additional information. |
74 | | |
75 | | * Send Location Coordinates |
76 | | * Generate appropriate XForms from location_id fields (ideally using XSLT) |
77 | | * [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}}} |
78 | | * 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) |
79 | | * {{{controllers/xforms.py}}} |
80 | | * ideally use an XSLT to convert the XForm to S3XML |
81 | | * 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). |
82 | | |
83 | | * Support Component Tabs for a multi-table form |
84 | | |
85 | | * SMS (building on the current NCSU code) |
86 | | * Need to give user feedback that SMS is sent when HTTP fails (currently they just get a 'Submission failed' message!) |
87 | | * Should really give them an optional Prompt |
88 | | * Need to compress the form submissions |
89 | | * Use the [http://bitbucket.org/javarosa/javarosa/wiki/SMSSendingAPI OpenRosa SMS API] |
90 | | * Strip out empty/default fields |
91 | | * encode the characters more efficiently |
92 | | * Need to authenticate the form submissions |
93 | | * Needs to work on the Sahana server side with more than just the controllers.msg.tropo() method (like sms_handler_modem) |
94 | | * Should have optional response notifications per complete form to say one of: |
95 | | * Submission Successful: URL of record: http://..../ |
96 | | * Validator Error: xxx |
97 | | * Need to delete the submitted form from the mobile device when it the submission was confirmed successful. |
98 | | * The [MobileAndroid#SMSStructure current multi-part transmission] uses a very custom sequence number, which should be made more standard (& take up less room) |
99 | | * Want to be able to download Forms via SMS |
100 | | * Push updates from server |
101 | | * Pull requests from client |
102 | | |
103 | | * QR Code to download the Trunk version (which should update from this version & not default ODK location) |
104 | | * UserGuidelines on creating/embedding a custom QR code for a deployment-specific version |
105 | | |
106 | | * Have the list of downloadable XForms more easily configurable (currently hardcoded in controllers/xforms.py formList()) |
107 | | * e.g. Use the same approach as Importer does by marking resources in the modules list in 000_config.py |