tags[] = '
';
$this->tags[] = '';
}
public function endIteration()
{
$this->tags[] = '';
$this->tags[] = '
';
}
public function beginChildren()
{
$this->tags[] = '';
$currentSet = $this->getSubIterator();
$state = $currentSet->getState() ? 'fulfilled' : (
$currentSet->isOptional() ? 'not-available' : 'missing'
);
$colSpanRequired = $this->hasSingleRequirements($this->getSubIterator($this->getDepth() - 1));
$this->tags[] = '';
$this->beginIteration();
}
public function endChildren()
{
$this->endIteration();
$this->tags[] = ' | ';
$this->tags[] = '
';
}
protected function hasSingleRequirements(RequirementSet $requirements)
{
$set = $requirements->getAll();
foreach ($set as $entry) {
if ($entry instanceof Requirement) {
return true;
}
}
return false;
}
public function render()
{
foreach ($this as $requirement) {
$this->tags[] = '';
$this->tags[] = '' . $requirement->getTitle() . ' | ';
$this->tags[] = '';
$descriptions = $requirement->getDescriptions();
if (count($descriptions) > 1) {
$this->tags[] = '';
foreach ($descriptions as $d) {
$this->tags[] = '- ' . $d . '
';
}
$this->tags[] = ' ';
} elseif (! empty($descriptions)) {
$this->tags[] = $descriptions[0];
}
$this->tags[] = ' | ';
$this->tags[] = '' . $requirement->getStateText() . ' | ';
$this->tags[] = '
';
}
return implode("\n", $this->tags);
}
public function __toString()
{
return $this->render();
}
}