eZ Publish  [trunk]
eZTemplateLogicOperator Class Reference

Logical operators for creating and manipulating booleans. More...

List of all members.

Public Member Functions

 chooseTransformation ($operatorName, &$node, $tpl, &$resourceData, $element, $lastElement, $elementList, $elementTree, &$parameters)
 eZTemplateLogicOperator ()
 getValueCount ($val)
 logicalComparisonTransformation ($operatorName, &$node, $tpl, &$resourceData, $element, $lastElement, $elementList, $elementTree, &$parameters)
 modify ($tpl, $operatorName, $operatorParameters, $rootNamespace, $currentNamespace, &$value, $namedParameters, $placement)
 namedParameterList ()
 namedParameterPerOperator ()
 negateTransformation ($operatorName, &$node, $tpl, &$resourceData, $element, $lastElement, $elementList, $elementTree, &$parameters)
 operatorCompiledStaticData ($operatorName)
 operatorList ()
 operatorTemplateHints ()
 trueFalseTransformation ($operatorName, &$node, $tpl, &$resourceData, $element, $lastElement, $elementList, $elementTree, &$parameters)

Public Attributes

 $AndName
 The "and" name.
 $ChooseName
 The "choose" name.
 $EqName
 The "equal" name.
 $FalseName
 The "false" name.
 $GeName
 The "greater than or equal" name.
 $GtName
 The "greater than" name.
 $LeName
 The "less than or equal" name.
 $LtName
 The "less than" name.
 $NeName
 The "not equal" name.
 $NotName
 The "not" name.
 $NullName
 The "null" name.
 $Operators
 The array of operators.
 $OrName
 The "or" name.
 $TrueName
 The "true" name.

Detailed Description

Logical operators for creating and manipulating booleans.

This class adds powerful template handling by enabling logical operators which alter the output of templates from input values.

How counts are interpreted:

  1. If the data is an array the array count is used
  2. If the data is an object the object attribute count is used
  3. If the data is a numeric the value is used
  4. If the data is a boolean false is 0 and true is 1
  5. For all other data 0 is used

Data is considered null (or false) if the data count is 0 (see above) or the data is really null (is_null). Data is considered true if it is not null.

The supported operators are:

  • lt
    Returns true if the input count is less than the parameter data count. See how count is interpreted above.
  • le
    Same as lt but use less than or equal to.
  • gt
    Same as lt but returns true for input greater than data.
  • ge
    Same as gt but use greater than or equal to.
  • eq
    Returns true if all the input parameters match. Matching is casual meaning that an integer of value 0 will match a boolean of type false.
  • ne
    Returns true if one or more of the input parameters does not match. Matching is casual meaning that an integer of value 0 will match a boolean of type false.
  • null
    Returns true if the data is null, false otherwise
  • not
    Returns true if the data is false or false if data is true
  • true
  • false
    Creates a true/false boolean
  • or
    Evaluates all parameter values until one is found to be true (see above), then returns that value. The remaining parameters are not evaluated at all. If there are no parameter or all elements were false it returns false.
  • and
    Evaluates all parameter values until one is found to be false (see above), then returns that false. The remaining parameters are not evaluated at all. If there are no parameter it returns false, if no elements were false it returns the last parameter value.
  • choose
    Uses the input count to pick one of the parameter elements. The input count equals the parameter index.

Definition at line 67 of file eztemplatelogicoperator.php.


Member Function Documentation

eZTemplateLogicOperator::chooseTransformation ( operatorName,
&$  node,
tpl,
&$  resourceData,
element,
lastElement,
elementList,
elementTree,
&$  parameters 
)

Definition at line 516 of file eztemplatelogicoperator.php.

Initializes the operator class with the various operator names.

Definition at line 72 of file eztemplatelogicoperator.php.

Returns the 'count' value as described in the introduction or 'false' in case of an unsupported type

Definition at line 596 of file eztemplatelogicoperator.php.

Referenced by modify().

eZTemplateLogicOperator::logicalComparisonTransformation ( operatorName,
&$  node,
tpl,
&$  resourceData,
element,
lastElement,
elementList,
elementTree,
&$  parameters 
)

Definition at line 236 of file eztemplatelogicoperator.php.

eZTemplateLogicOperator::modify ( tpl,
operatorName,
operatorParameters,
rootNamespace,
currentNamespace,
&$  value,
namedParameters,
placement 
)

Examines the input value and outputs a boolean value. See class documentation for more information.

Definition at line 631 of file eztemplatelogicoperator.php.

Returns:
true to tell the template engine that the parameter list exists per operator type.

Definition at line 97 of file eztemplatelogicoperator.php.

eZTemplateLogicOperator::negateTransformation ( operatorName,
&$  node,
tpl,
&$  resourceData,
element,
lastElement,
elementList,
elementTree,
&$  parameters 
)

Definition at line 480 of file eztemplatelogicoperator.php.

Returns the operators in this class.

Definition at line 89 of file eztemplatelogicoperator.php.

eZTemplateLogicOperator::trueFalseTransformation ( operatorName,
&$  node,
tpl,
&$  resourceData,
element,
lastElement,
elementList,
elementTree,
&$  parameters 
)

Definition at line 499 of file eztemplatelogicoperator.php.


Member Data Documentation

eZTemplateLogicOperator::$AndName

The "and" name.

Definition at line 887 of file eztemplatelogicoperator.php.

eZTemplateLogicOperator::$ChooseName

The "choose" name.

Definition at line 893 of file eztemplatelogicoperator.php.

eZTemplateLogicOperator::$EqName

The "equal" name.

Definition at line 877 of file eztemplatelogicoperator.php.

eZTemplateLogicOperator::$FalseName

The "false" name.

Definition at line 891 of file eztemplatelogicoperator.php.

eZTemplateLogicOperator::$GeName

The "greater than or equal" name.

Definition at line 875 of file eztemplatelogicoperator.php.

eZTemplateLogicOperator::$GtName

The "greater than" name.

Definition at line 871 of file eztemplatelogicoperator.php.

eZTemplateLogicOperator::$LeName

The "less than or equal" name.

Definition at line 873 of file eztemplatelogicoperator.php.

eZTemplateLogicOperator::$LtName

The "less than" name.

Definition at line 869 of file eztemplatelogicoperator.php.

eZTemplateLogicOperator::$NeName

The "not equal" name.

Definition at line 879 of file eztemplatelogicoperator.php.

eZTemplateLogicOperator::$NotName

The "not" name.

Definition at line 883 of file eztemplatelogicoperator.php.

eZTemplateLogicOperator::$NullName

The "null" name.

Definition at line 881 of file eztemplatelogicoperator.php.

eZTemplateLogicOperator::$Operators

The array of operators.

Definition at line 867 of file eztemplatelogicoperator.php.

eZTemplateLogicOperator::$OrName

The "or" name.

Definition at line 885 of file eztemplatelogicoperator.php.

eZTemplateLogicOperator::$TrueName

The "true" name.

Definition at line 889 of file eztemplatelogicoperator.php.


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