PageTreeView extends AbstractTreeView
Generate a page-tree, non-browsable.
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 - and all levels should, so we always return 1.
- getTree() : int
- Fetches the data for the tree
- init() : mixed
- Init function REMEMBER to feed a $clause which will filter out non-readable pages!
- 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
$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
$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
$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
$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 - and all levels should, so we always return 1.
public
expandNext(int $id) : bool
Parameters
- $id : int
-
ID (uid) to test for (see extending classes where this is checked against session data)
Return values
boolgetTree()
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()
Init function REMEMBER to feed a $clause which will filter out non-readable pages!
public
init([string $clause = '' ][, string $orderByFields = '' ]) : mixed
Parameters
- $clause : string = ''
-
Part of where query which will filter out non-readable pages.
- $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
getBackendUser()
protected
getBackendUser() : BackendUserAuthentication
Return values
BackendUserAuthenticationgetCount()
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
intgetDataInit()
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
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
getLanguageService()
protected
getLanguageService() : LanguageService
Return values
LanguageServicegetTitleAttrib()
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 $isExpand) : string
In this case, there is no plus-minus icon displayed.
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.
- $isExpand : bool
-
The element was expanded to render subelements if this flag is set.
Tags
Return values
string —Image tag with the plus/minus icon.