=== modified file 'dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-capture/event-capture.appcache' --- dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-capture/event-capture.appcache 2015-03-27 15:20:49 +0000 +++ dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-capture/event-capture.appcache 2015-05-22 10:23:04 +0000 @@ -68,6 +68,7 @@ ../dhis-web-commons/javascripts/angular/plugins/angularLocalStorage.js ../dhis-web-commons/javascripts/angular/plugins/angular-translate.min.js ../dhis-web-commons/javascripts/dhis2/dhis2.angular.directives.js +../dhis-web-commons/javascripts/dhis2/dhis2.angular.validations.js ../dhis-web-commons/javascripts/dhis2/dhis2.angular.filters.js ../dhis-web-commons/javascripts/dhis2/dhis2.angular.services.js ../dhis-web-commons/javascripts/dhis2/dhis2.angular.controllers.js @@ -105,9 +106,10 @@ ../icons/function-log-out.png ../icons/function-about-dhis2.png -../dhis-web-commons/paging/serverside-pagination.html -../dhis-web-commons/customform/custom-form.html -../dhis-web-commons/coordinatecapture/map.html +../dhis-web-commons/angular-forms/serverside-pagination.html +../dhis-web-commons/angular-forms/custom-form.html +../dhis-web-commons/angular-forms/map.html +../dhis-web-commons/angular-forms/error-messages.html views/column-modal.html === modified file 'dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-capture/i18n/i18n_app.properties' --- dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-capture/i18n/i18n_app.properties 2015-04-30 11:28:47 +0000 +++ dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-capture/i18n/i18n_app.properties 2015-05-22 10:23:04 +0000 @@ -31,7 +31,7 @@ required=Required int_required=Value must be a number string_required=Value must be a text -date_required=Value must be a date +date_required=Value must be date option_required=Value must be selected from drop-down bool_required=Value must be a boolean ok=Ok @@ -129,6 +129,8 @@ posInt=Positive Integer negInt=Negative Integer zeroPositiveInt=Zero or Positive Integer +latitude_required=Value must be between [-90 ... 90] +longitude_required=Value must be between [-180 ... 180] loading_tree=Loading orgunit tree loading_metadata=Loading meta-data future_date_not_allowed=Future date is not allowed === modified file 'dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-capture/index.html' --- dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-capture/index.html 2015-05-08 19:23:53 +0000 +++ dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-capture/index.html 2015-05-22 10:23:04 +0000 @@ -41,7 +41,8 @@ - + + @@ -74,6 +75,7 @@ + === modified file 'dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-capture/scripts/app.js' --- dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-capture/scripts/app.js 2015-01-28 19:03:29 +0000 +++ dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-capture/scripts/app.js 2015-05-22 10:23:04 +0000 @@ -3,33 +3,35 @@ /* App Module */ var eventCapture = angular.module('eventCapture', - ['ui.bootstrap', - 'ngRoute', - 'ngCookies', - 'eventCaptureDirectives', - 'eventCaptureControllers', - 'eventCaptureServices', - 'eventCaptureFilters', - 'd2Filters', - 'd2Directives', - 'd2Services', - 'd2Controllers', - 'angularLocalStorage', - 'pascalprecht.translate', - 'd2HeaderBar']) - + ['ui.bootstrap', + 'ngRoute', + 'ngCookies', + 'ngMessages', + 'eventCaptureDirectives', + 'eventCaptureControllers', + 'eventCaptureServices', + 'eventCaptureFilters', + 'd2Filters', + 'd2Directives', + 'd2Services', + 'd2Controllers', + 'angularLocalStorage', + 'pascalprecht.translate', + 'd2HeaderBar']) + .value('DHIS2URL', '..') -.config(function($routeProvider, $translateProvider) { - +.config(function ($routeProvider, $translateProvider) { + $routeProvider.when('/', { templateUrl: 'views/home.html', controller: 'MainController' }).otherwise({ - redirectTo : '/' + redirectTo: '/' }); - + $translateProvider.preferredLanguage('en'); + $translateProvider.useSanitizeValueStrategy('escaped'); $translateProvider.useLoader('i18nLoader'); - + }); \ No newline at end of file === modified file 'dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-capture/scripts/controllers.js' --- dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-capture/scripts/controllers.js 2015-05-07 08:21:29 +0000 +++ dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-capture/scripts/controllers.js 2015-05-22 10:23:04 +0000 @@ -10,7 +10,6 @@ function($scope, $modal, $timeout, - $translate, $anchorScroll, orderByFilter, SessionStorageService, @@ -27,7 +26,6 @@ GridColumnService, CustomFormService, ECStorageService, - ErrorMessageService, CurrentSelection, ModalService, DialogService, @@ -162,19 +160,19 @@ $scope.filterTypes['event_date'] = 'date'; $scope.filterText['event_date']= {}; - var errorMessages = {}; - errorMessages['eventDate'] = $translate('required'); + //var errorMessages = {}; + //errorMessages['eventDate'] = $translate('required'); angular.forEach($scope.selectedProgramStage.programStageDataElements, function(prStDe){ $scope.prStDes[prStDe.dataElement.id] = prStDe; - errorMessages[prStDe.dataElement.id] = ""; + /*errorMessages[prStDe.dataElement.id] = ""; if(prStDe.compulsory){ var msg = $translate('required'); if(prStDe.dataElement.type === 'int'){ msg = $translate(prStDe.dataElement.numberType)+ ' ' + $translate('required'); } errorMessages[prStDe.dataElement.id] = msg; - } + }*/ $scope.newDhis2Event[prStDe.dataElement.id] = ''; @@ -202,8 +200,6 @@ } $scope.newDhis2Event.eventDate = ''; - ErrorMessageService.setErrorMessages(errorMessages); - ProgramValidationService.getByProgram($scope.selectedProgram.id).then(function(pvs){ $scope.programValidations = pvs; $scope.loadEvents(); @@ -794,7 +790,7 @@ $scope.showMap = function(event){ var modalInstance = $modal.open({ - templateUrl: '../dhis-web-commons/coordinatecapture/map.html', + templateUrl: '../dhis-web-commons/angular-forms/map.html', controller: 'MapController', windowClass: 'modal-full-window', resolve: { @@ -831,6 +827,7 @@ }; $scope.isFormInvalid = function(){ + if($scope.outerForm.submitted){ return $scope.outerForm.$invalid; } @@ -857,11 +854,7 @@ return formIsInvalid; }; - - $scope.getErrorMessage = function(id){ - return ErrorMessageService.get(id); - }; - + $scope.formHasUnsavedData = function(){ if(angular.isObject($scope.currentEvent) && angular.isObject($scope.currentEventOriginialValue)){ return !angular.equals($scope.currentEvent, $scope.currentEventOriginialValue); @@ -880,4 +873,11 @@ $( "#orgUnitTree" ).removeClass( "disable-clicks" ); } }); + + $scope.interacted = function(field) { + if(field){ + return $scope.outerForm.submitted || field.$dirty; + } + return false; + }; }); \ No newline at end of file === modified file 'dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-capture/styles/style.css' --- dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-capture/styles/style.css 2015-04-20 11:29:12 +0000 +++ dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-capture/styles/style.css 2015-05-22 10:23:04 +0000 @@ -908,21 +908,21 @@ } .map_context_menu{ - background-color:white; - border:1px solid gray; + background-color:white; + border:1px solid gray; z-index: 1000; } .map_context_menu_item{ - padding:3px 6px; + padding:3px 6px; } .map_context_menu_item:hover{ - background-color:#CCCCCC; + background-color:#CCCCCC; } .map_context_menu_separator{ - background-color:gray; - height:1px; - margin:0; - padding:0; + background-color:gray; + height:1px; + margin:0; + padding:0; } .disabled-context-menu-item { @@ -936,4 +936,9 @@ .small-horizonal-spacing{ margin-left: 5px; +} + +form.ng-submitted .ng-invalid { + border-color: red; + border-width: 2px; } \ No newline at end of file === modified file 'dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-capture/views/defaultForm.html' --- dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-capture/views/defaultForm.html 2015-05-08 18:38:58 +0000 +++ dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-capture/views/defaultForm.html 2015-05-22 10:23:04 +0000 @@ -24,31 +24,35 @@ {{selectedProgramStage.reportDateDescription ? selectedProgramStage.reportDateDescription : 'incident_date'| translate }}* - - {{getErrorMessage('eventDate')}} + ng-model-options="{ updateOn: 'blur' }" + d2-date-validator + name="eventDate" + input-field-id='eventDate' + style="width:99%;"> +
+
{{'latitude'| translate}} - - {{'int_required'| translate}} [-90 ... 90] +
+
@@ -56,17 +60,17 @@ {{'longitude'| translate}} - - {{'int_required'| translate}}[-180 ... 180] +
+
- - + {{eventGridColumn.name}}* @@ -78,11 +82,11 @@
-
- {{getErrorMessage(eventGridColumn.id)}} + +
+
@@ -164,18 +173,8 @@
- - - - - - - - +
- {{'data_element'| translate}} - - {{'value'| translate}} -
+ @@ -208,13 +210,14 @@ @@ -223,13 +226,14 @@ @@ -247,19 +251,19 @@ - + + {{prStDes[de.dataElement.id].dataElement.formName ? prStDes[de.dataElement.id].dataElement.formName : prStDes[de.dataElement.id].dataElement.name}}* @@ -374,7 +383,6 @@ -
@@ -385,8 +393,7 @@ - - {{'form_invalid' | translate}} - + +
{{'form_invalid' | translate}}
=== modified file 'dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-capture/views/ec-custom-form.html' --- dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-capture/views/ec-custom-form.html 2015-04-20 11:29:12 +0000 +++ dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-capture/views/ec-custom-form.html 2015-05-22 10:23:04 +0000 @@ -13,29 +13,34 @@ + {{'latitude'| translate}} @@ -43,18 +48,19 @@ {{'longitude'| translate}}
{{'form_id' | translate}} @@ -196,10 +195,13 @@ ng-model="currentEvent.eventDate" ng-disabled="editingEventInFull" ng-required="true" + ng-model-options="{ updateOn: 'blur' }" + d2-date-validator name="eventDate" input-field-id='eventDate' style="width:99%;"> - {{getErrorMessage('eventDate') | translate}} +
+
- {{'int_required'| translate}} [-90 ... 90] +
+
- {{'int_required'| translate}}[-180 ... 180] +
+
- {{prStDes[de.dataElement.id].dataElement.formName ? prStDes[de.dataElement.id].dataElement.formName : prStDes[de.dataElement.id].dataElement.name}}* -
-
- {{getErrorMessage('eventDate')}} + placeholder="{{dhis2CalendarFormat.keyDateFormat}}" + d2-date + max-date='0' + ng-model="currentEvent.eventDate" + ng-disabled="editingEventInFull" + ng-required="true" + ng-model-options="{ updateOn: 'blur' }" + d2-date-validator + name="eventDate" + input-field-id='eventDate' + style="width:99%;"> +
+
- {{'latitude'| translate}} - - {{'int_required'| translate}} [-90 ... 90] +
+
- - {{'int_required'| translate}}[-180 ... 180] +
+
-
+

@@ -93,6 +99,6 @@ - {{'form_invalid' | translate}} +
{{'form_invalid' | translate}}
\ No newline at end of file === removed directory 'dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/coordinatecapture' === removed file 'dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/coordinatecapture/map.html' --- dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/coordinatecapture/map.html 2015-05-08 19:45:51 +0000 +++ dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/coordinatecapture/map.html 1970-01-01 00:00:00 +0000 @@ -1,15 +0,0 @@ - - - \ No newline at end of file === removed directory 'dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/customform' === removed file 'dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/customform/custom-form.html' --- dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/customform/custom-form.html 2014-12-08 16:37:23 +0000 +++ dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/customform/custom-form.html 1970-01-01 00:00:00 +0000 @@ -1,1 +0,0 @@ - \ No newline at end of file === removed file 'dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/angular/plugins/angular-translate-loader-static-files.min.js' --- dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/angular/plugins/angular-translate-loader-static-files.min.js 2014-03-17 14:48:42 +0000 +++ dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/angular/plugins/angular-translate-loader-static-files.min.js 1970-01-01 00:00:00 +0000 @@ -1,20 +0,0 @@ -angular.module("pascalprecht.translate") - .factory("$translateStaticFilesLoader", ["$q", "$http", function(a, b) { - return function(c) { - if (!c || !c.prefix || !c.suffix) - throw new Error( - "Couldn't load static files, no prefix or suffix specified!"); - var d = a.defer(); - return b( - { - url : [ c.prefix, c.key, c.suffix ] - .join(""), - method : "GET", - params : "" - }).success(function(a) { - d.resolve(a) - }).error(function() { - d.reject(c.key) - }), d.promise - } -} ]); \ No newline at end of file === removed file 'dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/angular/plugins/angular-translate-loader-url.min.js' --- dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/angular/plugins/angular-translate-loader-url.min.js 2014-03-17 14:48:42 +0000 +++ dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/angular/plugins/angular-translate-loader-url.min.js 1970-01-01 00:00:00 +0000 @@ -1,26 +0,0 @@ -angular - .module("pascalprecht.translate") - .factory( - "$translateUrlLoader", - [ - "$q", - "$http", - function(a, b) { - return function(c) { - if (!c || !c.url) - throw new Error( - "Couldn't use urlLoader since no url is given!"); - var d = a.defer(); - return b({ - url : c.url, - params : { - lang : c.key - }, - method : "GET" - }).success(function(a) { - d.resolve(a) - }).error(function() { - d.reject(c.key) - }), d.promise - } - } ]); \ No newline at end of file === removed file 'dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/paging/serverside-pagination.html' --- dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/paging/serverside-pagination.html 2015-04-16 14:19:23 +0000 +++ dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/paging/serverside-pagination.html 1970-01-01 00:00:00 +0000 @@ -1,52 +0,0 @@ -
- - - - - - - - - - - - -
- {{'total_number_of_pages'| translate}}: {{pager.pageCount}} - - {{'rows_per_page'| translate}}: - - {{'jump_to_page'| translate}}: -

-
- - - «« - - - « - - - - «« - « - - - {{i + 1}} - - - - - » - - - »» - - - - » - »» - -
-
-
\ No newline at end of file