diff --git a/SAS/ResourceAssignment/ResourceAssignmentEditor/lib/static/app/controllers/datacontroller.js b/SAS/ResourceAssignment/ResourceAssignmentEditor/lib/static/app/controllers/datacontroller.js index 3aeaabf7f447965547c90320171146d0bb816429..06ad0b508e96dae8540f1498bdb1cb72ff4aae90 100644 --- a/SAS/ResourceAssignment/ResourceAssignmentEditor/lib/static/app/controllers/datacontroller.js +++ b/SAS/ResourceAssignment/ResourceAssignmentEditor/lib/static/app/controllers/datacontroller.js @@ -37,6 +37,27 @@ angular.module('raeApp').factory("dataService", ['$http', '$q', function($http, self.initialLoadComplete = false; + self.resourceClaimStatusColors = {'claimed':'#ffa64d', + 'conflict':'#ff0000', + 'allocated': '#66ff66', + 'mixed': '#bfbfbf'} + + self.taskStatusColors = {'prepared':'#cccccc', + 'approved':'#8cb3d9', + 'on_hold':'#b34700', + 'conflict':'#ff0000', + 'prescheduled': '#6666ff', + 'scheduled': '#0000ff', + 'queued': '#6666ff', + 'active': '#ffff00', + 'completing': '#99ff33', + 'finished': '#00ff00', + 'aborted': '#cc0000', + 'error': '#990033', + 'obsolete': '#555555'}; + + + //start with local client time //lofarTime will be synced with server, //because local machine might have incorrect clock diff --git a/SAS/ResourceAssignment/ResourceAssignmentEditor/lib/static/app/controllers/ganttprojectcontroller.js b/SAS/ResourceAssignment/ResourceAssignmentEditor/lib/static/app/controllers/ganttprojectcontroller.js index 3408db0ad7c25661e67a3c903c02f917ae8c0f90..3df3f7cd392c95fffb60a0573bc9eb1eaeedac98 100644 --- a/SAS/ResourceAssignment/ResourceAssignmentEditor/lib/static/app/controllers/ganttprojectcontroller.js +++ b/SAS/ResourceAssignment/ResourceAssignmentEditor/lib/static/app/controllers/ganttprojectcontroller.js @@ -25,19 +25,7 @@ ganttProjectControllerMod.controller('GanttProjectController', ['$scope', 'dataS $scope.dataService = dataService; $scope.ganttData = []; - self.taskStatusColors = {'prepared':'#aaff00', - 'approved':'#ffaa00', - 'on_hold':'#ff0000', - 'conflict':'#ffccaa', - 'prescheduled': '#6666ff', - 'scheduled': '#ff66ff', - 'queued': '#bb6644', - 'active': '#77ff77', - 'completing': '#776688', - 'finished': '#66ff33', - 'aborted': '#ff3366', - 'error': '#ff4488', - 'obsolete': '#555555'}; + self.taskStatusColors = dataService.taskStatusColors; $scope.options = { mode: 'custom', diff --git a/SAS/ResourceAssignment/ResourceAssignmentEditor/lib/static/app/controllers/ganttresourcecontroller.js b/SAS/ResourceAssignment/ResourceAssignmentEditor/lib/static/app/controllers/ganttresourcecontroller.js index 92d273741c7aabc72c78fc19cde9bc207888fdb7..891b665c2f8e4042b98553acab13afd15c2c5242 100644 --- a/SAS/ResourceAssignment/ResourceAssignmentEditor/lib/static/app/controllers/ganttresourcecontroller.js +++ b/SAS/ResourceAssignment/ResourceAssignmentEditor/lib/static/app/controllers/ganttresourcecontroller.js @@ -23,10 +23,8 @@ ganttResourceControllerMod.controller('GanttResourceController', ['$scope', 'dat $scope.dataService = dataService; $scope.ganttData = [] - self.resourceClaimStatusColors = {'claimed':'#ffa64d', - 'conflict':'#ff0000', - 'allocated': '#66ff66', - 'mixed': '#bfbfbf'} + self.taskStatusColors = dataService.taskStatusColors; + self.resourceClaimStatusColors = dataService.resourceClaimStatusColors; $scope.options = { mode: 'custom', @@ -275,7 +273,8 @@ ganttResourceControllerMod.controller('GanttResourceController', ['$scope', 'dat name: task.name, from: claim.starttime, to: claim.endtime, - color: self.resourceClaimStatusColors[claim.status], + color: self.taskStatusColors[task.status], + classes: 'claim-status-' + claim.status, raTask: task, claim: claim, movable: $.inArray(task.status_id, editableTaskStatusIds) > -1 @@ -359,7 +358,8 @@ ganttResourceControllerMod.controller('GanttResourceController', ['$scope', 'dat name: task.name, from: aggClaimForTask.starttime, to: aggClaimForTask.endtime, - color: self.resourceClaimStatusColors[aggClaimForTask.status], + color: self.taskStatusColors[task.status], + classes: 'claim-status-' + aggClaimForTask.status, raTask: task, movable: $.inArray(task.status_id, editableTaskStatusIds) > -1 }; @@ -405,7 +405,7 @@ ganttResourceControllerMod.controller('GanttResourceController', ['$scope', 'dat $scope.$watch('dataService.resourceClaims', updateGanttData, true); $scope.$watch('dataService.resourceGroups', updateGanttData); $scope.$watch('dataService.resourceGroupMemberships', updateGanttData); - $scope.$watch('dataService.filteredTaskDict', updateGanttData); + $scope.$watch('dataService.filteredTaskDict', updateGanttData, true); $scope.$watch('dataService.lofarTime', function() {$scope.options.currentDateValue= $scope.dataService.lofarTime;}); } ]); diff --git a/SAS/ResourceAssignment/ResourceAssignmentEditor/lib/static/css/main.css b/SAS/ResourceAssignment/ResourceAssignmentEditor/lib/static/css/main.css index a65265ab2327ec9fc757922ff991ad5dd59fad04..b10049662143e7c3e73c7ddec645132e80332618 100644 --- a/SAS/ResourceAssignment/ResourceAssignmentEditor/lib/static/css/main.css +++ b/SAS/ResourceAssignment/ResourceAssignmentEditor/lib/static/css/main.css @@ -46,3 +46,20 @@ .top-stretch { top: 20px; } + +.gantt-task.claim-status-claimed { + border-bottom: 4px solid #ffa64d; +} + +.gantt-task.claim-status-conflict { + border-bottom: 4px solid #ff0000; +} + +.gantt-task.claim-status-allocated { + border-bottom: 4px solid #66ff66; +} + +.gantt-task.claim-status-mixed { + border-bottom: 4px solid #bfbfbf; +} + diff --git a/SAS/ResourceAssignment/ResourceAssignmentEditor/lib/templates/index.html b/SAS/ResourceAssignment/ResourceAssignmentEditor/lib/templates/index.html index 51a7b2b4f25291e953bc3fabab8b81733bbbca2f..637b1d54e60ea05919c28824d3b4d1b6156ae67f 100644 --- a/SAS/ResourceAssignment/ResourceAssignmentEditor/lib/templates/index.html +++ b/SAS/ResourceAssignment/ResourceAssignmentEditor/lib/templates/index.html @@ -45,15 +45,12 @@ <body> {% raw %} <div ng-controller="DataController as dataCtrl"> - <div >Lofar Time: - <span>{{dataCtrl.dataService.lofarTime | date:'yyyy-MM-dd HH:mm:ss'}}</span> - </div> + <div >Time (local): <span>{{dataService.lofarTime | date:'yyyy-MM-dd HH:mm:ss' }}</span></div> <div ui-layout class="top-stretch" ui-layout="{flow: 'column'}"> <header> <uib-tabset margin-top='10px'> <uib-tab heading="Tasks" index='0' active='true'> <div ng-controller="GridController as gridCtrl"> - <strong>Tasks:</strong> <div id="grid" ui-grid="gridOptions" ui-grid-edit ui-grid-selection ui-grid-cellnav ui-grid-resize-columns class="grid"> </div> </div>