From 016613b469eaec3a1204a34ad75c762d9c968d0d Mon Sep 17 00:00:00 2001
From: Neerholt <vict3459@edu.sde.dk>
Date: Wed, 1 Jul 2020 09:16:53 +0200
Subject: [PATCH 01/10] Fix

---
 .../Http/Controllers/MenuPlanController.php   |  9 ++++++--
 .../app/Http/Controllers/RolesController.php  | 21 +++++++++++++++----
 2 files changed, 24 insertions(+), 6 deletions(-)

diff --git a/skolehjem/app/Http/Controllers/MenuPlanController.php b/skolehjem/app/Http/Controllers/MenuPlanController.php
index d6e334b..7707dc1 100644
--- a/skolehjem/app/Http/Controllers/MenuPlanController.php
+++ b/skolehjem/app/Http/Controllers/MenuPlanController.php
@@ -60,9 +60,14 @@ class MenuPlanController extends Controller
         ]);
 
         $menuPlans = new MenuPlan($requestMenuPlanCreate);
-        $menuPlans->save();
+        $saved = $menuPlans->save();
 
-        return Response::detect("menuplans.store");
+        if(!$saved){
+            return Response::detect("menuplans.store");
+        }else{
+            $menuPlans = MenuPlan::query()->paginate($request->input("limit", 20));
+            return Response::detect("menuplans.index", ['menuplan' => $menuPlans]);
+        }
     }
 
     /**
diff --git a/skolehjem/app/Http/Controllers/RolesController.php b/skolehjem/app/Http/Controllers/RolesController.php
index 6f58467..093cbe8 100644
--- a/skolehjem/app/Http/Controllers/RolesController.php
+++ b/skolehjem/app/Http/Controllers/RolesController.php
@@ -45,9 +45,16 @@ class rolesController extends Controller
         ]);
 
         $role = new Role($requestRole);
-        $role->save();
+        $saved = $role->save();
+
+        if(!$saved){
+            return Response::detect("roles.store");
+        }else{
+            $roles = Role::query()->paginate($request->input("limit", 20));
+            return Response::detect("roles.index", ['roles' => $roles]);
+        }
+
 
-        return Response::detect("roles.store");
     }
 
     /**
@@ -85,9 +92,15 @@ class rolesController extends Controller
         $data = $request->all();
         $role = Role::find($id);
         $role->update($data);
-        $role->save();
+        $saved = $role->save();
+
+        if(!$saved){
+            return Response::detect("roles.update", [ "role" => $role ]);
+        }else{
+            $roles = Role::query()->paginate($request->input("limit", 20));
+            return Response::detect("roles.index", ['roles' => $roles]);
+        }
 
-        return Response::detect("roles.update", [ "role" => $role ]);
     }
 
     /**

From f0a203fbb26852a54b59c79903f480ab19246799 Mon Sep 17 00:00:00 2001
From: frederikpyt <frederikpyt@gmail.com>
Date: Wed, 1 Jul 2020 09:27:18 +0200
Subject: [PATCH 02/10] Rearranged admin panel site navigation

---
 skolehjem/public/css/admin.css                | 26 +++++--
 skolehjem/resources/sass/admin/nav/nav.scss   | 28 +++++--
 .../views/admin/contacts/index.blade.php      |  5 +-
 .../views/admin/events/index.blade.php        |  5 +-
 .../admin/external-links/index.blade.php      |  5 +-
 .../views/admin/feedbacks/index.blade.php     |  5 +-
 .../views/admin/layout/base.blade.php         | 75 +++----------------
 .../views/admin/menuplans/index.blade.php     |  5 +-
 .../views/admin/roles/index.blade.php         |  5 +-
 .../views/admin/users/index.blade.php         |  5 +-
 .../admin/washing-machines/index.blade.php    |  5 +-
 .../washing-reservations/index.blade.php      |  5 +-
 12 files changed, 87 insertions(+), 87 deletions(-)

diff --git a/skolehjem/public/css/admin.css b/skolehjem/public/css/admin.css
index c6b3a23..c1e0293 100644
--- a/skolehjem/public/css/admin.css
+++ b/skolehjem/public/css/admin.css
@@ -6588,16 +6588,18 @@ main {
   min-width: 194px;
 }
 
-.segment {
-  margin-bottom: 1.25rem;
-}
-
 .segment > h3 {
   margin-left: -1rem;
   margin-top: 0;
-  width: calc(100% + 2rem);
-  background-color: rgba(0, 0, 0, 0.2);
+  width: calc(100% + 1rem);
   text-align: center;
+  margin-bottom: 0;
+  font-size: 1.15em;
+}
+
+.segment > h3 > a {
+  padding: 1rem 2rem;
+  display: block;
 }
 
 .segment > div {
@@ -6607,7 +6609,7 @@ main {
   margin-bottom: 0.5rem;
 }
 
-.segment > div:hover {
+.segment > h3:hover {
   background-color: rgba(0, 0, 0, 0.2);
 }
 
@@ -6616,6 +6618,16 @@ main {
   padding-right: 8px;
 }
 
+.btn-inline {
+  display: inline-flex;
+  align-items: center;
+}
+
+.btn-inline > img {
+  height: 1em;
+  margin-right: 4px;
+}
+
 .directorypath {
   border-radius: 2px;
   background-color: #333333;
diff --git a/skolehjem/resources/sass/admin/nav/nav.scss b/skolehjem/resources/sass/admin/nav/nav.scss
index f200ee7..d46b2b1 100644
--- a/skolehjem/resources/sass/admin/nav/nav.scss
+++ b/skolehjem/resources/sass/admin/nav/nav.scss
@@ -4,16 +4,18 @@
     min-width: 194px;
 }
 
-.segment {
-    margin-bottom: 1.25rem;
-}
-
 .segment > h3 {
     margin-left: -1rem;
     margin-top: 0;
-    width: calc(100% + 2rem);
-    background-color: rgba(0,0,0, 0.2);
+    width: calc(100% + 1rem);
     text-align: center;
+    margin-bottom: 0;
+    font-size: 1.15em;
+}
+
+.segment > h3 > a {
+    padding: 1rem 2rem;
+    display: block;
 }
 
 .segment > div {
@@ -23,8 +25,8 @@
     margin-bottom: .5rem;
 }
 
-.segment > div:hover {
-    background-color: rgba(0,0,0,0.2);
+.segment > h3:hover {
+    background-color: rgba(0,0,0, 0.2);
 }
 
 .segment > div > a > img {
@@ -35,3 +37,13 @@
 .segment > div > a {
 
 }
+
+.btn-inline {
+    display: inline-flex;
+    align-items: center;
+}
+
+.btn-inline > img {
+    height: 1em;
+    margin-right: 4px;
+}
diff --git a/skolehjem/resources/views/admin/contacts/index.blade.php b/skolehjem/resources/views/admin/contacts/index.blade.php
index dc0d212..f180b26 100644
--- a/skolehjem/resources/views/admin/contacts/index.blade.php
+++ b/skolehjem/resources/views/admin/contacts/index.blade.php
@@ -10,7 +10,10 @@
 @endsection
 
 @section("content")
-    <table class="tbl">
+    <div class="row align-items-center">
+        <a class="btn btn-inline btn-sde-blue mb-0" href="{{ route('contacts.create') }}"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Kontakt</a>
+    </div>
+    <table class="tbl mt-2">
         <tr>
             <th>Kontakt Navn</th>
             <th>Titel</th>
diff --git a/skolehjem/resources/views/admin/events/index.blade.php b/skolehjem/resources/views/admin/events/index.blade.php
index 95e6bb1..f27f4c1 100644
--- a/skolehjem/resources/views/admin/events/index.blade.php
+++ b/skolehjem/resources/views/admin/events/index.blade.php
@@ -10,7 +10,10 @@
 @endsection
 
 @section("content")
-    <table class="tbl">
+    <div class="row align-items-center">
+        <a class="btn btn-inline btn-sde-blue mb-0" href="{{ route('events.create') }}"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Event</a>
+    </div>
+    <table class="tbl mt-2">
         <tr>
             <th>Event Navn</th>
             <th>Event Beskrivelse</th>
diff --git a/skolehjem/resources/views/admin/external-links/index.blade.php b/skolehjem/resources/views/admin/external-links/index.blade.php
index 069db81..4e4dcad 100644
--- a/skolehjem/resources/views/admin/external-links/index.blade.php
+++ b/skolehjem/resources/views/admin/external-links/index.blade.php
@@ -10,7 +10,10 @@
 @endsection
 
 @section("content")
-    <table class="tbl">
+    <div class="row align-items-center">
+        <a class="btn btn-inline btn-sde-blue mb-0" href="{{ route('external-links.create') }}"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Ektern Link</a>
+    </div>
+    <table class="tbl mt-2">
         <tr>
             <th>Title</th>
             <th>Link</th>
diff --git a/skolehjem/resources/views/admin/feedbacks/index.blade.php b/skolehjem/resources/views/admin/feedbacks/index.blade.php
index 3961ebb..8dc3496 100644
--- a/skolehjem/resources/views/admin/feedbacks/index.blade.php
+++ b/skolehjem/resources/views/admin/feedbacks/index.blade.php
@@ -10,7 +10,10 @@
 @endsection
 
 @section("content")
-    <table class="tbl">
+    <div class="row align-items-center">
+        <a class="btn btn-inline btn-sde-blue mb-0" href="{{ route('feedbacks.create') }}"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Feedback</a>
+    </div>
+    <table class="tbl mt-2">
         <tr>
             <th>Feedback Besked</th>
             <th>Ris el. Ros</th>
diff --git a/skolehjem/resources/views/admin/layout/base.blade.php b/skolehjem/resources/views/admin/layout/base.blade.php
index 41bb86b..36e1a71 100644
--- a/skolehjem/resources/views/admin/layout/base.blade.php
+++ b/skolehjem/resources/views/admin/layout/base.blade.php
@@ -11,85 +11,34 @@
 <main class="row">
     <div class="col nav" style="background-color: #333333;">
         <div class="segment">
-            <h3 class="text-white">Brugere</h3>
-            <div class="row">
-                <a href="{{ route('users.index') }}" class="text-white"><img src="{{ asset('/images/icons/eye.svg') }}" alt="Read">Vis Brugere</a>
-            </div>
-            <div class="row">
-                <a href="{{ route('users.create') }}" class="text-white"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Bruger</a>
-            </div>
+            <h3 class="text-white"><a href="{{ route('users.index') }}" class="text-white">Brugere</a></h3>
         </div>
         <div class="segment">
-            <h3 class="text-white">Roller</h3>
-            <div class="row">
-                <a href="{{ route("roles.index") }}" class="text-white"><img src="{{ asset('/images/icons/eye.svg') }}" alt="Read">Vis Roller</a>
-            </div>
-            <div class="row">
-                <a href="{{ route('roles.create') }}" class="text-white"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Rolle</a>
-            </div>
+            <h3 class="text-white"><a href="{{ route("roles.index") }}" class="text-white">Roller</a></h3>
         </div>
         <div class="segment">
-            <h3 class="text-white">Menuplan</h3>
-            <div class="row">
-                <a href="{{ route("menu-plans.index") }}" class="text-white"><img src="{{ asset('/images/icons/eye.svg') }}" alt="Read">Vis Menuplan</a>
-            </div>
-            <div class="row">
-                <a href="{{ route("menu-plans.create") }}" class="text-white"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Menuplan</a>
-            </div>
+            <h3 class="text-white"><a href="{{ route("menu-plans.index")}}" class="text-white">Menuplan</a></h3>
         </div>
         <div class="segment">
-            <h3 class="text-white">Aktiviteter</h3>
-            <div class="row">
-                <a href="{{ route("events.index") }}" class="text-white"><img src="{{ asset('/images/icons/eye.svg') }}" alt="Read">Vis Aktiviteter</a>
-            </div>
-            <div class="row">
-                <a href="{{ route("events.create") }}" class="text-white"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Aktivitet</a>
-            </div>
+            <h3 class="text-white"><a href="{{ route("events.index") }}" class="text-white">Aktiviteter</a></h3>
         </div>
         <div class="segment">
-            <h3 class="text-white">Vaskemaskiner</h3>
-            <div class="row">
-                <a href="{{ route("washing-machines.index") }}" class="text-white"><img src="{{ asset('/images/icons/eye.svg') }}" alt="Read">Vis Vaskemaskiner</a>
-            </div>
-            <div class="row">
-                <a href="{{ route("washing-reservations.index") }}" class="text-white"><img src="{{ asset('/images/icons/eye.svg') }}" alt="Read">Vis Vaskemaskine Reservationer</a>
-            </div>
-            <div class="row">
-                <a href="{{ route('washing-machines.create') }}" class="text-white"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Vaskemaskine</a>
-            </div>
+            <h3 class="text-white"><a href="{{ route("washing-machines.index") }}" class="text-white">Vaskemaskiner</a></h3>
         </div>
         <div class="segment">
-            <h3 class="text-white">Eksterne Links</h3>
-            <div class="row">
-                <a href="{{ route("external-links.index") }}" class="text-white"><img src="{{ asset('/images/icons/eye.svg') }}" alt="Read">Vis Links</a>
-            </div>
-            <div class="row">
-                <a href="{{ route('external-links.create') }}" class="text-white"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Link</a>
-            </div>
+            <h3 class="text-white"><a href="{{ route("washing-reservations.index") }}" class="text-white">Vaskemaskiner Reservationer</a></h3>
+        </div>
+        <div class="segment">
+            <h3 class="text-white"><a href="{{ route("external-links.index") }}" class="text-white">Eksterne Links</a></h3>
         </div>
 {{--        <div class="segment">--}}
-{{--            <h3 class="text-white">Personale</h3>--}}
-{{--            <div class="row">--}}
-{{--                <a href="{{ route('staff.index') }}" class="text-white"><img src="{{ asset('/images/icons/eye.svg') }}" alt="Read">Vis Personale</a>--}}
-{{--            </div>--}}
-{{--            <div class="row">--}}
-{{--                <a href="{{ route('staff.create') }}" class="text-white"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Personal</a>--}}
-{{--            </div>--}}
+{{--            <h3 class="text-white"><a href="{{ route('staff.index') }}" class="text-white">Personale</a></h3>--}}
 {{--        </div>--}}
         <div class="segment">
-            <h3 class="text-white">Kontakter</h3>
-            <div class="row">
-                <a href="{{ route("contacts.index") }}" class="text-white"><img src="{{ asset('/images/icons/eye.svg') }}" alt="Read">Vis Kontakter</a>
-            </div>
-            <div class="row">
-                <a href="{{ route('contacts.create') }}" class="text-white"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Kontakt</a>
-            </div>
+            <h3 class="text-white"><a href="{{ route("contacts.index") }}" class="text-white">Kontakter</a></h3>
         </div>
         <div class="segment">
-            <h3 class="text-white">Feedback</h3>
-            <div class="row">
-                <a href="{{ route('feedbacks.index') }}" class="text-white"><img src="{{ asset('/images/icons/eye.svg') }}" alt="Read">Vis Feedback</a>
-            </div>
+            <h3 class="text-white"><a href="{{ route('feedbacks.index') }}" class="text-white">Feedback</a></h3>
         </div>
     </div>
     <div class="w-85" style="background-color: #cccccc;">
diff --git a/skolehjem/resources/views/admin/menuplans/index.blade.php b/skolehjem/resources/views/admin/menuplans/index.blade.php
index e1f75d2..d63d272 100644
--- a/skolehjem/resources/views/admin/menuplans/index.blade.php
+++ b/skolehjem/resources/views/admin/menuplans/index.blade.php
@@ -10,7 +10,10 @@
 @endsection
 
 @section("content")
-    <table class="tbl">
+    <div class="row align-items-center">
+        <a class="btn btn-inline btn-sde-blue mb-0" href="{{ route('menu-plans.create') }}"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Menuplan</a>
+    </div>
+    <table class="tbl mt-2">
         <tr>
             <th>Uge</th>
             <th>Mandag</th>
diff --git a/skolehjem/resources/views/admin/roles/index.blade.php b/skolehjem/resources/views/admin/roles/index.blade.php
index 29aab0d..fe3e3e7 100644
--- a/skolehjem/resources/views/admin/roles/index.blade.php
+++ b/skolehjem/resources/views/admin/roles/index.blade.php
@@ -10,7 +10,10 @@
 @endsection
 
 @section("content")
-    <table class="tbl">
+    <div class="row align-items-center">
+        <a class="btn btn-inline btn-sde-blue mb-0" href="{{ route('roles.create') }}"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Rolle</a>
+    </div>
+    <table class="tbl mt-2">
         <tr>
             <th>Navn</th>
             <th>Beskrivelse</th>
diff --git a/skolehjem/resources/views/admin/users/index.blade.php b/skolehjem/resources/views/admin/users/index.blade.php
index f778fe1..ffbbfb6 100644
--- a/skolehjem/resources/views/admin/users/index.blade.php
+++ b/skolehjem/resources/views/admin/users/index.blade.php
@@ -10,7 +10,10 @@
 @endsection
 
 @section("content")
-    <table class="tbl">
+    <div class="row align-items-center">
+        <a class="btn btn-inline btn-sde-blue mb-0" href="{{ route('users.create') }}"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Bruger</a>
+    </div>
+    <table class="tbl mt-2">
         <tr>
             <th>Fornavn</th>
             <th>Efternavn</th>
diff --git a/skolehjem/resources/views/admin/washing-machines/index.blade.php b/skolehjem/resources/views/admin/washing-machines/index.blade.php
index f7a9d97..1b2be54 100644
--- a/skolehjem/resources/views/admin/washing-machines/index.blade.php
+++ b/skolehjem/resources/views/admin/washing-machines/index.blade.php
@@ -10,7 +10,10 @@
 @endsection
 
 @section("content")
-    <table class="tbl">
+    <div class="row align-items-center">
+        <a class="btn btn-inline btn-sde-blue mb-0" href="{{ route('washing-machines.create') }}"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Vaskemaskine</a>
+    </div>
+    <table class="tbl mt-2">
         <tr>
             <th>Navn</th>
             <th style="width: 1em;"><img class="w-100" src="{{ asset('/images/icons/pencil.svg') }}" alt="Update"></th>
diff --git a/skolehjem/resources/views/admin/washing-reservations/index.blade.php b/skolehjem/resources/views/admin/washing-reservations/index.blade.php
index cc31d74..46939c3 100644
--- a/skolehjem/resources/views/admin/washing-reservations/index.blade.php
+++ b/skolehjem/resources/views/admin/washing-reservations/index.blade.php
@@ -10,7 +10,10 @@
 @endsection
 
 @section("content")
-    <table class="tbl">
+    <div class="row align-items-center">
+        <a class="btn btn-inline btn-sde-blue mb-0" href="{{ route('washing-reservations.create') }}"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Reservation</a>
+    </div>
+    <table class="tbl mt-2">
         <tr>
             <th>Fornavn</th>
             <th>Efternavn</th>

From 47daff173c1b2f4f284451f626e1cd72e6d7c169 Mon Sep 17 00:00:00 2001
From: frederikpyt <frederikpyt@gmail.com>
Date: Wed, 1 Jul 2020 09:27:54 +0200
Subject: [PATCH 03/10] Added "no role" option when updating and creating a
 user

---
 skolehjem/resources/views/admin/users/create.blade.php | 1 +
 skolehjem/resources/views/admin/users/edit.blade.php   | 3 ++-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/skolehjem/resources/views/admin/users/create.blade.php b/skolehjem/resources/views/admin/users/create.blade.php
index 0802da9..0216fe0 100644
--- a/skolehjem/resources/views/admin/users/create.blade.php
+++ b/skolehjem/resources/views/admin/users/create.blade.php
@@ -28,6 +28,7 @@
         <label for="roles">Rolle:</label>
         <select name="roles[]" id="roles" class="mb-2" multiple="multiple" required>
             <option disabled selected value> -- Vælg Rolle(r) -- </option>
+            <option value="">Ingen Rolle</option>
             @foreach($roles as $role)
                 <option value="{{ $role->name }}">{{ $role->name }}</option>
             @endforeach
diff --git a/skolehjem/resources/views/admin/users/edit.blade.php b/skolehjem/resources/views/admin/users/edit.blade.php
index 7025b63..73ae118 100644
--- a/skolehjem/resources/views/admin/users/edit.blade.php
+++ b/skolehjem/resources/views/admin/users/edit.blade.php
@@ -28,7 +28,8 @@
             <input type="tel" name="phone" id="tel" value="{{ $user->phone }}" required>
         <label for="role">Rolle:</label>
         <select name="roles[]" id="roles" class="mb-2" multiple="multiple" required>
-                <option disabled selected value> -- Vælg Rolle(r) -- </option>
+            <option disabled selected value> -- Vælg Rolle(r) -- </option>
+            <option value>Ingen Rolle</option>
                 @foreach($roles as $role)
                     <option value="{{ $role->name }}">{{ $role->name }}</option>
                 @endforeach

From 6b294972e4c44111ac191c61b6c15326d1c5b627 Mon Sep 17 00:00:00 2001
From: frederikpyt <frederikpyt@gmail.com>
Date: Wed, 1 Jul 2020 09:39:10 +0200
Subject: [PATCH 04/10] Fixed admin dashboard current user label

---
 skolehjem/resources/views/admin/layout/header.blade.php | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/skolehjem/resources/views/admin/layout/header.blade.php b/skolehjem/resources/views/admin/layout/header.blade.php
index a093951..432a487 100644
--- a/skolehjem/resources/views/admin/layout/header.blade.php
+++ b/skolehjem/resources/views/admin/layout/header.blade.php
@@ -3,7 +3,7 @@
         <img src="{{ URL::asset('/images/logos/Logo-hvid.svg') }}" class="h-100 brand" alt="Syddansk Erhvervsskole">
 
         @auth
-            <a href="" class="btn btn-dark text-white m-0 ml-auto">User: {{ Auth::user()->name }}</a>
+            <a href="" class="btn btn-dark text-white m-0 ml-auto">Bruger: {{ ucfirst(Auth::user()->name_first) }} {{ ucfirst(Auth::user()->name_last) }}</a>
             <a href="{{ route('users.logout') }}" class="btn btn-dark text-white m-0 ml-1 mr-1">Log ud</a>
         @else
             <a href="{{ route('users.login') }}" class="btn btn-dark text-white m-0 ml-auto mr-1">Log ind</a>

From 7b4610f02fc750754592f217757696cfa18e18c7 Mon Sep 17 00:00:00 2001
From: Neerholt <vict3459@edu.sde.dk>
Date: Wed, 1 Jul 2020 09:43:11 +0200
Subject: [PATCH 05/10] Fix

---
 .../app/Http/Controllers/EventController.php  | 20 +++++++++++++++----
 .../Controllers/ExternalLinkController.php    | 20 +++++++++++++++----
 .../Http/Controllers/MenuPlanController.php   | 12 ++++++++---
 .../views/admin/external-links/edit.blade.php |  2 +-
 4 files changed, 42 insertions(+), 12 deletions(-)

diff --git a/skolehjem/app/Http/Controllers/EventController.php b/skolehjem/app/Http/Controllers/EventController.php
index 0e98754..55866ba 100644
--- a/skolehjem/app/Http/Controllers/EventController.php
+++ b/skolehjem/app/Http/Controllers/EventController.php
@@ -59,9 +59,15 @@ class EventController extends Controller
 
         $event = new Event($requestBody);
 
-        $event->save();
+        $saved = $event->save();
+
+        if(!$saved){
+            return Response::detect("events.store");
+        }else{
+            $event = Event::query()->paginate($request->input("limit", 20));
+            return Response::detect("events.index", ['events' => $event]);
+        }
 
-        return Response::detect("events.store");
     }
 
     /**
@@ -100,9 +106,15 @@ class EventController extends Controller
 
         $event = Event::find($id);
         $event->update($data);
-        $event->save();
+        $saved = $event->save();
+
+        if(!$saved){
+            return Response::detect("events.update", [ "event" => $event]);
+        }else{
+            $event = Event::query()->paginate($request->input("limit", 20));
+            return Response::detect("events.index", ['events' => $event]);
+        }
 
-        return Response::detect("events.update", [ "event" => $event]);
     }
 
     /**
diff --git a/skolehjem/app/Http/Controllers/ExternalLinkController.php b/skolehjem/app/Http/Controllers/ExternalLinkController.php
index 8f99398..3b3b9a7 100644
--- a/skolehjem/app/Http/Controllers/ExternalLinkController.php
+++ b/skolehjem/app/Http/Controllers/ExternalLinkController.php
@@ -55,9 +55,15 @@ class ExternalLinkController extends Controller
         ]);
 
         $externalLink = new ExternalLink($requestBody);
-        $externalLink->save();
+        $saved = $externalLink->save();
+
+        if(!$saved){
+            return Response::detect("external-links.store");
+        }else{
+            $externalLink = ExternalLink::query()->paginate($request->input("limit", 20));
+            return Response::detect("external-links.index", ['links' => $externalLink]);
+        }
 
-        return Response::detect("external-links.store");
     }
 
     /**
@@ -96,9 +102,15 @@ class ExternalLinkController extends Controller
 
         $link = ExternalLink::find($id);
         $link->update($data);
-        $link->save();
+        $saved = $link->save();
+
+        if(!$saved){
+            return Response::detect("external-links.update", [ "link" => $link]);
+        }else{
+            $externalLink = ExternalLink::query()->paginate($request->input("limit", 20));
+            return Response::detect("external-links.index", ['links' => $externalLink]);
+        }
 
-        return Response::detect("external-links.update", [ "link" => $link]);
     }
 
     /**
diff --git a/skolehjem/app/Http/Controllers/MenuPlanController.php b/skolehjem/app/Http/Controllers/MenuPlanController.php
index 7707dc1..27db7c0 100644
--- a/skolehjem/app/Http/Controllers/MenuPlanController.php
+++ b/skolehjem/app/Http/Controllers/MenuPlanController.php
@@ -66,7 +66,7 @@ class MenuPlanController extends Controller
             return Response::detect("menuplans.store");
         }else{
             $menuPlans = MenuPlan::query()->paginate($request->input("limit", 20));
-            return Response::detect("menuplans.index", ['menuplan' => $menuPlans]);
+            return Response::detect("menuplans.index", ['menuPlans' => $menuPlans]);
         }
     }
 
@@ -107,9 +107,15 @@ class MenuPlanController extends Controller
 
         $menuplan = MenuPlan::find($id);
         $menuplan->update($data);
-        $menuplan->save();
+        $saved = $menuplan->save();
+
+        if(!$saved){
+            return Response::detect("menuplans.update", [ "menuplan" => $menuplan ]);
+        }else{
+            $menuPlans = MenuPlan::query()->paginate($request->input("limit", 20));
+            return Response::detect("menuplans.index", ['menuPlans' => $menuPlans]);
+        }
 
-        return Response::detect("menuplans.update", [ "menuplan" => $menuplan ]);
     }
 
     /**
diff --git a/skolehjem/resources/views/admin/external-links/edit.blade.php b/skolehjem/resources/views/admin/external-links/edit.blade.php
index 027e71e..250ec21 100644
--- a/skolehjem/resources/views/admin/external-links/edit.blade.php
+++ b/skolehjem/resources/views/admin/external-links/edit.blade.php
@@ -15,7 +15,7 @@
         @csrf
         @method("PUT")
         <label for="title">Titel:</label>
-        <input value="{{$link->name}}" type="text" name="title" id="title" required>
+        <input value="{{$link->name}}" type="text" name="name" id="title" required>
         <label for="link">Linket:</label>
         <input value="{{$link->link}}" type="text" name="link" id="link" required>
         <input type="submit" class="btn btn-dark text-white" value="Rediger">

From ca744a33e91c0bb82c459a9e4fcc46592d45a402 Mon Sep 17 00:00:00 2001
From: frederikpyt <frederikpyt@gmail.com>
Date: Wed, 1 Jul 2020 09:50:29 +0200
Subject: [PATCH 06/10] Removed feedback create button from admin dashboard

---
 skolehjem/resources/views/admin/feedbacks/index.blade.php | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/skolehjem/resources/views/admin/feedbacks/index.blade.php b/skolehjem/resources/views/admin/feedbacks/index.blade.php
index 8dc3496..3961ebb 100644
--- a/skolehjem/resources/views/admin/feedbacks/index.blade.php
+++ b/skolehjem/resources/views/admin/feedbacks/index.blade.php
@@ -10,10 +10,7 @@
 @endsection
 
 @section("content")
-    <div class="row align-items-center">
-        <a class="btn btn-inline btn-sde-blue mb-0" href="{{ route('feedbacks.create') }}"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Feedback</a>
-    </div>
-    <table class="tbl mt-2">
+    <table class="tbl">
         <tr>
             <th>Feedback Besked</th>
             <th>Ris el. Ros</th>

From eb4851454583c1c3ffd3dff50f80f92dde72f4b4 Mon Sep 17 00:00:00 2001
From: Neerholt <vict3459@edu.sde.dk>
Date: Wed, 1 Jul 2020 09:50:37 +0200
Subject: [PATCH 07/10] Made it so you get send to index after you make,edit
 and update user information

---
 .../Http/Controllers/ContactController.php    | 21 +++++++++++++++----
 1 file changed, 17 insertions(+), 4 deletions(-)

diff --git a/skolehjem/app/Http/Controllers/ContactController.php b/skolehjem/app/Http/Controllers/ContactController.php
index f71dc01..e649834 100644
--- a/skolehjem/app/Http/Controllers/ContactController.php
+++ b/skolehjem/app/Http/Controllers/ContactController.php
@@ -5,6 +5,7 @@ namespace App\Http\Controllers;
 use Illuminate\Http\Request;
 use Illuminate\Http\Response;
 use App\Contact;
+use phpDocumentor\Reflection\Types\Context;
 
 class ContactController extends Controller
 {
@@ -59,9 +60,15 @@ class ContactController extends Controller
         ]);
 
         $contact = new Contact($requestContact);
-        $contact->save();
+        $saved = $contact->save();
+
+        if(!$saved){
+            return Response::detect("contacts.store");
+        }else{
+            $contact = Contact::query()->paginate($request->input("limit", 20));
+            return Response::detect("contacts.index", ['contacts' => $contact]);
+        }
 
-        return Response::detect("contacts.store");
     }
 
     /**
@@ -101,9 +108,15 @@ class ContactController extends Controller
         $data = $request->all();
         $contact = Contact::find($id);
         $contact->update($data);
-        $contact->save();
+        $saved = $contact->save();
+
+        if(!$saved){
+            return Response::detect("contacts.update", [ "contacts" => $contact ]);
+        }else{
+            $contact = Contact::query()->paginate($request->input("limit", 20));
+            return Response::detect("contacts.index", ['contacts' => $contact]);
+        }
 
-        return Response::detect("contacts.update", [ "contacts" => $contact ]);
     }
 
     /**

From 03b7f4236a2a05bc4856e59a3dc57b89ccfa3b6b Mon Sep 17 00:00:00 2001
From: Anders <anders164a@gmail.com>
Date: Wed, 1 Jul 2020 10:13:49 +0200
Subject: [PATCH 08/10] Users able to change password

---
 .../app/Http/Controllers/UserController.php   | 15 +++++++++----
 .../views/app/users/account.blade.php         |  1 +
 .../resources/views/app/users/edit.blade.php  |  4 +++-
 .../views/app/users/editpass.blade.php        | 22 +++++++++++++++++++
 skolehjem/routes/web.php                      |  2 ++
 5 files changed, 39 insertions(+), 5 deletions(-)
 create mode 100644 skolehjem/resources/views/app/users/editpass.blade.php

diff --git a/skolehjem/app/Http/Controllers/UserController.php b/skolehjem/app/Http/Controllers/UserController.php
index d39c252..6a0ce84 100644
--- a/skolehjem/app/Http/Controllers/UserController.php
+++ b/skolehjem/app/Http/Controllers/UserController.php
@@ -153,11 +153,13 @@ class UserController extends Controller
             /** @var User $user */
             $user->update($data);
 
-            $user->roles()->detach();
-            $user->forgetCachedPermissions();
+            if ($request->roles != null) {
+                $user->roles()->detach();
+                $user->forgetCachedPermissions();
 
-            foreach ($request->roles as $role){
-                $user->assignRole($role);
+                foreach ($request->roles as $role){
+                    $user->assignRole($role);
+                }
             }
 
             $user->save();
@@ -246,4 +248,9 @@ class UserController extends Controller
     {
         return Response::detect("users.edit");
     }
+
+    public function accounteditpass()
+    {
+        return Response::detect("users.editpass");
+    }
 }
diff --git a/skolehjem/resources/views/app/users/account.blade.php b/skolehjem/resources/views/app/users/account.blade.php
index 1572b8f..0d6d374 100644
--- a/skolehjem/resources/views/app/users/account.blade.php
+++ b/skolehjem/resources/views/app/users/account.blade.php
@@ -11,5 +11,6 @@
         <h4 class="mt-0">Email: {{ Auth::user()->email }}</h4>
         <h4 class="mt-0">Telefon Nr.: {{ Auth::user()->phone }}</h4>
         <a class="btn text-center btn-sde-blue mt-1" href="{{ route("users.accountedit") }}">Rediger Oplysninger</a>
+        <a class="btn text-center btn-sde-blue mt-1" href="{{ route("users.accounteditpass") }}">Ændre Password</a>
     </main>
 @endsection
diff --git a/skolehjem/resources/views/app/users/edit.blade.php b/skolehjem/resources/views/app/users/edit.blade.php
index 73ee773..a43f37d 100644
--- a/skolehjem/resources/views/app/users/edit.blade.php
+++ b/skolehjem/resources/views/app/users/edit.blade.php
@@ -7,7 +7,9 @@
 @section("content")
     <main>
         <h1 class="text-center sde-blue mt-0">Konto</h1>
-        <form action="">
+        <form method="post" action="{{ route("users.update", ['user' => Auth::user()]) }}">
+            @csrf
+            @method("put")
             <span>Navn:</span>
             <input type="text" name="name" id="name" value="{{ Auth::user()->name_first . " " . Auth::user()->name_last }}" disabled>
             <span>Email:</span>
diff --git a/skolehjem/resources/views/app/users/editpass.blade.php b/skolehjem/resources/views/app/users/editpass.blade.php
new file mode 100644
index 0000000..e04e51c
--- /dev/null
+++ b/skolehjem/resources/views/app/users/editpass.blade.php
@@ -0,0 +1,22 @@
+@extends("app.layout.base")
+
+@section("title")
+    Account
+@endsection
+
+@section("content")
+    <main>
+        <h1 class="text-center sde-blue mt-0">Konto</h1>
+        <form method="post" action="{{ route("users.update", ['user' => Auth::user()]) }}">
+            @csrf
+            @method("put")
+            <span>Nuværende Password:</span>
+            <input type="password" name="oldpassword" id="old" required>
+            <span>Nyt Password:</span>
+            <input type="password" name="password" id="new" required>
+            <span>Bekræft Nyt Password:</span>
+            <input type="password" name="confirmpassword" id="confirm" required>
+            <button type="submit" class="btn text-center btn-sde-blue mt-1">Rediger</button>
+        </form>
+    </main>
+@endsection
diff --git a/skolehjem/routes/web.php b/skolehjem/routes/web.php
index 38e1ae5..703d357 100644
--- a/skolehjem/routes/web.php
+++ b/skolehjem/routes/web.php
@@ -27,6 +27,8 @@ Route::get("/forgot", "UserController@showForgot")->name("users.show-forgot");
 Route::post("/forgot", "UserController@forgot")->name("users.forgot");
 Route::get("/account", "UserController@account")->name("users.account");
 Route::get("/account/edit", "UserController@accountedit")->name("users.accountedit");
+Route::get("/account/editpass", "UserController@accounteditpass")->name("users.accounteditpass");
+Route::post("/account/update", "UserController@update")->name("users.accountupdate");
 Route::get("phones", "PhoneController@index")->name("phones.index");
 
 

From 2846dac2dc4b55e6592faf310500fcbd0731ad4a Mon Sep 17 00:00:00 2001
From: frederikpyt <frederikpyt@gmail.com>
Date: Wed, 1 Jul 2020 10:30:28 +0200
Subject: [PATCH 09/10] Fixed Washing machine creation and editing

---
 .../Controllers/WashingMachineController.php  | 42 ++++++++++++-------
 skolehjem/app/WashingMachine.php              |  4 +-
 .../admin/washing-machines/delete.blade.php   |  2 +-
 .../admin/washing-machines/edit.blade.php     |  9 ++--
 .../admin/washing-machines/index.blade.php    |  6 +--
 5 files changed, 38 insertions(+), 25 deletions(-)

diff --git a/skolehjem/app/Http/Controllers/WashingMachineController.php b/skolehjem/app/Http/Controllers/WashingMachineController.php
index 27d1cde..d45b482 100644
--- a/skolehjem/app/Http/Controllers/WashingMachineController.php
+++ b/skolehjem/app/Http/Controllers/WashingMachineController.php
@@ -2,10 +2,13 @@
 
 namespace App\Http\Controllers;
 
+use Illuminate\Contracts\Foundation\Application;
+use Illuminate\Contracts\View\Factory;
 use Illuminate\Http\Request;
 use Illuminate\Http\Response;
 
 use App\WashingMachine;
+use Illuminate\View\View;
 
 class WashingMachineController extends Controller
 {
@@ -24,11 +27,11 @@ class WashingMachineController extends Controller
      * Display a listing of the resource.
      *
      * @param Request $request
-     * @return \Illuminate\Contracts\Foundation\Application|\Illuminate\Contracts\View\Factory|\Illuminate\View\View
+     * @return Application|Factory|View
      */
     public function index(Request $request)
     {
-        $machines = WashingMachine::query()->paginate($request->query("page", 1));
+        $machines = WashingMachine::query()->paginate($request->query("limit", 20));
 
         return Response::detect("washing-machines.index", [ "machines" => $machines ]);
     }
@@ -36,7 +39,7 @@ class WashingMachineController extends Controller
     /**
      * Show the form for creating a new resource.
      *
-     * @return \Illuminate\Contracts\Foundation\Application|\Illuminate\Contracts\View\Factory|\Illuminate\View\View
+     * @return Application|Factory|View
      */
     public function create()
     {
@@ -47,12 +50,12 @@ class WashingMachineController extends Controller
      * Store a newly created resource in storage.
      *
      * @param  \Illuminate\Http\Request  $request
-     * @return \Illuminate\Contracts\Foundation\Application|\Illuminate\Contracts\View\Factory|\Illuminate\View\View
+     * @return Application|Factory|View
      */
     public function store(Request $request)
     {
         $data = $request->validate([
-            "time" => "required"
+            "name" => "required"
         ]);
 
         $machine = new WashingMachine($data);
@@ -65,7 +68,7 @@ class WashingMachineController extends Controller
      * Display the specified resource.
      *
      * @param  int  $id
-     * @return \Illuminate\Contracts\Foundation\Application|\Illuminate\Contracts\View\Factory|\Illuminate\View\View
+     * @return Application|Factory|View
      */
     public function show($id)
     {
@@ -80,7 +83,7 @@ class WashingMachineController extends Controller
      * Show the form for editing the specified resource.
      *
      * @param  int  $id
-     * @return \Illuminate\Contracts\Foundation\Application|\Illuminate\Contracts\View\Factory|\Illuminate\View\View
+     * @return Application|Factory|View
      */
     public function edit($id)
     {
@@ -96,36 +99,43 @@ class WashingMachineController extends Controller
      *
      * @param  \Illuminate\Http\Request  $request
      * @param  int  $id
-     * @return \Illuminate\Contracts\Foundation\Application|\Illuminate\Contracts\View\Factory|\Illuminate\View\View
+     * @return Application|Factory|View
      */
     public function update(Request $request, $id)
     {
         $data = $request->validate([
-            "time" => "required"
+            "name" => "required"
         ]);
 
         $machine = WashingMachine::find($id);
 
         $machine->update($data);
 
-        $machine->save();
+        $saved = $machine->save();
 
-        return Response::detect("washing-machines.edit", [
-            "machine" => $machine
-        ]);
+        if(!$saved){
+            return Response::detect("washing-machines.update", [
+                "machine" => $machine
+            ]);
+        }else{
+            $machines = WashingMachine::query()->paginate($request->input("limit", 20));
+            return Response::detect("washing-machines.index", [
+                "machines" => $machines
+            ]);
+        }
     }
 
     /**
      * Remove the specified resource from storage.
      *
-     * @param  int  $id
-     * @return \Illuminate\Contracts\Foundation\Application|\Illuminate\Contracts\View\Factory|\Illuminate\View\View
+     * @param $id
+     * @return Response
      */
     public function destroy($id)
     {
         $machine = WashingMachine::find($id);
         $machine->delete();
 
-        return Response::detect("washing-machines.destroy");
+        return Response::detect("washing-machines.delete");
     }
 }
diff --git a/skolehjem/app/WashingMachine.php b/skolehjem/app/WashingMachine.php
index 3da7e25..634448d 100644
--- a/skolehjem/app/WashingMachine.php
+++ b/skolehjem/app/WashingMachine.php
@@ -6,5 +6,7 @@ use Illuminate\Database\Eloquent\Model;
 
 class WashingMachine extends Model
 {
-    //
+    protected $fillable = [
+        'name'
+    ];
 }
diff --git a/skolehjem/resources/views/admin/washing-machines/delete.blade.php b/skolehjem/resources/views/admin/washing-machines/delete.blade.php
index 9efdfdf..27d681e 100644
--- a/skolehjem/resources/views/admin/washing-machines/delete.blade.php
+++ b/skolehjem/resources/views/admin/washing-machines/delete.blade.php
@@ -6,7 +6,7 @@
 @endsection
 
 @section("path")
-    <a href="{{ route('washing-machines.delete') }}" class="text-white">Fjern Vaskemaskine</a> /
+    <a href="{{ route('washing-machines.destroy') }}" class="text-white">Fjern Vaskemaskine</a> /
 @endsection
 
 @section("content")
diff --git a/skolehjem/resources/views/admin/washing-machines/edit.blade.php b/skolehjem/resources/views/admin/washing-machines/edit.blade.php
index ea595fc..7e080d5 100644
--- a/skolehjem/resources/views/admin/washing-machines/edit.blade.php
+++ b/skolehjem/resources/views/admin/washing-machines/edit.blade.php
@@ -6,14 +6,15 @@
 @endsection
 
 @section("path")
-    <a href="{{ route('washing-machines.edit', ['id' => $user->id]) }}" class="text-white">Rediger Vaskemaskiner</a> /
+    <a href="{{ route('washing-machines.edit', ['washing_machine' => $machine]) }}" class="text-white">Rediger Vaskemaskiner</a> /
 @endsection
 
 @section("content")
-    <form method="post" action="{{ route("washing-machines.store") }}">
+    <form method="post" action="{{ route("washing-machines.update", [ 'washing_machine' => $machine]) }}">
         @csrf
+        @method("put")
         <label for="name_first">Vaskemaskine Navn:</label>
-        <input type="text" name="name" id="name" max="60" required>
-        <input type="submit" class="btn btn-dark text-white" value="Opret">
+        <input type="text" name="name" id="name" max="60" value="{{$machine->name}}" required>
+        <input type="submit" class="btn btn-dark text-white" value="Rediger">
     </form>
 @endsection
diff --git a/skolehjem/resources/views/admin/washing-machines/index.blade.php b/skolehjem/resources/views/admin/washing-machines/index.blade.php
index 1b2be54..5242a0c 100644
--- a/skolehjem/resources/views/admin/washing-machines/index.blade.php
+++ b/skolehjem/resources/views/admin/washing-machines/index.blade.php
@@ -21,9 +21,9 @@
         </tr>
         @foreach($machines as $machine)
         <tr>
-            <td>{Navn}</td>
-            <td><a href=""><img class="w-100" src="{{ asset('/images/icons/pencil-dark.svg') }}" alt="Update"></a></td>
-            <td><form method="post" action="{{ route("washing-machines.destroy", [ "machine" => $machine ]) }}" class="w-100 nostyle">
+            <td>{{$machine->name}}</td>
+            <td><a href="{{ route('washing-machines.edit', [ 'washing_machine' => $machine ]) }}"><img class="w-100" src="{{ asset('/images/icons/pencil-dark.svg') }}" alt="Update"></a></td>
+            <td><form method="post" action="{{ route('washing-machines.destroy', [ 'washing_machine' => $machine ]) }}" class="w-100 nostyle">
                     @csrf
                     @method("delete")
 

From 9870556c5a859e887f2bdc3c7ef7b291d53c001c Mon Sep 17 00:00:00 2001
From: Anders <anders164a@gmail.com>
Date: Wed, 1 Jul 2020 10:56:04 +0200
Subject: [PATCH 10/10] Now able to delete washing machines

---
 skolehjem/app/Http/Controllers/WashingMachineController.php | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/skolehjem/app/Http/Controllers/WashingMachineController.php b/skolehjem/app/Http/Controllers/WashingMachineController.php
index d45b482..c13d537 100644
--- a/skolehjem/app/Http/Controllers/WashingMachineController.php
+++ b/skolehjem/app/Http/Controllers/WashingMachineController.php
@@ -136,6 +136,6 @@ class WashingMachineController extends Controller
         $machine = WashingMachine::find($id);
         $machine->delete();
 
-        return Response::detect("washing-machines.delete");
+        return redirect()->route("washing-machines.index");
     }
 }