From fce970de65b7d5ad89bf5d17bc92d424dfdd48d1 Mon Sep 17 00:00:00 2001
From: Neerholt <vict3459@edu.sde.dk>
Date: Mon, 17 Aug 2020 08:23:48 +0200
Subject: [PATCH] v0.9.15e - made nameCheck for guides

---
 .../app/Http/Controllers/GuideController.php  | 10 +++
 .../app/Http/Controllers/UserController.php   | 10 +++
 .../Controllers/WashingMachineController.php  | 10 ---
 .../2020_08_04_062259_create_guides_table.php |  2 +-
 .../views/admin/events/create.blade.php       |  2 +-
 .../views/admin/guides/create.blade.php       | 59 ++++++++++++++++-
 .../views/admin/users/create.blade.php        | 64 +++++++++++++++++--
 skolehjem/routes/web.php                      |  4 +-
 8 files changed, 142 insertions(+), 19 deletions(-)

diff --git a/skolehjem/app/Http/Controllers/GuideController.php b/skolehjem/app/Http/Controllers/GuideController.php
index 4aa5787..6a71696 100644
--- a/skolehjem/app/Http/Controllers/GuideController.php
+++ b/skolehjem/app/Http/Controllers/GuideController.php
@@ -197,4 +197,14 @@ class GuideController extends Controller
         return $html;
     }
 
+
+
+    public function nameCheck(Request $request){
+        $guide = Guide::query()->where('name', 'LIKE',$request->nameCheck)->get();
+        if(count($guide) > 0 && $request->nameCheck !== NULL){
+            return 1;
+        }
+    }
+
+
 }
diff --git a/skolehjem/app/Http/Controllers/UserController.php b/skolehjem/app/Http/Controllers/UserController.php
index 81f6dcf..83c1c55 100644
--- a/skolehjem/app/Http/Controllers/UserController.php
+++ b/skolehjem/app/Http/Controllers/UserController.php
@@ -576,4 +576,14 @@ class UserController extends Controller
         }
     }
 
+    /*
+    public function nameCheck(Request $request){
+        $users = User::query()->where('mail', 'LIKE',$request->mailCheck)
+            ->get();
+        if(count($users) > 0 && $request->mailCheck !== NULL){
+            return 1;
+        }
+    }
+    */
+
 }
diff --git a/skolehjem/app/Http/Controllers/WashingMachineController.php b/skolehjem/app/Http/Controllers/WashingMachineController.php
index 6ef14cf..d4e30f3 100644
--- a/skolehjem/app/Http/Controllers/WashingMachineController.php
+++ b/skolehjem/app/Http/Controllers/WashingMachineController.php
@@ -153,14 +153,4 @@ class WashingMachineController extends Controller
 
         return redirect()->route("washing-machines.index");
     }
-
-
-
-    public function nameCheck(Request $request){
-        $washing = Role::query()->where('name', 'LIKE',$request->nameCheck)->get();
-        if(count($washing) > 0 && $request->nameCheck !== NULL){
-            return 1;
-        }
-    }
-
 }
diff --git a/skolehjem/database/migrations/2020_08_04_062259_create_guides_table.php b/skolehjem/database/migrations/2020_08_04_062259_create_guides_table.php
index d18ba53..4473fd8 100644
--- a/skolehjem/database/migrations/2020_08_04_062259_create_guides_table.php
+++ b/skolehjem/database/migrations/2020_08_04_062259_create_guides_table.php
@@ -16,7 +16,7 @@ class CreateGuidesTable extends Migration
         Schema::create('guides', function (Blueprint $table) {
             $table->id();
             $table->timestamps();
-            $table->string('name');
+            $table->string('name')->unique();
             $table->longText('guide_articles');
             $table->foreignId('resource_id')->nullable()->constrained('resources', 'id');
         });
diff --git a/skolehjem/resources/views/admin/events/create.blade.php b/skolehjem/resources/views/admin/events/create.blade.php
index d8fc347..9ad9499 100644
--- a/skolehjem/resources/views/admin/events/create.blade.php
+++ b/skolehjem/resources/views/admin/events/create.blade.php
@@ -95,7 +95,7 @@
                 data: {'nameCheck':$value},
                 success:function (data) {
                     console.log(data);
-                    if(data === false){
+                    if(data){
                         $("#error").show(100);
                         $("#error").css('color', 'red');
                         $("#disable").prop('disabled', true);
diff --git a/skolehjem/resources/views/admin/guides/create.blade.php b/skolehjem/resources/views/admin/guides/create.blade.php
index b702be3..3e8d151 100644
--- a/skolehjem/resources/views/admin/guides/create.blade.php
+++ b/skolehjem/resources/views/admin/guides/create.blade.php
@@ -23,10 +23,11 @@
         }
     </style>
     <link href="https://cdn.quilljs.com/1.3.6/quill.snow.css" rel="stylesheet">
-    <h1>Opret Vejledning</h1>
+    <h1 id="errormesseages" >Opret Vejledning</h1>
     <form method="post" action="{{ route("guides.store") }}" enctype="multipart/form-data">
         @csrf
         <label for="title">Titel på guiden</label>
+        <label hidden id="error" for="errormesseages">Navn findes allerede</label>
         <input type="text" name="name" id="title" required>
         <div id="editor"></div>
         <textarea name="guide_articles" class="d-none" id="hiddenArea"></textarea>
@@ -38,7 +39,7 @@
         </label>
         <label id="fileuploadee"for="fileuploade">Baggrundsbillede til nyheden (Valgfri):</label>
         <input id="fileuploade" type="file" name="resource">
-        <input type="submit" class="btn btn-dark text-white" value="Opret">
+        <input type="submit" id="disable" class="btn btn-dark text-white" value="Opret">
     </form>
 
     <script src="https://cdn.quilljs.com/1.3.6/quill.js"></script>
@@ -79,5 +80,59 @@
                 }
             );
         });
+
+        $(document).ready(function () {
+            $value = $('#title').val();
+            $.ajax({
+                type: 'get',
+                url: '{{route('guides.nameCheck')}}',
+                data: {'nameCheck':$value},
+                success:function (data) {
+                    console.log(data);
+                    if(data){
+                        $("#error").show(100);
+                        $("#error").css('color', 'red');
+                        $("#disable").prop('disabled', true);
+                        $('#disable').css('cursor','not-allowed');
+                    }else{
+                        $("#error").hide();
+                        $("#disable").prop('disabled', false);
+                        $('#disable').css('cursor','pointer');
+                    }
+
+                },
+                error:function (data) {
+                    console.log(data);
+                }
+            });
+        });
+
+        $('#title').on('keyup', function () {
+            $value = $(this).val();
+            console.log($value);
+            $.ajax({
+                type: 'get',
+                url: '{{route('guides.nameCheck')}}',
+                data: {'nameCheck':$value},
+                success:function (data) {
+                    if(data){
+                        $("#error").show(100);
+                        $("#error").css('color', 'red');
+                        $("#disable").prop('disabled', true);
+                        $('#disable').css('cursor','not-allowed');
+                    }else{
+                        $("#error").hide();
+                        $("#disable").prop('disabled', false);
+                        $('#disable').css('cursor','pointer');
+                    }
+
+                },
+                error:function (data) {
+                    console.log(data);
+                }
+            });
+        })
+
+
     </script>
 @endsection
diff --git a/skolehjem/resources/views/admin/users/create.blade.php b/skolehjem/resources/views/admin/users/create.blade.php
index 5ab2c8f..efaf35f 100644
--- a/skolehjem/resources/views/admin/users/create.blade.php
+++ b/skolehjem/resources/views/admin/users/create.blade.php
@@ -10,13 +10,14 @@
 @endsection
 
 @section("content")
-    <h1>Opret Bruger:</h1>
+    <h1 id="errormesseages" >Opret Bruger:</h1>
     {!! session()->get('error#notsamepass') !!}
     {!! session()->get('EmailExists') !!}
     {!! session()->get('PhoneExists') !!}
     <form method="post" action="{{ route("users.store") }}">
         @csrf
         <label for="name_first">Fornavn:</label>
+        <label hidden id="error" for="errormesseages">Dette Event navn findes allerede</label>
             <input type="text" name="name_first" id="name_first" placeholder="Fornavn" required>
         <label for="name_last">Efternavn:</label>
             <input type="text" name="name_last" id="name_last" placeholder="Efternavn" required>
@@ -32,8 +33,8 @@
             <input type="password" class="form-control" name="password2" id="password2" placeholder="******" required>
             <span class="fa fa-fw fa-eye field-icon toggle-password" id="fa-confirm" onclick="show('password2', 'fa-confirm')"></span>
         </div>
-        <label for="tel">Telefon nr:</label>
-            <input type="tel" name="phone" id="tel" placeholder="12345678" pattern="[0-9]{2}[0-9]{2}[0-9]{2}[0-9]{2}" required>
+        <label for="phone">Telefon nr:</label>
+            <input type="tel" name="phone" id="phone" placeholder="12345678" pattern="[0-9]{2}[0-9]{2}[0-9]{2}[0-9]{2}" required>
         <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>
@@ -42,7 +43,7 @@
                 <option value="{{ $role->name }}">{{ $role->name }}</option>
             @endforeach
         </select>
-        <input type="submit" class="btn btn-dark text-white" value="Opret">
+        <input type="submit" id="disable" class="btn btn-dark text-white" value="Opret">
     </form>
 @endsection
 
@@ -70,5 +71,60 @@
                 }
             );
         });
+
+        $(document).ready(function () {
+            $mail = $('#email').val();
+            //$phone = $('#phone').val();
+            $.ajax({
+                type: 'get',
+                url: '{{route('users.nameCheck')}}',
+                data: {'mailChek':$mail},
+                success:function (data) {
+                    console.log(data);
+                    if(data){
+                        $("#error").show(100);
+                        $("#error").css('color', 'red');
+                        $("#disable").prop('disabled', true);
+                        $('#disable').css('cursor','not-allowed');
+                    }else{
+                        $("#error").hide();
+                        $("#disable").prop('disabled', false);
+                        $('#disable').css('cursor','pointer');
+                    }
+
+                },
+                error:function (data) {
+                    console.log(data);
+                }
+            });
+        });
+
+        $('#name').on('keyup', function () {
+           // $mail = $('#email').val();
+            $phone = $('#phone').val();
+            $.ajax({
+                type: 'get',
+                url: '{{route('users.nameCheck')}}',
+                data: {'mailCheck':$mail},
+                success:function (data) {
+                    console.log($mail);
+                    if(data){
+                        $("#error").show(100);
+                        $("#error").css('color', 'red');
+                        $("#disable").prop('disabled', true);
+                        $('#disable').css('cursor','not-allowed');
+                    }else{
+                        $("#error").hide();
+                        $("#disable").prop('disabled', false);
+                        $('#disable').css('cursor','pointer');
+                    }
+
+                },
+                error:function (data) {
+                    console.log(data);
+                }
+            });
+        })
+
     </script>
 @endsection
diff --git a/skolehjem/routes/web.php b/skolehjem/routes/web.php
index 2c51a2a..d0769e6 100644
--- a/skolehjem/routes/web.php
+++ b/skolehjem/routes/web.php
@@ -58,7 +58,9 @@ Route::get("/pdf/{menuPlan}", "MenuPlanController@genPDF")->name("pdf.genPDF")->
 //Check name adminpanle
 Route::get("/eventCheck", "EventController@nameCheck")->name("events.nameCheck");
 Route::get("/roleCheck", "RolesController@nameCheck")->name("roles.nameCheck");
-Route::get("/washingCheck", "WashingMachineController@nameCheck")->name("washing-machines.nameCheck");
+Route::get("/usersCheck", "UserController@nameCheck")->name("users.nameCheck");
+Route::get("/guidesCheck", "GuideController@nameCheck")->name("guides.nameCheck");
+
 
 
 Route::resource("contacts", "ContactController");