]> _ Git - cubist_cms-back.git/commitdiff
wip #3753 @1
authorVincent Vanwaelscappel <vincent@cubedesigners.com>
Thu, 3 Dec 2020 16:23:00 +0000 (17:23 +0100)
committerVincent Vanwaelscappel <vincent@cubedesigners.com>
Thu, 3 Dec 2020 16:23:00 +0000 (17:23 +0100)
src/app/CubistCrudPanel.php
src/app/Http/Controllers/Operations/ShowOperation.php
src/app/Magic/Fields/Field.php
src/app/Magic/Fields/Hidden.php
src/app/Magic/Models/CubistMagicAbstractModel.php

index 049ca698ad6b2c9782e3bd455d01eb04bd169cf3..be6e03d318a2ae2cae3a493f73004f9eeda52e35 100644 (file)
@@ -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;
+    }
 }
index f032dc95509b4ae67ff4306794150d55c3a0520c..8dc98469394772c9c3dc8dbc939d38d84a4fafff 100644 (file)
@@ -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']);
index 92fbd3352b0cf26f36c3108b42739e5dd8b86d0e..b4bc028b7d167e17ea927c56da6ee9b5dc89410d 100644 (file)
@@ -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');
index 14fc7086b7016c12479ce1dc996899589cce8740..2e81e947e543980229c8d543249ba6caca766d65 100644 (file)
@@ -7,4 +7,5 @@ namespace Cubist\Backpack\Magic\Fields;
 class Hidden extends Field
 {
     protected $_adminType = 'hidden';
+    protected $_preview = false;
 }
index 2fad7cae59c68eed5a0a9f3ca6fae1a4afe49ffb..d87e6ea764025109a566966c30af9f07c6517f22 100644 (file)
@@ -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;