From bbf8d31ce6575a788b6969c5d67107a8c8192647 Mon Sep 17 00:00:00 2001
From: Dominik Hebeler <dominik@suma-ev.de>
Date: Wed, 27 Feb 2019 10:16:07 +0100
Subject: [PATCH] First commit

---
 app/Http/Controllers/KeyController.php      | 17 +++++++
 resources/less/metager/pages/key.less       | 11 +++++
 resources/less/metager/parts/searchbar.less | 53 ++-------------------
 resources/views/key.blade.php               | 22 +++++++++
 resources/views/parts/searchbar.blade.php   |  5 +-
 routes/web.php                              |  2 +-
 webpack.mix.js                              |  6 +++
 7 files changed, 64 insertions(+), 52 deletions(-)
 create mode 100644 app/Http/Controllers/KeyController.php
 create mode 100644 resources/less/metager/pages/key.less
 create mode 100644 resources/views/key.blade.php

diff --git a/app/Http/Controllers/KeyController.php b/app/Http/Controllers/KeyController.php
new file mode 100644
index 000000000..ea252861b
--- /dev/null
+++ b/app/Http/Controllers/KeyController.php
@@ -0,0 +1,17 @@
+<?php
+
+namespace App\Http\Controllers;
+
+use Illuminate\Http\Request;
+
+class KeyController extends Controller
+{
+    public function index(Request $request)
+    {
+        $redirUrl = $request->input('redirUrl', "");
+
+        return view('key')
+            ->with('title', "Mitgliederschlüssel eingeben");
+
+    }
+}
diff --git a/resources/less/metager/pages/key.less b/resources/less/metager/pages/key.less
new file mode 100644
index 000000000..a5b038ec1
--- /dev/null
+++ b/resources/less/metager/pages/key.less
@@ -0,0 +1,11 @@
+// Variables
+@import "../variables.less";
+@import "../general/cards.less";
+#key-site {
+    .section {
+        .card-medium;
+    }
+    form {
+        text-align: center;
+    }
+}
\ No newline at end of file
diff --git a/resources/less/metager/parts/searchbar.less b/resources/less/metager/parts/searchbar.less
index 5b3e7d123..cd91c9ef9 100644
--- a/resources/less/metager/parts/searchbar.less
+++ b/resources/less/metager/parts/searchbar.less
@@ -23,55 +23,12 @@
         display: flex;
         max-width: 600px;
         #search-key {
-            display: -webkit-box;
-            display: -ms-flexbox;
             display: flex;
-            z-index: 1;
-            #input-key {
-                margin: 0;
-                padding: 0px;
-                border: none;
-                -webkit-box-shadow: none;
-                box-shadow: none;
-                height: 40px;
-                width: 0px;
-                outline-color: green;
-                -webkit-transition: width 0.5s, padding 0.5s, outline-color 0s, border-color 0s, -webkit-box-shadow 0s;
-                transition: width 0.5s, padding 0.5s, outline-color 0s, border-color 0s, -webkit-box-shadow 0s;
-                transition: width 0.5s, padding 0.5s, outline-color 0s, border-color 0s, box-shadow 0s;
-                transition: width 0.5s, padding 0.5s, outline-color 0s, border-color 0s, box-shadow 0s, -webkit-box-shadow 0s;
-                &:focus {
-                    width: 200px;
-                    padding: 6px 10px 6px 10px;
-                    outline-color: @metager-orange;
-                    -webkit-box-shadow: 0px 0px 2px 2px rgba(255, 128, 0, 1);
-                    box-shadow: 0px 0px 2px 2px rgba(255, 128, 0, 1);
-                    border-color: rgba(255, 128, 0, 1);
-                    border-radius: 4px;
-                    +#key-label {
-                        visibility: hidden;
-                        width: 0px;
-                    }
-                }
-            }
-            #key-label {
-                cursor: pointer;
-                height: 40px;
-                width: 40px;
-                margin: 0;
-                display: -webkit-box;
-                display: -ms-flexbox;
-                display: flex;
-                -webkit-box-align: center;
-                -ms-flex-align: center;
-                align-items: center;
-                -webkit-box-pack: center;
-                -ms-flex-pack: center;
-                justify-content: center;
-                -webkit-transition: width 0s, visibility 0s;
-                transition: width 0s, visibility 0s;
-                -webkit-transition-delay: 0.3s;
-                transition-delay: 0.3s;
+            justify-content: center;
+            align-items: center;
+            > a {
+                padding: 8px 16px;
+                color: #777;
             }
         }
         .search-input {
diff --git a/resources/views/key.blade.php b/resources/views/key.blade.php
new file mode 100644
index 000000000..a37568126
--- /dev/null
+++ b/resources/views/key.blade.php
@@ -0,0 +1,22 @@
+@extends('layouts.subPages', ['page' => 'key'])
+
+@section('title', $title )
+
+@section('content')
+<link type="text/css" rel="stylesheet" href="{{ mix('/css/key.css') }}" />
+<div id="key-site">
+    <div class="section">
+        <h1>Schlüssel für Ihre Werbefreie Suche</h1>
+        <p>MetaGer bietet seinen <a href="{{LaravelLocalization::getLocalizedURL(LaravelLocalization::getCurrentLocale(), '/beitritt')}}">Mitgliedern</a> und großzügigen <a href="{{LaravelLocalization::getLocalizedURL(LaravelLocalization::getCurrentLocale(), '/spende')}}">Spendern</a> einen Schlüssel an, mit dem die Suchmaschine komplett werbefrei verwendet werden kann.</p>
+        <p>Auf dieser Seite können Sie Ihren Schlüssel (sofern bekannt) eingeben. Wir speichern diesen mit Hilfe eines Cookies auf Ihrem PC. Auf diese Weise sendet Ihr Browser den Schlüssel automatisch bei jeder durchgeführten Suche an uns, sodass wir die Werbung für Sie entfernen können. Der Schlüssel wird natürlich zu keinem Zeitpunkt so verwendet, dass wir die durchgeführten Suchen Ihnen persönlich zuordnen könnten. Er wird von uns auch nicht gespeichert, oder geloggt.</p>
+        <p>Wichtig: Um diese Funktion nutzen zu können, müssen Sie Cookies in Ihrem Browser zugelassen haben. Die Einstellung bleibt dann solange gespeichert, wie Ihr Browser Cookies speichert.</p>
+    </div>
+    <div class="section">
+        <form method="post">
+            <input type="hidden" name="redirUrl" value="{{ Request::input('redirUrl', '') }}" />
+            <input type="text" name="key" placeholder="Schlüssel eingeben...">
+            <button type="submit" class="btn btn-success">OK</button>
+        </form>
+    </div>
+</div>
+@endsection
diff --git a/resources/views/parts/searchbar.blade.php b/resources/views/parts/searchbar.blade.php
index 1fdbc9380..b0875dee2 100644
--- a/resources/views/parts/searchbar.blade.php
+++ b/resources/views/parts/searchbar.blade.php
@@ -4,10 +4,9 @@
 		<div class="searchbar {{$class ?? ''}}">
 			<div class="search-input-submit">
 				<div id="search-key">
-					<input id="input-key" type="text" name="key" placeholder="{{ trans ('index.key.placeholder') }}" tabindex="1">
-					<label id="key-label" for="input-key" data-tooltip="{{ trans ('index.key.tooltip') }}">
+					<a id="key-link" href="{{ action('KeyController@index', ['redirUrl' => url()->full() ]) }}" data-tooltip="{{ trans ('index.key.tooltip') }}">
 						<i class="fa fa-key" aria-hidden="true"></i>
-					</label>
+					</a>
 				</div>
 				<div class="search-input">
 					<input type="search" name="eingabe" value="@if(isset($eingabe)){{$eingabe}}@endif" required=""  @if(\Request::is('/')) autofocus @endif autocomplete="off" class="form-control" placeholder="{{ trans('index.placeholder') }}" tabindex="2">
diff --git a/routes/web.php b/routes/web.php
index 27ce043bb..6564c565a 100644
--- a/routes/web.php
+++ b/routes/web.php
@@ -203,7 +203,7 @@ Route::group(
         Route::post('synoptic/{exclude?}/{chosenFile?}', 'LanguageController@processSynopticPageInput');
         Route::get('languages/edit/{from}/{to}/{exclude?}/{email?}', 'LanguageController@createEditPage');
         Route::post('languages/edit/{from}/{to}/{exclude?}/{email?}', 'MailController@sendLanguageFile');
-        Route::get('berlin', 'StartpageController@berlin');
+        Route::get('key', "KeyController@index");
 
         Route::group(['prefix' => 'app'], function () {
             Route::get('/', function () {
diff --git a/webpack.mix.js b/webpack.mix.js
index 65f62303b..213b71ff2 100644
--- a/webpack.mix.js
+++ b/webpack.mix.js
@@ -37,6 +37,12 @@ mix
       strictMath: true
     }
   )
+  .less(
+    "resources/less/metager/pages/key.less",
+    "public/css/key.css", {
+      strictMath: true
+    }
+  )
   .less("resources/less/utility.less", "public/css/utility.css", {
     strictMath: true
   })
-- 
GitLab