Documentation TYPO3 par Ameos

t3lib_treeView Class Reference

Inheritance diagram for t3lib_treeView:
[legend]
List of all members.

Public Member Functions

 init ($clause='', $orderByFields='')
 setTreeName ($treeName='')
 addField ($field, $noCheck=0)
 reset ()
 getBrowsableTree ()
 printTree ($treeArr='')
 PMicon ($row, $a, $c, $nextCount, $exp)
 PM_ATagWrap ($icon, $cmd, $bMark='')
 wrapTitle ($title, $row, $bank=0)
 wrapIcon ($icon, $row)
 addTagAttributes ($icon, $attr)
 wrapStop ($str, $row)
 expandNext ($id)
 initializePositionSaving ()
 savePosition ()
 getRootIcon ($rec)
 getIcon ($row)
 getTitleStr ($row, $titleLen=30)
 getTitleAttrib ($row)
 getId ($row)
 getJumpToParam ($row)
 getTree ($uid, $depth=999, $depthData='', $blankLineCode='', $subCSSclass='')
 getCount ($uid)
 getRootRecord ($uid)
 getRecord ($uid)
 getDataInit ($parentId, $subCSSclass='')
 getDataCount (&$res)
 getDataNext (&$res, $subCSSclass='')
 getDataFree (&$res)
 setDataFromArray (&$dataArr, $traverse=FALSE, $pid=0)
 setDataFromTreeArray (&$treeArr, &$treeLookupArr)

Public Attributes

 $expandFirst = 0
 $expandAll = 0
 $thisScript = ''
 $titleAttrib = 'title'
 $ext_IconMode = false
 $addSelfId = 0
 $title = 'no title'
 $showDefaultTitleAttribute = FALSE
 $highlightPagesWithVersions = TRUE
 $BE_USER = ''
 $MOUNTS = ''
 $table = ''
 $parentField = 'pid'
 $clause = ''
 $orderByFields = ''
 $fieldArray = Array('uid','title')
 $defaultList = 'uid,pid,tstamp,sorting,deleted,perms_userid,perms_groupid,perms_user,perms_group,perms_everybody,crdate,cruser_id'
 $treeName = ''
 $domIdPrefix = 'row'
 $backPath
 $iconPath = ''
 $iconName = 'default.gif'
 $makeHTML = 1
 $setRecs = 0
 $subLevelID = '_SUB_LEVEL'
 $ids = Array()
 $ids_hierarchy = array()
 $orig_ids_hierarchy = array()
 $buffer_idH = array()
 $specUIDmap = array()
 $data = false
 $dataLookup = false
 $tree = Array()
 $stored = array()
 $bank = 0
 $recs = array()

Detailed Description

Definition at line 115 of file class.t3lib_treeview.php.


Member Function Documentation

t3lib_treeView::init ( clause = '',
orderByFields = '' 
)

Initialize the tree class. Needs to be overwritten Will set ->fieldsArray, ->backPath and ->clause

Parameters:
string record WHERE clause
string record ORDER BY field
Returns:
void

Definition at line 271 of file class.t3lib_treeview.php.

References $clause, $orderByFields, t3lib_div::loadTCA(), and setTreeName().

Referenced by localFolderTree::localFolderTree().

t3lib_treeView::setTreeName ( treeName = ''  ) 

Sets the tree name which is used to identify the tree Used for JavaScript and other things

Parameters:
string Default is the table name. Underscores are stripped.
Returns:
void

Definition at line 302 of file class.t3lib_treeview.php.

References $treeName.

Referenced by init(), and t3lib_browseTree::init().

t3lib_treeView::addField ( field,
noCheck = 0 
)

Adds a fieldname to the internal array ->fieldArray

Parameters:
string Field name to
boolean If set, the fieldname will be set no matter what. Otherwise the field name must either be found as key in $TCA[$table]['columns'] or in the list ->defaultList
Returns:
void

Definition at line 316 of file class.t3lib_treeview.php.

References t3lib_div::inList().

t3lib_treeView::reset (  ) 

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

Returns:
void

Definition at line 330 of file class.t3lib_treeview.php.

Referenced by localPageTree::ext_tree(), webPageTree::getBrowsableTree(), filelistFolderTree::getBrowsableTree(), getBrowsableTree(), t3lib_folderTree::getBrowsableTree(), getDataInit(), and printAllPageTree_perms::printTree().

t3lib_treeView::getBrowsableTree (  ) 

Will create and return the HTML code for a browsable tree Is based on the mounts found in the internal array ->MOUNTS (set in the constructor)

Returns:
string HTML code for the browsable tree

Reimplemented in t3lib_folderTree, filelistFolderTree, and webPageTree.

Definition at line 351 of file class.t3lib_treeview.php.

References getIcon(), getRecord(), getRootIcon(), getRootRecord(), getTree(), initializePositionSaving(), PM_ATagWrap(), printTree(), and reset().

t3lib_treeView::printTree ( treeArr = ''  ) 

Compiles the HTML code for displaying the structure found inside the ->tree array

Parameters:
array "tree-array" - if blank string, the internal ->tree array is used.
Returns:
string The HTML code for the tree

Reimplemented in localPageTree, localFolderTree, filelistFolderTree, webPageTree, tx_rtehtmlarea_pageTree, tx_rtehtmlarea_folderTree, and tx_rtehtmlarea_image_folderTree.

Definition at line 414 of file class.t3lib_treeview.php.

References getTitleStr(), and wrapTitle().

Referenced by getBrowsableTree(), and t3lib_folderTree::getBrowsableTree().

t3lib_treeView::PMicon ( row,
a,
c,
nextCount,
exp 
)

Generate the plus/minus icon for the browsable tree.

Parameters:
array record for the entry
integer The current entry number
integer The total number of entries. If equal to $a, a "bottom" element is returned.
integer The number of sub-elements to the current element.
boolean The element was expanded to render subelements if this flag is set.
Returns:
string Image tag with the plus/minus icon. private
See also:
t3lib_pageTree::PMicon()

Reimplemented in t3lib_pageTree, filelistFolderTree, and webPageTree.

Definition at line 469 of file class.t3lib_treeview.php.

References PM_ATagWrap().

t3lib_treeView::PM_ATagWrap ( icon,
cmd,
bMark = '' 
)

Wrap the plus/minus icon in a link

Parameters:
string HTML string to wrap, probably an image tag.
string Command for 'PM' get var
boolean If set, the link will have a anchor point (=$bMark) and a name attribute (=$bMark)
Returns:
string Link-wrapped input string private

Reimplemented in localPageTree, localFolderTree, localPageTree, printAllPageTree, localFolderTree, printAllFolderTree, localPageTree, and tx_rtehtmlarea_image_folderTree.

Definition at line 491 of file class.t3lib_treeview.php.

Referenced by filelistFolderTree::getBrowsableTree(), getBrowsableTree(), t3lib_folderTree::getBrowsableTree(), and PMicon().

t3lib_treeView::wrapTitle ( title,
row,
bank = 0 
)

Wrapping $title in a-tags.

Parameters:
string Title string
string Item record
integer Bank pointer (which mount point number)
Returns:
string private

Reimplemented in t3lib_folderTree, localPageTree, TBE_PageTree, filelistFolderTree, and webPageTree.

Definition at line 513 of file class.t3lib_treeview.php.

References getJumpToParam().

Referenced by printTree().

t3lib_treeView::wrapIcon ( icon,
row 
)

Wrapping the image tag, $icon, for the row, $row (except for mount points)

Parameters:
string The image tag for the icon
array The row for the current element
Returns:
string The processed icon input value. private

Reimplemented in t3lib_browseTree, t3lib_folderTree, localPageTree, localPageTree, localPageTree, localPageTree, printAllPageTree, localFolderTree, and localPageTree.

Definition at line 526 of file class.t3lib_treeview.php.

Referenced by getIcon(), and getRootIcon().

t3lib_treeView::addTagAttributes ( icon,
attr 
)

Adds attributes to image tag.

Parameters:
string Icon image tag
string Attributes to add, eg. ' border="0"'
Returns:
string Image tag, modified with $attr attributes added.

Definition at line 537 of file class.t3lib_treeview.php.

Referenced by webPageTree::wrapIcon(), filelistFolderTree::wrapIcon(), t3lib_folderTree::wrapIcon(), t3lib_browseTree::wrapIcon(), localFolderTree::wrapIcon(), printAllPageTree::wrapIcon(), and localPageTree::wrapIcon().

t3lib_treeView::wrapStop ( str,
row 
)

Adds a red "+" to the input string, $str, if the field "php_tree_stop" in the $row (pages) is set

Parameters:
string Input string, like a page title for the tree
array record row with "php_tree_stop" field
Returns:
string Modified string private

Reimplemented in webPageTree.

Definition at line 549 of file class.t3lib_treeview.php.

Referenced by getTree().

t3lib_treeView::expandNext ( id  ) 

Returns true/false if the next level for $id should be expanded - based on data in $this->stored[][] and ->expandAll flag. Extending parent function

Parameters:
integer record id/key
Returns:
boolean private
See also:
t3lib_pageTree::expandNext()

Reimplemented in t3lib_pageTree, and localPageTree.

Definition at line 577 of file class.t3lib_treeview.php.

Referenced by filelistFolderTree::getFolderTree(), t3lib_folderTree::getFolderTree(), webPageTree::getTree(), and getTree().

t3lib_treeView::initializePositionSaving (  ) 

Get stored tree structure AND updating it if needed according to incoming PM GET var.

Returns:
void private

Reimplemented in t3lib_folderTree, t3lib_pageTree, localPageTree, and localFolderTree.

Definition at line 587 of file class.t3lib_treeview.php.

References t3lib_div::_GP(), and savePosition().

Referenced by webPageTree::getBrowsableTree(), and getBrowsableTree().

t3lib_treeView::savePosition (  ) 

Saves the content of ->stored (keeps track of expanded positions in the tree) $this->treeName will be used as key for BE_USER->uc[] to store it in

Returns:
void private

Definition at line 614 of file class.t3lib_treeview.php.

Referenced by initializePositionSaving(), and t3lib_folderTree::initializePositionSaving().

t3lib_treeView::getRootIcon ( rec  ) 

Returns the root icon for a tree/mountpoint (defaults to the globe)

Parameters:
array Record for root.
Returns:
string Icon image tag.

Definition at line 643 of file class.t3lib_treeview.php.

References t3lib_iconWorks::skinImg(), and wrapIcon().

Referenced by webPageTree::getBrowsableTree(), and getBrowsableTree().

t3lib_treeView::getIcon ( row  ) 

Get icon for the row. If $this->iconPath and $this->iconName is set, try to get icon based on those values.

Parameters:
array Item row.
Returns:
string Image tag.

Definition at line 656 of file class.t3lib_treeview.php.

References t3lib_iconWorks::getIconImage(), and wrapIcon().

Referenced by webPageTree::getBrowsableTree(), getBrowsableTree(), webPageTree::getTree(), and getTree().

t3lib_treeView::getTitleStr ( row,
titleLen = 30 
)

Returns the title for the input record. If blank, a "no title" labele (localized) will be returned. Do NOT htmlspecialchar the string from this function - has already been done.

Parameters:
array The input row array (where the key "title" is used for the title)
integer Title length (30)
Returns:
string The title.

Reimplemented in t3lib_browseTree, and t3lib_folderTree.

Definition at line 675 of file class.t3lib_treeview.php.

References $title, and t3lib_div::fixed_lgd_cs().

Referenced by printTree().

t3lib_treeView::getTitleAttrib ( row  ) 

Returns the value for the image "title" attribute

Parameters:
array The input row array (where the key "title" is used for the title)
Returns:
string The attribute value (is htmlspecialchared() already)
See also:
wrapIcon()

Reimplemented in t3lib_browseTree.

Definition at line 687 of file class.t3lib_treeview.php.

t3lib_treeView::getId ( row  ) 

Returns the id from the record (typ. uid)

Parameters:
array Record array
Returns:
integer The "uid" field value.

Reimplemented in t3lib_folderTree.

Definition at line 697 of file class.t3lib_treeview.php.

Referenced by getJumpToParam(), and t3lib_browseTree::wrapIcon().

t3lib_treeView::getJumpToParam ( row  ) 

Returns jump-url parameter value.

Parameters:
array The record array.
Returns:
string The jump-url parameter.

Reimplemented in t3lib_folderTree.

Definition at line 707 of file class.t3lib_treeview.php.

References getId().

Referenced by webPageTree::wrapIcon(), t3lib_browseTree::wrapIcon(), webPageTree::wrapTitle(), and wrapTitle().

t3lib_treeView::getTree ( uid,
depth = 999,
depthData = '',
blankLineCode = '',
subCSSclass = '' 
)

Fetches the data for the tree

Parameters:
integer item id for which to select subitems (parent id)
integer Max depth (recursivity limit)
string HTML-code prefix for recursive calls.
string ? (internal)
string CSS class to use for

sub-elements

Returns:
integer The count of items on the level

Definition at line 741 of file class.t3lib_treeview.php.

References expandNext(), getCount(), getDataCount(), getDataFree(), getDataInit(), getDataNext(), getIcon(), t3lib_BEfunc::typo3PrintError(), and wrapStop().

Referenced by localPageTree::ext_tree(), and getBrowsableTree().

t3lib_treeView::getCount ( uid  ) 

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

Parameters:
integer id to count subitems for
Returns:
integer private

Reimplemented in t3lib_folderTree.

Definition at line 847 of file class.t3lib_treeview.php.

References t3lib_BEfunc::deleteClause(), getDataCount(), getDataInit(), and t3lib_BEfunc::versioningPlaceholderClause().

Referenced by webPageTree::getTree(), and getTree().

t3lib_treeView::getRootRecord ( uid  ) 

Returns root record for uid (<=0)

Parameters:
integer uid, <= 0 (normally, this does not matter)
Returns:
array Array with title/uid keys with values of $this->title/0 (zero)

Definition at line 873 of file class.t3lib_treeview.php.

Referenced by webPageTree::getBrowsableTree(), and getBrowsableTree().

t3lib_treeView::getRecord ( uid  ) 

Returns the record for a uid. For tables: Looks up the record in the database. For arrays: Returns the fake record for uid id.

Parameters:
integer UID to look up
Returns:
array The record

Definition at line 886 of file class.t3lib_treeview.php.

Referenced by webPageTree::getBrowsableTree(), and getBrowsableTree().

t3lib_treeView::getDataInit ( parentId,
subCSSclass = '' 
)

Getting the tree data: Selecting/Initializing data pointer to items for a certain parent id. 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:
integer parent item id
string Class for sub-elements.
Returns:
mixed data handle (Tables: An sql-resource, arrays: A parentId integer. -1 is returned if there were NO subLevel.) private

Definition at line 906 of file class.t3lib_treeview.php.

References t3lib_BEfunc::deleteClause(), reset(), and t3lib_BEfunc::versioningPlaceholderClause().

Referenced by getCount(), webPageTree::getTree(), and getTree().

t3lib_treeView::getDataCount ( &$  res  ) 

Getting the tree data: Counting elements in resource

Parameters:
mixed data handle
Returns:
integer number of items private
See also:
getDataInit()

Definition at line 937 of file class.t3lib_treeview.php.

Referenced by getCount(), webPageTree::getTree(), and getTree().

t3lib_treeView::getDataNext ( &$  res,
subCSSclass = '' 
)

Getting the tree data: next entry

Parameters:
mixed data handle
string CSS class for sub elements (workspace related)
Returns:
array item data array OR FALSE if end of elements. private
See also:
getDataInit()

Definition at line 955 of file class.t3lib_treeview.php.

References t3lib_BEfunc::countVersionsOfRecordsOnPage(), and t3lib_BEfunc::workspaceOL().

Referenced by webPageTree::getTree(), and getTree().

t3lib_treeView::getDataFree ( &$  res  ) 

Getting the tree data: frees data handle

Parameters:
mixed data handle
Returns:
void private

Definition at line 994 of file class.t3lib_treeview.php.

Referenced by webPageTree::getTree(), and getTree().

t3lib_treeView::setDataFromArray ( &$  dataArr,
traverse = FALSE,
pid = 0 
)

Used to initialize class with an array to browse. The array inputted will be traversed and an internal index for lookup is created. The keys of the input array are perceived as "uid"s of records which means that keys GLOBALLY must be unique like uids are. "uid" and "pid" "fakefields" are also set in each record. All other fields are optional.

Parameters:
array The input array, see examples below in this script.
boolean Internal, for recursion.
integer Internal, for recursion.
Returns:
void

Definition at line 1014 of file class.t3lib_treeview.php.

t3lib_treeView::setDataFromTreeArray ( &$  treeArr,
&$  treeLookupArr 
)

Sets the internal data arrays

Parameters:
array Content for $this->data
array Content for $this->dataLookup
Returns:
void

Definition at line 1043 of file class.t3lib_treeview.php.


Member Data Documentation

t3lib_treeView::$BE_USER = ''

Needs to be initialized with $GLOBALS['BE_USER'] Done by default in init()

Definition at line 132 of file class.t3lib_treeview.php.

Referenced by localFolderTree::localFolderTree(), and localPageTree::localPageTree().

t3lib_treeView::$MOUNTS = ''

Needs to be initialized with e.g. $GLOBALS['WEBMOUNTS'] Default setting in init() is 0 => 0 The keys are mount-ids (can be anything basically) and the values are the ID of the root element (COULD be zero or anything else. For pages that would be the uid of the page, zero for the pagetree root.)

Definition at line 139 of file class.t3lib_treeview.php.

t3lib_treeView::$table = ''

Database table to get the tree data from. Leave blank if data comes from an array.

Definition at line 147 of file class.t3lib_treeview.php.

t3lib_treeView::$parentField = 'pid'

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

Definition at line 152 of file class.t3lib_treeview.php.

t3lib_treeView::$clause = ''

WHERE clause used for selecting records for the tree. Is set by function init. Only makes sense when $this->table is set.

See also:
init()

Definition at line 159 of file class.t3lib_treeview.php.

Referenced by localPageTree::ext_tree(), init(), t3lib_pageTree::init(), and t3lib_browseTree::init().

t3lib_treeView::$orderByFields = ''

Field for ORDER BY. Is set by function init. Only makes sense when $this->table is set.

See also:
init()

Definition at line 166 of file class.t3lib_treeview.php.

Referenced by init().

t3lib_treeView::$fieldArray = Array('uid','title')

Default set of fields selected from the tree table. 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)

See also:
addField()

Reimplemented in t3lib_pageTree.

Definition at line 173 of file class.t3lib_treeview.php.

t3lib_treeView::$defaultList = 'uid,pid,tstamp,sorting,deleted,perms_userid,perms_groupid,perms_user,perms_group,perms_everybody,crdate,cruser_id'

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

See also:
addField()

Reimplemented in t3lib_pageTree.

Definition at line 179 of file class.t3lib_treeview.php.

t3lib_treeView::$treeName = ''

Unique name for the tree. Used as key for storing the tree into the BE users settings. Used as key to pass parameters in links. MUST NOT contain underscore chars. etc.

Definition at line 189 of file class.t3lib_treeview.php.

Referenced by setTreeName().

t3lib_treeView::$domIdPrefix = 'row'

A prefix for table cell id's which will be wrapped around an item. Can be used for highlighting by JavaScript. Needs to be unique if multiple trees are on one HTML page.

See also:
printTree()

Definition at line 197 of file class.t3lib_treeview.php.

t3lib_treeView::$backPath

Back path for icons

Definition at line 202 of file class.t3lib_treeview.php.

t3lib_treeView::$iconPath = ''

Icon file path.

Definition at line 207 of file class.t3lib_treeview.php.

t3lib_treeView::$iconName = 'default.gif'

Icon file name for item icons.

Definition at line 213 of file class.t3lib_treeview.php.

t3lib_treeView::$makeHTML = 1

If true, HTML code is also accumulated in ->tree array during rendering of the tree. If 2, then also the icon prefix code (depthData) is stored

Definition at line 219 of file class.t3lib_treeview.php.

t3lib_treeView::$setRecs = 0

If true, records as selected will be stored internally in the ->recs array

Reimplemented in t3lib_pageTree.

Definition at line 224 of file class.t3lib_treeview.php.

t3lib_treeView::$subLevelID = '_SUB_LEVEL'

Sets the associative array key which identifies a new sublevel if arrays are used for trees. This value has formerly been "subLevel" and "--sublevel--"

Definition at line 230 of file class.t3lib_treeview.php.


The documentation for this class was generated from the following file:


Généré par Le spécialiste TYPO3 avec  doxygen 1.4.6