Esempio n. 1
0
 /**
  * Actualiza los campos del formulario
  * @param $fieldsConfig
  */
 public function updateFormFields($fieldsConfig)
 {
     $savedFieldsIds = [];
     foreach ($fieldsConfig as $fieldConfig) {
         if (array_get($fieldConfig, 'id', null)) {
             $field = FormField::find(array_get($fieldConfig, 'id', null));
         } else {
             $field = new FormField();
         }
         $field->form_id = $this->id;
         $field->name = array_get($fieldConfig, 'name', '');
         $field->alias = array_get($fieldConfig, 'alias', '');
         $field->type = array_get($fieldConfig, 'type.type', '');
         $field->config = array_get($fieldConfig, 'config', null);
         $field->save();
         $savedFieldsIds[] = $field->id;
     }
     $this->fields()->whereNotIn('id', $savedFieldsIds)->delete();
 }