From 8d2dbf51f928cb6f6e3aa55a65d273d289c1702e Mon Sep 17 00:00:00 2001 From: Vincent Vanwaelscappel Date: Thu, 7 Jan 2021 15:52:46 +0100 Subject: [PATCH] wip #4174 @0.5 --- src/app/Magic/Fields/FolderTree.php | 45 +++++++++++++++++++++++++ src/app/Magic/Form.php | 28 +++++++++++++-- src/resources/views/form/form.blade.php | 15 +++++---- 3 files changed, 79 insertions(+), 9 deletions(-) create mode 100644 src/app/Magic/Fields/FolderTree.php diff --git a/src/app/Magic/Fields/FolderTree.php b/src/app/Magic/Fields/FolderTree.php new file mode 100644 index 0000000..12a1968 --- /dev/null +++ b/src/app/Magic/Fields/FolderTree.php @@ -0,0 +1,45 @@ +_root = $root; + } + + /** + * @return string + */ + public function getRoot(): string + { + return $this->_root; + } + + /** + * @return array + */ + public function getOptions(): array + { + $options = []; + + $iterator = \Cubist\Util\Files\Files::getRecursiveDirectoryIterator($this->getRoot()); + + foreach ($iterator as $item) { + /** @var $item \SplFileInfo */ + if ($item->isFile()) { + continue; + } + $options[$item->getFilename()] = $item->getFilename(); + } + return $options; + } +} diff --git a/src/app/Magic/Form.php b/src/app/Magic/Form.php index 7f744b2..1588b7d 100644 --- a/src/app/Magic/Form.php +++ b/src/app/Magic/Form.php @@ -4,6 +4,7 @@ namespace Cubist\Backpack\Magic; +use Cubist\Backpack\CubistBackpackServiceProvider; use Illuminate\Support\Facades\Http; class Form extends SubForm @@ -26,9 +27,9 @@ class Form extends SubForm * @return string */ - public function render() + public function render(callable $callback = null) { - return view('form.form', ['form' => $this]); + return view(CubistBackpackServiceProvider::NAMESPACE . '::form.form', ['form' => $this])->render($callback); } public function __toString() @@ -115,4 +116,27 @@ class Form extends SubForm { return $this->_title; } + + public function tabsEnabled() + { + return false; + } + + public function getTabs() + { + return []; + } + + public function fields() + { + return []; + } + + public function getAutoFocusOnFirstField(){ + return true; + } + + public function inlineErrorsEnabled(){ + return false; + } } diff --git a/src/resources/views/form/form.blade.php b/src/resources/views/form/form.blade.php index ea23659..4fa79ed 100644 --- a/src/resources/views/form/form.blade.php +++ b/src/resources/views/form/form.blade.php @@ -1,8 +1,9 @@ +@php + $crud=$form; + $action='create'; + $fields=$form->fields(); +@endphp +

{{$form->getTitle()}}

-
-
- @if($form->isCsrf()) - @csrf - @endif -
-
+ +@include('crud::form_content') -- 2.39.5