/** * Prepares the form widget view data */ public function prepareVars() { $fields = []; if ($this->model->id) { $template = Template::find($this->model->id); if ($template->field->count()) { $fields = $template->field()->orderBy('bm_template_field.ordering')->get()->transform(function ($item) { return $item->id; })->toArray(); } } $this->vars['name'] = $this->formField->getName(); $this->vars['value'] = Field::whereNotIn('id', $fields)->orderBy('label')->get(); $this->vars['field'] = Field::whereIn('id', $fields)->get(); $this->vars['fields'] = $fields; $this->vars['model'] = $this->model; }