From 614258af16a6da9ab801734b06e7052e6def910a Mon Sep 17 00:00:00 2001
From: mwalbeck <magn3200@gmail.com>
Date: Mon, 31 Oct 2016 14:35:00 +0100
Subject: [PATCH] Changed the view you are redirected when creating a user, and
 changed password compare to use the laravel validator instead

---
 app/Http/Controllers/AdministrativeUserController.php |  4 ++--
 app/Http/Controllers/HomeController.php               | 11 +++--------
 app/Http/Requests/StoreUser.php                       |  2 +-
 app/User.php                                          |  5 -----
 resources/views/users/settings.blade.php              |  4 ++--
 5 files changed, 8 insertions(+), 18 deletions(-)

diff --git a/app/Http/Controllers/AdministrativeUserController.php b/app/Http/Controllers/AdministrativeUserController.php
index a98a4b4..f96c876 100644
--- a/app/Http/Controllers/AdministrativeUserController.php
+++ b/app/Http/Controllers/AdministrativeUserController.php
@@ -59,7 +59,7 @@ class AdministrativeUserController extends Controller
         
         $user = new User;
         $user->addUser($request->all());
-        return redirect("/" . Auth::user()->getAdminPath() . '/users');
+        return redirect("/" . Auth::user()->getAdminPath() . "/users/$user->id");
     }
 
     /**
@@ -81,7 +81,7 @@ class AdministrativeUserController extends Controller
     public function updateUser(User $user, StoreUser $request)
     {
         $this->authorize('update', $user);
-
+        
         $user->updateUser($request->all());
         return redirect("/" . Auth::user()->getAdminPath() . "/users/group/$user->group_id");
     }
diff --git a/app/Http/Controllers/HomeController.php b/app/Http/Controllers/HomeController.php
index 6895625..866e512 100644
--- a/app/Http/Controllers/HomeController.php
+++ b/app/Http/Controllers/HomeController.php
@@ -44,8 +44,8 @@ class HomeController extends Controller
     public function updatePassword(Request $request)
     {
         $this->validate($request, [
-            "password1_new" => "required|string|alpha_dash|min:8",
-            "password2_new" => "required|string|alpha_dash|min:8"
+            "password" => "required|min:8|confirmed",
+            "password_confirmation" => "required_with:password"
         ]);
 
         $user = Auth::user();
@@ -55,12 +55,7 @@ class HomeController extends Controller
             return redirect('/settings');
         }
 
-        if (!$user->passwordCompare($request->get("password1_new"), $request->get("password2_new"))) {
-            $request->session()->flash("status_failed", "The new password didn't match");
-            return redirect('/settings');
-        }
-
-        $user->updatePassword($request->get("password1_new"));
+        $user->updatePassword($request->get("password"));
         $request->session()->flash('status', 'Your password was updated successfully!');
         return redirect('/settings');
     }
diff --git a/app/Http/Requests/StoreUser.php b/app/Http/Requests/StoreUser.php
index 79422b9..bec03e0 100644
--- a/app/Http/Requests/StoreUser.php
+++ b/app/Http/Requests/StoreUser.php
@@ -45,7 +45,7 @@ class StoreUser extends FormRequest
                 Rule::unique('users')->ignore($user_id),
                 "max:255",
             ],
-            "password" => "required|alpha_dash|min:8",
+            "password" => "required|min:8",
             "group_id" => "integer|exists:groups,id|min:1",
             "enabled" => "required|boolean",
             "access_level" => "required|integer|min:1|max:3|access_mod",
diff --git a/app/User.php b/app/User.php
index 054c7a2..6c540ec 100644
--- a/app/User.php
+++ b/app/User.php
@@ -50,11 +50,6 @@ class User extends Authenticatable
         $this->password = password_hash($password, PASSWORD_DEFAULT);
     }
 
-    public function passwordCompare($password1, $password2)
-    {
-        return $password1 === $password2;
-    }
-
     public function passwordVerify($password)
     {
         return password_verify($password, $this->password);
diff --git a/resources/views/users/settings.blade.php b/resources/views/users/settings.blade.php
index 651052c..8317fad 100644
--- a/resources/views/users/settings.blade.php
+++ b/resources/views/users/settings.blade.php
@@ -43,10 +43,10 @@
                             <input type="password" class="form-control" name="password_old" required>
                             <br>
                             <label>New Password</label>
-                            <input type="password" class="form-control" name="password1_new" required>
+                            <input type="password" class="form-control" name="password" required>
                             <br>
                             <label>Repeat New Password</label>
-                            <input type="password" class="form-control" name="password2_new" required>
+                            <input type="password" class="form-control" name="password_confirmation" required>
                         </div>
                         <button type="submit" class="btn btn-primary">Submit</button>
                     </form>