"TYPO3 4.0.1: t3lib_TSparser Class Reference", "datetime" => "Sat Dec 2 19:26:29 2006", "date" => "2 Dec 2006", "doxygenversion" => "1.4.6", "projectname" => "TYPO3 4.0.1", "projectnumber" => "4.0.1" ); get_header($doxygen_vars); ?>

t3lib_TSparser Class Reference

List of all members.

Public Member Functions

 parse ($string, $matchObj='')
 nextDivider ()
 parseSub (&$setup)
 rollParseSub ($string, &$setup)
 getVal ($string, $setup)
 setVal ($string, &$setup, $value, $wipeOut=0)
 error ($err, $num=2)
 checkIncludeLines ($string)
 checkIncludeLines_array ($array)
 doSyntaxHighlight ($string, $lineNum='', $highlightBlockMode=0)
 regHighLight ($code, $pointer, $strlen=-1)
 syntaxHighlight_print ($lineNumDat, $highlightBlockMode)

Public Attributes

 $strict = 1
 $setup = Array()
 $raw
 $rawP
 $lastComment = ''
 $commentSet = 0
 $multiLineEnabled = 0
 $multiLineObject = ''
 $multiLineValue = array()
 $inBrace = 0
 $lastConditionTrue = 1
 $sections = array()
 $sectionsMatch = array()
 $syntaxHighLight = 0
 $highLightData = array()
 $highLightData_bracelevel = array()
 $regComments = 0
 $regLinenumbers = 0
 $errors = array()
 $lineNumberOffset = 0
 $breakPointLN = 0
 $highLightStyles
 $highLightBlockStyles = ''
 $highLightBlockStyles_basecolor = '#cccccc'

Detailed Description

Definition at line 80 of file class.t3lib_tsparser.php.


Member Function Documentation

t3lib_TSparser::checkIncludeLines string  ) 
 

Checks the input string (un-parsed TypoScript) for include-commands ("<INCLUDE_TYPOSCRIPT: ....") Use: t3lib_TSparser::checkIncludeLines()

Parameters:
string Unparsed TypoScript
Returns:
string Complete TypoScript with includes added.

Definition at line 497 of file class.t3lib_tsparser.php.

References t3lib_div::get_tag_attributes(), and t3lib_div::getFileAbsFileName().

Referenced by checkIncludeLines_array(), tx_tstemplateanalyzer::main(), and t3lib_TStemplate::procesIncludes().

t3lib_TSparser::checkIncludeLines_array array  ) 
 

Parses the string in each value of the input array for include-commands

Parameters:
array Array with TypoScript in each value
Returns:
array Same array but where the values has been parsed for include-commands

Definition at line 541 of file class.t3lib_tsparser.php.

References checkIncludeLines().

Referenced by t3lib_userAuthGroup::fetchGroupData(), t3lib_BEfunc::getPagesTSconfig(), and tslib_feUserAuth::getUserTSconf().

t3lib_TSparser::doSyntaxHighlight string,
lineNum = '',
highlightBlockMode = 0
 

Syntax highlight a TypoScript text Will parse the content. Remember, the internal setup array may contain invalid parsed content since conditions are ignored!

Parameters:
string The TypoScript text
mixed If blank, linenumbers are NOT printed. If array then the first key is the linenumber offset to add to the internal counter.
boolean If set, then the highlighted output will be formatted in blocks based on the brace levels. prespace will be ignored and empty lines represented with a single no-break-space.
Returns:
string HTML code for the syntax highlighted string

Definition at line 584 of file class.t3lib_tsparser.php.

t3lib_TSparser::error err,
num = 2
 

Stacks errors/messages from the TypoScript parser into an internal array, $this->error If "TT" is a global object (as it is in the frontend when backend users are logged in) the message will be registered here as well.

Parameters:
string The error message string
integer The error severity (in the scale of $GLOBALS['TT']->setTSlogMessage: Approx: 2=warning, 1=info, 0=nothing, 3=fatal.)
Returns:
void

Definition at line 485 of file class.t3lib_tsparser.php.

Referenced by parse(), and parseSub().

t3lib_TSparser::getVal string,
setup
 

Get a value/property pair for an object path in TypoScript, eg. "myobject.myvalue.mysubproperty". Here: Used by the "copy" operator, <

Parameters:
string Object path for which to get the value
array Global setup code if $string points to a global object path. But if string is prefixed with "." then its the local setup array.
Returns:
array An array with keys 0/1 being value/property respectively

Definition at line 413 of file class.t3lib_tsparser.php.

Referenced by parseSub().

t3lib_TSparser::nextDivider  ) 
 

Will search for the next condition. When found it will return the line content (the condition value) and have advanced the internal $this->rawP pointer to point to the next line after the condition.

Returns:
string The condition value
See also:
parse()

Definition at line 169 of file class.t3lib_tsparser.php.

Referenced by parse().

t3lib_TSparser::parse string,
matchObj = ''
 

Start parsing the input TypoScript text piece. The result is stored in $this->setup

Parameters:
string The TypoScript text
object If is object (instance of t3lib_matchcondition), then this is used to match conditions found in the TypoScript code. If matchObj not specified, then no conditions will work! (Except [GLOBAL])
Returns:
void

Definition at line 133 of file class.t3lib_tsparser.php.

References error(), nextDivider(), and parseSub().

t3lib_TSparser::parseSub &$  setup  ) 
 

Parsing the $this->raw TypoScript lines from pointer, $this->rawP

Parameters:
array Reference to the setup array in which to accumulate the values.
Returns:
string Returns the string of the condition found, the exit signal or possible nothing (if it completed parsing with no interruptions)

Definition at line 185 of file class.t3lib_tsparser.php.

References $setup, t3lib_div::callUserFunction(), error(), getVal(), regHighLight(), rollParseSub(), setVal(), t3lib_div::sysLog(), and t3lib_div::trimExplode().

Referenced by parse().

t3lib_TSparser::regHighLight code,
pointer,
strlen = -1
 

Registers a part of a TypoScript line for syntax highlighting.

Parameters:
string Key from the internal array $this->highLightStyles
integer Pointer to the line in $this->raw which this is about
integer The number of chars LEFT on this line before the end is reached.
Returns:
void private
See also:
parse()

Definition at line 605 of file class.t3lib_tsparser.php.

Referenced by parseSub().

t3lib_TSparser::rollParseSub string,
&$  setup
 

Parsing of TypoScript keys inside a curly brace where the key is composite of at least two keys, thus having to recursively call itself to get the value

Parameters:
string The object sub-path, eg "thisprop.another_prot"
array The local setup array from the function calling this function
Returns:
string Returns the exitSignal
See also:
parseSub()

Definition at line 389 of file class.t3lib_tsparser.php.

Referenced by parseSub().

t3lib_TSparser::setVal string,
&$  setup,
value,
wipeOut = 0
 

Setting a value/property of an object string in the setup array.

Parameters:
string The object sub-path, eg "thisprop.another_prot"
array The local setup array from the function calling this function.
array The value/property pair array to set. If only one of them is set, then the other is not touched (unless $wipeOut is set, which it is when copies are made which must include both value and property)
boolean If set, then both value and property is wiped out when a copy is made of another value.
Returns:
void

Definition at line 439 of file class.t3lib_tsparser.php.

Referenced by parseSub().

t3lib_TSparser::syntaxHighlight_print lineNumDat,
highlightBlockMode
 

Formatting the TypoScript code in $this->raw based on the data collected by $this->regHighLight in $this->highLightData

Parameters:
mixed If blank, linenumbers are NOT printed. If array then the first key is the linenumber offset to add to the internal counter.
boolean If set, then the highlighted output will be formatted in blocks based on the brace levels. prespace will be ignored and empty lines represented with a single no-break-space.
Returns:
string HTML content private
See also:
doSyntaxHighlight()

Definition at line 623 of file class.t3lib_tsparser.php.


Member Data Documentation

t3lib_TSparser::$highLightStyles
 

Initial value:

array(
                'prespace'                      => array('<span class="ts-prespace">','</span>'),       // Space before any content on a line
                'objstr_postspace'      => array('<span class="ts-objstr_postspace">','</span>'),       // Space after the object string on a line
                'operator_postspace' => array('<span class="ts-operator_postspace">','</span>'),        // Space after the operator on a line
                'operator'                      => array('<span class="ts-operator">','</span>'),       // The operator char
                'value'                         => array('<span class="ts-value">','</span>'),  // The value of a line
                'objstr'                        => array('<span class="ts-objstr">','</span>'), // The object string of a line
                'value_copy'            => array('<span class="ts-value_copy">','</span>'),     // The value when the copy syntax (<) is used; that means the object reference
                'value_unset'           => array('<span class="ts-value_unset">','</span>'),    // The value when an object is unset. Should not exist.
                'ignored'                       => array('<span class="ts-ignored">','</span>'),        // The "rest" of a line which will be ignored.
                'default'                       => array('<span class="ts-default">','</span>'),        // The default style if none other is applied.
                'comment'                       => array('<span class="ts-comment">','</span>'),        // Comment lines
                'condition'                     => array('<span class="ts-condition">','</span>'),      // Conditions
                'error'                         => array('<span class="ts-error">','</span>'),  // Error messages
                'linenum'                       => array('<span class="ts-linenum">','</span>'),        // Line numbers
        )

Definition at line 106 of file class.t3lib_tsparser.php.


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