← Back to team overview

dhis2-devs team mailing list archive

[Branch ~dhis2-devs-core/dhis2/trunk] Rev 14633: tracked entity dashboard widgets

 

------------------------------------------------------------
revno: 14633
committer: Abyot Asalefew Gizaw abyota@xxxxxxxxx
branch nick: dhis2
timestamp: Thu 2014-04-03 14:27:23 +0200
message:
  tracked entity dashboard widgets
added:
  dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/widgets.html
modified:
  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/index.html
  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/directives.js
  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/views/dashboard.html
  dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/dataentry.html
  dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/enrollment.html
  dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/notes.html
  dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/profile.html
  dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/selected.html
  dhis-2/dhis-web/pom.xml


--
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-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-03-26 09:44:22 +0000
+++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/i18n/en.json	2014-04-03 12:27:23 +0000
@@ -42,5 +42,8 @@
     "dataentry": "Data Entry",
     "current_selections": "Current selections",
     "data_element": "Data element",
-    "value": "Value"
+    "value": "Value",
+    "show_hide_widgets": "Show/Hide widgets",
+    "select_widgets_to_show": "Select widgets to show",
+    "close": "Close"
 }

=== 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-03-26 09:44:22 +0000
+++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/index.html	2014-04-03 12:27:23 +0000
@@ -20,7 +20,7 @@
         <script type="text/javascript" src="../dhis-web-commons/javascripts/angular/angular-route.js"></script>
         <script type="text/javascript" src="../dhis-web-commons/javascripts/angular/angular-cookies.js"></script>
         <script type="text/javascript" src="../dhis-web-commons/javascripts/angular/angular-animate.js"></script>        
-        <script type="text/javascript" src="../dhis-web-commons/javascripts/angular/ui-bootstrap-tpls-0.10.0.js"></script>
+        <script type="text/javascript" src="../dhis-web-commons/javascripts/angular/ui-bootstrap-tpls-0.10.0-draggable-modal.js"></script>
 
         <script type="text/javascript" src="../dhis-web-commons/javascripts/moment/moment-with-langs.min.js"></script>       
 

=== 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-03-26 09:44:22 +0000
+++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/scripts/controllers.js	2014-04-03 12:27:23 +0000
@@ -170,6 +170,7 @@
         function($rootScope,
                 $scope,
                 $location,
+                $modal,
                 storage,
                 TrackedEntityInstanceService,                
                 TranslationService) {
@@ -177,20 +178,24 @@
     //do translation of the dashboard page
     TranslationService.translate();    
     
-    //dashboard item   
-    $scope.selected = {title: 'current_selections', isOpen: true, selections: []};
+    //dashboard items   
+    $rootScope.dashboardWidgets = {bigger: [], smaller: []};   
+    $rootScope.profileWidget = {title: 'profile', view: "views/profile.html", show: true};
+    $rootScope.dataentryWidget = {title: 'dataentry', view: "views/dataentry.html", show: true};
+    //$rootScope.selectedWidget = {title: 'current_selections', view: "views/selected.html", show: true};
+    $rootScope.enrollmentWidget = {title: 'enrollment', view: "views/enrollment.html", show: true};
+    $rootScope.notesWidget = {title: 'notes', view: "views/notes.html", show: true};    
+   
+    $rootScope.dashboardWidgets.bigger.push($rootScope.profileWidget);
+    $rootScope.dashboardWidgets.bigger.push($rootScope.dataentryWidget);
+    //$rootScope.dashboardWidgets.smaller.push($rootScope.selectedWidget);
+    $rootScope.dashboardWidgets.smaller.push($rootScope.enrollmentWidget);
+    $rootScope.dashboardWidgets.smaller.push($rootScope.notesWidget);
     
     //selections
     $scope.selectedEntityId = ($location.search()).selectedEntityId;
-    $scope.selectedProgramId = ($location.search()).selectedProgramId;
-    
-    $scope.selectedOrgUnit = storage.get('SELECTED_OU');
-    
-    $scope.selectedProgram = null;
-    
-    if($scope.selectedProgramId){
-        $scope.selectedProgram = storage.get($scope.selectedProgramId);        
-    }   
+    $scope.selectedProgramId = ($location.search()).selectedProgramId;    
+    $scope.selectedOrgUnit = storage.get('SELECTED_OU');     
         
     if( $scope.selectedEntityId ){
         
@@ -203,10 +208,7 @@
                                                     selectedProgramId: $scope.selectedProgramId, 
                                                     selectedOrgUnitId: $scope.selectedOrgUnit.id});            
         });       
-    }
-    
-    $scope.selected.selections.push({title: 'registering_unit', value: $scope.selectedOrgUnit ? $scope.selectedOrgUnit.name : 'not_selected'});
-    $scope.selected.selections.push({title: 'program', value: $scope.selectedProgram ? $scope.selectedProgram.name : 'not_selected'});    
+    }   
     
     $scope.back = function(){
         $location.path('/');
@@ -216,6 +218,20 @@
     $scope.showEnrollment = function(){
         $scope.displayEnrollment = true;
     };
+    
+    $scope.removeWidget = function(widget){        
+        widget.show = false;
+    };
+    
+    $scope.showHideWidgets = function(){
+        var modalInstance = $modal.open({
+            templateUrl: "views/widgets.html",
+            controller: "DashboardWidgetsController"
+        });
+
+        modalInstance.result.then(function () {
+        });
+    };   
 })
 
 //Controller for the profile section
@@ -226,8 +242,6 @@
 
     TranslationService.translate();
     
-    $scope.profile = {title: 'profile', isOpen: true};
-    
     //attributes for profile    
     $scope.attributes = {};    
     angular.forEach(storage.get('ATTRIBUTES'), function(attribute){
@@ -238,7 +252,7 @@
     $scope.$on('selectedItems', function(event, args) {        
         $scope.selectedEntity = args.selectedEntity;        
         $scope.trackedEntity = storage.get($scope.selectedEntity.trackedEntity);
-    });    
+    });
 })
 
 //Controller for the enrollment section
@@ -251,8 +265,6 @@
 
     TranslationService.translate();
     
-    $scope.enrollment = {title: 'enrollment', isOpen: true};
-    
     //programs for enrollment
     $scope.enrollments = [];
     $scope.programs = [];
@@ -316,6 +328,14 @@
         //}     
         
     };
+    
+    /*$scope.removeWidget = function(){        
+        angular.forEach($rootScope.dashboardWidgets.bigger, function(widget){
+            if(widget.title == 'enrollment'){
+                widget.show = false;
+            }
+        });
+    };*/
 })
 
 //Controller for the data entry section
@@ -330,8 +350,6 @@
 
     TranslationService.translate();
     
-    $scope.dataEntry = {title: 'dataentry', isOpen: true}; 
-    
     $scope.attributes = storage.get('ATTRIBUTES');
     
     //listen for the selected items
@@ -453,18 +471,17 @@
     };    
 })
 
-//Controller for the dashboard menu section
-.controller('DashboardMenuController',
-        function($scope,                
-                storage,
-                TranslationService) {
-
+//Controller for the dashboard widgets
+.controller('DashboardWidgetsController', 
+    function($scope, 
+            $modalInstance,
+            TranslationService){
+    
     TranslationService.translate();
     
-    $scope.dashboardMenu = {title: 'Menu', isOpen: true};
-    
-    $scope.attributes = storage.get('ATTRIBUTES');
-    
+    $scope.close = function () {
+        $modalInstance.close($scope.eventGridColumns);
+    };       
 })
 
 //Controller for the notes section
@@ -475,12 +492,37 @@
 
     TranslationService.translate();
     
-    $scope.notes = {title: 'notes', isOpen: true};
-    
     $scope.attributes = storage.get('ATTRIBUTES');
     
 })
 
+//Controller for the selected section
+.controller('SelectedInfoController',
+        function($scope,                
+                storage,
+                TranslationService) {
+
+    TranslationService.translate();
+    
+    //listen for the selected items
+    $scope.$on('selectedItems', function(event, args) {
+        
+        $scope.selectedEntity = args.selectedEntity;
+        $scope.selectedProgramId = args.selectedProgramId;        
+        $scope.selectedOrgUnitId = args.selectedOrgUnitId;        
+        
+        if($scope.selectedProgramId){
+            $scope.selectedProgram = storage.get($scope.selectedProgramId);        
+        }
+        
+        $scope.selectedOrgUnit = storage.get('SELECTED_OU');
+        
+        $scope.selected.selections.push({title: 'registering_unit', value: $scope.selectedOrgUnit ? $scope.selectedOrgUnit.name : 'not_selected'});
+        $scope.selected.selections.push({title: 'program', value: $scope.selectedProgram ? $scope.selectedProgram.name : 'not_selected'});               
+        
+    });     
+})
+
 //Controller for the header section
 .controller('HeaderController',
         function($scope,                

=== modified file 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/scripts/directives.js'
--- dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/scripts/directives.js	2014-03-26 09:44:22 +0000
+++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/scripts/directives.js	2014-04-03 12:27:23 +0000
@@ -217,5 +217,14 @@
         },
         templateUrl: 'views/pagination.html'
     };
+})
+
+.directive('draggableModal', function(){
+    return {
+      restrict: 'EA',
+      link: function(scope, element) {
+        element.draggable();
+      }
+    };  
 });
 

=== 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-03-26 09:44:22 +0000
+++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/styles/style.css	2014-04-03 12:27:23 +0000
@@ -166,8 +166,7 @@
     border: 2px solid;
 }
 
-.new-event {
-    float: right;
+.new-event {    
     cursor: pointer;
 }
 
@@ -551,4 +550,127 @@
 
 .vertial-spacing {
     margin-top: 10px;
-}
\ No newline at end of file
+}
+
+/*----------------------------------------------------------------------------*/
+/* Bootstrap modal style
+/*----------------------------------------------------------------------------*/
+.modal-open {
+    overflow: hidden
+}
+.modal {
+    position: fixed;
+    top: 0;
+    right: 0;
+    bottom: 0;
+    left: 0;
+    z-index: 1040;
+    display: none;
+    overflow: auto;
+    overflow-y: scroll
+}
+.modal.fade .modal-dialog {
+    -webkit-transform: translate(0,-25%);
+    -ms-transform: translate(0,-25%);
+    transform: translate(0,-25%);
+    -webkit-transition: -webkit-transform .3s ease-out;
+    -moz-transition: -moz-transform .3s ease-out;
+    -o-transition: -o-transform .3s ease-out;
+    transition: transform .3s ease-out
+}
+.modal.in .modal-dialog {
+    -webkit-transform: translate(0,0);
+    -ms-transform: translate(0,0);
+    transform: translate(0,0)
+}
+.modal-dialog {
+    position: relative;
+    z-index: 1050;
+    width: auto;
+    padding: 10px;
+    margin-right: auto;
+    margin-left: auto
+}
+.modal-content {
+    position: relative;
+    background-color: #fff;
+    border: 1px solid #999;
+    border: 1px solid rgba(0,0,0,0.2);
+    border-radius: 6px;
+    outline: 0;
+    -webkit-box-shadow: 0 3px 9px rgba(0,0,0,0.5);
+    box-shadow: 0 3px 9px rgba(0,0,0,0.5);
+    background-clip: padding-box
+}
+.modal-backdrop {
+    position: fixed;
+    top: 0;
+    right: 0;
+    bottom: 0;
+    left: 0;
+    z-index: 1030;
+    background-color: #000
+}
+.modal-backdrop.fade {
+    opacity: 0;
+    filter: alpha(opacity=0)
+}
+.modal-backdrop.in {
+    opacity: .5;
+    filter: alpha(opacity=50)
+}
+.modal-header {
+    min-height: 16.428571429px;
+    padding: 0 15px;
+    border-bottom: 1px solid #e5e5e5
+}
+.modal-header .close {
+    margin-top: -2px
+}
+.modal-title {
+    margin: 0;
+    line-height: 1.428571429
+}
+.modal-body {
+    position: relative;
+}
+.modal-footer {
+    padding: 19px 20px 20px;    
+    text-align: right;
+    border-top: 1px solid #e5e5e5
+}
+.modal-footer:before, .modal-footer:after {
+    display: table;
+    content: " "
+}
+.modal-footer:after {
+    clear: both
+}
+.modal-footer:before, .modal-footer:after {
+    display: table;
+    content: " "
+}
+.modal-footer:after {
+    clear: both
+}
+.modal-footer .btn+ .btn {
+    margin-bottom: 0;
+    margin-left: 5px
+}
+.modal-footer .btn-group .btn+ .btn {
+    margin-left: -1px
+}
+.modal-footer .btn-block+ .btn-block {
+    margin-left: 0
+}
+@media screen and (min-width: 768px) {
+    .modal-dialog {
+        width: 600px;
+        padding-top: 30px;
+        padding-bottom: 30px
+    }
+    .modal-content {
+        -webkit-box-shadow: 0 5px 15px rgba(0,0,0,0.5);
+        box-shadow: 0 5px 15px rgba(0,0,0,0.5)
+    }
+}

=== modified file 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/dashboard.html'
--- dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/dashboard.html	2014-03-26 09:44:22 +0000
+++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/dashboard.html	2014-04-03 12:27:23 +0000
@@ -1,12 +1,9 @@
 <div class="container-1-1">    
-    <div class="col-sm-12">
-        <div class="btn-toolbar" role="toolbar">
-            <button type="button" class="btn btn-default" ng-click="back()">{{'back'| translate}}</button>
-            <span class="horizonal-spacing">
-                <input class="fixed-text-width" type="text" placeholder="{{'search_for_dashboard'| translate}}" />
-                <button type="button" class="btn btn-default" ng-click="searchDashboard()">{{'search'| translate}}</button>
-            </span>            
-        </div>
+    <div class="col-sm-12">        
+        <button type="button" class="btn btn-default" ng-click="back()">{{'back'| translate}}</button>
+        <span class="right">
+            <button type="button" class="btn btn-default" ng-click="showHideWidgets()">{{'show_hide_widgets'| translate}}</button>
+        </span>        
     </div>
 
     <div class='separator'></div>
@@ -15,25 +12,20 @@
         <div class="row">            
             <div class="col-sm-6 col-md-8">
                 <div sortable class="row connectedSortable empty-dashboard-container">
-                    <div class="col-sm-12" ng-controller="ProfileController" ng-include="'views/profile.html'"></div>               
-                    <div class="col-sm-12" ng-controller="DataEntryController" ng-include="'views/dataentry.html'"></div>                                        
+                    <div ng-repeat="biggerWidget in dashboardWidgets.bigger">
+                        <div class="col-sm-12" ng-show="biggerWidget.show" ng-include="biggerWidget.view"></div>
+                    </div>                                       
                 </div>                
             </div>            
             <div class="col-sm-6 col-md-4">
-                <div sortable class="row connectedSortable empty-dashboard-container">
-                    <div class="col-sm-12">
-                        <div ng-include="'views/selected.html'"></div>
-                    </div>
-                    <div class="col-sm-12" ng-controller="EnrollmentController">
-                        <div ng-include="'views/enrollment.html'"></div>
-                    </div>
-                    <div class="col-sm-12" ng-controller="NotesController">
-                        <div ng-include="'views/notes.html'"></div>             
-                    </div>
+                <div sortable class="row connectedSortable empty-dashboard-container">                    
+                    <div class="col-sm-12" ng-repeat="smallerWidget in dashboardWidgets.smaller">                        
+                        <div ng-show="smallerWidget.show" ng-include="smallerWidget.view"></div>
+                    </div>                   
                 </div>
             </div>
         </div>
-    </div>
+    </div>    
 </div>
 
 

=== modified file 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/dataentry.html'
--- dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/dataentry.html	2014-03-26 09:44:22 +0000
+++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/dataentry.html	2014-04-03 12:27:23 +0000
@@ -1,9 +1,12 @@
-<div class="panel panel-default">
+<div class="panel panel-default" ng-controller="DataEntryController">
     <div class="panel-heading">
-        {{dataEntry.title| translate}}
-        <span class="new-event" ng-click="createNewEvent()">
-            {{'create_new_event'| translate}}
+        {{dataentryWidget.title| translate}} 
+        <span class="nav-pills" ng-show="selectedEnrollment">
+           | <span><a href ng-click="createNewEvent()">{{'create_new_event'| translate}}</a></span>            
         </span>
+        <span class="pull-right">
+            <a href ng-click="removeWidget(dataentryWidget)" title="{{'remove'| translate}}"><span class='black'><i class="fa fa-times-circle"></i></span></a>            
+        </span>        
     </div>
     <div class="panel-body">        
         <div ng-show="dhis2Events">            

=== modified file 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/enrollment.html'
--- dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/enrollment.html	2014-03-26 09:44:22 +0000
+++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/enrollment.html	2014-04-03 12:27:23 +0000
@@ -1,25 +1,10 @@
-<!--<accordion>
-    <accordion-group is-open="{{enrollment.isOpen}}">
-        <accordion-heading>
-            <span class="list-title">{{enrollment.title| translate}}</span>
-        </accordion-heading>                        
-        <div>
-            <div> 
-                {{'program'| translate}}
-                <span class="right">
-                    <select ng-model="selectedProgram"
-                            class="form-control"
-                            ng-options="program as program.name for program in programs | orderBy: 'name'" 
-                            ng-change="loadEvents(selectedProgram.id)">
-                        <option value="">{{'please_select'| translate}}</option>
-                    </select>
-                </span>
-            </div>
-        </div>                        
-    </accordion-group>
-</accordion>   -->             
-<div class="panel panel-default">
-    <div class="panel-heading">{{enrollment.title| translate}}</div>
+<div class="panel panel-default" ng-controller="EnrollmentController">
+    <div class="panel-heading">
+        {{enrollmentWidget.title| translate}}
+        <span class="pull-right">
+            <a href ng-click="removeWidget(enrollmentWidget)" title="{{'remove'| translate}}"><span class='black'><i class="fa fa-times-circle"></i></span></a>            
+        </span>
+    </div>
     <div class="panel-body dashboard-element-container">
         <div>
             <div> 

=== modified file 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/notes.html'
--- dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/notes.html	2014-03-26 09:44:22 +0000
+++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/notes.html	2014-04-03 12:27:23 +0000
@@ -1,5 +1,10 @@
-<div class="panel panel-default">
-    <div class="panel-heading">{{notes.title| translate}}</div>
+<div class="panel panel-default" ng-controller="NotesController">
+    <div class="panel-heading">
+        {{notesWidget.title| translate}}
+        <span class="pull-right">
+            <a href ng-click="removeWidget(notesWidget)" title="{{'remove'| translate}}"><span class='black'><i class="fa fa-times-circle"></i></span></a>            
+        </span>        
+    </div>
     <div class="panel-body dashboard-element-container">
         This is notes.
     </div>

=== modified file 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/profile.html'
--- dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/profile.html	2014-03-26 09:44:22 +0000
+++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/profile.html	2014-04-03 12:27:23 +0000
@@ -1,5 +1,10 @@
-<div class="panel panel-default">
-    <div class="panel-heading">{{trackedEntity.name|| 'entity' | translate}} {{profile.title| translate}}</div>
+<div class="panel panel-default" ng-controller="ProfileController">
+    <div class="panel-heading">
+        {{trackedEntity.name || 'entity' | translate}} {{profileWidget.title| translate}}
+        <span class="pull-right">
+            <a href ng-click="removeWidget(profileWidget)" title="{{'remove'| translate}}"><span class='black'><i class="fa fa-times-circle"></i></span></a>            
+        </span>        
+    </div>
     <div class="panel-body dashboard-element-container">
         <div class="form-group">
             <div class="row" ng-repeat="attribute in selectedEntity.attributes">

=== modified file 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/selected.html'
--- dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/selected.html	2014-03-26 09:44:22 +0000
+++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/selected.html	2014-04-03 12:27:23 +0000
@@ -1,5 +1,10 @@
-<div class="panel panel-default">
-    <div class="panel-heading">{{selected.title| translate}}</div>    
+<div class="panel panel-default" ng-controller="SelectedInfoController">
+    <div class="panel-heading">
+        {{selectedWidget.title| translate}}
+        <span class="pull-right">
+            <a href ng-click="removeWidget(selectedWidget)" title="{{'remove'| translate}}"><span class='black'><i class="fa fa-times-circle"></i></span></a>            
+        </span>        
+    </div>    
     <div class="panel-body dashboard-element-container">
         <div class="row" ng-repeat="selection in selected.selections">
             <div class="col-sm-6">

=== added 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	1970-01-01 00:00:00 +0000
+++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/widgets.html	2014-04-03 12:27:23 +0000
@@ -0,0 +1,28 @@
+<div class="modal-header">
+    <h1>{{'select_widgets_to_show'| translate}}</h1>
+</div>
+
+<div class="modal-body">   
+    <table class="listTable dhis2-table-striped-border">
+        <tr ng-repeat="biggerWidget in dashboardWidgets.bigger">
+            <td>
+                {{biggerWidget.title}}
+            </td>
+            <td>
+                <input type="checkbox" ng-model="biggerWidget.show">
+            </td>
+        </tr>
+        <tr ng-repeat="smallerWidget in dashboardWidgets.smaller">
+            <td>
+                {{smallerWidget.title}}
+            </td>
+            <td>
+                <input type="checkbox" ng-model="smallerWidget.show">
+            </td>
+        </tr>
+    </table>    
+</div>
+
+<div class="modal-footer">     
+    <button type="button" class="btn btn-default" data-ng-click="close()">{{'close'| translate}}</button>
+</div> 

=== modified file 'dhis-2/dhis-web/pom.xml'
--- dhis-2/dhis-web/pom.xml	2014-03-27 10:08:06 +0000
+++ dhis-2/dhis-web/pom.xml	2014-04-03 12:27:23 +0000
@@ -30,7 +30,6 @@
     <module>dhis-web-light</module>
     <module>dhis-web-mobile</module>
     <module>dhis-web-sms</module>
-    <module>dhis-web-event-capture</module>
     <module>dhis-web-event-reports</module>
     <module>dhis-web-tracker-capture</module>
     <module>dhis-web-portal</module>