AbstractTreeView

AbstractYes

Base class for creating a browsable array/page/folder tree in HTML

Internal

This class is a TYPO3 Backend implementation and is not considered part of the Public TYPO3 API.

Table of Contents

Properties

$buffer_idH  : array<string|int, mixed>
$ids  : array<string|int, mixed>
$ids_hierarchy  : array<string|int, mixed>
$makeHTML  : int
If 1, HTML code is also accumulated in ->tree array during rendering of the tree
$orderByFields  : string
Field for ORDER BY. Is set by function init.
$orig_ids_hierarchy  : array<string|int, mixed>
$tree  : array<string|int, mixed>
$clause  : string
WHERE clause used for selecting records for the tree. Is set by function init.
$defaultList  : string
List of other fields which are ALLOWED to set (here, based on the "pages" table!)
$fieldArray  : array<string|int, mixed>
Default set of fields selected from the tree table.
$parentField  : string
Defines the field of $table which is the parent id field (like pid for table pages).
$table  : string
Database table to get the tree data from.

Methods

__construct()  : mixed
Constructor
addField()  : mixed
Adds a fieldname to the internal array ->fieldArray
expandNext()  : bool
Returns TRUE/FALSE if the next level for $id should be expanded - based on data in $this->stored[][] and ->expandAll flag.
getTree()  : int
Fetches the data for the tree
init()  : mixed
Initialize the tree class. Needs to be overwritten
reset()  : mixed
Resets the tree, recs, ids, ids_hierarchy and orig_ids_hierarchy internal variables. Use it if you need it.
getBackendUser()  : BackendUserAuthentication
getCount()  : int
Returns the number of records having the parent id, $uid
getDataInit()  : mixed
Getting the tree data: Selecting/Initializing data pointer to items for a certain parent id.
getDataNext()  : array<string|int, mixed>|bool
Getting the tree data: next entry
getIcon()  : string
Get the icon markup for the row
getLanguageService()  : LanguageService
getTitleAttrib()  : string
Returns the value for the image "title" attribute
getTitleStr()  : string
Returns the title for the input record. If blank, a "no title" label (localized) will be returned.
PM_ATagWrap()  : string
Wrap the plus/minus icon in a link
PMicon()  : string
Generate the plus/minus icon for the browsable tree.

Properties

$buffer_idH

public array<string|int, mixed> $buffer_idH = []

$ids

public array<string|int, mixed> $ids = []

$ids_hierarchy

public array<string|int, mixed> $ids_hierarchy = []

$makeHTML

If 1, HTML code is also accumulated in ->tree array during rendering of the tree

public int $makeHTML = 1

$orderByFields

Field for ORDER BY. Is set by function init.

public string $orderByFields = ''
Tags
see
init()

$orig_ids_hierarchy

public array<string|int, mixed> $orig_ids_hierarchy = []

$tree

public array<string|int, mixed> $tree = []

$clause

WHERE clause used for selecting records for the tree. Is set by function init.

protected string $clause = ''
Tags
see
init()

$defaultList

List of other fields which are ALLOWED to set (here, based on the "pages" table!)

protected string $defaultList = 'uid,pid,tstamp,sorting,deleted,perms_userid,perms_groupid,perms_user,perms_group,perms_everybody,crdate'
Tags
see
addField()

$fieldArray

Default set of fields selected from the tree table.

protected array<string|int, mixed> $fieldArray = ['uid', 'pid', 'title', 'is_siteroot', 'doktype', 'nav_title', 'mount_pid', 'php_tree_stop', 't3ver_state', 'hidden', 'starttime', 'endtime', 'fe_group', 'module', 'extendToSubpages', 'nav_hide', 't3ver_wsid']

Make SURE that these fields names listed herein are actually possible to select from $this->table (if that variable is set to a TCA table name)

Tags
see
addField()

$parentField

Defines the field of $table which is the parent id field (like pid for table pages).

protected string $parentField = 'pid'

$table

Database table to get the tree data from.

protected string $table = 'pages'

Leave blank if data comes from an array.

Methods

__construct()

Constructor

public __construct() : mixed

addField()

Adds a fieldname to the internal array ->fieldArray

public addField(string $field[, bool $noCheck = false ]) : mixed
Parameters
$field : string

Field name to

$noCheck : bool = false

If set, the fieldname will be set no matter what. Otherwise the field name must either be found as key in $GLOBALS['TCA'][$table]['columns'] or in the list ->defaultList

expandNext()

Returns TRUE/FALSE if the next level for $id should be expanded - based on data in $this->stored[][] and ->expandAll flag.

public expandNext(int $id) : bool

Used in subclasses

Parameters
$id : int

Record id/key

Internal
Tags
see
PageTreeView::expandNext()
Return values
bool

getTree()

Fetches the data for the tree

public getTree(int $uid[, int $depth = 999 ][, string $depthData = '' ]) : int
Parameters
$uid : int

item id for which to select subitems (parent id)

$depth : int = 999

Max depth (recursivity limit)

$depthData : string = ''

HTML-code prefix for recursive calls.

Return values
int —

The count of items on the level

init()

Initialize the tree class. Needs to be overwritten

public init([string $clause = '' ][, string $orderByFields = '' ]) : mixed
Parameters
$clause : string = ''

Record WHERE clause

$orderByFields : string = ''

Record ORDER BY field

reset()

Resets the tree, recs, ids, ids_hierarchy and orig_ids_hierarchy internal variables. Use it if you need it.

public reset() : mixed

getCount()

Returns the number of records having the parent id, $uid

protected getCount(int $uid) : int
Parameters
$uid : int

Id to count subitems for

Return values
int

getDataInit()

Getting the tree data: Selecting/Initializing data pointer to items for a certain parent id.

protected getDataInit(int $parentId) : mixed

For tables: This will make a database query to select all children to "parent" For arrays: This will return key to the ->dataLookup array

Parameters
$parentId : int

parent item id

Return values
mixed —

Data handle (Tables: An sql-resource, arrays: A parentId integer. -1 is returned if there were NO subLevel.)

getDataNext()

Getting the tree data: next entry

protected getDataNext(mixed &$res) : array<string|int, mixed>|bool
Parameters
$res : mixed

Data handle

Tags
see
getDataInit()
Return values
array<string|int, mixed>|bool —

item data array OR FALSE if end of elements.

getIcon()

Get the icon markup for the row

protected getIcon(array<string|int, mixed> $row) : string
Parameters
$row : array<string|int, mixed>

The row to get the icon for

Return values
string —

The icon markup, wrapped into a span tag, with the records title as title attribute

getTitleAttrib()

Returns the value for the image "title" attribute

protected getTitleAttrib(array<string|int, mixed> $row) : string
Parameters
$row : array<string|int, mixed>

The input row array (where the key "title" is used for the title)

Return values
string —

The attribute value (is htmlspecialchared() already)

getTitleStr()

Returns the title for the input record. If blank, a "no title" label (localized) will be returned.

protected getTitleStr(array<string|int, mixed> $row[, int $titleLen = 30 ]) : string

Do NOT htmlspecialchar the string from this function - has already been done.

Parameters
$row : array<string|int, mixed>

The input row array (where the key "title" is used for the title)

$titleLen : int = 30

Title length (30)

Return values
string —

The title.

PM_ATagWrap()

Wrap the plus/minus icon in a link

protected PM_ATagWrap([string $bMark = '' ][, bool $isOpen = false ]) : string
Parameters
$bMark : string = ''

If set, the link will have an anchor point (=$bMark) and a name attribute (=$bMark)

$isOpen : bool = false
Return values
string —

Link-wrapped input string

PMicon()

Generate the plus/minus icon for the browsable tree.

protected PMicon(array<string|int, mixed> $row, int $a, int $c, int $nextCount, bool $isOpen) : string
Parameters
$row : array<string|int, mixed>

Record for the entry

$a : int

The current entry number

$c : int

The total number of entries. If equal to $a, a "bottom" element is returned.

$nextCount : int

The number of sub-elements to the current element.

$isOpen : bool

The element was expanded to render subelements if this flag is set.

Tags
see
PageTreeView::PMicon()
Return values
string —

Image tag with the plus/minus icon.

On this page

Search results