public function __invoke($content, $groupIdent, $template, $contentstyles, array $specified = null) { $this->setTemplate($template); $row = $this->getTemplateProperty('row', 'element'); $factory = new HtmlElements(new FactoryElement()); $factory->setEncloseTag($row); $factory->setAttributes(false, $this->getTemplateProperty('row', 'attr')); $grid = $this->getTemplateProperty('grid', 'element'); $attr = $this->getTemplateProperty('grid', 'attr'); $i = 0; foreach ($content as $row) { if ($groupIdent === $row->webContentgroup) { $factory->setContentTag($grid); $factory->setTagAttributtes(false, $attr, $i); if (null === $this->inner) { $factory->setHtmlContent($this->view->contribution($row->webContent, $contentstyles)); } else { $inner = $this->getTemplateProperty('inner', 'element'); $innerAttr = $this->getTemplateProperty('inner', 'attr'); $factory->setHtmlContent($this->view->contentelement($inner, $this->view->contribution($row->webContent, $contentstyles), $innerAttr)); } $i++; } } $this->unsetProperties(); return $factory->display(); }
/** * * @param array $content * @param array $template * @param unknown $medias * @param unknown $widgets * @param array $specified * @return Ambigous <string, multitype:> */ public function __invoke($content, $groupIdent, $template, $contentstyles, array $specified = null) { $this->setTemplate($template); /* $html = ''; foreach ($content as $row) { if ($groupIdent === $row->webContentgroup) { $html .= $row->webContentgroup; $html .= $row->webContent->content; } } return $html;*/ $number = $this->grids / $this->countArrayById($content, $groupIdent); $i = 0; $factory = new HtmlElements(new FactoryElement()); $factory->setEncloseTag($this->row); $factory->setAttributes(false, $this->attribute); foreach ($content as $row) { if ($groupIdent === $row->webContentgroup) { if (isset($row->groupElement) && strlen($row->groupElement) > 0) { $element = $row->groupElement; if (isset($row->groupElementAttribute) && strlen($row->groupElementAttribute) > 0) { $this->auto = true; $attribute = $row->groupElementAttribute; } else { $attribute = $this->getReplaceStdAttribute($i, $number); } } else { if (isset($this->grid[$i])) { $element = $this->grid[$i]; } else { $element = $this->grid[0]; } $attribute = $this->getReplaceStdAttribute($i, $number); } $factory->setContentTag($element); $factory->setTagAttributtes(false, $attribute, $i); $contribution = $this->view->contribution($row->webContent, $contentstyles); if (!empty($this->inner)) { $contribution = $this->deployRow($this->inner, $contribution); } $factory->setHtmlContent($contribution); $i++; } } $this->unsetProperties(); return $factory->display(); }