PublicShareController
extends Controller
in package
Base controller for public shares
It will verify if the user is properly authenticated to the share. If not a 404 is thrown by the PublicShareMiddleware.
Use this for example for a controller that is not to be called via a webbrowser directly. For example a PublicPreviewController. As this is not meant to be called by a user directly.
To show an auth page extend the AuthPublicShareController
Tags
Table of Contents
Properties
- $appName : string
- app name
- $request : IRequest
- current request
- $session : ISession
- $responders : array<string|int, mixed>
- $token : string
Methods
- __construct() : mixed
- constructor of the controller
- buildResponse() : Response
- Serializes and formats a response
- getResponderByHTTPHeader() : string
- Parses an HTTP accept header and returns the supported responder type
- getToken() : string
- Get the token for this request
- isAuthenticated() : bool
- Check if a share is authenticated or not
- isValidToken() : bool
- Is the provided token a valid token
- setToken() : mixed
- Middleware set the token for the request
- shareNotFound() : mixed
- Function called if the share is not found.
- getPasswordHash() : string|null
- Get a hash of the password for this share
- isPasswordProtected() : bool
- Is a share with this token password protected
- registerResponder() : mixed
- Registers a formatter for a type
Properties
$appName
app name
protected
string
$appName
Tags
$request
current request
protected
IRequest
$request
Tags
$session
protected
ISession
$session
$responders
private
array<string|int, mixed>
$responders
Tags
$token
private
string
$token
Methods
__construct()
constructor of the controller
public
__construct(string $appName, IRequest $request, ISession $session) : mixed
Parameters
- $appName : string
-
the name of the app
- $request : IRequest
-
an instance of the request
- $session : ISession
Tags
buildResponse()
Serializes and formats a response
public
buildResponse(mixed $response[, string $format = 'json' ]) : Response
Parameters
- $response : mixed
-
the value that was returned from a controller and is not a Response instance
- $format : string = 'json'
-
the format for which a formatter has been registered
Tags
Return values
ResponsegetResponderByHTTPHeader()
Parses an HTTP accept header and returns the supported responder type
public
getResponderByHTTPHeader(string $acceptHeader[, string $default = 'json' ]) : string
Parameters
- $acceptHeader : string
- $default : string = 'json'
Tags
Return values
string —the responder type
getToken()
Get the token for this request
public
final getToken() : string
Tags
Return values
stringisAuthenticated()
Check if a share is authenticated or not
public
isAuthenticated() : bool
Tags
Return values
boolisValidToken()
Is the provided token a valid token
public
abstract isValidToken() : bool
This function is already called from the middleware directly after setting the token.
Tags
Return values
boolsetToken()
Middleware set the token for the request
public
final setToken(string $token) : mixed
Parameters
- $token : string
Tags
shareNotFound()
Function called if the share is not found.
public
shareNotFound() : mixed
You can use this to do some logging for example
Tags
getPasswordHash()
Get a hash of the password for this share
protected
abstract getPasswordHash() : string|null
To ensure access is blocked when the password to a share is changed we store a hash of the password for this token.
Tags
Return values
string|nullisPasswordProtected()
Is a share with this token password protected
protected
abstract isPasswordProtected() : bool
Tags
Return values
boolregisterResponder()
Registers a formatter for a type
protected
registerResponder(string $format, Closure $responder) : mixed
Parameters
- $format : string
- $responder : Closure