From bfa0a973b528c17cd00fcb9f5686eda4b228f8eb Mon Sep 17 00:00:00 2001 From: Hillel Coren Date: Mon, 2 Oct 2017 20:07:41 +0300 Subject: [PATCH] Working on the time tracker --- resources/lang/en/texts.php | 2 +- resources/views/tasks/time_tracker.blade.php | 14 +++++++++++-- .../tasks/time_tracker_knockout.blade.php | 20 ++++++++++++++++++- 3 files changed, 32 insertions(+), 4 deletions(-) diff --git a/resources/lang/en/texts.php b/resources/lang/en/texts.php index 93e05868d208..eb1d9cf58fff 100644 --- a/resources/lang/en/texts.php +++ b/resources/lang/en/texts.php @@ -2469,7 +2469,7 @@ $LANG = array( 'descending' => 'Descending', 'sort_field' => 'Sort By', 'sort_direction' => 'Direction', - + 'discard' => 'Discard', 'time_am' => 'AM', 'time_pm' => 'PM', 'time_mins' => 'mins', diff --git a/resources/views/tasks/time_tracker.blade.php b/resources/views/tasks/time_tracker.blade.php index cab1f568426e..05b40f5ad660 100644 --- a/resources/views/tasks/time_tracker.blade.php +++ b/resources/views/tasks/time_tracker.blade.php @@ -40,6 +40,10 @@ outline: none; } + span.archived-link { + color: #888888 !important; + } + .fade-color { animation-name: fadeToYellow; } @@ -273,6 +277,12 @@ ] )->split() !!} + {!! Button::normal(trans('texts.discard')) + ->appendIcon(Icon::create('remove-circle')) + ->withAttributes([ + 'data-bind' => 'click: onCancelClick, visible: showDiscard', + ]) + ->large() !!} {!! Button::normal(trans('texts.cancel')) ->appendIcon(Icon::create('remove-circle')) ->withAttributes([ @@ -350,9 +360,9 @@  

- + | - +  

diff --git a/resources/views/tasks/time_tracker_knockout.blade.php b/resources/views/tasks/time_tracker_knockout.blade.php index 6f1f010f86f5..8c9705750642 100644 --- a/resources/views/tasks/time_tracker_knockout.blade.php +++ b/resources/views/tasks/time_tracker_knockout.blade.php @@ -428,12 +428,20 @@ return task.isCreated() && ! task.isChanged(); }); + self.showDiscard = ko.computed(function() { + var task = self.selectedTask(); + if (! task) { + return false; + } + return ! task.isCreated(); + }); + self.showCancel = ko.computed(function() { var task = self.selectedTask(); if (! task) { return false; } - return task.isChanged(); + return task.isCreated() && task.isChanged(); }); self.startIcon = ko.computed(function() { @@ -983,6 +991,14 @@ return self.project() ? self.project().name() : ''; }); + self.clientClass = ko.computed(function() { + return self.client() && self.client().deleted_at() ? 'archived-link' : ''; + }); + + self.projectClass = ko.computed(function() { + return self.project() && self.project().deleted_at() ? 'archived-link' : ''; + }); + self.startClass = ko.computed(function() { if (model.sendingRequest()) { return 'disabled'; @@ -1076,6 +1092,7 @@ var self = this; self.name = ko.observable(''); self.public_id = ko.observable(-1); + self.deleted_at = ko.observable(); if (data) { ko.mapping.fromJS(data, {}, this); @@ -1087,6 +1104,7 @@ self.name = ko.observable(''); self.public_id = ko.observable(-1); self.contacts = ko.observableArray(); + self.deleted_at = ko.observable(); self.mapping = { 'contacts': {