From: Vincent Vanwaelscappel Date: Thu, 3 Dec 2020 16:23:00 +0000 (+0100) Subject: wip #3753 @1 X-Git-Url: http://git.cubedesigners.com/?a=commitdiff_plain;h=677d29e07a3b74eda0cb27eb3b0f0fc04e495777;p=cubist_cms-back.git wip #3753 @1 --- diff --git a/src/app/CubistCrudPanel.php b/src/app/CubistCrudPanel.php index 049ca69..be6e03d 100644 --- a/src/app/CubistCrudPanel.php +++ b/src/app/CubistCrudPanel.php @@ -125,4 +125,22 @@ class CubistCrudPanel extends CrudPanel return false; } + + + /** + * @param $model CubistMagicAbstractModel + */ + public function setShowColumns($model) + { + $res = []; + $this->removeAllColumns(); + foreach ($model->getFields() as $field) { + if (!$field->getAttribute('preview')) { + continue; + } + $this->addColumn($field->getColumnData(true)); + } + + return $res; + } } diff --git a/src/app/Http/Controllers/Operations/ShowOperation.php b/src/app/Http/Controllers/Operations/ShowOperation.php index f032dc9..8dc9846 100644 --- a/src/app/Http/Controllers/Operations/ShowOperation.php +++ b/src/app/Http/Controllers/Operations/ShowOperation.php @@ -10,8 +10,6 @@ trait ShowOperation public function show($id) { - dd($id); - $this->crud->hasAccessOrFail('show'); // get entry ID from Request (makes sure its the last ID for nested resources) @@ -25,13 +23,11 @@ trait ShowOperation // set columns from db if ($setFromDb) { - $this->crud->setFromDb(); + $this->crud->setShowColumns($this->data['entry']); } // cycle through columns foreach ($this->crud->columns() as $key => $column) { - - debug($column); // remove any autoset relationship columns if (array_key_exists('model', $column) && array_key_exists('autoset', $column) && $column['autoset']) { $this->crud->removeColumn($column['key']); diff --git a/src/app/Magic/Fields/Field.php b/src/app/Magic/Fields/Field.php index 92fbd33..b4bc028 100644 --- a/src/app/Magic/Fields/Field.php +++ b/src/app/Magic/Fields/Field.php @@ -22,12 +22,14 @@ class Field implements \ArrayAccess protected $_columnType = 'text'; protected $_columnMoveAfter = false; protected $_columnFormat = null; + protected $_preview = true; protected $_adminType = 'text'; protected $_viewNamespace = 'crud::fields'; protected $_columnViewNamespace = 'crud::columns'; protected $_searchLogic = 'text'; + protected $_databaseType = 'text'; protected $_databaseUnique = false; protected $_databaseIndex = false; @@ -110,7 +112,7 @@ class Field implements \ArrayAccess return ['type' => $this->_adminType, 'view_namespace' => $this->_viewNamespace, 'column' => false, 'form' => 'both', 'rules' => '', 'fillable' => true, 'guarded' => false, 'hidden' => false, 'translatable' => $this->_translatable, 'migrateTranslatable' => $this->_migrateTranslatable, - 'column_type' => $this->_columnType, 'column_move_after' => $this->_columnMoveAfter, 'column_format' => $this->_columnFormat, + 'preview' => $this->_preview, 'column_type' => $this->_columnType, 'column_move_after' => $this->_columnMoveAfter, 'column_format' => $this->_columnFormat, 'default' => '', 'cast' => $this->_cast, 'column_view_namespace' => $this->_columnViewNamespace, 'searchLogic' => $this->_searchLogic, 'allow_null' => true, 'can' => $this->_can, 'auth' => $this->_auth, @@ -237,7 +239,8 @@ class Field implements \ArrayAccess if (null !== $this->getAttribute('can', null)) { if (!can($this->getAttribute('can'))) { - $this->setAttribute('column',false); + $this->setAttribute('preview', false); + $this->setAttribute('column', false); $this->setAttribute('auth', false); $this->setAttribute('type', 'authhidden'); $this->setAttribute('view_namespace', CubistBackpackServiceProvider::NAMESPACE . '::fields'); diff --git a/src/app/Magic/Fields/Hidden.php b/src/app/Magic/Fields/Hidden.php index 14fc708..2e81e94 100644 --- a/src/app/Magic/Fields/Hidden.php +++ b/src/app/Magic/Fields/Hidden.php @@ -7,4 +7,5 @@ namespace Cubist\Backpack\Magic\Fields; class Hidden extends Field { protected $_adminType = 'hidden'; + protected $_preview = false; } diff --git a/src/app/Magic/Models/CubistMagicAbstractModel.php b/src/app/Magic/Models/CubistMagicAbstractModel.php index 2fad7ca..d87e6ea 100644 --- a/src/app/Magic/Models/CubistMagicAbstractModel.php +++ b/src/app/Magic/Models/CubistMagicAbstractModel.php @@ -8,7 +8,6 @@ use Backpack\CRUD\app\Http\Controllers\Operations\CloneOperation; use Backpack\CRUD\app\Http\Controllers\Operations\CreateOperation; use Backpack\CRUD\app\Http\Controllers\Operations\DeleteOperation; use Backpack\CRUD\app\Http\Controllers\Operations\UpdateOperation; -use Cubist\Backpack\CubistCrudPanel; use Cubist\Backpack\Http\Controllers\Operations\BulkPublishOperation; use Backpack\ReviseOperation\ReviseOperation; use Backpack\CRUD\app\Library\CrudPanel\CrudPanel;