0
0
Fork 0
mirror of https://github.com/BookStackApp/BookStack.git synced 2025-03-14 04:12:49 +00:00

Standardised how request is injected into controller methods

Puts it in-line with how Laravel recommend.
This commit is contained in:
Dan Brown 2019-09-15 18:53:30 +01:00
parent be08dc1588
commit 3281925375
No known key found for this signature in database
GPG key ID: 46D9F943C24A2EF9
10 changed files with 59 additions and 50 deletions

View file

@ -59,11 +59,12 @@ class AttachmentController extends Controller
/**
* Update an uploaded attachment.
* @param int $attachmentId
* @param Request $request
* @param int $attachmentId
* @return mixed
* @throws \Illuminate\Validation\ValidationException
*/
public function uploadUpdate($attachmentId, Request $request)
public function uploadUpdate(Request $request, $attachmentId)
{
$this->validate($request, [
'uploaded_to' => 'required|integer|exists:pages,id',
@ -94,11 +95,12 @@ class AttachmentController extends Controller
/**
* Update the details of an existing file.
* @param $attachmentId
* @param Request $request
* @param $attachmentId
* @return Attachment|mixed
* @throws \Illuminate\Validation\ValidationException
*/
public function update($attachmentId, Request $request)
public function update(Request $request, $attachmentId)
{
$this->validate($request, [
'uploaded_to' => 'required|integer|exists:pages,id',
@ -161,11 +163,12 @@ class AttachmentController extends Controller
/**
* Update the attachment sorting.
* @param $pageId
* @param Request $request
* @param $pageId
* @return mixed
* @throws \Illuminate\Validation\ValidationException
*/
public function sortForPage($pageId, Request $request)
public function sortForPage(Request $request, $pageId)
{
$this->validate($request, [
'files' => 'required|array',

View file

@ -193,14 +193,14 @@ class RegisterController extends Controller
/**
* The callback for social login services.
* @param $socialDriver
* @param Request $request
* @param string $socialDriver
* @return RedirectResponse|Redirector
* @throws SocialSignInException
* @throws UserRegistrationException
* @throws SocialDriverNotConfigured
*/
public function socialCallback($socialDriver, Request $request)
public function socialCallback(Request $request, string $socialDriver)
{
if (!session()->has('social-callback')) {
throw new SocialSignInException(trans('errors.social_no_action_defined'), '/login');

View file

@ -54,12 +54,12 @@ class UserInviteController extends Controller
/**
* Sets the password for an invited user and then grants them access.
* @param string $token
* @param Request $request
* @param string $token
* @return RedirectResponse|Redirector
* @throws Exception
*/
public function setPassword(string $token, Request $request)
public function setPassword(Request $request, string $token)
{
$this->validate($request, [
'password' => 'required|min:8'

View file

@ -137,12 +137,12 @@ class BookController extends Controller
/**
* Display the specified book.
* @param $slug
* @param Request $request
* @param string $slug
* @return Response
* @throws \BookStack\Exceptions\NotFoundException
*/
public function show($slug, Request $request)
public function show(Request $request, string $slug)
{
$book = $this->entityRepo->getBySlug('book', $slug);
$this->checkOwnablePermission('book-view', $book);
@ -247,11 +247,12 @@ class BookController extends Controller
/**
* Saves an array of sort mapping to pages and chapters.
* @param string $bookSlug
* @param Request $request
* @param string $bookSlug
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
* @throws \BookStack\Exceptions\NotFoundException
*/
public function saveSort($bookSlug, Request $request)
public function saveSort(Request $request, string $bookSlug)
{
$book = $this->entityRepo->getBySlug('book', $bookSlug);
$this->checkOwnablePermission('book-update', $book);
@ -353,13 +354,13 @@ class BookController extends Controller
/**
* Set the restrictions for this book.
* @param $bookSlug
* @param Request $request
* @param string $bookSlug
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
* @throws \BookStack\Exceptions\NotFoundException
* @throws \Throwable
*/
public function permissions($bookSlug, Request $request)
public function permissions(Request $request, string $bookSlug)
{
$book = $this->entityRepo->getBySlug('book', $bookSlug);
$this->checkOwnablePermission('restrictions-manage', $book);

View file

@ -242,13 +242,13 @@ class BookshelfController extends Controller
/**
* Set the permissions for this bookshelf.
* @param string $slug
* @param Request $request
* @param string $slug
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
* @throws \BookStack\Exceptions\NotFoundException
* @throws \Throwable
*/
public function permissions(string $slug, Request $request)
public function permissions(Request $request, string $slug)
{
$shelf = $this->entityRepo->getBySlug('bookshelf', $slug);
$this->checkOwnablePermission('restrictions-manage', $shelf);

View file

@ -44,11 +44,13 @@ class ChapterController extends Controller
/**
* Store a newly created chapter in storage.
* @param $bookSlug
* @param Request $request
* @param Request $request
* @param string $bookSlug
* @return Response
* @throws \BookStack\Exceptions\NotFoundException
* @throws \Illuminate\Validation\ValidationException
*/
public function store($bookSlug, Request $request)
public function store(Request $request, string $bookSlug)
{
$this->validate($request, [
'name' => 'required|string|max:255'
@ -103,13 +105,13 @@ class ChapterController extends Controller
/**
* Update the specified chapter in storage.
* @param Request $request
* @param $bookSlug
* @param $chapterSlug
* @param Request $request
* @param string $bookSlug
* @param string $chapterSlug
* @return Response
* @throws \BookStack\Exceptions\NotFoundException
*/
public function update(Request $request, $bookSlug, $chapterSlug)
public function update(Request $request, string $bookSlug, string $chapterSlug)
{
$chapter = $this->entityRepo->getBySlug('chapter', $chapterSlug, $bookSlug);
$this->checkOwnablePermission('chapter-update', $chapter);
@ -170,13 +172,13 @@ class ChapterController extends Controller
/**
* Perform the move action for a chapter.
* @param $bookSlug
* @param $chapterSlug
* @param Request $request
* @param string $bookSlug
* @param string $chapterSlug
* @return mixed
* @throws \BookStack\Exceptions\NotFoundException
*/
public function move($bookSlug, $chapterSlug, Request $request)
public function move(Request $request, string $bookSlug, string $chapterSlug)
{
$chapter = $this->entityRepo->getBySlug('chapter', $chapterSlug, $bookSlug);
$this->checkOwnablePermission('chapter-update', $chapter);
@ -229,14 +231,14 @@ class ChapterController extends Controller
/**
* Set the restrictions for this chapter.
* @param $bookSlug
* @param $chapterSlug
* @param Request $request
* @param string $bookSlug
* @param string $chapterSlug
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
* @throws \BookStack\Exceptions\NotFoundException
* @throws \Throwable
*/
public function permissions($bookSlug, $chapterSlug, Request $request)
public function permissions(Request $request, string $bookSlug, string $chapterSlug)
{
$chapter = $this->entityRepo->getBySlug('chapter', $chapterSlug, $bookSlug);
$this->checkOwnablePermission('restrictions-manage', $chapter);

View file

@ -47,13 +47,13 @@ class ImageController extends Controller
/**
* Update image details
* @param integer $id
* @param Request $request
* @param integer $id
* @return \Illuminate\Http\JsonResponse
* @throws ImageUploadException
* @throws \Exception
*/
public function update($id, Request $request)
public function update(Request $request, $id)
{
$this->validate($request, [
'name' => 'required|min:2|string'

View file

@ -574,13 +574,14 @@ class PageController extends Controller
/**
* Does the action of moving the location of a page
* @param Request $request
* @param string $bookSlug
* @param string $pageSlug
* @param Request $request
* @return mixed
* @throws NotFoundException
* @throws \Throwable
*/
public function move($bookSlug, $pageSlug, Request $request)
public function move(Request $request, string $bookSlug, string $pageSlug)
{
$page = $this->pageRepo->getPageBySlug($pageSlug, $bookSlug);
$this->checkOwnablePermission('page-update', $page);
@ -632,13 +633,14 @@ class PageController extends Controller
/**
* Create a copy of a page within the requested target destination.
* @param Request $request
* @param string $bookSlug
* @param string $pageSlug
* @param Request $request
* @return mixed
* @throws NotFoundException
* @throws \Throwable
*/
public function copy($bookSlug, $pageSlug, Request $request)
public function copy(Request $request, string $bookSlug, string $pageSlug)
{
$page = $this->pageRepo->getPageBySlug($pageSlug, $bookSlug);
$this->checkOwnablePermission('page-view', $page);
@ -696,7 +698,7 @@ class PageController extends Controller
* @throws NotFoundException
* @throws \Throwable
*/
public function permissions($bookSlug, $pageSlug, Request $request)
public function permissions(Request $request, string $bookSlug, string $pageSlug)
{
$page = $this->pageRepo->getPageBySlug($pageSlug, $bookSlug);
$this->checkOwnablePermission('restrictions-manage', $page);

View file

@ -75,12 +75,13 @@ class PermissionController extends Controller
/**
* Updates a user role.
* @param $id
* @param Request $request
* @param $id
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
* @throws PermissionsException
* @throws \Illuminate\Validation\ValidationException
*/
public function updateRole($id, Request $request)
public function updateRole(Request $request, $id)
{
$this->checkPermission('user-roles-manage');
$this->validate($request, [
@ -112,11 +113,11 @@ class PermissionController extends Controller
/**
* Delete a role from the system,
* Migrate from a previous role if set.
* @param $id
* @param Request $request
* @param $id
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
*/
public function deleteRole($id, Request $request)
public function deleteRole(Request $request, $id)
{
$this->checkPermission('user-roles-manage');

View file

@ -274,22 +274,22 @@ class UserController extends Controller
/**
* Update the user's preferred book-list display setting.
* @param $id
* @param Request $request
* @param $id
* @return \Illuminate\Http\RedirectResponse
*/
public function switchBookView($id, Request $request)
public function switchBookView(Request $request, $id)
{
return $this->switchViewType($id, $request, 'books');
}
/**
* Update the user's preferred shelf-list display setting.
* @param $id
* @param Request $request
* @param $id
* @return \Illuminate\Http\RedirectResponse
*/
public function switchShelfView($id, Request $request)
public function switchShelfView(Request $request, $id)
{
return $this->switchViewType($id, $request, 'bookshelves');
}
@ -319,12 +319,12 @@ class UserController extends Controller
/**
* Change the stored sort type for a particular view.
* @param Request $request
* @param string $id
* @param string $type
* @param Request $request
* @return \Illuminate\Http\RedirectResponse
*/
public function changeSort(string $id, string $type, Request $request)
public function changeSort(Request $request, string $id, string $type)
{
$validSortTypes = ['books', 'bookshelves'];
if (!in_array($type, $validSortTypes)) {
@ -335,12 +335,12 @@ class UserController extends Controller
/**
* Update the stored section expansion preference for the given user.
* @param Request $request
* @param string $id
* @param string $key
* @param Request $request
* @return \Illuminate\Contracts\Routing\ResponseFactory|\Symfony\Component\HttpFoundation\Response
*/
public function updateExpansionPreference(string $id, string $key, Request $request)
public function updateExpansionPreference(Request $request, string $id, string $key)
{
$this->checkPermissionOrCurrentUser('users-manage', $id);
$keyWhitelist = ['home-details'];