pclib  3.0.0
Lightweight PHP framework
Public Member Functions | Data Fields | Protected Member Functions
Tree Class Reference

Display tree structure. More...

Inheritance diagram for Tree:
BaseObject

Public Member Functions

 __construct ($path='')
 Create Tree instance. More...
 
 importText ($s)
 Import Tree from text string. More...
 
 exportText ()
 Export current Tree to text string. More...
 
 fromArray ($nodes)
 Import Tree from array of $nodes. More...
 
 toArray ()
 Export Tree as array of $nodes. More...
 
 get ($nodeId)
 Get Tree node. More...
 
 set ($nodeId, $data)
 Set Tree node values. More...
 
 find ($key, $value)
 Find Tree node by node parameter. More...
 
 map (callable $fn)
 Call $fn for each node. More...
 
 fromQuery ($sql, $topId=0)
 Load tree from database query. More...
 
 load ($treeId, $topId=0, $maxLevel=0)
 Load tree from table tree_lookups. More...
 
 save ($treeId)
 Save current tree to table tree_lookups. More...
 
 expand ()
 Expand path(s) in current tree. More...
 
 expandLevel ($level)
 Expand tree to level $level.
 
 html ()
 Return html output of the current tree.
 
- Public Member Functions inherited from BaseObject
 loadDefaults ($className=null)
 Load default parameters of class $className into object instance.
 
 setProperties (array $defaults)
 Set public properties of object from the array. More...
 

Data Fields

 $db
 var Db Link to database object.
 
 $table = 'TREE_LOOKUPS'
 Database table for storing tree data.
 
 $tpl
 var Tpl Tree template.
 
 $auth = null
 If set, it will check user rights against RKEY column.
 
- Data Fields inherited from BaseObject
 $serviceLocator
 var function() Return service object when requested with service().
 

Protected Member Functions

 addNode ($data)
 Called everytime when adding node to the tree.
 
 expandPath ($nodeKey)
 Expand (open) current tree to node $nodeKey. More...
 
- Protected Member Functions inherited from BaseObject
 service ($service, $default=null)
 Try acquire $service and load it into property $this->$service. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from BaseObject
static defaults ()
 Set or retireve default parameters of the object. More...
 

Detailed Description

Display tree structure.

Default template will show tree as unordered list (UL). Features:

Constructor & Destructor Documentation

◆ __construct()

__construct (   $path = '')

Create Tree instance.

Parameters
string$pathFilename of template file. By default it uses default-tree.tpl.

Member Function Documentation

◆ expand()

expand ( )

Expand path(s) in current tree.

Parameters
int|arrayId of nodes, which should be expanded (opened) Ex: $tree->expand(1,4,20) Expand tree to nodes 1,4,20

◆ expandPath()

expandPath (   $nodeKey)
protected

Expand (open) current tree to node $nodeKey.

Parameters
int$nodeKeyKey in Tree::nodes array
See also
expand()

◆ exportText()

exportText ( )

Export current Tree to text string.

Returns
string $s Tree as text.

◆ find()

find (   $key,
  $value 
)

Find Tree node by node parameter.

Parameters
string$keyNode key
string$valueValue of node key
Returns
array $node

◆ fromArray()

fromArray (   $nodes)

Import Tree from array of $nodes.

Parameters
array$nodes[['ID'=>'','LABEL'=>'','LEVEL'=>'',...],...]

◆ fromQuery()

fromQuery (   $sql,
  $topId = 0 
)

Load tree from database query.

Expected fields: ID, LABEL, PARENT_ID.

Parameters
string$sqlDatabase query
int$topId

◆ get()

get (   $nodeId)

Get Tree node.

Parameters
int$nodeId
Returns
array $node

◆ importText()

importText (   $s)

Import Tree from text string.

Parameters
string$sSource string. See https://pclib.brambor.net/demo/?r=source/tree.txt

◆ load()

load (   $treeId,
  $topId = 0,
  $maxLevel = 0 
)

Load tree from table tree_lookups.

Parameters
int$treeId

◆ map()

map ( callable  $fn)

Call $fn for each node.

Parameters
callable$fn,(array$node) : array Callback function. It takes Tree $node and must return this $node.

◆ save()

save (   $treeId)

Save current tree to table tree_lookups.

Parameters
int$treeId

◆ set()

set (   $nodeId,
  $data 
)

Set Tree node values.

Parameters
int$nodeId
array$dataData of node to be set.

◆ toArray()

toArray ( )

Export Tree as array of $nodes.

Returns
array $nodes

Reimplemented from BaseObject.


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