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;
use App\Helpers\Detector;
use Illuminate\Database\Eloquent\Collection;
use Illuminate\Http\Request;
use Illuminate\Http\Response;
use App\User;
@ -387,7 +388,7 @@ class UserController extends Controller
->get();
$roles = Role::query()->where('name', 'LIKE', $request->search . '%')->get();
$users = [];
$users = new Collection();
$allUsers = User::all();
@ -395,12 +396,13 @@ class UserController extends Controller
foreach ($allUsers as $user) {
foreach ($roles as $role) {
if($user->hasRole($role)) {
array_push($users, $user);
break 2;
$users->add($user);
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
foreach ($usersTEMP as $userTEMP){
$isInUsers = false;
@ -412,19 +414,15 @@ class UserController extends Controller
}
if($isInUsers == false)
array_push($users, $userTEMP);
$users->add($userTEMP);
}
$i = 0;
foreach ($users as $user){
$i++;
foreach ($users as $userr){
if($user->id == $userr->id) {
unset($users[$i]);
break 2;
}
}
}
if($request->search == "")
$users = User::all();
$unique = $users->flatten()->unique('phone');
$users = $unique->values()->all();
}