Einchecken des OnlineStands
This commit is contained in:
60
.classes/generic/renderSpecialContentClass.php
Normal file
60
.classes/generic/renderSpecialContentClass.php
Normal file
@@ -0,0 +1,60 @@
|
||||
<?php
|
||||
|
||||
class renderSpecialContentClass extends renderClass_abstract
|
||||
{
|
||||
public function createSpecialContent ( $id , $popupData , $type )
|
||||
{
|
||||
$html = file_get_contents ( $this -> _pathTpl . $this -> _layout . '/tpl_' . $this -> _template . '_' . $id . '.php' );
|
||||
$html = str_replace ( $this -> _renderSearch , $this -> _renderReplace , $html );
|
||||
$subTpl = new DOMDocument ( );
|
||||
$subTpl -> preserveWhitespace = false;
|
||||
$subTpl -> formatOutput = true;
|
||||
$subTpl -> loadHTML ( $html );
|
||||
|
||||
$xpath = new DOMXpath ( $subTpl );
|
||||
$subCont = $xpath -> query ( ".//*[contains(concat(' ', @class, ' '), ' " . $id . " ')]" ) -> item( 0 );
|
||||
|
||||
foreach ( $popupData as $singleData )
|
||||
{
|
||||
$tmp_node = $subCont -> firstChild -> cloneNode ( true );
|
||||
if ( isset ( $singleData[ 'id' ] ) )
|
||||
{
|
||||
$subCont -> setAttributeNode ( new DOMAttr ( 'id' , $type . '_' . $singleData[ 'id' ] ) );
|
||||
}
|
||||
|
||||
foreach ( $singleData as $key => $data )
|
||||
{
|
||||
$nodeList = $xpath -> query ( ".//*[contains(concat(' ', @class, ' '), ' " . $key . " ')]" , $tmp_node );
|
||||
if ( $nodeList -> length !== 0 )
|
||||
{
|
||||
|
||||
foreach ( $nodeList as $node )
|
||||
{
|
||||
switch ( $key )
|
||||
{
|
||||
case 'link' :
|
||||
$node -> setAttributeNode ( new DOMAttr ( 'href' , $data ) );
|
||||
break;
|
||||
|
||||
default :
|
||||
$node -> appendChild ( new DOMCdataSection ( $data ) );
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
$subCont -> appendChild ( $tmp_node );
|
||||
}
|
||||
|
||||
$subCont -> removeChild ( $subCont -> firstChild );
|
||||
|
||||
|
||||
$new_node = $this -> _tpl -> importNode ( $subCont , true );
|
||||
return $new_node;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
?>
|
||||
Reference in New Issue
Block a user