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[] = ''; } 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(); } }