diff --git a/app/Http/Controllers/Admin/CreateNewCustomField.php b/app/Http/Controllers/Admin/CreateNewCustomField.php new file mode 100644 index 00000000..7222df17 --- /dev/null +++ b/app/Http/Controllers/Admin/CreateNewCustomField.php @@ -0,0 +1,19 @@ + $types]); + } + + public function postNew(NewCustomFieldRequest $request) + { + } +} diff --git a/app/Http/Requests/NewCustomFieldRequest.php b/app/Http/Requests/NewCustomFieldRequest.php new file mode 100644 index 00000000..eaca2ff6 --- /dev/null +++ b/app/Http/Requests/NewCustomFieldRequest.php @@ -0,0 +1,21 @@ + 'required', + 'type' => 'required|exists:custom_field_types', + 'minLength' => 'numeric|min:0', + 'maxLength' => 'numeric|mix:0' + ]; + } +} diff --git a/app/Http/routes.php b/app/Http/routes.php index 5d47f6a0..43597ce6 100644 --- a/app/Http/routes.php +++ b/app/Http/routes.php @@ -48,11 +48,20 @@ Route::group([ Route::get('users/overview/{state?}', 'UsersOverview@getOverview') ->name('users.overview'); - // custom fields // ------------------------------ - Route::get('customfields/overview', 'CustomFieldsOverview@getOverview')->name('customfields.overview'); + // list of all custom fields + Route::get('customfields/overview', 'CustomFieldsOverview@getOverview') + ->name('customfields.overview'); + + // form for adding new custom field + Route::get('customfields/new', 'CreateNewCustomField@getNew') + ->name('customfields.new'); + + // form for adding new custom field + Route::post('customfields/new', 'CreateNewCustomField@postNew') + ->name('customfields.newPost'); // logout method Route::get('logout', function () { diff --git a/app/Providers/AdminMenusProvider.php b/app/Providers/AdminMenusProvider.php index e8191c67..6328db93 100644 --- a/app/Providers/AdminMenusProvider.php +++ b/app/Providers/AdminMenusProvider.php @@ -33,7 +33,8 @@ class AdminMenusProvider extends ServiceProvider }, 20, ['icon' => 'fa fa-users']); $menu->dropdown(trans('admin/mainMenu.customFields'), function ($sub) { - $sub->route('customfields.overview', trans('admin/mainMenu/customFieldsOverview'), [], 50, ['icon' => 'fa code-fork']); + $sub->route('customfields.new', trans('admin/mainMenu.customFieldsNew'), [], 10, ['icon' => 'fa fa-code']); + $sub->route('customfields.overview', trans('admin/mainMenu.customFieldsOverview'), [], 50, ['icon' => 'fa fa-code-fork']); }, 30, ['icon' => 'fa fa-code']); $menu->url('#', trans('admin/mainMenu.settings'), 50, ['icon' => 'fa fa-gear']); diff --git a/resources/lang/en/admin/customFields.php b/resources/lang/en/admin/customFields.php index 1f456415..c385ebd2 100644 --- a/resources/lang/en/admin/customFields.php +++ b/resources/lang/en/admin/customFields.php @@ -1,7 +1,17 @@ 'List of all custom fields', - 'noFields' => 'No custom fields defined.', - 'users' => 'Custom fields for user', - 'content' => 'Custom fields for content page', + 'overview' => 'List of all custom fields', + 'new' => 'New custom field', + 'noFields' => 'No custom fields defined.', + 'users' => 'Custom fields for user', + 'content' => 'Custom fields for content page', + 'name' => 'Name', + 'description' => 'Description', + 'type' => 'Type of custom field', + 'required' => 'Is field required?', + 'defaultValue' => 'Default value', + 'regExp' => 'Match only this regular expression', + 'minLength' => 'Minimum length', + 'maxLength' => 'Maximum length', + 'createNew' => 'Create new field' ]; \ No newline at end of file diff --git a/resources/lang/en/admin/mainMenu.php b/resources/lang/en/admin/mainMenu.php index eb19d24b..69a371bb 100644 --- a/resources/lang/en/admin/mainMenu.php +++ b/resources/lang/en/admin/mainMenu.php @@ -7,6 +7,7 @@ return [ 'usersOverview' => 'Overview', 'userDetail' => 'Detail', 'customFields' => 'Custom fields', - 'customFieldsOverview' => 'Overvview', + 'customFieldsOverview' => 'Overview', + 'customFieldsNew' => 'New field', 'settings' => 'Settings' ]; \ No newline at end of file diff --git a/resources/views/admin/customFields/new.blade.php b/resources/views/admin/customFields/new.blade.php new file mode 100644 index 00000000..16632fcf --- /dev/null +++ b/resources/views/admin/customFields/new.blade.php @@ -0,0 +1,15 @@ +@extends('admin.layout') + +@section('pageName', @trans('admin/customFields.new')) + +@section('content') + +