=== modified file 'dhis-2/dhis-web/dhis-web-mobile/src/main/webapp/WEB-INF/dhis-web-mobile-velocity/data-entry.vm' --- dhis-2/dhis-web/dhis-web-mobile/src/main/webapp/WEB-INF/dhis-web-mobile-velocity/data-entry.vm 2012-10-24 09:40:43 +0000 +++ dhis-2/dhis-web/dhis-web-mobile/src/main/webapp/WEB-INF/dhis-web-mobile-velocity/data-entry.vm 2012-10-24 15:15:23 +0000 @@ -157,11 +157,14 @@ $.mobile.showPageLoadingMsg(); - function renderFormTemplate(form) { + function renderFormTemplate(form, valueMap) { var tmpl = $( '#data-entry-template' ).html(); $( '#data-entry-page section[data-role="content"]' ).html( - _.template( tmpl, form ) + _.template( tmpl, { + 'form': form, + 'valueMap': valueMap + }) ); $( '#data-entry-page' ).trigger( 'pagecreate' ); @@ -169,21 +172,41 @@ $( '#send_button' ).bind( 'click', saveValues ); } - $.ajax({ - url: '../api/dataSets/' + Selected.dataSet + '/form', - data: { - ou: Selected.orgUnit, - pe: Selected.period - }, - dataType: 'json' - }).success(function(form) { - renderFormTemplate(form); - }).error(function() { + var dvs = { + dataSet: Selected.dataSet, + orgUnit: Selected.orgUnit, + period: Selected.period + }; + + var storedValues = fm.getDataValueSetValues(dvs); + + if( storedValues ) { + var valueMap = {}; + + _.each(storedValues.dataValues, function(val, idx) { + valueMap[val.dataElement + '-' + val.categoryOptionCombo] = val.value; + }); + var form = fm.form(Selected.dataSet); - renderFormTemplate(form); - }).complete(function() { + renderFormTemplate(form, valueMap); $.mobile.hidePageLoadingMsg(); - }); + } else { + $.ajax({ + url: '../api/dataSets/' + Selected.dataSet + '/form', + data: { + ou: Selected.orgUnit, + pe: Selected.period + }, + dataType: 'json' + }).success(function(form) { + renderFormTemplate(form); + }).error(function() { + var form = fm.form(Selected.dataSet); + renderFormTemplate(form); + }).complete(function() { + $.mobile.hidePageLoadingMsg(); + }); + } } function saveValues() { @@ -266,15 +289,23 @@