<?php

// API routes  for seller
Route::prefix('{guard}/seller')->group(function () {
    Route::get('seller/form/{element}', 'SellerAPIController@form');
    Route::resource('seller', 'SellerAPIController');
});

// Public routes for seller
Route::get('sellers/', 'SellerPublicController@index');
Route::get('sellers/{slug?}', 'SellerPublicController@show');

if (Trans::isMultilingual()) {
    Route::group(
        [
            'prefix' => '{trans}',
            'where'  => ['trans' => Trans::keys('|')],
        ],
        function () {
            // Guard routes for sellers
            Route::prefix('{guard}/seller')->group(function () {
                Route::get('seller/form/{element}', 'SellerAPIController@form');
                Route::apiResource('seller', 'SellerAPIController');
            });
            // Public routes for sellers
            Route::get('seller/Seller', 'SellerPublicController@getSeller');
        }
    );
}

// API routes  for category
Route::prefix('{guard}/seller')->group(function () {
    Route::get('category/form/{element}', 'CategoryAPIController@form');
    Route::resource('category', 'CategoryAPIController');
});

// Public routes for category
Route::get('sellers/', 'CategoryPublicController@index');
Route::get('sellers/{slug?}', 'CategoryPublicController@show');

if (Trans::isMultilingual()) {
    Route::group(
        [
            'prefix' => '{trans}',
            'where'  => ['trans' => Trans::keys('|')],
        ],
        function () {
            // Guard routes for sellers
            Route::prefix('{guard}/seller')->group(function () {
                Route::get('category/form/{element}', 'CategoryAPIController@form');
                Route::apiResource('category', 'CategoryAPIController');
            });
            // Public routes for sellers
            Route::get('seller/Category', 'CategoryPublicController@getCategory');
        }
    );
}