From 26ca361b1a691c041f53b0ea00063a615b571110 Mon Sep 17 00:00:00 2001
From: Davide Aprea <davide@suma-ev.de>
Date: Tue, 10 Nov 2020 10:19:05 +0100
Subject: [PATCH] removed redirect to start page when sending key

---
 app/Http/Controllers/KeyController.php | 33 ++++++++++++++++++++++----
 resources/views/key.blade.php          |  8 +++----
 2 files changed, 32 insertions(+), 9 deletions(-)

diff --git a/app/Http/Controllers/KeyController.php b/app/Http/Controllers/KeyController.php
index 417b95bf8..4e2553332 100644
--- a/app/Http/Controllers/KeyController.php
+++ b/app/Http/Controllers/KeyController.php
@@ -12,9 +12,20 @@ class KeyController extends Controller
     {
         $redirUrl = $request->input('redirUrl', "");
 
-        return view('key')
-            ->with('title', trans('titles.key'));
+        $cookie = Cookie::get('key');
+        $key = $request->input('key', '');
+
+        if(empty($key) && empty($cookie)){
+            $key = 'enter_key_here';
+        }elseif(empty($key) && !empty($cookie)){
+            $key = $cookie;
+        }elseif(!empty($key)){
+            $key = $request->input('key');
+        }
 
+        return view('key')
+            ->with('title', trans('titles.key'))
+            ->with('cookie', $key);
     }
 
     public function setKey(Request $request)
@@ -29,12 +40,24 @@ class KeyController extends Controller
                 $host = $request->header("Host", "");
             }
 
-            Cookie::queue('key', $key, 525600, '/', null, false, false);
-            return redirect($redirUrl);
+            $cookie = Cookie::get('key');
+
+            if(empty($key) && empty($cookie)){
+                $key = 'enter_key_here';
+            }elseif(empty($key) && !empty($cookie)){
+                $key = $cookie;
+            }elseif(!empty($key)){
+                $key = $request->input('key');
+            }
+            
+            return view('key')
+            ->with('title', trans('titles.key'))
+            ->with('cookie', $key);
         } else {
             return view('key')
                 ->with('title', trans('titles.key'))
-                ->with('keyValid', false);
+                ->with('keyValid', false)
+                ->with('cookie', 'enter_key_here');
         }
     }
 
diff --git a/resources/views/key.blade.php b/resources/views/key.blade.php
index 4ba1cdabb..55fc2e80d 100644
--- a/resources/views/key.blade.php
+++ b/resources/views/key.blade.php
@@ -24,7 +24,7 @@
             <li>
                 @lang ('key.li1')
                 <div class="copyLink">
-                    <input id="loadSettings" class="loadSettings" type="text" value="{{route('loadSettings', ["key" => empty(Cookie::get('key')) ? "enter_key_here" : Cookie::get('key')])}}">
+                    <input id="loadSettings" class="loadSettings" type="text" value="{{route('loadSettings', ["key" => $cookie])}}">
                     <button class="js-only btn btn-default" onclick="var copyText = document.getElementById('loadSettings');copyText.select();copyText.setSelectionRange(0, 99999);document.execCommand('copy');">@lang('settings.copy')</button>
                 </div>
             </li>
@@ -32,7 +32,7 @@
             <li>
                 @lang('key.li2')
                 <div class="copyLink">
-                    <input id="searchString" class="loadSettings" type="text" value="{{route("resultpage", ["key" => empty(Cookie::get('key')) ? "enter_key_here" : Cookie::get('key')]) . "&eingabe=%s"}}">
+                    <input id="searchString" class="loadSettings" type="text" value="{{route("resultpage", ["key" => $cookie]) . "&eingabe=%s"}}">
                     <button class="js-only btn btn-default" onclick="var copyText = document.getElementById('searchString');copyText.select();copyText.setSelectionRange(0, 99999);document.execCommand('copy');">@lang('settings.copy')</button>
                 </div>
             </li>
@@ -42,10 +42,10 @@
         <div id="form-wrapper">
             <form method="post">
                 <input type="hidden" name="redirUrl" value="{{ Request::input('redirUrl', '') }}" />
-                <input type="text" name="key" value="{{Cookie::get('key')}}" placeholder="@lang('key.placeholder1')" autofocus>
+                <input type="text" name="key" value="{{$cookie === 'enter_key_here' ? '' : $cookie}}" placeholder="@lang('key.placeholder1')" autofocus>
                 <button type="submit" class="btn btn-success">OK</button>
             </form>
-            @if(Cookie::get('key') !== NULL)
+            @if($cookie !== 'enter_key_here')
             <form method="post" action="{{ LaravelLocalization::getLocalizedURL(LaravelLocalization::getCurrentLocale(), action('KeyController@removeKey', ['redirUrl' => url()->full()])) }}">
                 <input type="hidden" name="redirUrl" value="{{ Request::input('redirUrl', '') }}" />
                 <button type="submit" class="btn btn-default">@lang('key.removeKey')</button>
-- 
GitLab