['theme:adminlte-be']],function() { Route::get('auth/{socialProvider}','Auth\SocialLoginController@redirectToProvider'); Route::get('auth/{socialProvider}/callback','Auth\SocialLoginController@handleProviderCallback'); Route::get('auth/{socialProvider}/link','Auth\SocialLoginController@link'); Route::post('auth/{socialProvider}/linkcomplete','Auth\SocialLoginController@linkcomplete'); }); // Generic Image Renderer - Render images that we dont have with a generic image Route::get('image/generic/{width}/{height}/{color}/{name?}','MediaController@image')->name('image'); // Our Admin Routes Route::group(['middleware'=>['theme:adminlte-be','auth','role:wholesaler'],'prefix'=>'a'],function() { Route::get('setup','AdminHomeController@setup'); Route::post('setup','AdminHomeController@setup_update'); Route::get('service/{o}','AdminHomeController@service'); Route::post('service/{o}','AdminHomeController@service_update'); Route::get('report/products','Wholesale\ReportController@products'); Route::get('payment/add','PaymentController@add'); //Route::get('accounting/connect','AccountingController@connect'); }); Route::get('admin/switch/stop','\Leenooks\Controllers\AdminController@user_switch_stop')->name('switch.user.start')->middleware('auth'); // Our Reseller Routes Route::group(['middleware'=>['theme:adminlte-be','auth','role:reseller'],'prefix'=>'r'],function() { Route::get('supplier/index','SuppliersController@index'); Route::get('supplier/create','SuppliersController@create'); Route::post('supplier/store','SuppliersController@store'); Route::get('switch/start/{id}','\Leenooks\Controllers\AdminController@user_switch_start')->name('switch.user.stop'); Route::match(['get','post'],'service/update/{o}','ServiceController@update') ->where('o','[0-9]+') ->middleware('can:update,o'); }); // Our User Routes Route::group(['middleware'=>['theme:adminlte-be','auth'],'prefix'=>'u'],function() { Route::get('home',[HomeController::class,'home']); Route::get('home/{o}',[HomeController::class,'home']) ->where('o','[0-9]+') ->middleware('can:view,o'); Route::get('account/{o}/invoice','User\AccountController@view_invoice_next') ->where('o','[0-9]+') ->middleware('can:view,o'); Route::post('checkout/pay','CheckoutController@pay'); Route::get('invoice/{o}',[HomeController::class,'invoice']) ->where('o','[0-9]+') ->middleware('can:view,o'); Route::get('invoice/{o}/pdf',[HomeController::class,'invoice_pdf']) ->where('o','[0-9]+') ->middleware('can:view,o'); Route::get('invoice/cart','CheckoutController@cart_invoice'); Route::get('invoice/cart/{o}','CheckoutController@cart_invoice') ->where('o','[0-9]+') ->middleware('can:view,o'); Route::get('service/{o}',[HomeController::class,'service']) ->where('o','[0-9]+') ->middleware('can:view,o'); Route::get('service/cancel/{o}','ServiceController@update') ->where('o','[0-9]+') ->middleware('can:update,o'); Route::get('service/progress/{o}/{status}','UserHomeController@service_progress') ->where('o','[0-9]+') ->middleware('can:progress,o,status'); }); // Doorman Code Routes Route::group(['middleware'=>['theme:adminlte-be'],'prefix'=>'u'],function() { Route::get('invoice/{o}/email/{code}','UserHomeController@invoice_pdf_email') ->where('o','[0-9]+') ->where('code','[0-9A-Z]{6}'); }); // Frontend Routes (Non-Authed Users) Route::group(['middleware'=>['theme:metronic-fe']],function() { Route::get('/',[WelcomeController::class,'home']); Route::get('order','OrderController@index'); Route::post('order','OrderController@submit'); }); Route::get('product_order/{o}','OrderController@product_order'); Route::get('product_info/{o}','OrderController@product_info'); Route::redirect('home','u/home'); Route::get('search','SearchController@search'); Route::get('pay/paypal/authorise','PaypalController@authorise'); Route::get('pay/paypal/cancel','PaypalController@cancel'); Route::get('pay/paypal/capture','PaypalController@capture'); // To access any routes protected by demo-mode. Route::demoAccess('uc-access');