Difference between revisions of "CAO"

From mn/ifi/inf5750
Jump to: navigation, search
Line 34: Line 34:
 
=== Required features ===
 
=== Required features ===
  
*No page reloading, everything happens on one single page
+
*<span style="background-color:#00ff00;">No page reloading, everything happens on one single page</span>
 
*Always show details view on right side
 
*Always show details view on right side
*Press element for accordion dropdown editor with requred fields
+
*<span style="background-color:#00ff00;">Press element for accordion dropdown editor with requred fields</span>
 
*Button for "more settings" in dropdown editor, which expands the dropdown, showing all fields
 
*Button for "more settings" in dropdown editor, which expands the dropdown, showing all fields
 
*Save button which closes the edit window and refreshes the details view
 
*Save button which closes the edit window and refreshes the details view
*Real time filtering of all elements, without buttons
+
*<span style="background-color:#00ff00;">Real time filtering of all elements, without buttons</span>
*Design is based on the existing DHIS2 application "Data Elements"
+
*<span style="background-color:#00ff00;">Design is based on the existing DHIS2 application "Data Elements"</span>
 
*Display 50 elements by default. Scroll to load more content.
 
*Display 50 elements by default. Scroll to load more content.
*Two buttons to change between Aggregate and Tracker
+
*<span style="background-color:#00ff00;">Two buttons to change between Aggregate and Tracker</span>
*Adding, removing and editing functionality must be kept
+
*Adding, removing, editing and cloning functionality must be kept
  
 
=== Ideas and issues ===
 
=== Ideas and issues ===

Revision as of 11:19, 10 November 2014

Overview

Project name: Data element bulk editor

The current "Data Elements" application is an editor for data elements ment to be used when creating forms. All kinds of data elements can be added, but all elements contains the same properties. Some properties are required, some are optional. The current application of DHIS2 resides only on server side, appeares outdated and slightly cluttered. Some features are lacking and some are poorly implemented.

  • Edit button loads separate page
  • There are several pages, with x elements on each page
  • Filtering does not work in real time
  • Saving must be done manually
  • Users of the application claim it is too complicated to use

A system to make it easier to bulk edit data elements is necessary.

The task of this project is to create a brand new application, based on the same design as the existing. This will be implemented in HTML, CSS and Javascript, by utilizing the DHIS2 web API.

Architecture and technologies

  • HTML, CSS and Javascript
  • jQuery
  • Bootstrap for design
  • JSON? (This is perhaps implicit?)
  • DHIS2 Web API

Group members

  • Andreas Gansen
  • Ola Græsli
  • Chris Risvik
  • Nikolaos Fatis

Implementation

Required features

  • No page reloading, everything happens on one single page
  • Always show details view on right side
  • Press element for accordion dropdown editor with requred fields
  • Button for "more settings" in dropdown editor, which expands the dropdown, showing all fields
  • Save button which closes the edit window and refreshes the details view
  • Real time filtering of all elements, without buttons
  • Design is based on the existing DHIS2 application "Data Elements"
  • Display 50 elements by default. Scroll to load more content.
  • Two buttons to change between Aggregate and Tracker
  • Adding, removing, editing and cloning functionality must be kept

Ideas and issues

  • Real time filtering may be slow when accessing a high number of elements SOLVED
  • Filtering has to use all elements, thus load them or do a lookup somehow? SOLVED
  • We don't want popups. Use dropdown menus which expands. SOLVED
  • Currently, the if the "Name" header/button sorts alphabetically and reversed when clicked. Should this be implemented as well? SOLVED/na
  • Aggregate and tracker buttons are a bit slow, due to having to reload all the elements into the view. SOLVED
  • If we want to have a details view which changes on mouseover, we need to either load from server each time, or load a json-file with everything upon page load. Neither are very tempting atm. 
  • Get it running on mobile browsers

Screenshots and mockups

Pic.png

Schedule and progress

  • Create bitbucket repository, 27. oct  Chris
  • Write basic wiki, 27. oct Chris
  • Create template for web page and push to git,  27. oct Ola
  • Added mockups and decided on design and functionality, 29. oct Andreas and Chris
  • Populating list from json-file 5. nov Andreas
  • Implented navbar and filter functionality 6. nov Chris
  • Cleanup, performance tweaking and added edit form functionality 7. nov Ola
  • Implement edit functionality with buttons and stuff Niko
  • Implement a function to load more content.
  • Implementing details view with mouseover 

Milestones

  • Milestone 1: 1st November: Document features and architecture on Wiki
  • Milestone 2: 15th November: First bare-bone versjon - static HTML and Uploadable as DHIS web app
  • Milestone 3: 30th November: Finished, if applicable also with mobile app
  • Final delivery: ?
  • Presentation: ?

Repository

git@bitbucket.org:chryzsh/bulkeditor.git

roland@ifi.uio.no has been added with read access

Resources


Deployment

- Create zip file, use zip -r

- Search "Management" in Apps at the demo server.

- upload the zip file.

- The source is than extracted to: /var/lib/tomcat/webapps/ROOT/apps/