=== modified file 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/components/dashboard/dashboard-controller.js' --- dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/components/dashboard/dashboard-controller.js 2014-07-07 11:46:45 +0000 +++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/components/dashboard/dashboard-controller.js 2014-07-07 15:04:56 +0000 @@ -17,9 +17,10 @@ //dashboard items $rootScope.biggerDashboardWidgets = []; - $rootScope.smallerDashboardWidgets = [];//{bigger: [], smaller: []}; + $rootScope.smallerDashboardWidgets = []; $rootScope.enrollmentWidget = {title: 'enrollment', view: "components/enrollment/enrollment.html", show: true, expand: true}; $rootScope.dataentryWidget = {title: 'dataentry', view: "components/dataentry/dataentry.html", show: true, expand: true}; + $rootScope.reportWidget = {title: 'report', view: "components/report/teiReport.html", show: true, expand: true}; $rootScope.selectedWidget = {title: 'current_selections', view: "components/selected/selected.html", show: false, expand: true}; $rootScope.profileWidget = {title: 'profile', view: "components/profile/profile.html", show: true, expand: true}; $rootScope.relationshipWidget = {title: 'relationships', view: "components/relationship/relationship.html", show: true, expand: true}; @@ -27,6 +28,7 @@ $rootScope.biggerDashboardWidgets.push($rootScope.enrollmentWidget); $rootScope.biggerDashboardWidgets.push($rootScope.dataentryWidget); + $rootScope.biggerDashboardWidgets.push($rootScope.reportWidget); $rootScope.smallerDashboardWidgets.push($rootScope.selectedWidget); $rootScope.smallerDashboardWidgets.push($rootScope.profileWidget); $rootScope.smallerDashboardWidgets.push($rootScope.relationshipWidget); === modified file 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/components/dashboard/dashboard-widgets-controller.js' --- dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/components/dashboard/dashboard-widgets-controller.js 2014-06-19 15:27:17 +0000 +++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/components/dashboard/dashboard-widgets-controller.js 2014-07-07 15:04:56 +0000 @@ -7,6 +7,6 @@ TranslationService.translate(); $scope.close = function () { - $modalInstance.close($scope.eventGridColumns); + $modalInstance.close(); }; }); \ No newline at end of file === modified file 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/components/dataentry/dataentry-controller.js' --- dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/components/dataentry/dataentry-controller.js 2014-07-07 11:46:45 +0000 +++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/components/dataentry/dataentry-controller.js 2014-07-07 15:04:56 +0000 @@ -53,7 +53,7 @@ $scope.getEvents = function(){ $scope.dhis2Events = ''; - DHIS2EventFactory.getEvents($scope.selectedEntity.trackedEntityInstance, $scope.selectedOrgUnit.id, $scope.selectedProgram.id, 'ACTIVE').then(function(data){ + DHIS2EventFactory.getEventsByStatus($scope.selectedEntity.trackedEntityInstance, $scope.selectedOrgUnit.id, $scope.selectedProgram.id, 'ACTIVE').then(function(data){ $scope.dhis2Events = data; if(angular.isObject($scope.dhis2Events)){ === modified file 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/components/notes/notes.html' --- dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/components/notes/notes.html 2014-07-07 11:46:45 +0000 +++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/components/notes/notes.html 2014-07-07 15:04:56 +0000 @@ -13,7 +13,7 @@
- +
- +
+ +
{{note.value}}
+
+ +
- -
{{note.value}}
-
- -
-
-
{{'not_yet_enrolled_note'| translate}}
-
-
-
{{'empty_notes'| translate}}
-
- +
{{'not_yet_enrolled_note'| translate}}
+
{{'empty_notes'| translate}}
\ No newline at end of file === added directory 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/components/report' === added file 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/components/report/report-controller.js' --- dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/components/report/report-controller.js 1970-01-01 00:00:00 +0000 +++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/components/report/report-controller.js 2014-07-07 15:04:56 +0000 @@ -0,0 +1,95 @@ +trackerCapture.controller('ReportController', + function($scope, + CurrentSelection, + storage, + DateUtils, + EventUtils, + TranslationService, + DHIS2EventFactory) { + + TranslationService.translate(); + + $scope.ouModes = [{name: 'SELECTED'}, + {name: 'CHILDREN'}, + {name: 'DESCENDANTS'}, + {name: 'ACCESSIBLE'} + ]; + $scope.selectedOuMode = $scope.ouModes[0]; + + $scope.$on('dashboard', function(event, args) { + var selections = CurrentSelection.get(); + $scope.selectedOrgUnit = storage.get('SELECTED_OU'); + $scope.selectedEntity = selections.tei; + $scope.selectedProgram = selections.pr; + $scope.selectedEnrollment = selections.enrollment; + + if($scope.selectedOrgUnit && + $scope.selectedProgram && + $scope.selectedEntity && + $scope.selectedEnrollment){ + + $scope.getEvents(); + } + }); + + $scope.getEvents = function(){ + + $scope.dhis2Events = ''; + $scope.dataExists = false; + DHIS2EventFactory.getEventsByProgram($scope.selectedEntity.trackedEntityInstance, $scope.selectedOrgUnit.id, $scope.selectedProgram.id).then(function(data){ + $scope.dhis2Events = data; + if(!angular.isUndefined($scope.dhis2Events) ){ + for(var i=0; i<$scope.dhis2Events.length && !$scope.dataExists; i++){ + if(!angular.isUndefined($scope.dhis2Events[i].dataValues)){ + $scope.dataExists = true; + } + } + } + }); + }; +}) + +//conroller for tei report +.controller('TeiReportController', + function($scope, + CurrentSelection, + storage, + DateUtils, + EventUtils, + TranslationService, + DHIS2EventFactory) { + + TranslationService.translate(); + + $scope.$on('dashboard', function(event, args) { + var selections = CurrentSelection.get(); + $scope.selectedOrgUnit = storage.get('SELECTED_OU'); + $scope.selectedEntity = selections.tei; + $scope.selectedProgram = selections.pr; + $scope.selectedEnrollment = selections.enrollment; + + if($scope.selectedOrgUnit && + $scope.selectedProgram && + $scope.selectedEntity && + $scope.selectedEnrollment){ + + $scope.getEvents(); + } + }); + + $scope.getEvents = function(){ + + $scope.dhis2Events = ''; + $scope.dataExists = false; + DHIS2EventFactory.getEventsByProgram($scope.selectedEntity.trackedEntityInstance, $scope.selectedOrgUnit.id, $scope.selectedProgram.id).then(function(data){ + $scope.dhis2Events = data; + if(!angular.isUndefined($scope.dhis2Events) ){ + for(var i=0; i<$scope.dhis2Events.length && !$scope.dataExists; i++){ + if(!angular.isUndefined($scope.dhis2Events[i].dataValues)){ + $scope.dataExists = true; + } + } + } + }); + }; +}); \ No newline at end of file === added file 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/components/report/report.html' --- dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/components/report/report.html 1970-01-01 00:00:00 +0000 +++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/components/report/report.html 2014-07-07 15:04:56 +0000 @@ -0,0 +1,57 @@ +
+ +
+
+

{{selectedProgram.name}} {{'report'| translate}}

+
+ + + + + + + + + +
{{'org_unit'| translate}} +
+
+
+ +
+ + + +
+
+ + +
+
+ +
+
\ No newline at end of file === added file 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/components/report/teiReport.html' --- dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/components/report/teiReport.html 1970-01-01 00:00:00 +0000 +++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/components/report/teiReport.html 2014-07-07 15:04:56 +0000 @@ -0,0 +1,18 @@ +
+
+ {{reportWidget.title| translate}} + + + + + + + +
+
+ +
{{'no_data_report'| translate}}
+
{{'not_yet_enrolled_report'| translate}}
+ +
+
\ No newline at end of file === modified file 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/i18n/en.json' --- dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/i18n/en.json 2014-07-07 11:46:45 +0000 +++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/i18n/en.json 2014-07-07 15:04:56 +0000 @@ -11,6 +11,8 @@ "no_program_exists": "No program exists for the selected org unit. Enrollment not possible.", "not_yet_enrolled_data_entry": "Not yet enrolled. Data entry not possible.", "not_yet_enrolled_note": "Not yet enrolled. Note recording not possible.", + "not_yet_enrolled_report": "Not yet enrolled. Reporting not possible", + "no_data_report": "No record exists for reporting", "empty_notes": "Empty notes list.", "no_event_is_yet_created": "No event is available for data entry. Please create one from below.", "event_creation": "Please create one from below", @@ -86,6 +88,7 @@ "register_new": "Register new", "search_from_existing": "Search from existing", "dataentry": "Data Entry", + "report": "Report", "current_selections": "Current selections", "org_unit": "Organisation unit", "SELECTED": "Selected", @@ -102,6 +105,7 @@ "show_hide_widgets": "Show/hide widgets", "select_widgets_to_show": "Select widgets to show", "close": "Close", + "generate": "Generate", "list_programs": "List programs", "program_stage": "Program stage", "due_date": "Due date", === modified file 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/index.html' --- dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/index.html 2014-07-07 11:46:45 +0000 +++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/index.html 2014-07-07 15:04:56 +0000 @@ -69,6 +69,7 @@ + === modified file 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/scripts/controllers.js' --- dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/scripts/controllers.js 2014-07-04 10:10:13 +0000 +++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/scripts/controllers.js 2014-07-07 15:04:56 +0000 @@ -52,6 +52,9 @@ //Registration $scope.showRegistrationDiv = false; + //Reporting + $scope.showReportDiv = false; + //watch for selection of org unit from tree $scope.$watch('selectedOrgUnit', function() { @@ -110,7 +113,7 @@ } }; - $scope.getProgramAttributes = function(program, doSearch){ + $scope.getProgramAttributes = function(program){ $scope.trackedEntityList = null; $scope.selectedProgram = program; @@ -136,9 +139,13 @@ }); }, 100); }); - } - - if(doSearch){ + } + + if($scope.showRegistrationDiv || $scope.showReportDiv){ + $scope.doSearch = false; + } + + if($scope.doSearch){ $scope.search($scope.searchMode); } }; @@ -151,6 +158,7 @@ $scope.emptySearchAttribute = false; //$scope.showSearchDiv = false; $scope.showRegistrationDiv = false; + $scope.showReportDiv = false; $scope.showTrackedEntityDiv = false; $scope.trackedEntityList = null; $scope.teiCount = null; @@ -188,10 +196,10 @@ } } - $scope.doSearch(); + $scope.fetchTeis(); }; - $scope.doSearch = function(){ + $scope.fetchTeis = function(){ //get events for the specified parameters TEIService.search($scope.selectedOrgUnit.id, @@ -219,6 +227,7 @@ $scope.trackedEntityList = TEIGridService.format(data); $scope.showTrackedEntityDiv = true; $scope.teiFetched = true; + $scope.doSearch = true; }); }; @@ -284,11 +293,22 @@ $scope.showRegistrationDiv = !$scope.showRegistrationDiv; $scope.showTrackedEntityDiv = false; $scope.showSearchDiv = false; + + if(!$scope.showRegistrationDiv){ + $scope.doSearch = true; + $scope.getProgramAttributes($scope.selectedProgram); + } }; - $scope.hideSearch = function(){ - //$scope.showSearchDiv = false; - //$rootScope.showAdvancedSearchDiv = false; + $scope.showReport = function(){ + $scope.showReportDiv = !$scope.showReportDiv; + $scope.showTrackedEntityDiv = false; + $scope.showSearchDiv = false; + + if(!$scope.showReportDiv){ + $scope.doSearch = true; + $scope.getProgramAttributes($scope.selectedProgram); + } }; $scope.showHideColumns = function(){ === modified file 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/scripts/services.js' --- dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/scripts/services.js 2014-07-07 11:46:45 +0000 +++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/scripts/services.js 2014-07-07 15:04:56 +0000 @@ -447,12 +447,18 @@ return { - getEvents: function(entity, orgUnit, program, programStatus){ + getEventsByStatus: function(entity, orgUnit, program, programStatus){ var promise = $http.get( '../api/events.json?' + 'trackedEntityInstance=' + entity + '&orgUnit=' + orgUnit + '&program=' + program + '&programStatus=' + programStatus + '&paging=false').then(function(response){ return response.data.events; }); return promise; }, + getEventsByProgram: function(entity, orgUnit, program){ + var promise = $http.get( '../api/events.json?' + 'trackedEntityInstance=' + entity + '&orgUnit=' + orgUnit + '&program=' + program + '&paging=false').then(function(response){ + return response.data.events; + }); + return promise; + }, get: function(eventUid){ var promise = $http.get('../api/events/' + eventUid + '.json').then(function(response){ return response.data; === modified file 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/styles/style.css' --- dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/styles/style.css 2014-07-07 11:46:45 +0000 +++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/styles/style.css 2014-07-07 15:04:56 +0000 @@ -594,7 +594,7 @@ overflow-y: scroll; } -.registration-container{ +.registration-container, report-container { margin-top: 20px; margin-bottom: 10px; } === modified file 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/home.html' --- dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/home.html 2014-07-04 10:10:13 +0000 +++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/home.html 2014-07-07 15:04:56 +0000 @@ -37,7 +37,7 @@ - +
@@ -45,15 +45,14 @@
-
@@ -68,18 +67,25 @@
+
- +
@@ -96,6 +102,14 @@
+ + +
+
+
+
+
+
=== modified file 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/widgets.html' --- dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/widgets.html 2014-04-04 11:55:55 +0000 +++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/widgets.html 2014-07-07 15:04:56 +0000 @@ -4,7 +4,7 @@