dhis2-devs team mailing list archive
-
dhis2-devs team
-
Mailing list archive
-
Message #23942
[Branch ~dhis2-devs-core/dhis2/trunk] Rev 11676: moved ouwt-ou list over to new storage engine (version, roots, selected will remain with old stor...
------------------------------------------------------------
revno: 11676
committer: Morten Olav Hansen <mortenoh@xxxxxxxxx>
branch nick: dhis2
timestamp: Thu 2013-08-15 16:45:52 +0200
message:
moved ouwt-ou list over to new storage engine (version, roots, selected will remain with old storage). Does not handle async yet. Also fixed get/save datavalues in data-entry.
modified:
dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/ouwt/ouwt.js
dhis-2/dhis-web/dhis-web-dataentry/src/main/webapp/dhis-web-dataentry/javascript/form.js
--
lp:dhis2
https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk
Your team DHIS 2 developers is subscribed to branch lp:dhis2.
To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription
=== modified file 'dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/ouwt/ouwt.js'
--- dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/ouwt/ouwt.js 2013-08-15 09:38:55 +0000
+++ dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/ouwt/ouwt.js 2013-08-15 14:45:52 +0000
@@ -23,23 +23,29 @@
var dhis2 = dhis2 || {};
dhis2.ou = dhis2.ou || {};
+var OU_ROOTS_KEY = "ouRoots";
+var OU_VERSION_KEY = "ouVersion";
+var OU_SELECTED_KEY = "ouSelected";
+
dhis2.ou.store = new dhis2.storage.Store( {
name: 'dhis2',
- objectStores: [ {
- name: 'ou',
- adapters: [ /* dhis2.storage.IndexedDBAdapter, */ dhis2.storage.DomLocalStorageAdapter, dhis2.storage.InMemoryAdapter ]
- }, {
- name: 'ouPartial',
- adapters: [ /* dhis2.storage.IndexedDBAdapter, */ dhis2.storage.DomSessionStorageAdapter, dhis2.storage.InMemoryAdapter ]
- }, {
- name: 'ouConfig',
- adapters: [ /* dhis2.storage.IndexedDBAdapter, */ dhis2.storage.DomSessionStorageAdapter, dhis2.storage.InMemoryAdapter ]
- } ]
+ objectStores: [
+ {
+ name: 'ou',
+ adapters: [ dhis2.storage.DomLocalStorageAdapter ]
+ },
+ {
+ name: 'ouPartial',
+ adapters: [ dhis2.storage.DomLocalStorageAdapter ]
+ }
+ ]
} );
$( document ).ready( function ()
{
- selection.load();
+ dhis2.ou.store.open().done( function() {
+ selection.load();
+ } );
} );
// -----------------------------------------------------------------------------
@@ -87,7 +93,7 @@
};
this.getSelected = function() {
- var selected = sessionStorage[getTagId( "Selected" )];
+ var selected = sessionStorage[ OU_SELECTED_KEY ];
selected = selected ? JSON.parse( selected ) : [];
selected = $.isArray( selected ) ? selected : [ selected ];
@@ -95,73 +101,70 @@
};
this.clearSelected = function() {
- sessionStorage.removeItem( getTagId( "Selected" ) );
+ sessionStorage.removeItem( OU_SELECTED_KEY );
};
this.setSelected = function( selected ) {
- sessionStorage[getTagId( "Selected" )] = JSON.stringify( selected );
+ sessionStorage[ OU_SELECTED_KEY ] = JSON.stringify( selected );
};
this.selectedExists = function() {
- return sessionStorage[getTagId( "Selected" )] != null;
+ return sessionStorage[ OU_SELECTED_KEY ] != null;
};
this.getRoots = function() {
- var roots = localStorage[getTagId( "Roots" )];
+ var roots = localStorage[ OU_ROOTS_KEY ];
return roots ? JSON.parse( roots ) : [];
};
- this.rootsExists = function() {
- return localStorage[getTagId( "Roots" )] != null;
- };
-
this.setRoots = function(roots) {
- localStorage[getTagId( "Roots" )] = JSON.stringify( roots );
+ localStorage[ OU_ROOTS_KEY ] = JSON.stringify( roots );
};
this.getVersion = function() {
- return localStorage[getTagId( "Version" )] ? localStorage[getTagId( "Version" )] : 0;
+ return localStorage[ OU_VERSION_KEY ] ? localStorage[ OU_VERSION_KEY ] : 0;
};
this.setVersion = function( version ) {
- localStorage[getTagId( "Version" )] = version;
+ localStorage[ OU_VERSION_KEY ] = version;
};
this.clearVersion = function() {
- localStorage.removeItem( getTagId( "Version" ) );
- };
-
- this.versionExists = function() {
- return localStorage[getTagId( "Version" )] != null;
+ localStorage.removeItem( OU_VERSION_KEY );
};
this.getOrganisationUnits = function() {
- var organisationUnits = localStorage["organisationUnits"];
- return organisationUnits ? JSON.parse( organisationUnits ) : {};
+ var organisationUnits = {};
+
+ dhis2.ou.store.getAll( 'ou' ).done( function( all ) {
+ $.each( all, function( i, item ) {
+ organisationUnits[item.id] = item;
+ } );
+ } );
+
+ return organisationUnits;
};
this.setOrganisationUnits = function( organisationUnits ) {
- if( organisationUnits ) {
- localStorage["organisationUnits"] = JSON.stringify( organisationUnits );
- } else {
- localStorage["organisationUnits"] = JSON.stringify( {} );
- }
+ organisationUnits = organisationUnits ? _.values( organisationUnits ) : [];
+ return dhis2.ou.store.setAll( 'ou', organisationUnits );
};
this.getPartialOrganisationUnits = function() {
- return sessionStorage['organisationUnits'] ? JSON.parse( sessionStorage['organisationUnits'] ) : {};
+ var organisationUnits = {};
+
+ dhis2.ou.store.getAll( 'ouPartial' ).done( function( all ) {
+ $.each( all, function( i, item ) {
+ organisationUnits[item.id] = item;
+ } );
+ } );
+
+ return organisationUnits;
};
this.setPartialOrganisationUnits = function( organisationUnits ) {
- if( organisationUnits ) {
- sessionStorage["organisationUnits"] = JSON.stringify( organisationUnits );
- } else {
- sessionStorage["organisationUnits"] = JSON.stringify( {} );
- }
- };
-
- this.organisationUnitsExists = function() {
- return localStorage["organisationUnits"] != null;
+ organisationUnits = organisationUnits ? _.values( organisationUnits ) : [];
+ return dhis2.ou.store.setAll( 'ouPartial', organisationUnits );
};
this.ajaxOrganisationUnits = function( versionOnly, format ) {
@@ -401,7 +404,7 @@
};
this.responseReceived = function() {
- if( !listenerFunction ) {
+ if( typeof listenerFunction !== 'function') {
return;
}
=== modified file 'dhis-2/dhis-web/dhis-web-dataentry/src/main/webapp/dhis-web-dataentry/javascript/form.js'
--- dhis-2/dhis-web/dhis-web-dataentry/src/main/webapp/dhis-web-dataentry/javascript/form.js 2013-08-13 10:22:42 +0000
+++ dhis-2/dhis-web/dhis-web-dataentry/src/main/webapp/dhis-web-dataentry/javascript/form.js 2013-08-15 14:45:52 +0000
@@ -115,7 +115,7 @@
$( '#orgUnitTree' ).one( 'ouwtLoaded', function()
{
log( 'Ouwt loaded' );
- organisationUnits = JSON.parse( localStorage['organisationUnits'] );
+ organisationUnits = selection.getOrganisationUnits();
loadMetaData();
} );
@@ -1058,7 +1058,7 @@
{
periodId : periodId,
dataSetId : dataSetId,
- organisationUnitId : currentOrganisationUnitId,
+ organisationUnitId : currentOrganisationUnitId[0],
multiOrganisationUnit: multiOrganisationUnit
},
dataType: 'json',