コード例 #1
0
 public function getFieldsubmissions()
 {
     if (!isset($this->fieldsubmissions)) {
         $fields = $this->form->getFields();
         foreach ($this->data as $submissionvalue) {
             if (isset($fields[$submissionvalue['field_id']])) {
                 $field = $fields[$submissionvalue['field_id']];
             } else {
                 //field might be deleted from form
                 $field = Field::create();
                 $field->setType($submissionvalue['type']);
             }
             $this->fieldsubmissions[$field->slug] = (new Fieldsubmission($field, $submissionvalue))->toFormattedArray();
         }
     }
     return $this->fieldsubmissions;
 }
コード例 #2
0
 /**
  * @Route("/edit")
  * @Request({"id"})
  */
 public function editAction($id = '')
 {
     $formmaker = App::module('formmaker');
     if (is_numeric($id)) {
         $field = Field::find($id);
     } else {
         $field = Field::create();
         $field->setType($id);
     }
     if (!$field) {
         App::abort(404, __('Field not found.'));
     }
     if (!($type = $formmaker->getType($field->type))) {
         App::abort(404, __('Type not found.'));
     }
     //check fixed value
     foreach (['multiple', 'required'] as $key) {
         if ($type[$key] != -1) {
             $field->set($key, $type[$key]);
         }
     }
     return ['field' => $field, 'type' => $type, 'roles' => array_values(Role::findAll())];
 }