示例#1
0
 /**
  * @return string
  */
 public function buildForm()
 {
     $formFields = '';
     foreach ($this->getFormFields() as $field => $options) {
         $formBuilder = new FormBuilder();
         $formFields .= $formBuilder->field($this, $field, $options);
     }
     return $formFields;
 }
示例#2
0
 /**
  * @param $fieldName
  * @param ImageContract $imageModel
  * @param null $actualFieldName
  * @return string
  * @todo improve this and remove actualFieldName so we can relieve the problem with different configs..
  */
 public function getImageMetaFieldsHtml($fieldName, ImageContract $imageModel = null, $actualFieldName = null)
 {
     $formBuilder = new FormBuilder();
     $fields = $this->getImageMetaFields($fieldName);
     $html = '';
     if (is_null($actualFieldName)) {
         $actualFieldName = $fieldName;
     }
     if (is_null($imageModel)) {
         $imageModel = $this->getImageModel()->newInstance();
         $fileId = ':fileId:';
         $isNew = true;
     } else {
         $fileId = $imageModel->getKey();
         $isNew = false;
     }
     // Check for collisions
     $imageModel->checkMetaFieldCollision(array_keys($fields));
     $imageModel->setResourceModel($this);
     foreach ($fields as $metaFieldName => $options) {
         $new = $isNew ? '[new]' : '';
         $elementName = '_files' . $new . '[image][' . $actualFieldName . '][' . $fileId . '][meta][' . $metaFieldName . ']';
         $html .= $formBuilder->field($imageModel, $metaFieldName, $options, $elementName)->render();
     }
     return $html;
 }