FEATURE: add possible values and custom field resource
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
<?php
|
||||
namespace App\Enumerations;
|
||||
|
||||
use App\Models\CustomFieldResource;
|
||||
|
||||
class CustomFieldResources extends BaseEnumeration
|
||||
{
|
||||
public static $items = [];
|
||||
|
||||
public static function init()
|
||||
{
|
||||
// load items from database
|
||||
$types = CustomFieldResource::all(['id', 'name']);
|
||||
|
||||
// push items into collection
|
||||
foreach ($types as $type) {
|
||||
self::push($type->id, $type->name);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
namespace App\Http\Controllers\Admin;
|
||||
|
||||
use App\Enumerations\CustomFieldResources;
|
||||
use App\Enumerations\CustomFieldTypes;
|
||||
use App\Http\Requests\NewCustomFieldRequest;
|
||||
use App\Models\CustomField;
|
||||
@@ -11,8 +12,12 @@ class CreateNewCustomField extends Controller
|
||||
public function getNew()
|
||||
{
|
||||
$types = CustomFieldTypes::getWithTranslations();
|
||||
$resources = CustomFieldResources::getWithTranslations();
|
||||
|
||||
return view('admin.customFields.new', ['types' => $types]);
|
||||
return view('admin.customFields.new', [
|
||||
'types' => $types,
|
||||
'resources' => $resources
|
||||
]);
|
||||
}
|
||||
|
||||
public function postNew(NewCustomFieldRequest $request)
|
||||
@@ -24,6 +29,7 @@ class CreateNewCustomField extends Controller
|
||||
|
||||
$customField->name = $request->name;
|
||||
$customField->type_id = $request->type;
|
||||
$customField->resource_id = $request->resource;
|
||||
$customField->required = $request->has('required');
|
||||
|
||||
// set non-mandatory fields
|
||||
@@ -32,6 +38,9 @@ class CreateNewCustomField extends Controller
|
||||
$customField->description = $request->description;
|
||||
}
|
||||
|
||||
if ($request->possibleValues)
|
||||
$customField->possible_values = $request->possibleValues;
|
||||
|
||||
if ($request->defaultValue) {
|
||||
$customField->default_value = $request->defaultValue;
|
||||
}
|
||||
|
||||
@@ -12,8 +12,9 @@ class NewCustomFieldRequest extends Request
|
||||
public function rules()
|
||||
{
|
||||
return [
|
||||
'name' => 'required',
|
||||
'type' => 'required|exists:custom_field_types,id',
|
||||
'name' => 'required',
|
||||
'type' => 'required|exists:custom_field_types,id',
|
||||
'resource' => 'required|exists:custom_field_resources,id',
|
||||
'minLength' => 'numeric|min:0',
|
||||
'maxLength' => 'numeric|min:0',
|
||||
];
|
||||
|
||||
@@ -15,7 +15,9 @@ class CustomField extends Model
|
||||
protected $fillable = [
|
||||
'name',
|
||||
'type_id',
|
||||
'resource_id',
|
||||
'description',
|
||||
'possible_values',
|
||||
'default_value',
|
||||
'regexp',
|
||||
'min_length',
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
<?php
|
||||
|
||||
namespace App\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
/**
|
||||
* Class CustomFieldResource
|
||||
*/
|
||||
class CustomFieldResource extends Model
|
||||
{
|
||||
|
||||
public $timestamps = false;
|
||||
|
||||
protected $fillable = [
|
||||
'name'
|
||||
];
|
||||
|
||||
protected $guarded = [];
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user