/**
  * @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;
     }
 }