File: D:/HostingSpaces/SBogers10/csb.komma.pro/app/Products/ProductRoutes.php
<?php
namespace App\Products;
use App\Pages\Kms\PageController as KmsPageController;
use App\Products\Models\Product;
use Illuminate\Support\Facades\Route;
use App\Products\Kms\ProductController as KmsProductController;
final class ProductRoutes
{
/**
* Route that are resolved from the Alias route to Rest Route by the AliasMiddleware.
* Through the controller the models will be bind by Implicit Route Model Binding,
* so no need to add Route::model in here.
*/
public static function web(){
Route::resource('products', ProductController::class, [
'only' => [
'index',
'show'
]
]);
}
/**
* Routes that are used for and within the KMS
* Will be prefixed with 'kms' by the Route::group in the RouteResolver
*
* Note: Within the group we use the Explicit Route Model Binding to point to a Product
* This is because we use a global controller to resolve the model
*/
public static function kms(){
Route::model('product', Product::class); //Explicit route model binding
Route::resource('products', KmsProductController::class);
Route::get('api/products', KmsProductController::class.'@getStructureAsJson');
Route::post('api/products', KmsProductController::class.'@setStructureAsJson');
}
}