v0.5.15b - optimized user search, so it now works like a charm :)

This commit is contained in:
Neerholt 2020-08-10 11:06:27 +02:00
parent 3263663f3d
commit 9a11e4b52c
1 changed files with 12 additions and 14 deletions

View File

@ -3,6 +3,7 @@
namespace App\Http\Controllers; namespace App\Http\Controllers;
use App\Helpers\Detector; use App\Helpers\Detector;
use Illuminate\Database\Eloquent\Collection;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Http\Response; use Illuminate\Http\Response;
use App\User; use App\User;
@ -387,7 +388,7 @@ class UserController extends Controller
->get(); ->get();
$roles = Role::query()->where('name', 'LIKE', $request->search . '%')->get(); $roles = Role::query()->where('name', 'LIKE', $request->search . '%')->get();
$users = []; $users = new Collection();
$allUsers = User::all(); $allUsers = User::all();
@ -395,12 +396,13 @@ class UserController extends Controller
foreach ($allUsers as $user) { foreach ($allUsers as $user) {
foreach ($roles as $role) { foreach ($roles as $role) {
if($user->hasRole($role)) { if($user->hasRole($role)) {
array_push($users, $user); $users->add($user);
break 2; break 1;
} }
} }
} }
//For hver user der har data, der matcher søgeordet, check om useren allerede er i resultatet, hvis ikke så tilføj ham //For hver user der har data, der matcher søgeordet, check om useren allerede er i resultatet, hvis ikke så tilføj ham
foreach ($usersTEMP as $userTEMP){ foreach ($usersTEMP as $userTEMP){
$isInUsers = false; $isInUsers = false;
@ -412,19 +414,15 @@ class UserController extends Controller
} }
if($isInUsers == false) if($isInUsers == false)
array_push($users, $userTEMP); $users->add($userTEMP);
} }
$i = 0; if($request->search == "")
foreach ($users as $user){ $users = User::all();
$i++;
foreach ($users as $userr){ $unique = $users->flatten()->unique('phone');
if($user->id == $userr->id) {
unset($users[$i]); $users = $unique->values()->all();
break 2;
}
}
}
} }