/** * Fired after the entry form is saved. * * After the entry form is saved take the * entry and use it to populate the page * before it saves directly after. * * @param EntryFormBuilder $builder */ public function onSavedEntry(EntryFormBuilder $builder) { /* @var FormBuilder $form */ $form = $this->forms->get('file'); $file = $form->getFormEntry(); $entry = $builder->getFormEntry(); $file->entry_id = $entry->getId(); $file->entry_type = get_class($entry); }
/** * Handle the sections. * * @param EntryFormBuilder $builder */ public function handle(EntryFormBuilder $builder) { $type = $builder->getChildFormStream('type'); $link = $builder->getChildFormStream('link'); $builder->setSections(['type' => ['fields' => function () use($type) { return array_map(function ($slug) { return 'type_' . $slug; }, $type->getAssignmentFieldSlugs()); }], 'link' => ['fields' => function () use($link) { return array_map(function ($slug) { return 'link_' . $slug; }, $link->getAssignmentFieldSlugs()); }]]); }