]> _ Git - cubist_cms-back.git/commitdiff
#2783
authorVincent Vanwaelscappel <vincent@cubedesigners.com>
Fri, 24 May 2019 10:03:01 +0000 (12:03 +0200)
committerVincent Vanwaelscappel <vincent@cubedesigners.com>
Fri, 24 May 2019 10:03:01 +0000 (12:03 +0200)
src/app/Magic/Controllers/CubistMagicController.php
src/app/Magic/Fields/CubistMagicField.php
src/app/Magic/Models/CubistMagicModelAbstract.php
src/app/Magic/Requests/CubistMagicRequest.php

index 3241d58377ce4ec2915607128213e2b78bde79e7..9e6d665879827b5096efa307936bf2a75ac05059 100644 (file)
@@ -18,6 +18,9 @@ class CubistMagicController extends CrudController
     protected $_plural;
     protected $_fields = [];
 
+    protected $_storeRequest;
+    protected $_updateRequest;
+
     public function setup()
     {
         if (!$this->_routeURL) {
@@ -46,13 +49,9 @@ class CubistMagicController extends CrudController
         foreach ($this->_fields as $field) {
             $this->addField($field);
         }
-
-
-        // add asterisk for fields that are required in ModelRequest
-        $this->crud->setRequiredFields(CubistMagicStoreRequest::class, 'create');
-        $this->crud->setRequiredFields(CubistMagicUpdateRequest::class, 'edit');
     }
 
+
     public function store(CubistMagicStoreRequest $request)
     {
         // your additional operations before save here
index 8a81d6e6bb9050c6a5edec429bd6e6ca09233865..49b1c5712e05088ed70c055c7de2e72ec7f35a2d 100644 (file)
@@ -10,6 +10,7 @@ class CubistMagicField
 {
     use CubistMagicAttribute;
     protected $_attributes;
+    protected $_rules = [];
 
     /**
      * @param $attributes
@@ -35,7 +36,7 @@ class CubistMagicField
 
     public function getDefaultAttributes()
     {
-        return ['type' => 'text', 'column' => false, 'form' => 'both'];
+        return ['type' => 'text', 'column' => false, 'form' => 'both', 'rules' => ''];
     }
 
     public function __construct($attributes)
@@ -44,6 +45,11 @@ class CubistMagicField
         $this->init();
     }
 
+    public function getRules()
+    {
+        return $this->getAttribute('rules', '');
+    }
+
     public function getDefinition()
     {
         return $this->_attributes;
index a3bbeb40523c27501b67d20f262c905cbf0f0838..291a4d565171b77005d9151f7be9737eff2e5d2f 100644 (file)
@@ -3,6 +3,7 @@
 
 namespace Cubist\Backpack\app\Magic\Models;
 
+use Backpack\CRUD\CrudTrait;
 use Cubist\Backpack\app\Magic\Fields\CubistMagicField;
 use Cubist\Backpack\app\Magic\Util;
 use Illuminate\Database\Eloquent\Model;
@@ -13,6 +14,7 @@ class CubistMagicModelAbstract extends Model
 {
 
     use CubistMagicAttribute;
+    use CrudTrait;
 
     /**
      * @var CubistMagicField[]
@@ -50,7 +52,9 @@ class CubistMagicModelAbstract extends Model
     {
         /** @var CubistMagicField $field */
         $field = CubistMagicField::getInstance($attributes);
-        $this->_fields[$field->getAttribute('name')] = $field;
+        $name = $field->getAttribute('name');
+        $this->_fields[$name] = $field;
+        $this->fillable[] = $name;
     }
 
     public function generateCode()
index d5c64d43342cd72daa15bf41905e310b571ebb9b..fe8cc5003b5d5d00f82269c2edc67e35019cf6d1 100644 (file)
@@ -7,6 +7,15 @@ use Illuminate\Foundation\Http\FormRequest;
 
 class CubistMagicRequest extends FormRequest
 {
+    /**
+     * CubistMagicRequest constructor.
+     */
+    public function __construct($controller, $operation)
+    {
+        $this->__construct();
+    }
+
+
     /**
      * Determine if the user is authorized to make this request.
      *
@@ -26,6 +35,7 @@ class CubistMagicRequest extends FormRequest
      */
     public function rules()
     {
+
         return [
             // 'name' => 'required|min:5|max:255'
         ];