/** * Render $writableBearer into html. * * This method is generally called via double-dispatch, as provided by Visitor\VisitableTrait. * * @param WritableBearerInterface $writableBearer * @return string */ public function visitWritableBearer(WritableBearerInterface $writableBearer) { $template = 'writable-bearer/' . $writableBearer->getType() . '.twig'; return $this->loadTemplate($template)->render(["id" => $writableBearer->getId(), "classes" => $writableBearer->getClasses(), "data" => $writableBearer->getData(), "writables" => $writableBearer->getWritables()]); }
/** * @param WritableBearerInterface $fieldBearer * @param integer $countBegin * @return void */ protected function suffixFieldBearerFields(WritableBearerInterface $fieldBearer, $countBegin = 0) { /** @var \Athens\Core\Field\FieldInterface $writable */ foreach (array_values($fieldBearer->getWritables()) as $count => $writable) { if ($writable instanceof FieldInterface) { $writable->addSuffix($countBegin + $count); } } }
/** * @return WritableInterface[] */ public function getWritables() { return $this->writableBearer->getWritables(); }