FileBrowser extends AbstractElementBrowser implements ElementBrowserInterface, LinkParameterProviderInterface

Browser for files

Internal

This class is a specific LinkBrowser implementation and is not part of the TYPO3's Core API.

Table of Contents

Interfaces

ElementBrowserInterface
LinkParameterProviderInterface

Properties

$bparams  : string
Active with TYPO3 Element Browser: Contains the name of the form field for which this window opens - thus allows us to make references back to the main window in which the form is.
$expandFolder  : string|null
When you click a folder name/expand icon to see the content of a certain file folder, this value will contain the path of the expanded file folder.
$iconFactory  : IconFactory
$moduleTemplate  : ModuleTemplate
$moduleTemplateFactory  : ModuleTemplateFactory
$pageRenderer  : PageRenderer
$request  : ServerRequestInterface|null
$searchWord  : string
$selectedFolder  : FolderInterface
$thisScript  : string
URL of current request
$thumbnailConfiguration  : array<string|int, mixed>
$uriBuilder  : UriBuilder

Methods

__construct()  : mixed
getScriptUrl()  : string
Returns the URL of the current script
getUrlParameters()  : array<string|int, string>
Provides an array or GET parameters for URL generation
isCurrentlySelectedItem()  : bool
Check if given value is currently the selected item
processSessionData()  : array<int, array<string|int, mixed>|bool>
Session data for this class can be set from outside with this method.
render()  : string
renderFilesInFolder()  : string
For TYPO3 Element Browser: Expand folder of files.
setRequest()  : void
determineScriptUrl()  : mixed
Sets the script url depending on being a module or script request
fileIsSelectableInFileList()  : bool
Checks if the given file is selectable in the filelist.
getBackendUser()  : BackendUserAuthentication
getBodyTagAttributes()  : array<string, string>
getBParamDataAttributes()  : array<string, string>
Splits parts of $this->bparams and returns needed data attributes for the Javascript
getFilesInFolder()  : array<string|int, File>
Get a list of Files in a folder filtered by extension
getLanguageService()  : LanguageService
getRequest()  : ServerRequestInterface
getThumbnailSelector()  : string
Get the HTML for the thumbnail selector, if enabled
initialize()  : mixed
Loads additional JavaScript
initVariables()  : mixed
Checks additional GET/POST requests
setBodyTagParameters()  : mixed
Initialize the body tag for the module

Properties

$bparams

Active with TYPO3 Element Browser: Contains the name of the form field for which this window opens - thus allows us to make references back to the main window in which the form is.

protected string $bparams = ''

Example value: "data[pages][39][bodytext]|||tt_content|" or "data[tt_content][NEW3fba56fde763d][image]|||gif,jpg,jpeg,tif,bmp,pcx,tga,png,pdf,ai|" Values: 0: form field name reference, eg. "data[tt_content][123][image]" 1: htmlArea RTE parameters: editorNo:contentTypo3Language 2: RTE config parameters: RTEtsConfigParams 3: allowed types. Eg. "tt_content" or "gif,jpg,jpeg,tif,bmp,pcx,tga,png,pdf,ai" 4: IRRE uniqueness: target level object-id to perform actions/checks on, eg. "data-4-pages-4-nav_icon-sys_file_reference" ("data--

---<foreign_table>")

$pArr = explode('|', $this->bparams); $formFieldName = $pArr[0]; $allowedTablesOrFileTypes = $pArr[3];

$expandFolder

When you click a folder name/expand icon to see the content of a certain file folder, this value will contain the path of the expanded file folder.

protected string|null $expandFolder

If the value is NOT set, then it will be restored from the module session data. Example value: "/www/htdocs/typo3/32/3dsplm/fileadmin/css/"

$request

protected ServerRequestInterface|null $request = null

$thisScript

URL of current request

protected string $thisScript = ''

$thumbnailConfiguration

protected array<string|int, mixed> $thumbnailConfiguration = []

Methods

getScriptUrl()

Returns the URL of the current script

public getScriptUrl() : string
Return values
string

getUrlParameters()

Provides an array or GET parameters for URL generation

public getUrlParameters(array<string|int, mixed> $values) : array<string|int, string>
Parameters
$values : array<string|int, mixed>

Array of values to include into the parameters

Return values
array<string|int, string> —

Array of parameters which have to be added to URLs

isCurrentlySelectedItem()

Check if given value is currently the selected item

public isCurrentlySelectedItem(array<string|int, mixed> $values) : bool
Parameters
$values : array<string|int, mixed>

Values to be checked

Return values
bool —

Returns TRUE if the given values match the currently selected item

processSessionData()

Session data for this class can be set from outside with this method.

public processSessionData(array<string|int, mixed> $data) : array<int, array<string|int, mixed>|bool>
Parameters
$data : array<string|int, mixed>

Session data array

Return values
array<int, array<string|int, mixed>|bool> —

Session data and boolean which indicates that data needs to be stored in session because it's changed

render()

public render() : string
Return values
string —

HTML content

renderFilesInFolder()

For TYPO3 Element Browser: Expand folder of files.

public renderFilesInFolder(FolderInterface $folder[, array<string|int, mixed> $extensionList = [] ][, bool $noThumbs = false ]) : string
Parameters
$folder : FolderInterface

The folder path to expand

$extensionList : array<string|int, mixed> = []

List of fileextensions to show

$noThumbs : bool = false

Whether to show thumbnails or not. If set, no thumbnails are shown.

Return values
string —

HTML output

setRequest()

public setRequest(ServerRequestInterface $request) : void
Parameters
$request : ServerRequestInterface

determineScriptUrl()

Sets the script url depending on being a module or script request

protected determineScriptUrl() : mixed

fileIsSelectableInFileList()

Checks if the given file is selectable in the filelist.

protected fileIsSelectableInFileList(FileInterface $file, array<string|int, mixed> $imgInfo) : bool

By default all files are selectable. This method may be overwritten in child classes.

Parameters
$file : FileInterface
$imgInfo : array<string|int, mixed>

Image dimensions from \TYPO3\CMS\Core\Imaging\GraphicalFunctions::getImageDimensions()

Return values
bool —

TRUE if file is selectable.

getBodyTagAttributes()

protected getBodyTagAttributes() : array<string, string>
Return values
array<string, string> —

Array of body-tag attributes

getBParamDataAttributes()

Splits parts of $this->bparams and returns needed data attributes for the Javascript

protected getBParamDataAttributes() : array<string, string>
Return values
array<string, string> —

Data attributes for Javascript

getFilesInFolder()

Get a list of Files in a folder filtered by extension

protected getFilesInFolder(FolderInterface $folder, array<string|int, mixed> $extensionList) : array<string|int, File>
Parameters
$folder : FolderInterface
$extensionList : array<string|int, mixed>
Return values
array<string|int, File>

getRequest()

protected getRequest() : ServerRequestInterface
Return values
ServerRequestInterface

getThumbnailSelector()

Get the HTML for the thumbnail selector, if enabled

protected getThumbnailSelector() : string
Return values
string —

HTML data required for the thumbnail selector

initialize()

Loads additional JavaScript

protected initialize() : mixed

initVariables()

Checks additional GET/POST requests

protected initVariables() : mixed

setBodyTagParameters()

Initialize the body tag for the module

protected setBodyTagParameters() : mixed
On this page

Search results