/** * @param InputElement $element * @return string */ protected function generateFormBuilderChain(InputElement $element) { $parts = array(); $data = $element->toArray(); $parts[] = sprintf('%s(\'%s\')', $element->getType(), $element->getName()); unset($data['type']); unset($data['name']); foreach ($data as $name => $value) { if (!$value) { continue; } if (is_numeric($value)) { $part = sprintf('%s(%s)', $name, $value); } else { $part = sprintf('%s(\'%s\')', $name, $value); } $parts[] = $part; } return implode('->', $parts) . ';'; }
/** * * @param type $name * @param type $element */ public function postAddElement($name, InputElement $element) { $options = $element->getOptions(); $type = $element->getType(); switch ($type) { case 'text': $this->column($name, 'string'); break; case 'textarea': $this->column($name, 'text'); break; case 'checkbox': case 'percent': case 'integer': $this->column($name, 'integer'); break; case 'select': if ($this->hasRule($name, 'integer')) { $this->column($name, 'integer'); } else { $this->column($name, 'string'); } break; case 'modelSelect': $this->column($name, 'integer'); break; } }