mirror of
https://github.com/DesignPatternsPHP/DesignPatternsPHP.git
synced 2025-07-30 19:50:12 +02:00
improving the render to show the tree with indentations
This commit is contained in:
@@ -32,7 +32,7 @@ class Form extends FormElement
|
||||
{
|
||||
$formCode = '';
|
||||
foreach ($this->_elements as $element) {
|
||||
$formCode .= $element->render();
|
||||
$formCode .= $element->render($indent + 1) . PHP_EOL;
|
||||
}
|
||||
|
||||
return $formCode;
|
||||
|
@@ -6,6 +6,6 @@ class InputElement extends FormElement
|
||||
{
|
||||
public function render($indent = 0)
|
||||
{
|
||||
return '<input type="text" />';
|
||||
return str_repeat(' ', $indent) . '<input type="text" />';
|
||||
}
|
||||
}
|
||||
|
@@ -6,6 +6,6 @@ class TextElement extends FormElement
|
||||
{
|
||||
public function render($indent = 0)
|
||||
{
|
||||
return 'this is a text element';
|
||||
return str_repeat(' ', $indent) . 'this is a text element';
|
||||
}
|
||||
}
|
||||
|
@@ -19,6 +19,11 @@ class FormTest extends \PHPUnit_Framework_TestCase
|
||||
$form = new Composite\Form();
|
||||
$form->addElement(new Composite\TextElement());
|
||||
$form->addElement(new Composite\InputElement());
|
||||
$embed = new Composite\Form();
|
||||
$embed->addElement(new Composite\TextElement());
|
||||
$embed->addElement(new Composite\InputElement());
|
||||
$form->addElement($embed); // here we have a tree !
|
||||
|
||||
echo $form->render();
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user