Class FileManagerController
This class contains some helper methods for handling view requests. Be careful always when outputting raw user data to HTML or when handling POST requests because insufficient protection will lead to XSS and CSRF vulnerabilities.
| category |
System |
|---|---|
| package |
AdminHttpViewControllers |
__construct(\HttpContextReaderInterface $httpContextReader, \HttpResponseProcessorInterface $httpResponseProcessor, \ContentViewInterface $defaultContentView)
\HttpContextReaderInterface
\HttpResponseProcessorInterface
\ContentViewInterface
_asBytes( $ini_v)
_callActionMethod(string $actionName) : \HttpControllerResponseInterface
| Throws |
|
|---|
stringName of action method to call, without 'action'-Suffix.
\HttpControllerResponseInterfaceResponse message.
_fileIsBlacklisted( $filename)
_generateThumbnail( $img, $width, $height) : \Imagick
\Imagick
_getInfoMessage( $file)
_getPostData(string $keyName) : string|null
This method is the object oriented layer for $_POST[$keyName].
stringExpected key of post parameter.
string|nullEither the expected value or null, of not found.
_getPostDataCollection() : \KeyValueCollection
_getQueryParameter(string $keyName) : mixed|null
This method is the object oriented layer for $_GET[$keyName].
stringExpected key of query parameter.
mixed|nullEither the expected value or null, of not found.
_getQueryParametersCollection() : \KeyValueCollection
_getServerData(string $keyName) : string|null
This method is the object oriented layer for $_SERVER[$keyName].
stringExpected key of server parameter.
string|nullEither the expected value or null, of not found.
_init()
_initDeleteBlackList()
_initDisallowedExtensions()
_initInfoMessages()
_initListingFilePrefixBlacklist()
_initListingFileSuffixBlacklist()
_isOnDeleteBlacklist( $file)
_isRecursivelyDeletable( $topDir)
_removeRecursively( $dir)
_render(string $templateFile, array $contentArray) : string
stringTemplate file to render.
arrayContent array which represent the variables of the template.
stringRendered template.
_validatePageToken(string $customExceptionMessage = null)
Example: public function proceed(HttpContextInterface $httpContext) { parent::proceed($httpContext); // proceed http context from parent class if($_SERVER['REQUEST_METHOD'] === 'POST') { $this->_validatePageToken(); // CSRF Protection } }
| Throws |
|
|---|
string(optional) You can specify a custom exception message.
actionDefault() : \HttpControllerResponseInterface
Every controller child class requires at least the default action method, which is invoked when the ::_getQueryParameterData('do') value is not separated by a trailing slash.
Every action method have to return an instance which implements the http controller response interface.
\HttpControllerResponseInterface
actionDelete()
actionDownload()
actionList()
actionMkdir()
actionThumb()
actionUpload()
getTemplateFile(string $templateFile) : \ExistingFile
| Throws |
|
|---|
stringThe relative path and filename to search for
\ExistingFilecontaining absolute file path to the given template file
proceed(\HttpContextInterface $httpContext)
The action method is determined by the http context reader instance and the current request context. Re-implement this method in child classes to enable XSS and CSRF protection on demand.
| see | \HttpResponseProcessorInterface::proceed \HttpContextReaderInterface::getActionName |
|---|---|
| Throws |
|
validateCurrentAdminStatus()
| Throws |
|
|---|
defaultContent : string
| var |
|---|
string
subDirectory : string
| var |
|---|
string
baseDirectory : string
| var |
|---|
string
content : string
| var |
|---|
string
file : string
| var |
|---|
string
allowDelete : boolean
| var |
|---|
boolean
allowCreateFolder : boolean
| var |
|---|
boolean
allowUpload : boolean
| var |
|---|
boolean
allowDirectLink : boolean
| var |
|---|
boolean
disallowedExtensions : array
| var |
|---|
array
listingFileSuffixBlacklist : array
| var |
|---|
array
listingFilePrefixBlacklist : array
| var |
|---|
array
deleteBlackList : array
| var |
|---|
array
maxUploadSize : integer
| var |
|---|
integer
infoMessages : array
| var |
|---|
array
httpContextReader : \HttpContextReaderInterface
httpResponseProcessor : \HttpResponseProcessorInterface
queryParametersArray : array
| var |
|---|
array
postDataArray : array
| var |
|---|
array
assets : \AssetCollectionInterface
serverDataArray : array
| var |
Server data. |
|---|
array