Difference between revisions of "(APE) Geolocation data entry"
(→Dividing tasks) |
|||
(25 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
= Team = | = Team = | ||
+ | *Alexander Eismont | ||
+ | *Peter Ludvik Eidsvik | ||
*Eivind Lindbråten | *Eivind Lindbråten | ||
− | + | ||
− | |||
Code: https://code.launchpad.net/~ape-inf5750 | Code: https://code.launchpad.net/~ape-inf5750 | ||
Line 13: | Line 14: | ||
*show a map of the current location of the user | *show a map of the current location of the user | ||
*let users choose a location | *let users choose a location | ||
− | *fill out a form for | + | *fill out a form for selected program and organization unit |
*let users save the location and the filled out form | *let users save the location and the filled out form | ||
*show all of the saved data on the map | *show all of the saved data on the map | ||
− | = | + | = Dividing tasks = |
− | + | These are the main tasks each member has done: | |
− | + | * Alexander: Map functions, get information about programs, org units and programstages | |
+ | * Peter: Event handling | ||
+ | * Eivind: Webapp layout, popup input window and event table | ||
− | + | = Design = | |
− | |||
− | |||
− | |||
− | |||
− | == | + | == Initial page == |
− | [[Image: | + | [[Image:Geo_loc_init_v2.png|400px|alt = initial image]] |
− | + | The image above shows the initial layout of the webapp. | |
+ | |||
+ | [[Image:Geo_loc_choose.png|400px|alt = choose program and org unit]] | ||
− | + | The webapp contains a simple map and the option to choose the "program". This enables the option to select organizations that is available for the chosen program. | |
− | + | == List of events == | |
− | + | [[Image:Geo_loc_list_v2.png|400px|alt = event list]] | |
− | + | If there are events at the organization, we retrieve a list of the events. The table containing the events has several functionalities tied to it: | |
+ | * A search function (top right). | ||
+ | * Sort by column (in each column header). | ||
+ | * Show different amount of events/records per page (top left). | ||
+ | * Scroll through pages (bottom right). | ||
− | == | + | == Markers on the map == |
− | + | [[Image:Geo_loc_marker.png|400px|alt = sketch image 4]] | |
− | + | For events that contains location, a marker is shown on the map. The markers are clickable, and will contain information about the event. | |
= Architecture<br> = | = Architecture<br> = | ||
Line 54: | Line 59: | ||
Twitter Bootstrap is used for good and sensible default styling of elements as well as for some Javascript functionality, e.g. modal windows. | Twitter Bootstrap is used for good and sensible default styling of elements as well as for some Javascript functionality, e.g. modal windows. | ||
+ | |||
+ | dataTables is a plugin for Jquery that will make table handling a lot easier. It will automatically give us pagination, search feature, column sorting and function for retrieving row and column number of cell number which is beeing clicked, which is very handy. | ||
The map will be delivered by Google's Map API, and the data from DHIS will be requested by ajax calls and returned as Json data, which will populate our map and tables. | The map will be delivered by Google's Map API, and the data from DHIS will be requested by ajax calls and returned as Json data, which will populate our map and tables. | ||
Line 64: | Line 71: | ||
*CSS | *CSS | ||
*JavaScript | *JavaScript | ||
+ | *JQuery | ||
*AJAX | *AJAX | ||
*Json | *Json | ||
+ | *Google Maps API | ||
*Twitter Bootstrap — for good styling of elements | *Twitter Bootstrap — for good styling of elements | ||
− | * | + | * dataTables — Plugin for Jquery for easier table handling |
− | |||
== Features == | == Features == | ||
Line 76: | Line 84: | ||
*Responsive web design — targeted for mobile and desktop screens | *Responsive web design — targeted for mobile and desktop screens | ||
− | = Milestones<br> = | + | = Milestones<br> = |
− | *Stage 1: Write about features, design and architecture, research DHIS | + | *Stage 1: <strike>Write about features, design and architecture, research DHIS</strike> |
− | *Stage 2: Implement frontend with dummy data | + | *Stage 2: <strike>Implement frontend with dummy data</strike> |
− | *Stage 3: Link front end with DHIS through API calls | + | *Stage 3: <strike>Link front end with DHIS through API calls</strike> |
Latest revision as of 23:14, 8 December 2013
Contents
Team
- Alexander Eismont
- Peter Ludvik Eidsvik
- Eivind Lindbråten
Code: https://code.launchpad.net/~ape-inf5750
Features
Our Web and Mobile application will have the following features:
- show a map of the current location of the user
- let users choose a location
- fill out a form for selected program and organization unit
- let users save the location and the filled out form
- show all of the saved data on the map
Dividing tasks
These are the main tasks each member has done:
- Alexander: Map functions, get information about programs, org units and programstages
- Peter: Event handling
- Eivind: Webapp layout, popup input window and event table
Design
Initial page
The image above shows the initial layout of the webapp.
The webapp contains a simple map and the option to choose the "program". This enables the option to select organizations that is available for the chosen program.
List of events
If there are events at the organization, we retrieve a list of the events. The table containing the events has several functionalities tied to it:
- A search function (top right).
- Sort by column (in each column header).
- Show different amount of events/records per page (top left).
- Scroll through pages (bottom right).
Markers on the map
For events that contains location, a marker is shown on the map. The markers are clickable, and will contain information about the event.
Architecture
We will mainly rely on HTML/CSS and Jquery for this project. The Jquery framework will allow us to write code much faster and cleaner — we don't have to reinvent the weel each time we need a spesific function. Mainly for simple ajax calls and element selection.
Twitter Bootstrap is used for good and sensible default styling of elements as well as for some Javascript functionality, e.g. modal windows.
dataTables is a plugin for Jquery that will make table handling a lot easier. It will automatically give us pagination, search feature, column sorting and function for retrieving row and column number of cell number which is beeing clicked, which is very handy.
The map will be delivered by Google's Map API, and the data from DHIS will be requested by ajax calls and returned as Json data, which will populate our map and tables.
We will try to make our site responsive so it will look great on mobile, tablet and desktop devices.
Technologies
- HTML
- CSS
- JavaScript
- JQuery
- AJAX
- Json
- Google Maps API
- Twitter Bootstrap — for good styling of elements
- dataTables — Plugin for Jquery for easier table handling
Features
- Android application — using Cordova
- iPhone application — using Cordova
- Responsive web design — targeted for mobile and desktop screens
Milestones
- Stage 1:
Write about features, design and architecture, research DHIS - Stage 2:
Implement frontend with dummy data - Stage 3:
Link front end with DHIS through API calls