From 8a2fda4bc3cd5e81d72d8aea37924ad044dffb36 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20LEUILLIOT?= Date: Wed, 16 Mar 2022 23:12:56 +0100 Subject: [PATCH] fix: ensure query filter are append to paginated links Closes eveseat/seat#863 --- .../Api/v2/CharacterController.php | 26 +++++++++---------- .../Api/v2/CorporationController.php | 18 ++++++------- .../Api/v2/KillmailsController.php | 4 +-- .../Controllers/Api/v2/RoleController.php | 2 +- .../Controllers/Api/v2/SquadController.php | 2 +- .../Controllers/Api/v2/UserController.php | 2 +- 6 files changed, 27 insertions(+), 27 deletions(-) diff --git a/src/Http/Controllers/Api/v2/CharacterController.php b/src/Http/Controllers/Api/v2/CharacterController.php index 088f7ac..af5ac2a 100644 --- a/src/Http/Controllers/Api/v2/CharacterController.php +++ b/src/Http/Controllers/Api/v2/CharacterController.php @@ -120,7 +120,7 @@ public function getAssets(int $character_id) $this->applyFilters(request(), $sub_query); }); - return Resource::collection($query->paginate()); + return Resource::collection($query->paginate()->appends(request()->except('page'))); } /** @@ -185,7 +185,7 @@ public function getContacts(int $character_id) $this->applyFilters(request(), $sub_query); }); - return ContactResource::collection($query->paginate()); + return ContactResource::collection($query->paginate()->appends(request()->except('page'))); } /** @@ -253,7 +253,7 @@ public function getContracts(int $character_id) $this->applyFilters(request(), $sub_query); }); - return ContractResource::collection($query->paginate()); + return ContractResource::collection($query->paginate()->appends(request()->except('page'))); } /** @@ -318,7 +318,7 @@ public function getCorporationHistory(int $character_id) $this->applyFilters(request(), $sub_query); }); - return CorporationHistoryResource::collection($query->paginate()); + return CorporationHistoryResource::collection($query->paginate()->appends(request()->except('page'))); } /** @@ -383,7 +383,7 @@ public function getIndustry(int $character_id) $this->applyFilters(request(), $sub_query); }); - return IndustryResource::collection($query->paginate()); + return IndustryResource::collection($query->paginate()->appends(request()->except('page'))); } /** @@ -448,7 +448,7 @@ public function getJumpClones(int $character_id) $this->applyFilters(request(), $sub_query); }); - return JumpcloneResource::collection($query->paginate()); + return JumpcloneResource::collection($query->paginate()->appends(request()->except('page'))); } /** @@ -517,7 +517,7 @@ public function getMail(int $character_id) })->orWhere('from', $character_id); }); - return MailResource::collection($query->paginate()); + return MailResource::collection($query->paginate()->appends(request()->except('page'))); } /** @@ -583,7 +583,7 @@ public function getMarketOrders(int $character_id) $this->applyFilters(request(), $sub_query); }); - return Resource::collection($query->paginate()); + return Resource::collection($query->paginate()->appends(request()->except('page'))); } /** @@ -648,7 +648,7 @@ public function getNotifications(int $character_id) $this->applyFilters(request(), $sub_query); }); - return NotificationResource::collection($query->paginate()); + return NotificationResource::collection($query->paginate()->appends(request()->except('page'))); } /** @@ -756,7 +756,7 @@ public function getSkills(int $character_id) $this->applyFilters(request(), $sub_query); }); - return Resource::collection($query->paginate()); + return Resource::collection($query->paginate()->appends(request()->except('page'))); } /** @@ -821,7 +821,7 @@ public function getSkillQueue(int $character_id) $this->applyFilters(request(), $sub_query); }); - return Resource::collection($query->paginate()); + return Resource::collection($query->paginate()->appends(request()->except('page'))); } /** @@ -887,7 +887,7 @@ public function getWalletJournal(int $character_id) $this->applyFilters(request(), $sub_query); }); - return Resource::collection($query->paginate()); + return Resource::collection($query->paginate()->appends(request()->except('page'))); } /** @@ -953,6 +953,6 @@ public function getWalletTransactions(int $character_id) $this->applyFilters(request(), $sub_query); }); - return Resource::collection($query->paginate()); + return Resource::collection($query->paginate()->appends(request()->except('page'))); } } diff --git a/src/Http/Controllers/Api/v2/CorporationController.php b/src/Http/Controllers/Api/v2/CorporationController.php index 9c33348..5bda790 100644 --- a/src/Http/Controllers/Api/v2/CorporationController.php +++ b/src/Http/Controllers/Api/v2/CorporationController.php @@ -112,7 +112,7 @@ public function getAssets(int $corporation_id) $this->applyFilters(request(), $sub_query); }); - return Resource::collection($query->paginate()); + return Resource::collection($query->paginate()->appends(request()->except('page'))); } /** @@ -178,7 +178,7 @@ public function getContacts(int $corporation_id) $this->applyFilters(request(), $sub_query); }); - return ContactResource::collection($query->paginate()); + return ContactResource::collection($query->paginate()->appends(request()->except('page'))); } /** @@ -244,7 +244,7 @@ public function getContracts(int $corporation_id) $this->applyFilters(request(), $sub_query); }); - return ContractResource::collection($query->paginate()); + return ContractResource::collection($query->paginate()->appends(request()->except('page'))); } /** @@ -310,7 +310,7 @@ public function getIndustry(int $corporation_id) $this->applyFilters(request(), $sub_query); }); - return IndustryResource::collection($query->paginate()); + return IndustryResource::collection($query->paginate()->appends(request()->except('page'))); } /** @@ -376,7 +376,7 @@ public function getMarketOrders(int $corporation_id) $this->applyFilters(request(), $sub_query); }); - return Resource::collection($query->paginate()); + return Resource::collection($query->paginate()->appends(request()->except('page'))); } /** @@ -442,7 +442,7 @@ public function getMemberTracking(int $corporation_id) $this->applyFilters(request(), $sub_query); }); - return MemberTrackingResource::collection($query->paginate()); + return MemberTrackingResource::collection($query->paginate()->appends(request()->except('page'))); } /** @@ -543,7 +543,7 @@ public function getStructures(int $corporation_id) $this->applyFilters(request(), $sub_query); }); - return Resource::collection($query->paginate()); + return Resource::collection($query->paginate()->appends(request()->except('page'))); } /** @@ -609,7 +609,7 @@ public function getWalletJournal(int $corporation_id) $this->applyFilters(request(), $sub_query); }); - return Resource::collection($query->paginate()); + return Resource::collection($query->paginate()->appends(request()->except('page'))); } /** @@ -675,6 +675,6 @@ public function getWalletTransactions(int $corporation_id) $this->applyFilters(request(), $sub_query); }); - return Resource::collection($query->paginate()); + return Resource::collection($query->paginate()->appends(request()->except('page'))); } } diff --git a/src/Http/Controllers/Api/v2/KillmailsController.php b/src/Http/Controllers/Api/v2/KillmailsController.php index aa6278c..00eb9e9 100644 --- a/src/Http/Controllers/Api/v2/KillmailsController.php +++ b/src/Http/Controllers/Api/v2/KillmailsController.php @@ -85,7 +85,7 @@ public function getCharacterKillmails(int $character_id) $query->where('character_id', $character_id); })->orWhereHas('attackers', function ($query) use ($character_id) { $query->where('character_id', $character_id); - })->paginate() + })->paginate()->appends(request()->except('page')) ); } @@ -139,7 +139,7 @@ public function getCorporationKillmails(int $corporation_id) $query->where('corporation_id', $corporation_id); })->orWhereHas('attackers', function ($query) use ($corporation_id) { $query->where('corporation_id', $corporation_id); - })->paginate() + })->paginate()->appends(request()->except('page')) ); } diff --git a/src/Http/Controllers/Api/v2/RoleController.php b/src/Http/Controllers/Api/v2/RoleController.php index 617f6f6..6565904 100644 --- a/src/Http/Controllers/Api/v2/RoleController.php +++ b/src/Http/Controllers/Api/v2/RoleController.php @@ -78,7 +78,7 @@ class RoleController extends ApiController public function getIndex() { - return Resource::collection(Role::paginate()); + return Resource::collection(Role::paginate()->appends(request()->except('page'))); } /** diff --git a/src/Http/Controllers/Api/v2/SquadController.php b/src/Http/Controllers/Api/v2/SquadController.php index 7ee0aff..00ffb40 100644 --- a/src/Http/Controllers/Api/v2/SquadController.php +++ b/src/Http/Controllers/Api/v2/SquadController.php @@ -68,7 +68,7 @@ class SquadController extends ApiController */ public function index() { - return SquadResource::collection(Squad::paginate()); + return SquadResource::collection(Squad::paginate()->appends(request()->except('page'))); } /** diff --git a/src/Http/Controllers/Api/v2/UserController.php b/src/Http/Controllers/Api/v2/UserController.php index 1194d22..90e7ff8 100644 --- a/src/Http/Controllers/Api/v2/UserController.php +++ b/src/Http/Controllers/Api/v2/UserController.php @@ -68,7 +68,7 @@ class UserController extends ApiController */ public function getUsers() { - return UserResource::collection(User::paginate()); + return UserResource::collection(User::paginate()->appends(request()->except('page'))); } /**