]>
BookStack Code Mirror - bookstack/blobdiff - app/Http/Controllers/Controller.php
projects
/
bookstack
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'lang_de' into development
[bookstack]
/
app
/
Http
/
Controllers
/
Controller.php
diff --git
a/app/Http/Controllers/Controller.php
b/app/Http/Controllers/Controller.php
index 479d5ac15852be57d44370f433185c15839af226..f6dc1dbca43cb9b46ce60ef9d48105f16a04c575 100644
(file)
--- a/
app/Http/Controllers/Controller.php
+++ b/
app/Http/Controllers/Controller.php
@@
-2,20
+2,20
@@
namespace BookStack\Http\Controllers;
namespace BookStack\Http\Controllers;
+use BookStack\Exceptions\NotifyException;
use BookStack\Facades\Activity;
use BookStack\Facades\Activity;
+use BookStack\Http\Responses\DownloadResponseFactory;
use BookStack\Interfaces\Loggable;
use BookStack\Interfaces\Loggable;
-use BookStack\HasCreatorAndUpdater;
use BookStack\Model;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Foundation\Validation\ValidatesRequests;
use BookStack\Model;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Foundation\Validation\ValidatesRequests;
-use Illuminate\Http\Exceptions\HttpResponseException;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\JsonResponse;
-use Illuminate\Http\Response;
use Illuminate\Routing\Controller as BaseController;
abstract class Controller extends BaseController
{
use Illuminate\Routing\Controller as BaseController;
abstract class Controller extends BaseController
{
- use DispatchesJobs, ValidatesRequests;
+ use DispatchesJobs;
+ use ValidatesRequests;
/**
* Check if the current user is signed in.
/**
* Check if the current user is signed in.
@@
-47,17
+47,14
@@
abstract class Controller extends BaseController
/**
* On a permission error redirect to home and display.
* the error as a notification.
/**
* On a permission error redirect to home and display.
* the error as a notification.
+ *
+ * @return never
*/
protected function showPermissionError()
{
*/
protected function showPermissionError()
{
- if (request()->wantsJson()) {
- $response = response()->json(['error' => trans('errors.permissionJson')], 403);
- } else {
- $response = redirect('/');
- $this->showErrorNotification(trans('errors.permission'));
- }
+ $message = request()->wantsJson() ? trans('errors.permissionJson') : trans('errors.permission');
- throw new
HttpResponseException($response
);
+ throw new
NotifyException($message, '/', 403
);
}
/**
}
/**
@@
-105,20
+102,17
@@
abstract class Controller extends BaseController
/**
* Send back a json error message.
*/
/**
* Send back a json error message.
*/
- protected function jsonError(string $messageText =
""
, int $statusCode = 500): JsonResponse
+ protected function jsonError(string $messageText =
''
, int $statusCode = 500): JsonResponse
{
return response()->json(['message' => $messageText, 'status' => 'error'], $statusCode);
}
/**
{
return response()->json(['message' => $messageText, 'status' => 'error'], $statusCode);
}
/**
- * Create a
response that forces a download in the browser
.
+ * Create a
nd return a new download response factory using the current request
.
*/
*/
- protected function download
Response(string $content, string $fileName): Response
+ protected function download
(): DownloadResponseFactory
{
{
- return response()->make($content, 200, [
- 'Content-Type' => 'application/octet-stream',
- 'Content-Disposition' => 'attachment; filename="' . $fileName . '"'
- ]);
+ return new DownloadResponseFactory(request());
}
/**
}
/**
@@
-147,7
+141,8
@@
abstract class Controller extends BaseController
/**
* Log an activity in the system.
/**
* Log an activity in the system.
- * @param string|Loggable
+ *
+ * @param string|Loggable $detail
*/
protected function logActivity(string $type, $detail = ''): void
{
*/
protected function logActivity(string $type, $detail = ''): void
{
@@
-157,8
+152,8
@@
abstract class Controller extends BaseController
/**
* Get the validation rules for image files.
*/
/**
* Get the validation rules for image files.
*/
- protected function getImageValidationRules():
string
+ protected function getImageValidationRules():
array
{
{
- return
'image_extension|no_double_extension|mimes:jpeg,png,gif,webp'
;
+ return
['image_extension', 'mimes:jpeg,png,gif,webp', 'max:' . (config('app.upload_limit') * 1000)]
;
}
}
}
}