diff --git a/Http/Controllers/Api/MenusController.php b/Http/Controllers/Api/MenusController.php new file mode 100644 index 0000000..67b7003 --- /dev/null +++ b/Http/Controllers/Api/MenusController.php @@ -0,0 +1,28 @@ + "Taxonomy", - "namespace" => "WebReinvent\\VaahCms\\Entities\\Taxonomy", + "namespace" => "WebReinvent\\VaahCms\\Models\\Taxonomy", "options" => TaxonomyType::getListInTreeFormat(), "filter_by" => 'vh_taxonomy_type_id', "add_url" => route('vh.backend')."#/vaah/manage/taxonomies/create", diff --git a/Models/ContentTypeBase.php b/Models/ContentTypeBase.php index 3e4d801..1342862 100644 --- a/Models/ContentTypeBase.php +++ b/Models/ContentTypeBase.php @@ -331,7 +331,6 @@ public static function getItemWithRelations($id) }]) ->withTrashed() ->first(); - $response['status'] = 'success'; $response['data'] = $item; diff --git a/Models/FieldType.php b/Models/FieldType.php new file mode 100644 index 0000000..cc6a5b5 --- /dev/null +++ b/Models/FieldType.php @@ -0,0 +1,111 @@ +format($date_time_format); + + } + //------------------------------------------------- + //------------------------------------------------- + public function setMetaAttribute($value) + { + if($value) + { + $this->attributes['meta'] = json_encode($value); + } else{ + $this->attributes['meta'] = null; + } + } + //------------------------------------------------- + public function getMetaAttribute($value) + { + if($value) + { + return json_decode($value); + } + return null; + } + //------------------------------------------------- + public function getTableColumns() { + return $this->getConnection()->getSchemaBuilder() + ->getColumnListing($this->getTable()); + } + //------------------------------------------------- + public function scopeExclude($query, $columns) + { + return $query->select( array_diff( $this->getTableColumns(),$columns) ); + } + //------------------------------------------------- + public function scopeIsPublished($query) + { + return $query->where( 'is_published', 1 ); + } + //------------------------------------------------- + public function createdByUser() + { + return $this->belongsTo(User::class, + 'created_by', 'id' + )->select('id', 'uuid', 'first_name', 'last_name', 'email'); + } + + //------------------------------------------------- + public function updatedByUser() + { + return $this->belongsTo(User::class, + 'updated_by', 'id' + )->select('id', 'uuid', 'first_name', 'last_name', 'email'); + } + //------------------------------------------------- + public function deletedByUser() + { + return $this->belongsTo(User::class, + 'deleted_by', 'id' + )->select('id', 'uuid', 'first_name', 'last_name', 'email'); + } + //------------------------------------------------- + //------------------------------------------------- + +} diff --git a/Models/FormGroup.php b/Models/FormGroup.php index 2aeb177..91053e7 100644 --- a/Models/FormGroup.php +++ b/Models/FormGroup.php @@ -205,7 +205,6 @@ public static function syncWithFormFields(FormGroup $group, $fields_array) ->first(); - if(isset($field['type']) && isset($field['type']['slug']) ) { $type = FieldType::where('slug', $field['type']['slug'])->first(); diff --git a/Resources/views/backend/pages/app.blade.php b/Resources/views/backend/pages/app.blade.php index fd9435f..e76c24a 100644 --- a/Resources/views/backend/pages/app.blade.php +++ b/Resources/views/backend/pages/app.blade.php @@ -15,7 +15,7 @@ @if(env('MODULE_CMS_ENV') == 'develop') @else - + @endif @endsection diff --git a/Routes/api.php b/Routes/api.php index 2be9861..6a074ea 100644 --- a/Routes/api.php +++ b/Routes/api.php @@ -29,3 +29,5 @@ function () { Route::any( '/contents/{singular_slug}/{content_slug}', 'ContentsController@getContentItem' ); //------------------------------------------------ }); + +include('api/api-routes-menus.php'); diff --git a/Routes/api/api-routes-menus.php b/Routes/api/api-routes-menus.php index e7ff350..daa0d20 100644 --- a/Routes/api/api-routes-menus.php +++ b/Routes/api/api-routes-menus.php @@ -6,64 +6,15 @@ Route::group( [ 'prefix' => 'cms/menus', - 'namespace' => 'Backend', + 'namespace' => 'Api', ], function () { - - /** - * Get Assets - */ - Route::get('/assets', 'MenusController@getAssets') - ->name('vh.backend.cms.api.menus.assets'); /** * Get List */ - Route::get('/', 'MenusController@getList') + Route::get('/{menu_slug}', 'MenusController@getList') ->name('vh.backend.cms.api.menus.list'); - /** - * Update List - */ - Route::match(['put', 'patch'], '/', 'MenusController@updateList') - ->name('vh.backend.cms.api.menus.list.update'); - /** - * Delete List - */ - Route::delete('/', 'MenusController@deleteList') - ->name('vh.backend.cms.api.menus.list.delete'); - - - /** - * Create Item - */ - Route::post('/', 'MenusController@createItem') - ->name('vh.backend.cms.api.menus.create'); - /** - * Get Item - */ - Route::get('/{id}', 'MenusController@getItem') - ->name('vh.backend.cms.api.menus.read'); - /** - * Update Item - */ - Route::match(['put', 'patch'], '/{id}', 'MenusController@updateItem') - ->name('vh.backend.cms.api.menus.update'); - /** - * Delete Item - */ - Route::delete('/{id}', 'MenusController@deleteItem') - ->name('vh.backend.cms.api.menus.delete'); - /** - * List Actions - */ - Route::any('/action/{action}', 'MenusController@listAction') - ->name('vh.backend.cms.api.menus.list.action'); - - /** - * Item actions - */ - Route::any('/{id}/action/{action}', 'MenusController@itemAction') - ->name('vh.backend.cms.api.menus.item.action'); diff --git a/Vue/pages/contenttypes/Contentstructure.vue b/Vue/pages/contenttypes/Contentstructure.vue index e863f37..f4d40d5 100644 --- a/Vue/pages/contenttypes/Contentstructure.vue +++ b/Vue/pages/contenttypes/Contentstructure.vue @@ -1,13 +1,14 @@ +