From c6091cd71ed3dcca307e2977ac7d06d62b0464c5 Mon Sep 17 00:00:00 2001 From: Hillel Coren Date: Tue, 13 Jun 2017 15:42:41 +0300 Subject: [PATCH] Improve cancel button links --- app/Libraries/HTMLUtils.php | 12 ++++++++++++ resources/views/accounts/product.blade.php | 2 +- resources/views/credits/edit.blade.php | 2 +- resources/views/expenses/edit.blade.php | 2 +- resources/views/payments/edit.blade.php | 2 +- resources/views/tasks/edit.blade.php | 8 ++++---- 6 files changed, 20 insertions(+), 8 deletions(-) diff --git a/app/Libraries/HTMLUtils.php b/app/Libraries/HTMLUtils.php index 2afd71cd03d5..24dd67a6b5da 100644 --- a/app/Libraries/HTMLUtils.php +++ b/app/Libraries/HTMLUtils.php @@ -44,4 +44,16 @@ class HTMLUtils return $purifier->purify($html); } + + public static function previousUrl($fallback) + { + $previous = url()->previous(); + $current = request()->url(); + + if ($previous == $current) { + return url($fallback); + } else { + return $previous; + } + } } diff --git a/resources/views/accounts/product.blade.php b/resources/views/accounts/product.blade.php index 4e0677809bbc..7d9ff865f4d2 100644 --- a/resources/views/accounts/product.blade.php +++ b/resources/views/accounts/product.blade.php @@ -41,7 +41,7 @@ {!! Former::actions( - Button::normal(trans('texts.cancel'))->large()->asLinkTo(URL::to('/products'))->appendIcon(Icon::create('remove-circle')), + Button::normal(trans('texts.cancel'))->large()->asLinkTo(HTMLUtils::previousUrl('/products'))->appendIcon(Icon::create('remove-circle')), Button::success(trans('texts.save'))->submit()->large()->appendIcon(Icon::create('floppy-disk')) ) !!} diff --git a/resources/views/credits/edit.blade.php b/resources/views/credits/edit.blade.php index 2240b54c2660..ad2216d5ad18 100644 --- a/resources/views/credits/edit.blade.php +++ b/resources/views/credits/edit.blade.php @@ -52,7 +52,7 @@
- {!! Button::normal(trans('texts.cancel'))->large()->asLinkTo(URL::to('/credits'))->appendIcon(Icon::create('remove-circle')) !!} + {!! Button::normal(trans('texts.cancel'))->large()->asLinkTo(HTMLUtils::previousUrl('/credits'))->appendIcon(Icon::create('remove-circle')) !!} {!! Button::success(trans('texts.save'))->submit()->large()->appendIcon(Icon::create('floppy-disk')) !!}
diff --git a/resources/views/expenses/edit.blade.php b/resources/views/expenses/edit.blade.php index d5901e47c651..16b1035fb551 100644 --- a/resources/views/expenses/edit.blade.php +++ b/resources/views/expenses/edit.blade.php @@ -198,7 +198,7 @@
{!! Button::normal(trans('texts.cancel')) - ->asLinkTo(URL::to('/expenses')) + ->asLinkTo(HTMLUtils::previousUrl('/expenses')) ->appendIcon(Icon::create('remove-circle')) ->large() !!} diff --git a/resources/views/payments/edit.blade.php b/resources/views/payments/edit.blade.php index aa974d7c0cb9..2e8811cd24ff 100644 --- a/resources/views/payments/edit.blade.php +++ b/resources/views/payments/edit.blade.php @@ -87,7 +87,7 @@
- {!! Button::normal(trans('texts.cancel'))->appendIcon(Icon::create('remove-circle'))->asLinkTo(URL::to('/payments'))->large() !!} + {!! Button::normal(trans('texts.cancel'))->appendIcon(Icon::create('remove-circle'))->asLinkTo(HTMLUtils::previousUrl('/payments'))->large() !!} @if (!$payment || !$payment->is_deleted) {!! Button::success(trans('texts.save'))->withAttributes(['id' => 'saveButton'])->appendIcon(Icon::create('floppy-disk'))->submit()->large() !!} @endif diff --git a/resources/views/tasks/edit.blade.php b/resources/views/tasks/edit.blade.php index 05c10f7e27c9..567466bb5177 100644 --- a/resources/views/tasks/edit.blade.php +++ b/resources/views/tasks/edit.blade.php @@ -152,14 +152,14 @@ {!! Button::success(trans('texts.save'))->large()->appendIcon(Icon::create('floppy-disk'))->withAttributes(['id' => 'save-button']) !!} {!! Button::primary(trans('texts.stop'))->large()->appendIcon(Icon::create('stop'))->withAttributes(['id' => 'stop-button']) !!} @elseif ($task && $task->is_deleted) - {!! Button::normal(trans('texts.cancel'))->large()->asLinkTo(URL::to('/tasks'))->appendIcon(Icon::create('remove-circle')) !!} + {!! Button::normal(trans('texts.cancel'))->large()->asLinkTo(HTMLUtils::previousUrl('/tasks'))->appendIcon(Icon::create('remove-circle')) !!} {!! Button::primary(trans('texts.restore'))->large()->withAttributes(['onclick' => 'submitAction("restore")'])->appendIcon(Icon::create('cloud-download')) !!} @elseif ($task && $task->trashed()) - {!! Button::normal(trans('texts.cancel'))->large()->asLinkTo(URL::to('/tasks'))->appendIcon(Icon::create('remove-circle')) !!} + {!! Button::normal(trans('texts.cancel'))->large()->asLinkTo(HTMLUtils::previousUrl('/tasks'))->appendIcon(Icon::create('remove-circle')) !!} {!! Button::success(trans('texts.save'))->large()->appendIcon(Icon::create('floppy-disk'))->withAttributes(['id' => 'save-button']) !!} {!! Button::primary(trans('texts.restore'))->large()->withAttributes(['onclick' => 'submitAction("restore")'])->appendIcon(Icon::create('cloud-download')) !!} @else - {!! Button::normal(trans('texts.cancel'))->large()->asLinkTo(URL::to('/tasks'))->appendIcon(Icon::create('remove-circle')) !!} + {!! Button::normal(trans('texts.cancel'))->large()->asLinkTo(HTMLUtils::previousUrl('/tasks'))->appendIcon(Icon::create('remove-circle')) !!} @if ($task) {!! Button::success(trans('texts.save'))->large()->appendIcon(Icon::create('floppy-disk'))->withAttributes(['id' => 'save-button']) !!} {!! Button::primary(trans('texts.resume'))->large()->appendIcon(Icon::create('play'))->withAttributes(['id' => 'resume-button']) !!} @@ -173,7 +173,7 @@ @endif @endif @else - {!! Button::normal(trans('texts.cancel'))->large()->asLinkTo(URL::to('/tasks'))->appendIcon(Icon::create('remove-circle')) !!} + {!! Button::normal(trans('texts.cancel'))->large()->asLinkTo(HTMLUtils::previousUrl('/tasks'))->appendIcon(Icon::create('remove-circle')) !!} @endif @endif