Skip to content

Commit

Permalink
#156 Add task open feature
Browse files Browse the repository at this point in the history
  • Loading branch information
nadouani committed Jun 28, 2017
1 parent 7be046c commit 63def06
Show file tree
Hide file tree
Showing 9 changed files with 125 additions and 126 deletions.
44 changes: 33 additions & 11 deletions ui/app/scripts/controllers/case/CaseTasksCtrl.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
.controller('CaseTaskDeleteCtrl', CaseTaskDeleteCtrl)
.controller('CaseTasksCtrl', CaseTasksCtrl);

function CaseTasksCtrl($scope, $state, $stateParams, $uibModal, CaseTabsSrv, PSearchSrv, CaseTaskSrv, UserInfoSrv, NotificationSrv) {
function CaseTasksCtrl($scope, $state, $stateParams, $q, $uibModal, CaseTabsSrv, PSearchSrv, CaseTaskSrv, UserInfoSrv, NotificationSrv) {

CaseTabsSrv.activateTab($state.current.data.tab);

Expand Down Expand Up @@ -83,22 +83,44 @@
};

// open task tab with its details
$scope.openTask = function(task) {
$scope.startTask = function(task) {
if (task.status === 'Waiting') {
CaseTaskSrv.update({
'taskId': task.id
}, {
'status': 'InProgress'
}, function(data) {
$scope.showTask(data);
}, function(response) {
NotificationSrv.error('taskList', response.data, response.status);
});
$scope.updateTaskStatus(task.id, 'InProgress');
} else {
$scope.showTask(task);
}
};

$scope.openTask = function(task) {
if (task.status === 'Completed') {
$scope.updateTaskStatus(task.id, 'InProgress')
.then($scope.showTask);
}
};

$scope.closeTask = function(task) {
if (task.status === 'InProgress') {
$scope.updateTaskStatus(task.id, 'Completed');
}
};

$scope.updateTaskStatus = function(taskId, status) {
var defer = $q.defer();

CaseTaskSrv.update({
'taskId': taskId
}, {
'status': status
}, function(data) {
defer.resolve(data);
}, function(response) {
NotificationSrv.error('taskList', response.data, response.status);
defer.reject(response);
});

return defer.promise;
};

}

function CaseTaskDeleteCtrl($uibModalInstance, title) {
Expand Down
7 changes: 6 additions & 1 deletion ui/app/scripts/controllers/case/CaseTasksItemCtrl.js
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@
});
};

$scope.complete = function () {
$scope.closeTask = function () {
$scope.task.status = 'Completed';
$scope.updateField('status', 'Completed');

Expand All @@ -85,6 +85,11 @@
});
};

$scope.openTask = function() {
$scope.task.status = 'InProgress';
$scope.updateField('status', 'InProgress');
};

$scope.showLogEditor = function () {
$scope.adding = true;
$rootScope.$broadcast('beforeNewLogShow');
Expand Down
13 changes: 8 additions & 5 deletions ui/app/styles/main.css
Original file line number Diff line number Diff line change
Expand Up @@ -400,14 +400,13 @@ ul.observable-reports-summary li {
/* IE 9 */
}

tr.task-row td.task-delete {
tr.task-row .task-delete {
text-align: center;
}
tr.task-row:hover td.task-delete i {
display: block !important;
tr.task-row:hover .task-delete {
display: inline !important;
}
tr.task-row td.task-delete i {
cursor: pointer;
tr.task-row .task-delete {
display: none;
}
tr.task-row .tast-status {
Expand Down Expand Up @@ -509,3 +508,7 @@ footer .footer-logo {
report:empty {
display: none;
}

span.action-button {
font-size: 14px;
}
22 changes: 7 additions & 15 deletions ui/app/views/directives/severity.html
Original file line number Diff line number Diff line change
@@ -1,19 +1,11 @@
<div ng-if="active == true">
<span class="label btn" ng-class="{ true:'label-info', false:'label-default' }[value == 1]" ng-click="update(1)">L</span>
<span class="label btn" ng-class="{ true:'label-warning', false:'label-default' }[value == 2 || !value]" ng-click="update(2)">M</span>
<span class="label btn" ng-class="{ true:'label-danger', false:'label-default' }[value == 3]" ng-click="update(3)">H</span>
<span class="label" ng-class="{ true:'label-info', false:'label-default' }[value == 1]" ng-click="update(1)">L</span>
<span class="label" ng-class="{ true:'label-warning', false:'label-default' }[value == 2 || !value]" ng-click="update(2)">M</span>
<span class="label" ng-class="{ true:'label-danger', false:'label-default' }[value == 3]" ng-click="update(3)">H</span>
</div>
<span ng-if="active != true" ng-switch="value">
<span ng-switch-when="1">
<span class="label label-info">L</span>
</span>
<span ng-switch-when="2">
<span class="label label-warning">M</span>
</span>
<span ng-switch-when="3">
<span class="label label-danger">H</span>
</span>
<span ng-switch-default>
<span class="label label-primary">?</span>
</span>
<span ng-switch-when="1" class="label label-info">L</span>
<span ng-switch-when="2" class="label label-warning">M</span>
<span ng-switch-when="3" class="label label-danger">H</span>
<span ng-switch-default class="label label-primary">?</span>
</span>
48 changes: 14 additions & 34 deletions ui/app/views/directives/tlp.html
Original file line number Diff line number Diff line change
@@ -1,43 +1,23 @@
<span ng-switch="format">
<div ng-switch-when="active">
<!-- strong>TLP:</strong -->
<span class="label btn" ng-class="{ true:'label-info', false:'label-default' }[value == 0]" ng-click="update(0)">WHITE</span>
<span class="label btn" ng-class="{ true:'label-success', false:'label-default' }[value == 1]" ng-click="update(1)">GREEN</span>
<span class="label btn" ng-class="{ true:'label-warning', false:'label-default' }[value == 2]" ng-click="update(2)">AMBER</span>
<span class="label btn" ng-class="{ true:'label-danger', false:'label-default' }[value == 3]" ng-click="update(3)">RED</span>
<span class="label" ng-class="{ true:'label-info', false:'label-default' }[value == 0]" ng-click="update(0)">WHITE</span>
<span class="label" ng-class="{ true:'label-success', false:'label-default' }[value == 1]" ng-click="update(1)">GREEN</span>
<span class="label" ng-class="{ true:'label-warning', false:'label-default' }[value == 2]" ng-click="update(2)">AMBER</span>
<span class="label" ng-class="{ true:'label-danger', false:'label-default' }[value == 3]" ng-click="update(3)">RED</span>
</div>

<span ng-switch-when="static">
<span ng-switch="value">
<span ng-switch-when="0">
<span class="label label-info">TLP:WHITE</span>
</span>
<span ng-switch-when="1">
<span class="label label-success">TLP:GREEN</span>
</span>
<span ng-switch-when="2">
<span class="label label-warning">TLP:AMBER</span>
</span>
<span ng-switch-when="3">
<span class="label label-danger">TLP:RED</span>
</span>
</span>
<span ng-switch-when="static" ng-switch="value">
<span ng-switch-when="0" class="label label-info">TLP:WHITE</span>
<span ng-switch-when="1" class="label label-success">TLP:GREEN</span>
<span ng-switch-when="2" class="label label-warning">TLP:AMBER</span>
<span ng-switch-when="3" class="label label-danger">TLP:RED</span>
</span>

<span ng-switch-default>
<span ng-switch="value">
<span ng-switch-when="0">
<span class="text-tlp-default fa fa-circle-o hpad10" uib-tooltip="TLP:WHITE"></span>
</span>
<span ng-switch-when="1">
<span class="text-tlp-green fa fa-circle hpad10" uib-tooltip="TLP:GREEN"></span>
</span>
<span ng-switch-when="2">
<span class="text-tlp-amber fa fa-circle hpad10" uib-tooltip="TLP:AMBER"></span>
</span>
<span ng-switch-when="3">
<span class="text-tlp-red fa fa-circle hpad10" uib-tooltip="TLP:RED"></span>
</span>
</span>
<span ng-switch-default ng-switch="value">
<span ng-switch-when="0" class="text-tlp-default fa fa-circle-o hpad10" uib-tooltip="TLP:WHITE"></span>
<span ng-switch-when="1" class="text-tlp-green fa fa-circle hpad10" uib-tooltip="TLP:GREEN"></span>
<span ng-switch-when="2" class="text-tlp-amber fa fa-circle hpad10" uib-tooltip="TLP:AMBER"></span>
<span ng-switch-when="3" class="text-tlp-red fa fa-circle hpad10" uib-tooltip="TLP:RED"></span>
</span>
</span>
18 changes: 11 additions & 7 deletions ui/app/views/partials/case/case.observables.item.html
Original file line number Diff line number Diff line change
Expand Up @@ -13,17 +13,21 @@ <h4>
[<span ng-bind="artifact.dataType" style="text-transform: uppercase;"></span>]: <em><span class="wrap" ng-bind="artifact.attachment.name"></span></em>
</h4>
</div>
<div class="col-md-3" style="text-align: center">
<a href="./api/datastorezip/{{artifact.attachment.id}}?name={{artifact.attachment.name}}" target="_blank">
<span class="glyphicon glyphicon-download"></span><br/>
<span class="wrap">{{artifact.attachment.name}}</span>
</a><br/>
<small class="text-danger">Zip are protected with password "{{protectDownloadsWith}}"</small>
<div class="col-md-3 text-center">
<div>
<a href="./api/datastorezip/{{artifact.attachment.id}}?name={{artifact.attachment.name}}" target="_blank">
<i class="glyphicon glyphicon-download"></i>
<span class="wrap">{{artifact.attachment.name | ellipsis:30}}</span>
</a>
</div>
<div>
<small class="text-danger">Zip are protected with password "{{protectDownloadsWith}}"</small>
</div>
</div>
</div>
<div class="row">
<!-- Observable analysers short reports -->
<div class="col-md-12">
<div class="col-md-12 flexwrap">
<report ng-repeat="(analyzerId, summary) in artifact.reports"
artifact="artifact"
content="summary"
Expand Down
30 changes: 23 additions & 7 deletions ui/app/views/partials/case/case.tasks.html
Original file line number Diff line number Diff line change
Expand Up @@ -51,11 +51,11 @@
<table class="table table-striped table-hover valigned">
<thead>
<tr>
<th style="width: 50px"></th>
<th style="width: 550px;">Task</th>
<th style="width: 200px">Date</th>
<th style="width: 40px"></th>
<th>Task</th>
<th style="width: 240px">Date</th>
<th style="width: 200px">Assignee</th>
<th style="width: 50px"></th>
<th style="width: 200px"></th>
</tr>
</thead>
<tbody>
Expand All @@ -64,16 +64,32 @@
<i ng-switch-when="Completed" class="text-success glyphicon glyphicon-ok"></i>
<i ng-switch-when="InProgress" class="glyphicon" ng-class="{true:'text-yellow glyphicon-flag', false:'text-primary glyphicon-play'}[task.flag]"></i>
</td>
<td ng-click="openTask(task)" class="pointer">{{task.title}}</td>
<td ng-click="startTask(task)" class="pointer">{{task.title}}</td>
<td>{{task.startDate | showDate}}</td>
<td>
<span ng-show="task.owner">
<user user-id="task.owner"></user>
</span>
<em ng-show="!task.owner">Not assigned</em>
</td>
<td class="task-delete clickable" align="center" ng-click="removeTask(task)">
<i class="glyphicon glyphicon-remove text-danger"></i>
<!-- class="task-delete" -->
<td align="right">
<span class="ml-xs clickable text-danger task-delete" ng-click="removeTask(task)">
<i class="fa fa-times"></i>
Delete
</span>
<span class="ml-xs clickable text-success" ng-show="task.status == 'Completed'" ng-click="openTask(task)">
<i class="fa fa-check-circle"></i>
Open
</span>
<span class="ml-xs clickable text-muted" ng-show="task.status == 'InProgress'" ng-click="closeTask(task)">
<i class="fa fa-check-circle-o"></i>
Close
</span>
<span class="ml-xs clickable text-primary" ng-show="task.status == 'Waiting'" ng-click="startTask(task)">
<i class="fa fa-play"></i>
Start
</span>
</td>
</tr>
</tbody>
Expand Down
54 changes: 23 additions & 31 deletions ui/app/views/partials/case/case.tasks.item.html
Original file line number Diff line number Diff line change
@@ -1,38 +1,28 @@
<div class="row">
<div class="col-md-5">
<h4 align="left">
<updatable-simple-text on-update="updateField('title', newValue)" placeholder="Task title" value="task.title"></updatable-simple-text>
<span ng-hide="task.status == 'Completed'" style="float: right">
<!-- <button ng-click="state.isCollapsed=!state.isCollapsed" class="btn btn-default btn-xs">Complete tasks</button> -->
<span>
<a href ng-click="switchFlag()" style="text-decoration: none">
<i class="text-yellow glyphicon glyphicon-flag" ng-show="task.flag"></i>
<i class="text-muted glyphicon glyphicon-flag" ng-class="setFlag" ng-mouseout="setFlag='text-muted glyphicon-flag'" ng-mouseover="setFlag='text-yellow glyphicon-flag'" ng-show="!task.flag || task.flag == undefined"></i>
</a>
</span>
<span>
<a href ng-click="state.isCollapsed=!state.isCollapsed" style="text-decoration: none">
<i class="text-muted glyphicon glyphicon-ok-circle" ng-class="CompleteTask" ng-mouseout="CompleteTask='text-muted glyphicon-ok-circle'" ng-mouseover="CompleteTask='text-success glyphicon-ok-sign'"></i>
</a>
</span>
</span>
<span ng-show="task.status == 'Completed'" style="float: right;">
<span>
<i class="text-success glyphicon glyphicon-ok-sign"></i>
</span>
</span>
</h4>
<h4 class="mb-xs text-primary">
Basic Information

<div class="alert alert-danger" uib-collapse="!state.isCollapsed">
<i class="glyphicon glyphicon-exclamation-sign"></i>
You are about to close this task. Are you sure you want to continue ?
<div align="center">
<br>
<button class="btn btn-danger btn-xs" ng-click="complete(); state.isCollapsed = !state.isCollapsed">Complete</button>
</div>
</div>
<div class="task-actions pull-right">
<a href ng-click="switchFlag()">
<span class="mr-xxs action-button" ng-class="{true: 'text-yellow', false: 'text-muted'}[task.flag]">
<i class="fa fa-flag"></i> {{task.flag ? 'Unflag' : 'Flag'}}
</span>
</a>

<br>
<a href ng-click="openTask(task)">
<span ng-show="task.status == 'Completed'" class="action-button text-success">
<i class="fa fa-check-circle"></i> Open
</span>
</a>

<a href ng-click="closeTask(task)">
<span ng-show="task.status == 'InProgress'" class="action-button text-muted">
<i class="fa fa-check-circle-o"></i> Close
</span>
</a>
</div>
</h4>

<dl class="dl-horizontal">
<dt class="pull-left">Owner</dt>
Expand Down Expand Up @@ -71,6 +61,8 @@ <h4 align="left">

<!-- New Log -->
<div class="col-md-7">
<h4 class="mb-xs text-primary">Task logs</h4>

<div class="row clearfix" ng-show="!adding">
<div class="col-md-12">
<div class="btn-toolbar" role="toolbar">
Expand Down
15 changes: 0 additions & 15 deletions ui/app/views/partials/case/case0.add.metric.html

This file was deleted.

0 comments on commit 63def06

Please sign in to comment.