Skip to content

Commit d11a649

Browse files
refactor: standardize query parameter handling and trim input values across controllers
1 parent 4a5e2de commit d11a649

File tree

11 files changed

+76
-65
lines changed

11 files changed

+76
-65
lines changed

app/Http/Controllers/Admin/PermissionController.php

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -18,25 +18,25 @@ public function index(Request $request)
1818
{
1919
Log::info('Permission Management: Viewed permission list', ['action_user_id' => Auth::id()]);
2020

21-
$perPage = (int)$request->input('per_page', 10);
22-
$search = $request->search;
23-
$sortBy = $request->input('sort_by', 'id');
24-
$sortDir = strtolower($request->input('sort_dir', 'asc')) === 'desc' ? 'desc' : 'asc';
21+
$perPage = (int) $request->query('per_page', 10);
22+
$search = trim($request->query('search'));
23+
$sortBy = $request->query('sort_by', 'id');
24+
$sortDir = strtolower($request->query('sort_dir', 'asc')) === 'desc' ? 'desc' : 'asc';
2525

2626
$allowedSorts = ['id', 'title', 'name', 'guard_name', 'created_at', 'updated_at'];
27-
if (!in_array($sortBy, $allowedSorts)) {
27+
if (! in_array($sortBy, $allowedSorts)) {
2828
$sortBy = 'id';
2929
}
3030

31-
$permissions = Permission::when($request->filled('search'), fn($query) => $query->whereLike('name', "%$search%")
31+
$permissions = Permission::when($request->filled('search'), fn ($query) => $query->whereLike('name', "%$search%")
3232
->orWhereLike('title', "%$search%")
3333
->orWhereLike('guard_name', "%$search%"))
3434
->orderBy($sortBy, $sortDir)
3535
->paginate($perPage)
3636
->withQueryString();
3737

3838
return Inertia::render('admin/permissions/Index', [
39-
'permissions' => $permissions
39+
'permissions' => $permissions,
4040
]);
4141
}
4242

@@ -50,7 +50,7 @@ public function show(Permission $permission)
5050
$permission->load('roles');
5151

5252
return Inertia::render('admin/permissions/Show', [
53-
'permission' => $permission
53+
'permission' => $permission,
5454
]);
5555
}
5656

app/Http/Controllers/Admin/RoleController.php

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -21,25 +21,25 @@ public function index(Request $request)
2121
{
2222
Log::info('Role Management: Viewed role list', ['action_user_id' => Auth::id()]);
2323

24-
$perPage = (int)$request->input('per_page', 10);
25-
$search = $request->search;
26-
$sortBy = $request->input('sort_by', 'id');
27-
$sortDir = strtolower($request->input('sort_dir', 'desc')) === 'asc' ? 'asc' : 'desc';
24+
$perPage = (int) $request->query('per_page', 10);
25+
$search = trim($request->query('search'));
26+
$sortBy = $request->query('sort_by', 'id');
27+
$sortDir = strtolower($request->query('sort_dir', 'desc')) === 'asc' ? 'asc' : 'desc';
2828

2929
$allowedSorts = ['id', 'name', 'guard_name', 'created_at', 'updated_at', 'users_count'];
30-
if (!in_array($sortBy, $allowedSorts)) {
30+
if (! in_array($sortBy, $allowedSorts)) {
3131
$sortBy = 'id';
3232
}
3333

3434
$roles = Role::withCount('users as users_count')
35-
->when($request->filled('search'), fn($query) => $query->whereLike('name', "%$search%")
35+
->when($request->filled('search'), fn ($query) => $query->whereLike('name', "%$search%")
3636
->orWhereLike('guard_name', "%$search%"))
3737
->orderBy($sortBy, $sortDir)
3838
->paginate($perPage)
3939
->withQueryString();
4040

4141
return Inertia::render('admin/roles/Index', [
42-
'roles' => $roles
42+
'roles' => $roles,
4343
]);
4444
}
4545

@@ -51,7 +51,7 @@ public function edit(Role $role, Request $request)
5151
Log::info('Role Management: Viewed role edit form', ['action_user_id' => Auth::id(), 'edited_role_id' => $role->id]);
5252

5353
$allPermissions = Permission::select(['id', 'name'])
54-
->when($request->filled('search'), fn($query) => $query->whereLike('name', "%$request->search%"))
54+
->when($request->filled('search'), fn ($query) => $query->whereLike('name', "%$request->search%"))
5555
->orderBy('name', 'ASC')->paginate(10);
5656

5757
return Inertia::render('admin/roles/Edit', [
@@ -76,7 +76,7 @@ public function update(RoleRequest $request, Role $role)
7676
Log::error('Role Management: Failed to update role', [
7777
'action_user_id' => Auth::id(),
7878
'role_id' => $role->id,
79-
'error' => $e->getMessage()
79+
'error' => $e->getMessage(),
8080
]);
8181

8282
return back()->withInput()->with('error', 'Failed to update role. Please try again.');
@@ -110,7 +110,7 @@ public function togglePermission(Role $role, Permission $permission)
110110
'action_user_id' => Auth::id(),
111111
'role_id' => $role->id,
112112
'permission_id' => $permission->id,
113-
'error' => $e->getMessage()
113+
'error' => $e->getMessage(),
114114
]);
115115

116116
return back()->withInput()->with('error', 'Failed to update permission. Please try again.');

app/Http/Controllers/Admin/UserManagementController.php

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -21,21 +21,21 @@ public function index(Request $request)
2121
{
2222
Log::info('User Management: Viewed user list', ['action_user_id' => Auth::id()]);
2323

24-
$perPage = (int)$request->input('per_page', 10);
25-
$search = $request->search;
26-
$sortBy = $request->input('sort_by', 'id');
27-
$sortDir = strtolower($request->input('sort_dir', 'desc')) === 'asc' ? 'asc' : 'desc';
24+
$perPage = (int) $request->query('per_page', 10);
25+
$search = trim($request->query('search'));
26+
$sortBy = $request->query('sort_by', 'id');
27+
$sortDir = strtolower($request->query('sort_dir', 'desc')) === 'asc' ? 'asc' : 'desc';
2828

2929
$allowedSorts = ['id', 'name', 'email', 'created_at', 'updated_at', 'roles'];
30-
if (!in_array($sortBy, $allowedSorts)) {
30+
if (! in_array($sortBy, $allowedSorts)) {
3131
$sortBy = 'id';
3232
}
3333

3434
$query = User::with('roles')->select('users.*');
3535

36-
$query->when($request->filled('search'), fn($qr) => $qr->whereLike('users.name', "%$search%")
36+
$query->when($request->filled('search'), fn ($qr) => $qr->whereLike('users.name', "%$search%")
3737
->orWhereLike('users.email', "%$search%")
38-
->orWhereHas('roles', fn($q) => $q->whereLike('roles.name', "%$search%")));
38+
->orWhereHas('roles', fn ($q) => $q->whereLike('roles.name', "%$search%")));
3939

4040
if ($sortBy === 'roles') {
4141
$rolesSub = DB::table('model_has_roles')
@@ -44,7 +44,7 @@ public function index(Request $request)
4444
->where('model_has_roles.model_type', User::class)
4545
->groupBy('model_has_roles.model_id');
4646

47-
$query->leftJoinSub($rolesSub, 'r', fn($join) => $join->on('users.id', '=', 'r.model_id'));
47+
$query->leftJoinSub($rolesSub, 'r', fn ($join) => $join->on('users.id', '=', 'r.model_id'));
4848

4949
$query->orderBy(DB::raw('COALESCE(r.roles_names, "")'), $sortDir);
5050
} else {
@@ -54,7 +54,7 @@ public function index(Request $request)
5454
$users = $query->paginate($perPage)->withQueryString();
5555

5656
return Inertia::render('admin/users/Index', [
57-
'users' => $users
57+
'users' => $users,
5858
]);
5959
}
6060

@@ -65,8 +65,9 @@ public function show(User $user)
6565
{
6666
Log::info('User Management: Viewed user details', ['action_user_id' => Auth::id(), 'viewed_user_id' => $user->id]);
6767
$user->load('roles.permissions');
68+
6869
return Inertia::render('admin/users/Show', [
69-
'user' => $user
70+
'user' => $user,
7071
]);
7172
}
7273

@@ -77,8 +78,9 @@ public function edit(User $user)
7778
{
7879
Log::info('User Management: Viewed user edit form', ['action_user_id' => Auth::id(), 'edited_user_id' => $user->id]);
7980
$user->load('roles');
81+
8082
return Inertia::render('admin/users/Edit', [
81-
'user' => $user
83+
'user' => $user,
8284
]);
8385
}
8486

@@ -102,7 +104,7 @@ public function update(UserAccountRequest $request, User $user)
102104
Log::error('User Management: Failed to update user', [
103105
'action_user_id' => Auth::id(),
104106
'user_id' => $user->id,
105-
'error' => $e->getMessage()
107+
'error' => $e->getMessage(),
106108
]);
107109

108110
return back()->with('error', 'Failed to update user. Please try again.');
@@ -125,12 +127,13 @@ public function destroy(Request $request, User $user)
125127

126128
$user->delete();
127129
Log::info('User Management: Deleted user', ['action_user_id' => Auth::id(), 'deleted_user_id' => $user->id]);
130+
128131
return to_route('admin.users.index')->with('success', 'User deleted successfully.');
129132
} catch (Exception $e) {
130133
Log::error('User Management: Failed to delete user', [
131134
'action_user_id' => Auth::id(),
132135
'user_id' => $user->id,
133-
'error' => $e->getMessage()
136+
'error' => $e->getMessage(),
134137
]);
135138

136139
return back()->with('error', 'Failed to delete user. Please try again.');

app/Http/Controllers/Article/ArticleController.php

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,10 @@ public function index(Request $request)
2323
{
2424
Log::info('Articles: Viewed articles list', ['action_user_id' => Auth::id()]);
2525

26-
$perPage = (int) $request->input('per_page', 10);
27-
$search = trim($request->search);
28-
$sortBy = $request->input('sort_by', 'id');
29-
$sortDir = strtolower($request->input('sort_dir', 'asc')) === 'desc' ? 'desc' : 'asc';
26+
$perPage = (int) $request->query('per_page', 10);
27+
$search = trim($request->query('search'));
28+
$sortBy = $request->query('sort_by', 'id');
29+
$sortDir = strtolower($request->query('sort_dir', 'asc')) === 'desc' ? 'desc' : 'asc';
3030

3131
$allowedSorts = ['id', 'title', 'user.name', 'is_published', 'created_at', 'updated_at'];
3232
if (! in_array($sortBy, $allowedSorts)) {
@@ -70,10 +70,10 @@ public function myIndex(Request $request)
7070

7171
Log::info('Articles: Viewed own articles list', ['action_user_id' => $user_id]);
7272

73-
$perPage = (int) $request->input('per_page', 10);
74-
$search = trim($request->search);
75-
$sortBy = $request->input('sort_by', 'id');
76-
$sortDir = strtolower($request->input('sort_dir', 'arc')) === 'desc' ? 'desc' : 'asc';
73+
$perPage = (int) $request->query('per_page', 10);
74+
$search = trim($request->query('search'));
75+
$sortBy = $request->query('sort_by', 'id');
76+
$sortDir = strtolower($request->query('sort_dir', 'asc')) === 'desc' ? 'desc' : 'asc';
7777

7878
$allowedSorts = ['id', 'title', 'is_published', 'created_at', 'updated_at'];
7979
if (! in_array($sortBy, $allowedSorts)) {

app/Http/Controllers/Article/CategoryController.php

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,17 +20,17 @@ public function index(Request $request)
2020
{
2121
Log::info('Categories: Viewed categories list', ['action_user_id' => Auth::id()]);
2222

23-
$perPage = (int)$request->input('per_page', 10);
24-
$search = $request->search;
25-
$sortBy = $request->input('sort_by', 'id');
26-
$sortDir = strtolower($request->input('sort_dir', 'asc')) === 'desc' ? 'desc' : 'asc';
23+
$perPage = (int) $request->query('per_page', 10);
24+
$search = trim($request->query('search'));
25+
$sortBy = $request->query('sort_by', 'id');
26+
$sortDir = strtolower($request->query('sort_dir', 'asc')) === 'desc' ? 'desc' : 'asc';
2727

2828
$allowedSorts = ['id', 'name', 'created_at', 'updated_at'];
29-
if (!in_array($sortBy, $allowedSorts)) {
29+
if (! in_array($sortBy, $allowedSorts)) {
3030
$sortBy = 'id';
3131
}
3232

33-
$categories = Category::when($request->filled('search'), fn($qr) => $qr
33+
$categories = Category::when($request->filled('search'), fn ($qr) => $qr
3434
->whereLike('name', "%$search%"))
3535
->orderBy($sortBy, $sortDir)
3636
->paginate($perPage)
@@ -47,9 +47,11 @@ public function store(CategoryRequest $request)
4747
try {
4848
$category = Category::create($request->validated());
4949
Log::info('Categories: Created new category', ['action_user_id' => Auth::id(), 'category_id' => $category->id]);
50+
5051
return to_route('categories.index')->with('success', 'Category created successfully.');
5152
} catch (Exception $e) {
5253
Log::error('Categories: Failed to create category', ['action_user_id' => Auth::id(), 'error' => $e->getMessage()]);
54+
5355
return back()->withInput()->with('error', 'Failed to create category. Please try again.');
5456
}
5557
}
@@ -60,6 +62,7 @@ public function store(CategoryRequest $request)
6062
public function create()
6163
{
6264
Log::info('Categories: Viewed create category page', ['action_user_id' => Auth::id()]);
65+
6366
return Inertia::render('manage/categories/Create');
6467
}
6568

@@ -69,6 +72,7 @@ public function create()
6972
public function edit(Category $category)
7073
{
7174
Log::info('Categories: Viewed edit category page', ['action_user_id' => Auth::id(), 'category_id' => $category->id]);
75+
7276
return Inertia::render('manage/categories/Edit', ['category' => $category]);
7377
}
7478

@@ -80,9 +84,11 @@ public function update(CategoryRequest $request, Category $category)
8084
try {
8185
$category->update($request->validated());
8286
Log::info('Categories: Updated category', ['action_user_id' => Auth::id(), 'category_id' => $category->id]);
87+
8388
return to_route('categories.index')->with('success', 'Category updated successfully.');
8489
} catch (Exception $e) {
8590
Log::error('Categories: Failed to update category', ['action_user_id' => Auth::id(), 'category_id' => $category->id, 'error' => $e->getMessage()]);
91+
8692
return back()->withInput()->with('error', 'Failed to update category. Please try again.');
8793
}
8894
}
@@ -95,9 +101,11 @@ public function destroy(Category $category)
95101
try {
96102
$category->delete();
97103
Log::info('Categories: Deleted category', ['action_user_id' => Auth::id(), 'category_id' => $category->id]);
104+
98105
return to_route('categories.index')->with('success', 'Category deleted successfully.');
99106
} catch (Exception $e) {
100107
Log::error('Categories: Failed to delete category', ['action_user_id' => Auth::id(), 'category_id' => $category->id, 'error' => $e->getMessage()]);
108+
101109
return back()->with('error', 'Failed to delete category. Please try again.');
102110
}
103111
}

app/Http/Controllers/Employee/EmployeeInfoController.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ class EmployeeInfoController extends Controller
1414
*/
1515
public function doctorSimpleSearch(Request $request)
1616
{
17-
$search = trim($request->q);
17+
$search = trim($request->query('q'));
1818

1919
$booleanQuery = Helpers::buildBooleanQuery($search);
2020

app/Http/Controllers/General/PublicController.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,10 @@ public function about()
4040
*/
4141
public function articles(Request $request)
4242
{
43-
$category = $request->query('category');
44-
$search = $request->query('search');
45-
$start_date = $request->query('start_date_creation');
46-
$end_date = $request->query('end_date_creation');
43+
$category = trim($request->query('category'));
44+
$search = trim($request->query('search'));
45+
$start_date = trim($request->query('start_date_creation'));
46+
$end_date = trim($request->query('end_date_creation'));
4747

4848
$booleanQuery = Helpers::buildBooleanQuery($search);
4949

app/Http/Controllers/Medical/MedicalRecordController.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,10 @@ public function index(Request $request)
2525
{
2626
Log::info('Medical Records: Viewed medical records list', ['action_user_id' => Auth::id()]);
2727

28-
$perPage = (int) $request->input('per_page', 10);
29-
$search = $request->search;
30-
$sortBy = $request->input('sort_by', 'id');
31-
$sortDir = strtolower($request->input('sort_dir', 'desc')) === 'asc' ? 'asc' : 'desc';
28+
$perPage = (int) $request->query('per_page', 10);
29+
$search = trim($request->query('search'));
30+
$sortBy = $request->query('sort_by', 'id');
31+
$sortDir = strtolower($request->query('sort_dir', 'desc')) === 'asc' ? 'asc' : 'desc';
3232

3333
$allowedSorts = ['id', 'patient_info.first_name', 'patient_info.last_name', 'created_at', 'updated_at'];
3434
if (! in_array($sortBy, $allowedSorts)) {

app/Http/Controllers/Medical/Prescription/DoctorPrescriptionController.php

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,10 @@ public function index(EmployeeInfo $doctor, Request $request)
2727

2828
Log::info('Doctor Prescription: Viewed issued prescriptions', ['action_user_id' => Auth::id()]);
2929

30-
$perPage = (int) $request->input('per_page', 10);
31-
$search = $request->search;
32-
$sortBy = $request->input('sort_by', 'id');
33-
$sortDir = strtolower($request->input('sort_dir', 'desc')) === 'asc' ? 'asc' : 'desc';
30+
$perPage = (int) $request->query('per_page', 10);
31+
$search = trim($request->query('search'));
32+
$sortBy = $request->query('sort_by', 'id');
33+
$sortDir = strtolower($request->query('sort_dir', 'desc')) === 'asc' ? 'asc' : 'desc';
3434

3535
$allowedSorts = ['id', 'patient_info.first_name', 'patient_info.last_name', 'date_issued', 'date_expires', 'is_valid', 'updated_at'];
3636
if (! in_array($sortBy, $allowedSorts)) {
@@ -54,7 +54,7 @@ public function index(EmployeeInfo $doctor, Request $request)
5454
$query->leftJoin('patient_info', 'patient_info.id', '=', 'prescriptions.patient_info_id');
5555
}
5656

57-
$booleanQuery = Helpers::buildBooleanQuery($request->search);
57+
$booleanQuery = Helpers::buildBooleanQuery($search);
5858

5959
$query->when($request->filled('search'), fn ($qr) => $qr->whereFullText('prescription_details', $booleanQuery, ['mode' => 'boolean'])
6060
->orWhereHas('patientInfo', fn ($q) => $q->whereLike('first_name', "%$search%")->orWhereLike('last_name', "%$search%")));

app/Http/Controllers/Medical/Prescription/PrescriptionController.php

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,10 @@ public function index(Request $request)
2525

2626
$user = Auth::user();
2727

28-
$perPage = (int) $request->input('per_page', 10);
29-
$search = $request->search;
30-
$sortBy = $request->input('sort_by', 'id');
31-
$sortDir = strtolower($request->input('sort_dir', 'desc')) === 'asc' ? 'asc' : 'desc';
28+
$perPage = (int) $request->query('per_page', 10);
29+
$search = trim($request->query('search'));
30+
$sortBy = $request->query('sort_by', 'id');
31+
$sortDir = strtolower($request->query('sort_dir', 'desc')) === 'asc' ? 'asc' : 'desc';
3232

3333
$allowedSorts = ['id', 'employee_info.first_name', 'employee_info.last_name', 'date_issued', 'date_expires', 'updated_at'];
3434
if (! in_array($sortBy, $allowedSorts)) {
@@ -51,7 +51,7 @@ public function index(Request $request)
5151
$query->leftJoin('employee_info', 'employee_info.id', '=', 'prescriptions.employee_info_id');
5252
}
5353

54-
$booleanQuery = Helpers::buildBooleanQuery($request->search);
54+
$booleanQuery = Helpers::buildBooleanQuery($search);
5555

5656
$query->when($request->filled('search'), fn ($qr) => $qr->whereFullText('prescription_details', $booleanQuery, ['mode' => 'boolean'])
5757
->orWhereHas('doctorInfo', fn ($q) => $q->whereLike('first_name', "%$search%")->orWhereLike('last_name', "%$search%")));

0 commit comments

Comments
 (0)