Path

ez components / documentation / api reference / latest / document


eZ Components latest

Document: ezcDocumentRstXhtmlVisitor

[ Tutorial ] [ Conversion ] [ Styles ] [ Class tree ] [ Element index ] [ ChangeLog ] [ Credits ]

Class: ezcDocumentRstXhtmlVisitor

HTML visitor for the RST AST. [source]

Parents

ezcDocumentRstVisitor
   |
   --ezcDocumentRstXhtmlVisitor

Descendents

Child Class Description
ezcDocumentRstXhtmlBodyVisitor HTML visitor for the RST AST, which only produces contents to be embedded somewhere into the body of an existing HTML document.

Inherited Constants

From ezcDocumentRstVisitor:
ezcDocumentRstVisitor::DUBLICATE    Duplicate reference target. Will throw an error on use.
ezcDocumentRstVisitor::UNUSED    Unused reference target
ezcDocumentRstVisitor::USED    Used reference target

Member Variables

protected array $complexVisitMapping = array(
'ezcDocumentRstSectionNode' => 'visitSection',
'ezcDocumentRstTextLineNode' => 'visitText',
'ezcDocumentRstMarkupInterpretedTextNode' => 'visitInterpretedTextNode',
'ezcDocumentRstExternalReferenceNode' => 'visitExternalReference',
'ezcDocumentRstMarkupSubstitutionNode' => 'visitSubstitutionReference',
'ezcDocumentRstTargetNode' => 'visitInlineTarget',
'ezcDocumentRstAnonymousLinkNode' => 'visitAnonymousReference',
'ezcDocumentRstBlockquoteNode' => 'visitBlockquote',
'ezcDocumentRstBulletListListNode' => 'visitBulletList',
'ezcDocumentRstEnumeratedListListNode' => 'visitEnumeratedList',
'ezcDocumentRstReferenceNode' => 'visitInternalFootnoteReference',
'ezcDocumentRstLineBlockNode' => 'visitLineBlock',
'ezcDocumentRstLineBlockLineNode' => 'visitLineBlockLine',
'ezcDocumentRstLiteralNode' => 'visitText',
'ezcDocumentRstCommentNode' => 'visitComment',
'ezcDocumentRstDefinitionListNode' => 'visitDefinitionListItem',
'ezcDocumentRstTableCellNode' => 'visitTableCell',
'ezcDocumentRstFieldListNode' => 'visitFieldListItem',
'ezcDocumentRstDirectiveNode' => 'visitDirective',
)

Mapping of class names to internal visitors for the respective nodes.
protected int $depth = 0
Current depth in document.
protected DOMDocument $document
DOM document
protected DOMElement $head
Reference to head node
protected ezcDocumentHtmlConverterOptions $options
HTML rendering options
protected array $simpleVisitMapping = array(
'ezcDocumentRstParagraphNode' => 'p',
'ezcDocumentRstMarkupEmphasisNode' => 'em',
'ezcDocumentRstMarkupStrongEmphasisNode' => 'strong',
'ezcDocumentRstMarkupInlineLiteralNode' => 'code',
'ezcDocumentRstBulletListNode' => 'li',
'ezcDocumentRstEnumeratedListNode' => 'li',
'ezcDocumentRstLiteralBlockNode' => 'pre',
'ezcDocumentRstTransitionNode' => 'hr',
'ezcDocumentRstDefinitionListListNode' => 'dl',
'ezcDocumentRstTableNode' => 'table',
'ezcDocumentRstTableHeadNode' => 'thead',
'ezcDocumentRstTableBodyNode' => 'tbody',
'ezcDocumentRstTableRowNode' => 'tr',
/*
'ezcDocumentRstMarkupInlineLiteralNode' => 'literal',
*/
)

Direct mapping of AST node class names to docbook element names.
protected array $skipNodes = array(
'ezcDocumentRstNamedReferenceNode',
'ezcDocumentRstAnonymousReferenceNode',
'ezcDocumentRstSubstitutionNode',
'ezcDocumentRstFootnoteNode',
)

Array with nodes, which can be ignored during the transformation process, they only provide additional information during preprocessing.

Inherited Member Variables

From ezcDocumentRstVisitor:
protected  ezcDocumentRstVisitor::$anonymousReferenceCounter
protected  ezcDocumentRstVisitor::$anonymousReferences
protected  ezcDocumentRstVisitor::$ast
protected  ezcDocumentRstVisitor::$errors
protected  ezcDocumentRstVisitor::$footnoteCounter
protected  ezcDocumentRstVisitor::$footnotes
protected  ezcDocumentRstVisitor::$footnoteSymbols
protected  ezcDocumentRstVisitor::$namedExternalReferences
protected  ezcDocumentRstVisitor::$path
protected  ezcDocumentRstVisitor::$referenceCounter
protected  ezcDocumentRstVisitor::$references
protected  ezcDocumentRstVisitor::$rst
protected  ezcDocumentRstVisitor::$substitutions
protected  ezcDocumentRstVisitor::$usedIDs

Method Summary

public void __construct( $document, $path )
Create visitor from RST document handler.
protected void addStylesheets( $head )
Add stylesheets to header
public string escapeUrl( $url )
Escape all special characters in URIs
protected string generateFootnoteReferenceLink( $name, $number )
Generate footnote reference link
public mixed visit( $ast )
Docarate RST AST
protected void visitAnonymousReference( $root, $node )
Visit anonomyous reference node
protected void visitBlockquote( $root, $node )
Visit blockquotes
protected void visitBulletList( $root, $node )
Visit bullet lists
protected void visitComment( $root, $node )
Visit comment
protected void visitDefinitionListItem( $root, $node )
Visit definition list item
protected void visitDirective( $root, $node )
Visit directive
protected void visitEnumeratedList( $root, $node )
Visit enumerated lists
protected void visitExternalReference( $root, $node )
Visit external reference node
protected void visitFieldListItem( $root, $node )
Visit field list item
protected void visitFootnote( $root, $node )
Visit footnote
protected void visitInlineTarget( $root, $node )
Visit inline target node
protected void visitInternalFootnoteReference( $root, $node )
Visit internal reference node
protected void visitInterpretedTextNode( $root, $node )
Visit interpreted text node markup
protected void visitLineBlock( $root, $node )
Visit line block
protected void visitLineBlockLine( $root, $node )
Visit line block line
protected void visitNode( $root, $node )
Visit single AST node
protected void visitSection( $root, $node )
Visit section node
protected void visitTableCell( $root, $node )
Visit table cell

Inherited Methods

From ezcDocumentRstVisitor :
public void ezcDocumentRstVisitor::__construct()
Create visitor from RST document handler.
protected void ezcDocumentRstVisitor::addFootnote()
Add footnote
protected void ezcDocumentRstVisitor::aggregateListItems()
Aggregate list items
protected string ezcDocumentRstVisitor::calculateId()
Get a valid identifier string
protected string ezcDocumentRstVisitor::calculateUniqueId()
Calculate unique ID
protected bool ezcDocumentRstVisitor::compareListType()
Compare two list items
public string ezcDocumentRstVisitor::getAnonymousReferenceTarget()
Get anonymous reference target
public array ezcDocumentRstVisitor::getErrors()
Return list of errors occured during visiting the document.
public string ezcDocumentRstVisitor::getNamedExternalReference()
Return named external reference target
public ezcDocumentRstFootnoteNode ezcDocumentRstVisitor::hasFootnoteTarget()
Check for internal footnote reference target
public string ezcDocumentRstVisitor::hasReferenceTarget()
Check for internal reference target
public string ezcDocumentRstVisitor::nodeToString()
Transform a node tree into a string
protected void ezcDocumentRstVisitor::preProcessAst()
Pre process AST
protected void ezcDocumentRstVisitor::substitute()
Get substitution contents
protected string ezcDocumentRstVisitor::tokenListToString()
Get string from token list.
public void ezcDocumentRstVisitor::triggerError()
Trigger visitor error
public mixed ezcDocumentRstVisitor::visit()
Docarate RST AST
protected void ezcDocumentRstVisitor::visitChildren()
Visit children
protected void ezcDocumentRstVisitor::visitSubstitutionReference()
Visit substitution reference node
protected void ezcDocumentRstVisitor::visitText()
Visit text node

Methods

__construct

void __construct( ezcDocumentRst $document, string $path )
Create visitor from RST document handler.

Parameters

Name Type Description
$document ezcDocumentRst  
$path string  

Redefinition of

Method Description
ezcDocumentRstVisitor::__construct() Create visitor from RST document handler.

addStylesheets

void addStylesheets( $head )
Add stylesheets to header

Parameters

Name Type Description
$head DOMElement  

escapeUrl

string escapeUrl( string $url )
Escape all special characters in URIs

Parameters

Name Type Description
$url string  

generateFootnoteReferenceLink

string generateFootnoteReferenceLink( string $name, string $number )
Generate footnote reference link
Generate an internal target name out of the footnote name, which may contain special characters, which are not allowed for URL anchors and are converted to alphanumeric strings by this method.

Parameters

Name Type Description
$name string  
$number string  

visit

mixed visit( $ast )
Docarate RST AST
Visit the RST abstract syntax tree.

Parameters

Name Type Description
$ast ezcDocumentRstDocumentNode  

Redefinition of

Method Description
ezcDocumentRstVisitor::visit() Docarate RST AST

Redefined in descendants as

Method Description
ezcDocumentRstXhtmlBodyVisitor::visit() Docarate RST AST

visitAnonymousReference

void visitAnonymousReference( $root, ezcDocumentRstNode $node )
Visit anonomyous reference node

Parameters

Name Type Description
$root DOMNode  
$node ezcDocumentRstNode  

visitBlockquote

void visitBlockquote( $root, ezcDocumentRstNode $node )
Visit blockquotes

Parameters

Name Type Description
$root DOMNode  
$node ezcDocumentRstNode  

visitBulletList

void visitBulletList( $root, ezcDocumentRstNode $node )
Visit bullet lists

Parameters

Name Type Description
$root DOMNode  
$node ezcDocumentRstNode  

visitComment

void visitComment( $root, ezcDocumentRstNode $node )
Visit comment

Parameters

Name Type Description
$root DOMNode  
$node ezcDocumentRstNode  

visitDefinitionListItem

void visitDefinitionListItem( $root, ezcDocumentRstNode $node )
Visit definition list item

Parameters

Name Type Description
$root DOMNode  
$node ezcDocumentRstNode  

visitDirective

void visitDirective( $root, ezcDocumentRstNode $node )
Visit directive

Parameters

Name Type Description
$root DOMNode  
$node ezcDocumentRstNode  

visitEnumeratedList

void visitEnumeratedList( $root, ezcDocumentRstNode $node )
Visit enumerated lists

Parameters

Name Type Description
$root DOMNode  
$node ezcDocumentRstNode  

visitExternalReference

void visitExternalReference( $root, ezcDocumentRstNode $node )
Visit external reference node

Parameters

Name Type Description
$root DOMNode  
$node ezcDocumentRstNode  

visitFieldListItem

void visitFieldListItem( $root, ezcDocumentRstNode $node )
Visit field list item

Parameters

Name Type Description
$root DOMNode  
$node ezcDocumentRstNode  

Redefined in descendants as

Method Description
ezcDocumentRstXhtmlBodyVisitor::visitFieldListItem() Visit field list item

visitFootnote

void visitFootnote( $root, ezcDocumentRstNode $node )
Visit footnote

Parameters

Name Type Description
$root DOMNode  
$node ezcDocumentRstNode  

visitInlineTarget

void visitInlineTarget( $root, ezcDocumentRstNode $node )
Visit inline target node

Parameters

Name Type Description
$root DOMNode  
$node ezcDocumentRstNode  

visitInternalFootnoteReference

void visitInternalFootnoteReference( $root, ezcDocumentRstNode $node )
Visit internal reference node

Parameters

Name Type Description
$root DOMNode  
$node ezcDocumentRstNode  

visitInterpretedTextNode

void visitInterpretedTextNode( $root, ezcDocumentRstNode $node )
Visit interpreted text node markup

Parameters

Name Type Description
$root DOMNode  
$node ezcDocumentRstNode  

visitLineBlock

void visitLineBlock( $root, ezcDocumentRstNode $node )
Visit line block

Parameters

Name Type Description
$root DOMNode  
$node ezcDocumentRstNode  

visitLineBlockLine

void visitLineBlockLine( $root, ezcDocumentRstNode $node )
Visit line block line

Parameters

Name Type Description
$root DOMNode  
$node ezcDocumentRstNode  

visitNode

void visitNode( $root, ezcDocumentRstNode $node )
Visit single AST node
Visit a single AST node, may be called for each node found anywhere as child. The current position in the DOMDocument is passed by a reference to the current DOMNode, which is operated on.

Parameters

Name Type Description
$root DOMNode  
$node ezcDocumentRstNode  

visitSection

void visitSection( $root, ezcDocumentRstNode $node )
Visit section node

Parameters

Name Type Description
$root DOMNode  
$node ezcDocumentRstNode  

Redefined in descendants as

Method Description
ezcDocumentRstXhtmlBodyVisitor::visitSection() Visit section node

visitTableCell

void visitTableCell( $root, ezcDocumentRstNode $node )
Visit table cell

Parameters

Name Type Description
$root DOMNode  
$node ezcDocumentRstNode  

Last updated: Mon, 21 Dec 2009