From f65ecae24d90fd7154a51d48b56da1c2778be31d Mon Sep 17 00:00:00 2001 From: Vincent Vanwaelscappel Date: Thu, 29 Jul 2021 11:45:20 +0200 Subject: [PATCH] wip #4627 @1.5 --- src/app/Magic/Controllers/CubistMagicController.php | 3 +++ src/app/Magic/Fields/Field.php | 6 +++++- src/app/Magic/Models/CubistMagicAbstractModel.php | 10 +++++++++- src/app/Magic/Models/Translate.php | 9 +++++++-- src/resources/views/create.blade.php | 2 ++ src/resources/views/edit.blade.php | 2 ++ 6 files changed, 28 insertions(+), 4 deletions(-) diff --git a/src/app/Magic/Controllers/CubistMagicController.php b/src/app/Magic/Controllers/CubistMagicController.php index 971159a..b8196e0 100644 --- a/src/app/Magic/Controllers/CubistMagicController.php +++ b/src/app/Magic/Controllers/CubistMagicController.php @@ -76,6 +76,9 @@ class CubistMagicController extends CubistCrudController } } + if (!$model->isRevisionEnabled()) { + $this->revisionEnabled = false; + } $this->crud->setRoute(backpack_url($this->_routeURL)); $this->crud->setEntityNameStrings(__($this->_singular), __($this->_plural)); diff --git a/src/app/Magic/Fields/Field.php b/src/app/Magic/Fields/Field.php index 42caacd..12a9f4b 100644 --- a/src/app/Magic/Fields/Field.php +++ b/src/app/Magic/Fields/Field.php @@ -107,7 +107,11 @@ class Field implements \ArrayAccess public function getDatabaseType() { if ($this->getAttribute('translatable')) { - return 'text'; + if ($this->_databaseType === 'text') { + return 'longtext'; + } else { + return 'text'; + } } return $this->_databaseType; } diff --git a/src/app/Magic/Models/CubistMagicAbstractModel.php b/src/app/Magic/Models/CubistMagicAbstractModel.php index 2627e61..d4a3b18 100644 --- a/src/app/Magic/Models/CubistMagicAbstractModel.php +++ b/src/app/Magic/Models/CubistMagicAbstractModel.php @@ -45,7 +45,7 @@ class CubistMagicAbstractModel extends Model implements HasMedia addField as protected bunchAddField; } - protected static $_doctrineTypesMapping = ['int' => 'integer']; + protected static $_doctrineTypesMapping = ['int' => 'integer', 'longtext' => 'blob']; protected $connection = null; protected $primaryKey = 'id'; @@ -118,11 +118,14 @@ class CubistMagicAbstractModel extends Model implements HasMedia public function __construct(array $attributes = []) { $this->setup(); + parent::__construct($attributes); + } public function setup() { + $this->revisionEnabled = $this->_enableRevisions; if (null !== $this->connection) { $this->setConnection($this->connection); } @@ -391,6 +394,11 @@ class CubistMagicAbstractModel extends Model implements HasMedia return $res; } + public function isRevisionEnabled() + { + return $this->_enableRevisions; + } + protected function _replaceInCode($stub, $dest) { $singular = $this->getOption('singular', $this->getOption('name')); diff --git a/src/app/Magic/Models/Translate.php b/src/app/Magic/Models/Translate.php index ecab8b1..98af49d 100644 --- a/src/app/Magic/Models/Translate.php +++ b/src/app/Magic/Models/Translate.php @@ -81,8 +81,8 @@ class Translate extends CubistMagicTranslatableModel */ public function onBeforeUpdate($controller, $request) { - $this->saveLanguageFile($controller, $request); - parent::onBeforeUpdate($controller, $request); // TODO: Change the autogenerated stub + $this->saveLanguageFile(); + parent::onBeforeUpdate($controller, $request); } @@ -130,4 +130,9 @@ class Translate extends CubistMagicTranslatableModel return parent::_sortLocales($a, $b); } + + public function getKey() + { + return 1; + } } diff --git a/src/resources/views/create.blade.php b/src/resources/views/create.blade.php index e663852..9fc72e5 100644 --- a/src/resources/views/create.blade.php +++ b/src/resources/views/create.blade.php @@ -54,5 +54,7 @@ @include('cubist_back::form.shortcuts') + @stack('after_form') + @endsection diff --git a/src/resources/views/edit.blade.php b/src/resources/views/edit.blade.php index de54386..dffd5ad 100644 --- a/src/resources/views/edit.blade.php +++ b/src/resources/views/edit.blade.php @@ -93,5 +93,7 @@ @include('cubist_back::form.shortcuts') + + @stack('after_form') @endsection -- 2.39.5