From 6fb0ef908dda05898fabd589b1fc18fc6af2213c Mon Sep 17 00:00:00 2001 From: snipe Date: Fri, 3 Nov 2017 14:29:04 -0700 Subject: [PATCH 1/4] Fixed issue sorting when viewing users by department --- app/Http/Controllers/Api/UsersController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Http/Controllers/Api/UsersController.php b/app/Http/Controllers/Api/UsersController.php index 6c8996b680..84f38fe158 100644 --- a/app/Http/Controllers/Api/UsersController.php +++ b/app/Http/Controllers/Api/UsersController.php @@ -80,7 +80,7 @@ class UsersController extends Controller } if ($request->has('department_id')) { - $users = $users->where('department_id','=',$request->input('department_id')); + $users = $users->where('users.department_id','=',$request->input('department_id')); } $order = $request->input('order') === 'asc' ? 'asc' : 'desc'; From 87ba042b2d656777309528b896b0f066fb61749e Mon Sep 17 00:00:00 2001 From: snipe Date: Fri, 3 Nov 2017 14:47:31 -0700 Subject: [PATCH 2/4] Fixed manager name subquery on user search Self-joins in Laravel make baby jesus cry :( --- app/Models/User.php | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/app/Models/User.php b/app/Models/User.php index 1a4ad51065..4cb790e287 100755 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -439,10 +439,12 @@ class User extends SnipeModel implements AuthenticatableContract, CanResetPasswo }); }) - // Ugly, ugly code because Laravel sucks at self-joins + //Ugly, ugly code because Laravel sucks at self-joins ->orWhere(function ($query) use ($search) { - $query->whereRaw("users.manager_id IN (select id from users where first_name LIKE '%".$search."%' OR last_name LIKE '%".$search."%') "); + $query->whereRaw("users.manager_id IN (select id from users where first_name LIKE ? OR last_name LIKE ?)", ["%$search%", "%$search%"]); }); + + }); } @@ -473,7 +475,7 @@ class User extends SnipeModel implements AuthenticatableContract, CanResetPasswo public function scopeOrderManager($query, $order) { // Left join here, or it will only return results with parents - return $query->leftJoin('users as manager', 'users.manager_id', '=', 'manager.id')->orderBy('manager.first_name', $order)->orderBy('manager.last_name', $order); + return $query->leftJoin('users as users_manager', 'users.manager_id', '=', 'users_manager.id')->orderBy('users_manager.first_name', $order)->orderBy('users_manager.last_name', $order); } /** @@ -486,7 +488,7 @@ class User extends SnipeModel implements AuthenticatableContract, CanResetPasswo */ public function scopeOrderLocation($query, $order) { - return $query->leftJoin('locations', 'users.location_id', '=', 'locations.id')->orderBy('locations.name', $order); + return $query->leftJoin('locations as locations_users', 'users.location_id', '=', 'locations_users.id')->orderBy('locations_users.name', $order); } @@ -500,6 +502,6 @@ class User extends SnipeModel implements AuthenticatableContract, CanResetPasswo */ public function scopeOrderDepartment($query, $order) { - return $query->leftJoin('departments', 'users.department_id', '=', 'departments.id')->orderBy('departments.name', $order); + return $query->leftJoin('departments as departments_users', 'users.department_id', '=', 'departments_users.id')->orderBy('departments_users.name', $order); } } From 1859c8f5ab150ea2b94d09797604eec6a92853d6 Mon Sep 17 00:00:00 2001 From: snipe Date: Fri, 3 Nov 2017 14:55:03 -0700 Subject: [PATCH 3/4] Reply to seems to be overwritten --- config/mail.php | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/config/mail.php b/config/mail.php index 170458955b..eab4ad4d29 100755 --- a/config/mail.php +++ b/config/mail.php @@ -61,7 +61,11 @@ return [ | */ - 'from' => ['address' => env('MAIL_FROM_ADDR', null), 'name' => env('MAIL_FROM_NAME', null)], + 'from' => + [ + 'address' => env('MAIL_FROM_ADDR', null), + 'name' => env('MAIL_FROM_NAME', null) + ], /* @@ -76,8 +80,8 @@ return [ */ 'reply_to' => [ - 'address' => env('MAIL_REPLYTO_ADDR', env('MAIL_FROM_ADDR', null)), - 'name' => env('MAIL_REPLYTO_NAME', env('MAIL_FROM_NAME', null)) + 'address' => env('MAIL_REPLYTO_ADDR',null), + 'name' => env('MAIL_REPLYTO_NAME', null) ], /* From b3b8ab493e17ecc3b33fd486838bea321ab9d127 Mon Sep 17 00:00:00 2001 From: snipe Date: Fri, 3 Nov 2017 14:58:49 -0700 Subject: [PATCH 4/4] Switch to the reply_to address --- app/Http/Controllers/Api/SettingsController.php | 4 ++-- resources/views/settings/general.blade.php | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/app/Http/Controllers/Api/SettingsController.php b/app/Http/Controllers/Api/SettingsController.php index 8500b182c9..3172243894 100644 --- a/app/Http/Controllers/Api/SettingsController.php +++ b/app/Http/Controllers/Api/SettingsController.php @@ -108,11 +108,11 @@ class SettingsController extends Controller if (!config('app.lock_passwords')) { try { Mail::send('emails.test', [], function ($m) { - $m->to(config('mail.from.address'), config('mail.from.name')); + $m->to(config('mail.reply_to.address'), config('mail.reply_to.name')); $m->replyTo(config('mail.reply_to.address'), config('mail.reply_to.name')); $m->subject(trans('mail.test_email')); }); - return response()->json(['message' => 'Mail sent to '.config('mail.from.address')], 200); + return response()->json(['message' => 'Mail sent to '.config('mail.reply_to.address')], 200); } catch (Exception $e) { return response()->json(['message' => $e->getMessage()], 500); } diff --git a/resources/views/settings/general.blade.php b/resources/views/settings/general.blade.php index 99bbc17a40..67ebadeeb8 100644 --- a/resources/views/settings/general.blade.php +++ b/resources/views/settings/general.blade.php @@ -194,7 +194,7 @@
-

This will attempt to send a test mail to {{ config('mail.from.address') }}.

+

This will attempt to send a test mail to {{ config('mail.reply_to.address') }}.