<?php

// API routes  for product.

// Guard routes for product
Route::prefix('{guard}/product')->group(function () {
    Route::resource('product', 'ProductResourceController');
});

// Guard routes for category
Route::prefix('{guard}/product')->group(function () {
    Route::resource('category', 'CategoryResourceController');
});

// Guard routes for brand
Route::prefix('{guard}/product')->group(function () {
    Route::resource('brand', 'BrandResourceController');
});



// Public routes for product
Route::get('products/', 'ProductPublicController@index');
Route::get('product/{slug?}', 'ProductPublicController@show');

if (Trans::isMultilingual()) {
    Route::group(
        [
            'prefix' => '{trans}',
            'where'  => ['trans' => Trans::keys('|')],
        ],
        function () {
            // Guard routes for product
            Route::prefix('{guard}/product')->group(function () {
                Route::resource('product', 'ProductResourceController');
            });
            
            // Guard routes for category
            Route::prefix('{guard}/product')->group(function () {
                Route::resource('category', 'CategoryResourceController');
            });
            
            // Guard routes for brand
            Route::prefix('{guard}/product')->group(function () {
                Route::resource('brand', 'BrandResourceController');
            });
            
            

            // Public routes for product
            Route::get('products/', 'ProductPublicController@index');
            Route::get('product/{slug?}', 'ProductPublicController@show');
        }
    );
}