Merge pull request #5204 from apoorvpal01/master

added new laravel 8 style routes to all packages
This commit is contained in:
Glenn Hermans 2021-10-08 08:39:48 +02:00 committed by GitHub
commit 25afa856be
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 657 additions and 525 deletions

View File

@ -1,295 +1,348 @@
<?php <?php
// Controllers
use Webkul\API\Http\Controllers\Shop\AddressController;
use Webkul\API\Http\Controllers\Shop\CartController;
use Webkul\API\Http\Controllers\Shop\CategoryController;
use Webkul\API\Http\Controllers\Shop\CheckoutController;
use Webkul\API\Http\Controllers\Shop\CoreController;
use Webkul\API\Http\Controllers\Shop\CustomerController;
use Webkul\API\Http\Controllers\Shop\ForgotPasswordController;
use Webkul\API\Http\Controllers\Shop\InvoiceController;
use Webkul\API\Http\Controllers\Shop\OrderController;
use Webkul\API\Http\Controllers\Shop\ProductController;
use Webkul\API\Http\Controllers\Shop\ResourceController;
use Webkul\API\Http\Controllers\Shop\ReviewController;
use Webkul\API\Http\Controllers\Shop\SessionController;
use Webkul\API\Http\Controllers\Shop\TransactionController;
use Webkul\API\Http\Controllers\Shop\WishlistController;
// Resources
use Webkul\API\Http\Resources\Catalog\Attribute;
use Webkul\API\Http\Resources\Catalog\AttributeFamily;
use Webkul\API\Http\Resources\Catalog\Category;
use Webkul\API\Http\Resources\Catalog\ProductReview;
use Webkul\API\Http\Resources\Core\Channel;
use Webkul\API\Http\Resources\Core\Country;
use Webkul\API\Http\Resources\Core\Currency;
use Webkul\API\Http\Resources\Core\Locale;
use Webkul\API\Http\Resources\Core\Slider;
use Webkul\API\Http\Resources\Customer\Customer;
use Webkul\API\Http\Resources\Customer\CustomerAddress;
use Webkul\API\Http\Resources\Customer\Wishlist;
use Webkul\API\Http\Resources\Sales\Invoice;
use Webkul\API\Http\Resources\Sales\Order;
use Webkul\API\Http\Resources\Sales\OrderTransaction;
use Webkul\API\Http\Resources\Sales\Shipment;
// Repositories
use Webkul\Attribute\Repositories\AttributeRepository;
use Webkul\Attribute\Repositories\AttributeFamilyRepository;
use Webkul\Category\Repositories\CategoryRepository;
use Webkul\Core\Repositories\ChannelRepository;
use Webkul\Core\Repositories\CountryRepository;
use Webkul\Core\Repositories\CurrencyRepository;
use Webkul\Core\Repositories\LocaleRepository;
use Webkul\Core\Repositories\SliderRepository;
use Webkul\Customer\Repositories\CustomerRepository;
use Webkul\Customer\Repositories\CustomerAddressRepository;
use Webkul\Customer\Repositories\WishlistRepository;
use Webkul\Product\Repositories\ProductReviewRepository;
use Webkul\Sales\Repositories\InvoiceRepository;
use Webkul\Sales\Repositories\OrderRepository;
use Webkul\Sales\Repositories\OrderTransactionRepository;
use Webkul\Sales\Repositories\ShipmentRepository;
Route::group(['prefix' => 'api'], function ($router) { Route::group(['prefix' => 'api'], function ($router) {
Route::group(['namespace' => 'Webkul\API\Http\Controllers\Shop', 'middleware' => ['locale', 'theme', 'currency']], function ($router) { Route::group(['middleware' => ['locale', 'theme', 'currency']], function ($router) {
//Currency and Locale switcher //Currency and Locale switcher
Route::get('switch-currency', 'CoreController@switchCurrency'); Route::get('switch-currency', [CoreController::class, 'switchCurrency']);
Route::get('switch-locale', 'CoreController@switchLocale'); Route::get('switch-locale', [CoreController::class, 'switchLocale']);
//Category routes //Category routes
Route::get('categories', 'ResourceController@index')->defaults('_config', [ Route::get('categories', [ResourceController::class, 'index'])->defaults('_config', [
'repository' => 'Webkul\Category\Repositories\CategoryRepository', 'repository' => CategoryRepository::class,
'resource' => 'Webkul\API\Http\Resources\Catalog\Category' 'resource' => Category::class,
]); ]);
Route::get('descendant-categories', 'CategoryController@index'); Route::get('descendant-categories', [CategoryController::class, 'index']);
Route::get('categories/{id}', 'ResourceController@get')->defaults('_config', [ Route::get('categories/{id}', [ResourceController::class, 'get'])->defaults('_config', [
'repository' => 'Webkul\Category\Repositories\CategoryRepository', 'repository' => CategoryRepository::class,
'resource' => 'Webkul\API\Http\Resources\Catalog\Category' 'resource' => Category::class,
]); ]);
//Attribute routes //Attribute routes
Route::get('attributes', 'ResourceController@index')->defaults('_config', [ Route::get('attributes', [ResourceController::class, 'index'])->defaults('_config', [
'repository' => 'Webkul\Attribute\Repositories\AttributeRepository', 'repository' => AttributeRepository::class,
'resource' => 'Webkul\API\Http\Resources\Catalog\Attribute' 'resource' => Attribute::class,
]); ]);
Route::get('attributes/{id}', 'ResourceController@get')->defaults('_config', [ Route::get('attributes/{id}', [ResourceController::class, 'get'])->defaults('_config', [
'repository' => 'Webkul\Attribute\Repositories\AttributeRepository', 'repository' => AttributeRepository::class,
'resource' => 'Webkul\API\Http\Resources\Catalog\Attribute' 'resource' => Attribute::class,
]); ]);
//AttributeFamily routes //AttributeFamily routes
Route::get('families', 'ResourceController@index')->defaults('_config', [ Route::get('families', [ResourceController::class, 'index'])->defaults('_config', [
'repository' => 'Webkul\Attribute\Repositories\AttributeFamilyRepository', 'repository' => AttributeFamilyRepository::class,
'resource' => 'Webkul\API\Http\Resources\Catalog\AttributeFamily' 'resource' => AttributeFamily::class,
]); ]);
Route::get('families/{id}', 'ResourceController@get')->defaults('_config', [ Route::get('families/{id}', [ResourceController::class, 'get'])->defaults('_config', [
'repository' => 'Webkul\Attribute\Repositories\AttributeFamilyRepository', 'repository' => AttributeFamilyRepository::class,
'resource' => 'Webkul\API\Http\Resources\Catalog\AttributeFamily' 'resource' => AttributeFamily::class,
]); ]);
//Product routes //Product routes
Route::get('products', 'ProductController@index'); Route::get('products', [ProductController::class, 'index']);
Route::get('products/{id}', 'ProductController@get'); Route::get('products/{id}', [ProductController::class, 'get']);
Route::get('product-additional-information/{id}', 'ProductController@additionalInformation'); Route::get('product-additional-information/{id}', [ProductController::class, 'additionalInformation']);
Route::get('product-configurable-config/{id}', 'ProductController@configurableConfig'); Route::get('product-configurable-config/{id}', [ProductController::class, 'configurableConfig']);
//Product Review routes //Product Review routes
Route::get('reviews', 'ResourceController@index')->defaults('_config', [ Route::get('reviews', [ResourceController::class, 'index'])->defaults('_config', [
'repository' => 'Webkul\Product\Repositories\ProductReviewRepository', 'repository' => ProductReviewRepository::class,
'resource' => 'Webkul\API\Http\Resources\Catalog\ProductReview' 'resource' => ProductReview::class,
]); ]);
Route::get('reviews/{id}', 'ResourceController@get')->defaults('_config', [ Route::get('reviews/{id}', [ResourceController::class, 'get'])->defaults('_config', [
'repository' => 'Webkul\Product\Repositories\ProductReviewRepository', 'repository' => ProductReviewRepository::class,
'resource' => 'Webkul\API\Http\Resources\Catalog\ProductReview' 'resource' => ProductReview::class,
]); ]);
Route::post('reviews/{id}/create', 'ReviewController@store'); Route::post('reviews/{id}/create', [ReviewController::class, 'store']);
Route::delete('reviews/{id}', 'ResourceController@destroy')->defaults('_config', [ Route::delete('reviews/{id}', [ResourceController::class, 'destroy'])->defaults('_config', [
'repository' => 'Webkul\Product\Repositories\ProductReviewRepository', 'repository' => ProductReviewRepository::class,
'resource' => 'Webkul\API\Http\Resources\Catalog\ProductReview', 'resource' => ProductReview::class,
'authorization_required' => true 'authorization_required' => true
]); ]);
//Channel routes //Channel routes
Route::get('channels', 'ResourceController@index')->defaults('_config', [ Route::get('channels', [ResourceController::class, 'index'])->defaults('_config', [
'repository' => 'Webkul\Core\Repositories\ChannelRepository', 'repository' => ChannelRepository::class,
'resource' => 'Webkul\API\Http\Resources\Core\Channel' 'resource' => Channel::class,
]); ]);
Route::get('channels/{id}', 'ResourceController@get')->defaults('_config', [ Route::get('channels/{id}', [ResourceController::class, 'get'])->defaults('_config', [
'repository' => 'Webkul\Core\Repositories\ChannelRepository', 'repository' => ChannelRepository::class,
'resource' => 'Webkul\API\Http\Resources\Core\Channel' 'resource' => Channel::class,
]); ]);
//Locale routes //Locale routes
Route::get('locales', 'ResourceController@index')->defaults('_config', [ Route::get('locales', [ResourceController::class, 'index'])->defaults('_config', [
'repository' => 'Webkul\Core\Repositories\LocaleRepository', 'repository' => LocaleRepository::class,
'resource' => 'Webkul\API\Http\Resources\Core\Locale' 'resource' => Locale::class,
]); ]);
Route::get('locales/{id}', 'ResourceController@get')->defaults('_config', [ Route::get('locales/{id}', [ResourceController::class, 'get'])->defaults('_config', [
'repository' => 'Webkul\Core\Repositories\LocaleRepository', 'repository' => LocaleRepository::class,
'resource' => 'Webkul\API\Http\Resources\Core\Locale' 'resource' => Locale::class,
]); ]);
//Country routes //Country routes
Route::get('countries', 'ResourceController@index')->defaults('_config', [ Route::get('countries', [ResourceController::class, 'index'])->defaults('_config', [
'repository' => 'Webkul\Core\Repositories\CountryRepository', 'repository' => CountryRepository::class,
'resource' => 'Webkul\API\Http\Resources\Core\Country' 'resource' => Country::class,
]); ]);
Route::get('countries/{id}', 'ResourceController@get')->defaults('_config', [ Route::get('countries/{id}', [ResourceController::class, 'get'])->defaults('_config', [
'repository' => 'Webkul\Core\Repositories\CountryRepository', 'repository' => CountryRepository::class,
'resource' => 'Webkul\API\Http\Resources\Core\Country' 'resource' => Country::class,
]); ]);
Route::get('country-states', 'CoreController@getCountryStateGroup'); Route::get('country-states', [CoreController::class, 'getCountryStateGroup']);
//Slider routes //Slider routes
Route::get('sliders', 'ResourceController@index')->defaults('_config', [ Route::get('sliders', [ResourceController::class, 'index'])->defaults('_config', [
'repository' => 'Webkul\Core\Repositories\SliderRepository', 'repository' => SliderRepository::class,
'resource' => 'Webkul\API\Http\Resources\Core\Slider' 'resource' => Slider::class,
]); ]);
Route::get('sliders/{id}', 'ResourceController@get')->defaults('_config', [ Route::get('sliders/{id}', [ResourceController::class, 'get'])->defaults('_config', [
'repository' => 'Webkul\Core\Repositories\SliderRepository', 'repository' => SliderRepository::class,
'resource' => 'Webkul\API\Http\Resources\Core\Slider' 'resource' => Slider::class,
]); ]);
//Currency routes //Currency routes
Route::get('currencies', 'ResourceController@index')->defaults('_config', [ Route::get('currencies', [ResourceController::class, 'index'])->defaults('_config', [
'repository' => 'Webkul\Core\Repositories\CurrencyRepository', 'repository' => CurrencyRepository::class,
'resource' => 'Webkul\API\Http\Resources\Core\Currency' 'resource' => Currency::class,
]); ]);
Route::get('currencies/{id}', 'ResourceController@get')->defaults('_config', [ Route::get('currencies/{id}', [ResourceController::class, 'get'])->defaults('_config', [
'repository' => 'Webkul\Core\Repositories\CurrencyRepository', 'repository' => CurrencyRepository::class,
'resource' => 'Webkul\API\Http\Resources\Core\Currency' 'resource' => Currency::class,
]); ]);
Route::get('config', 'CoreController@getConfig'); Route::get('config', [CoreController::class, 'getConfig']);
//Customer routes //Customer routes
Route::post('customer/login', 'SessionController@create'); Route::post('customer/login', [SessionController::class, 'create']);
Route::post('customer/forgot-password', 'ForgotPasswordController@store'); Route::post('customer/forgot-password', [ForgotPasswordController::class, 'store']);
Route::get('customer/logout', 'SessionController@destroy'); Route::get('customer/logout', [SessionController::class, 'destroy']);
Route::get('customer/get', 'SessionController@get'); Route::get('customer/get', [SessionController::class, 'get']);
Route::put('customer/profile', 'SessionController@update'); Route::put('customer/profile', [SessionController::class, 'update']);
Route::post('customer/register', 'CustomerController@create'); Route::post('customer/register', [CustomerController::class, 'create']);
Route::get('customers/{id}', 'CustomerController@get')->defaults('_config', [ Route::get('customers/{id}', [CustomerController::class, 'get'])->defaults('_config', [
'repository' => 'Webkul\Customer\Repositories\CustomerRepository', 'repository' => CustomerRepository::class,
'resource' => 'Webkul\API\Http\Resources\Customer\Customer', 'resource' => Customer::class,
'authorization_required' => true 'authorization_required' => true
]); ]);
//Customer Address routes //Customer Address routes
Route::get('addresses', 'AddressController@get')->defaults('_config', [ Route::get('addresses', [AddressController::class, 'get'])->defaults('_config', [
'authorization_required' => true 'authorization_required' => true
]); ]);
Route::get('addresses/{id}', 'ResourceController@get')->defaults('_config', [ Route::get('addresses/{id}', [ResourceController::class, 'get'])->defaults('_config', [
'repository' => 'Webkul\Customer\Repositories\CustomerAddressRepository', 'repository' => CustomerAddressRepository::class,
'resource' => 'Webkul\API\Http\Resources\Customer\CustomerAddress', 'resource' => CustomerAddress::class,
'authorization_required' => true 'authorization_required' => true
]); ]);
Route::delete('addresses/{id}', 'ResourceController@destroy')->defaults('_config', [ Route::delete('addresses/{id}', [ResourceController::class, 'destroy'])->defaults('_config', [
'repository' => 'Webkul\Customer\Repositories\CustomerAddressRepository', 'repository' => CustomerAddressRepository::class,
'resource' => 'Webkul\API\Http\Resources\Customer\CustomerAddress', 'resource' => CustomerAddress::class,
'authorization_required' => true 'authorization_required' => true
]); ]);
Route::put('addresses/{id}', 'AddressController@update')->defaults('_config', [ Route::put('addresses/{id}', [AddressController::class, 'update'])->defaults('_config', [
'authorization_required' => true 'authorization_required' => true
]); ]);
Route::post('addresses/create', 'AddressController@store')->defaults('_config', [ Route::post('addresses/create', [AddressController::class, 'store'])->defaults('_config', [
'authorization_required' => true 'authorization_required' => true
]); ]);
//Order routes //Order routes
Route::get('orders', 'ResourceController@index')->defaults('_config', [ Route::get('orders', [ResourceController::class, 'index'])->defaults('_config', [
'repository' => 'Webkul\Sales\Repositories\OrderRepository', 'repository' => OrderRepository::class,
'resource' => 'Webkul\API\Http\Resources\Sales\Order', 'resource' => Order::class,
'authorization_required' => true 'authorization_required' => true
]); ]);
Route::get('orders/{id}', 'ResourceController@get')->defaults('_config', [ Route::get('orders/{id}', [ResourceController::class, 'get'])->defaults('_config', [
'repository' => 'Webkul\Sales\Repositories\OrderRepository', 'repository' => OrderRepository::class,
'resource' => 'Webkul\API\Http\Resources\Sales\Order', 'resource' => Order::class,
'authorization_required' => true 'authorization_required' => true
]); ]);
Route::post('orders/{id}/cancel', 'OrderController@cancel')->defaults('_config', [ Route::post('orders/{id}/cancel', [OrderController::class, 'cancel'])->defaults('_config', [
'repository' => 'Webkul\Sales\Repositories\OrderRepository', 'repository' => OrderRepository::class,
'resource' => 'Webkul\API\Http\Resources\Sales\Order', 'resource' => Order::class,
'authorization_required' => true 'authorization_required' => true
]); ]);
//Invoice routes //Invoice routes
Route::get('invoices', 'InvoiceController@index')->defaults('_config', [ Route::get('invoices', [InvoiceController::class, 'index'])->defaults('_config', [
'repository' => 'Webkul\Sales\Repositories\InvoiceRepository', 'repository' => InvoiceRepository::class,
'resource' => 'Webkul\API\Http\Resources\Sales\Invoice', 'resource' => Invoice::class,
'authorization_required' => true 'authorization_required' => true
]); ]);
Route::get('invoices/{id}', 'InvoiceController@get')->defaults('_config', [ Route::get('invoices/{id}', [InvoiceController::class, 'get'])->defaults('_config', [
'repository' => 'Webkul\Sales\Repositories\InvoiceRepository', 'repository' => InvoiceRepository::class,
'resource' => 'Webkul\API\Http\Resources\Sales\Invoice', 'resource' => Invoice::class,
'authorization_required' => true 'authorization_required' => true
]); ]);
//Shipment routes //Shipment routes
Route::get('shipments', 'ResourceController@index')->defaults('_config', [ Route::get('shipments', [ResourceController::class, 'index'])->defaults('_config', [
'repository' => 'Webkul\Sales\Repositories\ShipmentRepository', 'repository' => ShipmentRepository::class,
'resource' => 'Webkul\API\Http\Resources\Sales\Shipment', 'resource' => Shipment::class,
'authorization_required' => true 'authorization_required' => true
]); ]);
Route::get('shipments/{id}', 'ResourceController@get')->defaults('_config', [ Route::get('shipments/{id}', [ResourceController::class, 'get'])->defaults('_config', [
'repository' => 'Webkul\Sales\Repositories\ShipmentRepository', 'repository' => ShipmentRepository::class,
'resource' => 'Webkul\API\Http\Resources\Sales\Shipment', 'resource' => Shipment::class,
'authorization_required' => true 'authorization_required' => true
]); ]);
//Transaction routes //Transaction routes
Route::get('transactions', 'TransactionController@index')->defaults('_config', [ Route::get('transactions', [TransactionController::class, 'index'])->defaults('_config', [
'repository' => 'Webkul\Sales\Repositories\OrderTransactionRepository', 'repository' => OrderTransactionRepository::class,
'resource' => 'Webkul\API\Http\Resources\Sales\OrderTransaction', 'resource' => OrderTransaction::class,
'authorization_required' => true 'authorization_required' => true
]); ]);
Route::get('transactions/{id}', 'TransactionController@get')->defaults('_config', [ Route::get('transactions/{id}', [TransactionController::class, 'get'])->defaults('_config', [
'repository' => 'Webkul\Sales\Repositories\OrderTransactionRepository', 'repository' => OrderTransactionRepository::class,
'resource' => 'Webkul\API\Http\Resources\Sales\OrderTransaction', 'resource' => OrderTransaction::class,
'authorization_required' => true 'authorization_required' => true
]); ]);
//Wishlist routes //Wishlist routes
Route::get('wishlist', 'ResourceController@index')->defaults('_config', [ Route::get('wishlist', [ResourceController::class, 'index'])->defaults('_config', [
'repository' => 'Webkul\Customer\Repositories\WishlistRepository', 'repository' => WishlistRepository::class,
'resource' => 'Webkul\API\Http\Resources\Customer\Wishlist', 'resource' => Wishlist::class,
'authorization_required' => true 'authorization_required' => true
]); ]);
Route::delete('wishlist/{id}', 'ResourceController@destroy')->defaults('_config', [ Route::delete('wishlist/{id}', [ResourceController::class, 'destroy'])->defaults('_config', [
'repository' => 'Webkul\Customer\Repositories\WishlistRepository', 'repository' => WishlistRepository::class,
'resource' => 'Webkul\API\Http\Resources\Customer\Wishlist', 'resource' => Wishlist::class,
'authorization_required' => true 'authorization_required' => true
]); ]);
Route::get('move-to-cart/{id}', 'WishlistController@moveToCart'); Route::get('move-to-cart/{id}', [WishlistController::class, 'moveToCart']);
Route::get('wishlist/add/{id}', 'WishlistController@create'); Route::get('wishlist/add/{id}', [WishlistController::class, 'create']);
//Checkout routes //Checkout routes
Route::group(['prefix' => 'checkout'], function ($router) { Route::group(['prefix' => 'checkout'], function ($router) {
Route::post('cart/add/{id}', 'CartController@store'); Route::post('cart/add/{id}', [CartController::class, 'store']);
Route::get('cart', 'CartController@get'); Route::get('cart', [CartController::class, 'get']);
Route::get('cart/empty', 'CartController@destroy'); Route::get('cart/empty', [CartController::class, 'destroy']);
Route::put('cart/update', 'CartController@update'); Route::put('cart/update', [CartController::class, 'update']);
Route::get('cart/remove-item/{id}', 'CartController@destroyItem'); Route::get('cart/remove-item/{id}', [CartController::class, 'destroyItem']);
Route::post('cart/coupon', 'CartController@applyCoupon'); Route::post('cart/coupon', [CartController::class, 'applyCoupon']);
Route::delete('cart/coupon', 'CartController@removeCoupon'); Route::delete('cart/coupon', [CartController::class, 'removeCoupon']);
Route::get('cart/move-to-wishlist/{id}', 'CartController@moveToWishlist'); Route::get('cart/move-to-wishlist/{id}', [CartController::class, 'moveToWishlist']);
Route::post('save-address', 'CheckoutController@saveAddress'); Route::post('save-address', [CheckoutController::class, 'saveAddress']);
Route::post('save-shipping', 'CheckoutController@saveShipping'); Route::post('save-shipping', [CheckoutController::class, 'saveShipping']);
Route::post('save-payment', 'CheckoutController@savePayment'); Route::post('save-payment', [CheckoutController::class, 'savePayment']);
Route::post('check-minimum-order', 'CheckoutController@checkMinimumOrder'); Route::post('check-minimum-order', [CheckoutController::class, 'checkMinimumOrder']);
Route::post('save-order', 'CheckoutController@saveOrder'); Route::post('save-order', [CheckoutController::class, 'saveOrder']);
}); });
}); });
}); });

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,8 @@
<?php <?php
// Controllers
use Webkul\BookingProduct\Http\Controllers\Shop\BookingProductController;
Route::group(['middleware' => ['web', 'theme', 'locale', 'currency']], function () { Route::group(['middleware' => ['web', 'theme', 'locale', 'currency']], function () {
Route::get('/booking-slots/{id}', 'Webkul\BookingProduct\Http\Controllers\Shop\BookingProductController@index')->name('booking_product.slots.index'); Route::get('/booking-slots/{id}', [BookingProductController::class, 'index'])->name('booking_product.slots.index');
}); });

View File

@ -1,19 +1,23 @@
<?php <?php
// Controllers
use Webkul\Paypal\Http\Controllers\SmartButtonController;
use Webkul\Paypal\Http\Controllers\StandardController;
Route::group(['middleware' => ['web']], function () { Route::group(['middleware' => ['web']], function () {
Route::prefix('paypal/standard')->group(function () { Route::prefix('paypal/standard')->group(function () {
Route::get('/redirect', 'Webkul\Paypal\Http\Controllers\StandardController@redirect')->name('paypal.standard.redirect'); Route::get('/redirect', [StandardController::class, 'redirect'])->name('paypal.standard.redirect');
Route::get('/success', 'Webkul\Paypal\Http\Controllers\StandardController@success')->name('paypal.standard.success'); Route::get('/success', [StandardController::class, 'success'])->name('paypal.standard.success');
Route::get('/cancel', 'Webkul\Paypal\Http\Controllers\StandardController@cancel')->name('paypal.standard.cancel'); Route::get('/cancel', [StandardController::class, 'cancel'])->name('paypal.standard.cancel');
}); });
Route::prefix('paypal/smart-button')->group(function () { Route::prefix('paypal/smart-button')->group(function () {
Route::get('/create-order', 'Webkul\Paypal\Http\Controllers\SmartButtonController@createOrder')->name('paypal.smart-button.create-order'); Route::get('/create-order', [SmartButtonController::class, 'createOrder'])->name('paypal.smart-button.create-order');
Route::post('/capture-order', 'Webkul\Paypal\Http\Controllers\SmartButtonController@captureOrder')->name('paypal.smart-button.capture-order'); Route::post('/capture-order', [SmartButtonController::class, 'captureOrder'])->name('paypal.smart-button.capture-order');
}); });
}); });
Route::post('paypal/standard/ipn', 'Webkul\Paypal\Http\Controllers\StandardController@ipn')->name('paypal.standard.ipn'); Route::post('paypal/standard/ipn', [StandardController::class, 'ipn'])->name('paypal.standard.ipn');

View File

@ -1,40 +1,61 @@
<?php <?php
// Controllers
use Webkul\CMS\Http\Controllers\Shop\PagePresenterController;
use Webkul\Core\Http\Controllers\CountryStateController;
use Webkul\Customer\Http\Controllers\AccountController;
use Webkul\Customer\Http\Controllers\AddressController;
use Webkul\Customer\Http\Controllers\CustomerController;
use Webkul\Customer\Http\Controllers\ForgotPasswordController;
use Webkul\Customer\Http\Controllers\RegistrationController;
use Webkul\Customer\Http\Controllers\ResetPasswordController;
use Webkul\Customer\Http\Controllers\SessionController;
use Webkul\Customer\Http\Controllers\WishlistController;
use Webkul\Shop\Http\Controllers\CartController;
use Webkul\Shop\Http\Controllers\DownloadableProductController;
use Webkul\Shop\Http\Controllers\HomeController;
use Webkul\Shop\Http\Controllers\OnepageController;
use Webkul\Shop\Http\Controllers\OrderController;
use Webkul\Shop\Http\Controllers\ProductController;
use Webkul\Shop\Http\Controllers\ReviewController;
use Webkul\Shop\Http\Controllers\SearchController;
use Webkul\Shop\Http\Controllers\SubscriptionController;
Route::group(['middleware' => ['web', 'locale', 'theme', 'currency']], function () { Route::group(['middleware' => ['web', 'locale', 'theme', 'currency']], function () {
/** /**
* Store front home. * Store front home.
*/ */
Route::get('/', 'Webkul\Shop\Http\Controllers\HomeController@index')->defaults('_config', [ Route::get('/', [HomeController::class, 'index'])->defaults('_config', [
'view' => 'shop::home.index' 'view' => 'shop::home.index'
])->name('shop.home.index'); ])->name('shop.home.index');
/** /**
* Store front search. * Store front search.
*/ */
Route::get('/search', 'Webkul\Shop\Http\Controllers\SearchController@index')->defaults('_config', [ Route::get('/search', [SearchController::class, 'index'])->defaults('_config', [
'view' => 'shop::search.search' 'view' => 'shop::search.search'
])->name('shop.search.index'); ])->name('shop.search.index');
Route::post('/upload-search-image', 'Webkul\Shop\Http\Controllers\HomeController@upload')->name('shop.image.search.upload'); Route::post('/upload-search-image', [HomeController::class, 'upload'])->name('shop.image.search.upload');
/** /**
* Subscription. * Subscription.
*/ */
Route::get('/subscribe', 'Webkul\Shop\Http\Controllers\SubscriptionController@subscribe')->name('shop.subscribe'); Route::get('/subscribe', [SubscriptionController::class, 'subscribe'])->name('shop.subscribe');
Route::get('/unsubscribe/{token}', 'Webkul\Shop\Http\Controllers\SubscriptionController@unsubscribe')->name('shop.unsubscribe'); Route::get('/unsubscribe/{token}', [SubscriptionController::class, 'unsubscribe'])->name('shop.unsubscribe');
/** /**
* Country-State selector. * Country-State selector.
*/ */
Route::get('get/countries', 'Webkul\Core\Http\Controllers\CountryStateController@getCountries')->defaults('_config', [ Route::get('get/countries', [CountryStateController::class, 'getCountries'])->defaults('_config', [
'view' => 'shop::test' 'view' => 'shop::test'
])->name('get.countries'); ])->name('get.countries');
/** /**
* Get States when Country is passed. * Get States when Country is passed.
*/ */
Route::get('get/states/{country}', 'Webkul\Core\Http\Controllers\CountryStateController@getStates')->defaults('_config', [ Route::get('get/states/{country}', [CountryStateController::class, 'getStates'])->defaults('_config', [
'view' => 'shop::test' 'view' => 'shop::test'
])->name('get.states'); ])->name('get.states');
@ -42,62 +63,62 @@ Route::group(['middleware' => ['web', 'locale', 'theme', 'currency']], function
* Cart, coupons and checkout. * Cart, coupons and checkout.
*/ */
// Cart items listing. // Cart items listing.
Route::get('checkout/cart', 'Webkul\Shop\Http\Controllers\CartController@index')->defaults('_config', [ Route::get('checkout/cart', [CartController::class, 'index'])->defaults('_config', [
'view' => 'shop::checkout.cart.index' 'view' => 'shop::checkout.cart.index'
])->name('shop.checkout.cart.index'); ])->name('shop.checkout.cart.index');
// Add cart items. // Add cart items.
Route::post('checkout/cart/add/{id}', 'Webkul\Shop\Http\Controllers\CartController@add')->defaults('_config', [ Route::post('checkout/cart/add/{id}', [CartController::class, 'add'])->defaults('_config', [
'redirect' => 'shop.checkout.cart.index' 'redirect' => 'shop.checkout.cart.index'
])->name('cart.add'); ])->name('cart.add');
// Cart items remove. // Cart items remove.
Route::get('checkout/cart/remove/{id}', 'Webkul\Shop\Http\Controllers\CartController@remove')->name('cart.remove'); Route::get('checkout/cart/remove/{id}', [CartController::class, 'remove'])->name('cart.remove');
// Cart update before checkout. // Cart update before checkout.
Route::post('/checkout/cart', 'Webkul\Shop\Http\Controllers\CartController@updateBeforeCheckout')->defaults('_config', [ Route::post('/checkout/cart', [CartController::class, 'updateBeforeCheckout'])->defaults('_config', [
'redirect' => 'shop.checkout.cart.index' 'redirect' => 'shop.checkout.cart.index'
])->name('shop.checkout.cart.update'); ])->name('shop.checkout.cart.update');
// Cart items remove. // Cart items remove.
Route::get('/checkout/cart/remove/{id}', 'Webkul\Shop\Http\Controllers\CartController@remove')->defaults('_config', [ Route::get('/checkout/cart/remove/{id}', [CartController::class, 'remove'])->defaults('_config', [
'redirect' => 'shop.checkout.cart.index' 'redirect' => 'shop.checkout.cart.index'
])->name('shop.checkout.cart.remove'); ])->name('shop.checkout.cart.remove');
// Move item to wishlist from cart. // Move item to wishlist from cart.
Route::post('move/wishlist/{id}', 'Webkul\Shop\Http\Controllers\CartController@moveToWishlist')->name('shop.movetowishlist'); Route::post('move/wishlist/{id}', [CartController::class, 'moveToWishlist'])->name('shop.movetowishlist');
// Apply coupons. // Apply coupons.
Route::post('checkout/cart/coupon', 'Webkul\Shop\Http\Controllers\CartController@applyCoupon')->name('shop.checkout.cart.coupon.apply'); Route::post('checkout/cart/coupon', [CartController::class, 'applyCoupon'])->name('shop.checkout.cart.coupon.apply');
// Remove coupons. // Remove coupons.
Route::delete('checkout/cart/coupon', 'Webkul\Shop\Http\Controllers\CartController@removeCoupon')->name('shop.checkout.coupon.remove.coupon'); Route::delete('checkout/cart/coupon', [CartController::class, 'removeCoupon'])->name('shop.checkout.coupon.remove.coupon');
// Checkout index page. // Checkout index page.
Route::get('/checkout/onepage', 'Webkul\Shop\Http\Controllers\OnepageController@index')->defaults('_config', [ Route::get('/checkout/onepage', [OnepageController::class, 'index'])->defaults('_config', [
'view' => 'shop::checkout.onepage' 'view' => 'shop::checkout.onepage'
])->name('shop.checkout.onepage.index'); ])->name('shop.checkout.onepage.index');
// Checkout get summary. // Checkout get summary.
Route::get('/checkout/summary', 'Webkul\Shop\Http\Controllers\OnepageController@summary')->name('shop.checkout.summary'); Route::get('/checkout/summary',[OnepageController::class, 'summary'])->name('shop.checkout.summary');
// Checkout save address form. // Checkout save address form.
Route::post('/checkout/save-address', 'Webkul\Shop\Http\Controllers\OnepageController@saveAddress')->name('shop.checkout.save-address'); Route::post('/checkout/save-address', [OnepageController::class, 'saveAddress'])->name('shop.checkout.save-address');
// Checkout save shipping address form. // Checkout save shipping address form.
Route::post('/checkout/save-shipping', 'Webkul\Shop\Http\Controllers\OnepageController@saveShipping')->name('shop.checkout.save-shipping'); Route::post('/checkout/save-shipping', [OnepageController::class, 'saveShipping'])->name('shop.checkout.save-shipping');
// Checkout save payment method form. // Checkout save payment method form.
Route::post('/checkout/save-payment', 'Webkul\Shop\Http\Controllers\OnepageController@savePayment')->name('shop.checkout.save-payment'); Route::post('/checkout/save-payment', [OnepageController::class, 'savePayment'])->name('shop.checkout.save-payment');
// Check minimum order. // Check minimum order.
Route::post('/checkout/check-minimum-order', 'Webkul\Shop\Http\Controllers\OnepageController@checkMinimumOrder')->name('shop.checkout.check-minimum-order'); Route::post('/checkout/check-minimum-order', [OnepageController::class, 'checkMinimumOrder'])->name('shop.checkout.check-minimum-order');
// Checkout save order. // Checkout save order.
Route::post('/checkout/save-order', 'Webkul\Shop\Http\Controllers\OnepageController@saveOrder')->name('shop.checkout.save-order'); Route::post('/checkout/save-order', [OnepageController::class, 'saveOrder'])->name('shop.checkout.save-order');
// Checkout order successful. // Checkout order successful.
Route::get('/checkout/success', 'Webkul\Shop\Http\Controllers\OnepageController@success')->defaults('_config', [ Route::get('/checkout/success', [OnepageController::class, 'success'])->defaults('_config', [
'view' => 'shop::checkout.success' 'view' => 'shop::checkout.success'
])->name('shop.checkout.success'); ])->name('shop.checkout.success');
@ -105,26 +126,26 @@ Route::group(['middleware' => ['web', 'locale', 'theme', 'currency']], function
* Product reviews. * Product reviews.
*/ */
// Show product review form. // Show product review form.
Route::get('/reviews/{slug}', 'Webkul\Shop\Http\Controllers\ReviewController@show')->defaults('_config', [ Route::get('/reviews/{slug}', [ReviewController::class, 'show'])->defaults('_config', [
'view' => 'shop::products.reviews.index' 'view' => 'shop::products.reviews.index'
])->name('shop.reviews.index'); ])->name('shop.reviews.index');
// Show product review listing. // Show product review listing.
Route::get('/product/{slug}/review', 'Webkul\Shop\Http\Controllers\ReviewController@create')->defaults('_config', [ Route::get('/product/{slug}/review', [ReviewController::class, 'create'])->defaults('_config', [
'view' => 'shop::products.reviews.create' 'view' => 'shop::products.reviews.create'
])->name('shop.reviews.create'); ])->name('shop.reviews.create');
// Store product review. // Store product review.
Route::post('/product/{slug}/review', 'Webkul\Shop\Http\Controllers\ReviewController@store')->defaults('_config', [ Route::post('/product/{slug}/review', [ReviewController::class, 'store'])->defaults('_config', [
'redirect' => 'shop.home.index' 'redirect' => 'shop.home.index'
])->name('shop.reviews.store'); ])->name('shop.reviews.store');
/** /**
* Downloadable products. * Downloadable products.
*/ */
Route::get('/downloadable/download-sample/{type}/{id}', 'Webkul\Shop\Http\Controllers\ProductController@downloadSample')->name('shop.downloadable.download_sample'); Route::get('/downloadable/download-sample/{type}/{id}', [ProductController::class, 'downloadSample'])->name('shop.downloadable.download_sample');
Route::get('/product/{id}/{attribute_id}', 'Webkul\Shop\Http\Controllers\ProductController@download')->defaults('_config', [ Route::get('/product/{id}/{attribute_id}', [ProductController::class, 'download'])->defaults('_config', [
'view' => 'shop.products.index' 'view' => 'shop.products.index'
])->name('shop.product.file.download'); ])->name('shop.product.file.download');
@ -134,10 +155,10 @@ Route::group(['middleware' => ['web', 'locale', 'theme', 'currency']], function
*/ */
Route::prefix('customer')->group(function () { Route::prefix('customer')->group(function () {
// For customer exist check. // For customer exist check.
Route::post('/customer/exist', 'Webkul\Shop\Http\Controllers\OnepageController@checkExistCustomer')->name('customer.checkout.exist'); Route::post('/customer/exist', [OnepageController::class, 'checkExistCustomer'])->name('customer.checkout.exist');
// For customer login checkout. // For customer login checkout.
Route::post('/customer/checkout/login', 'Webkul\Shop\Http\Controllers\OnepageController@loginForCheckout')->name('customer.checkout.login'); Route::post('/customer/checkout/login', [OnepageController::class, 'loginForCheckout'])->name('customer.checkout.login');
}); });
/** /**
@ -158,20 +179,20 @@ Route::group(['middleware' => ['web', 'locale', 'theme', 'currency']], function
* Forgot password routes. * Forgot password routes.
*/ */
// Show forgot password form. // Show forgot password form.
Route::get('/forgot-password', 'Webkul\Customer\Http\Controllers\ForgotPasswordController@create')->defaults('_config', [ Route::get('/forgot-password', [ForgotPasswordController::class, 'create'])->defaults('_config', [
'view' => 'shop::customers.signup.forgot-password' 'view' => 'shop::customers.signup.forgot-password'
])->name('customer.forgot-password.create'); ])->name('customer.forgot-password.create');
// Store forgot password. // Store forgot password.
Route::post('/forgot-password', 'Webkul\Customer\Http\Controllers\ForgotPasswordController@store')->name('customer.forgot-password.store'); Route::post('/forgot-password', [ForgotPasswordController::class, 'store'])->name('customer.forgot-password.store');
// Reset password form. // Reset password form.
Route::get('/reset-password/{token}', 'Webkul\Customer\Http\Controllers\ResetPasswordController@create')->defaults('_config', [ Route::get('/reset-password/{token}', [ResetPasswordController::class, 'create'])->defaults('_config', [
'view' => 'shop::customers.signup.reset-password' 'view' => 'shop::customers.signup.reset-password'
])->name('customer.reset-password.create'); ])->name('customer.reset-password.create');
// Store reset password. // Store reset password.
Route::post('/reset-password', 'Webkul\Customer\Http\Controllers\ResetPasswordController@store')->defaults('_config', [ Route::post('/reset-password',[ResetPasswordController::class, 'store'])->defaults('_config', [
'redirect' => 'customer.profile.index' 'redirect' => 'customer.profile.index'
])->name('customer.reset-password.store'); ])->name('customer.reset-password.store');
@ -179,12 +200,12 @@ Route::group(['middleware' => ['web', 'locale', 'theme', 'currency']], function
* Login routes. * Login routes.
*/ */
// Login form. // Login form.
Route::get('login', 'Webkul\Customer\Http\Controllers\SessionController@show')->defaults('_config', [ Route::get('login', [SessionController::class, 'show'])->defaults('_config', [
'view' => 'shop::customers.session.index', 'view' => 'shop::customers.session.index',
])->name('customer.session.index'); ])->name('customer.session.index');
// Login. // Login.
Route::post('login', 'Webkul\Customer\Http\Controllers\SessionController@create')->defaults('_config', [ Route::post('login', [SessionController::class, 'create'])->defaults('_config', [
'redirect' => 'customer.profile.index' 'redirect' => 'customer.profile.index'
])->name('customer.session.create'); ])->name('customer.session.create');
@ -192,20 +213,20 @@ Route::group(['middleware' => ['web', 'locale', 'theme', 'currency']], function
* Registration routes. * Registration routes.
*/ */
// Show registration form. // Show registration form.
Route::get('register', 'Webkul\Customer\Http\Controllers\RegistrationController@show')->defaults('_config', [ Route::get('register', [RegistrationController::class, 'show'])->defaults('_config', [
'view' => 'shop::customers.signup.index' 'view' => 'shop::customers.signup.index'
])->name('customer.register.index'); ])->name('customer.register.index');
// Store new registered user. // Store new registered user.
Route::post('register', 'Webkul\Customer\Http\Controllers\RegistrationController@create')->defaults('_config', [ Route::post('register', [RegistrationController::class, 'create'])->defaults('_config', [
'redirect' => 'customer.session.index', 'redirect' => 'customer.session.index',
])->name('customer.register.create'); ])->name('customer.register.create');
// Verify account. // Verify account.
Route::get('/verify-account/{token}', 'Webkul\Customer\Http\Controllers\RegistrationController@verifyAccount')->name('customer.verify'); Route::get('/verify-account/{token}', [RegistrationController::class, 'verifyAccount'])->name('customer.verify');
// Resend verification email. // Resend verification email.
Route::get('/resend/verification/{email}', 'Webkul\Customer\Http\Controllers\RegistrationController@resendVerificationEmail')->name('customer.resend.verification-email'); Route::get('/resend/verification/{email}', [RegistrationController::class, 'resendVerificationEmail'])->name('customer.resend.verification-email');
/** /**
* Customer authented routes. All the below routes only be accessible * Customer authented routes. All the below routes only be accessible
@ -215,20 +236,20 @@ Route::group(['middleware' => ['web', 'locale', 'theme', 'currency']], function
/** /**
* Logout. * Logout.
*/ */
Route::get('logout', 'Webkul\Customer\Http\Controllers\SessionController@destroy')->defaults('_config', [ Route::get('logout', [SessionController::class, 'destroy'])->defaults('_config', [
'redirect' => 'customer.session.index' 'redirect' => 'customer.session.index'
])->name('customer.session.destroy'); ])->name('customer.session.destroy');
/** /**
* Wishlist. * Wishlist.
*/ */
Route::post('wishlist/add/{id}', 'Webkul\Customer\Http\Controllers\WishlistController@add')->name('customer.wishlist.add'); Route::post('wishlist/add/{id}', [WishlistController::class, 'add'])->name('customer.wishlist.add');
Route::delete('wishlist/remove/{id}', 'Webkul\Customer\Http\Controllers\WishlistController@remove')->name('customer.wishlist.remove'); Route::delete('wishlist/remove/{id}', [WishlistController::class, 'remove'])->name('customer.wishlist.remove');
Route::delete('wishlist/removeall', 'Webkul\Customer\Http\Controllers\WishlistController@removeAll')->name('customer.wishlist.removeall'); Route::delete('wishlist/removeall', [WishlistController::class, 'removeAll'])->name('customer.wishlist.removeall');
Route::get('wishlist/move/{id}', 'Webkul\Customer\Http\Controllers\WishlistController@move')->name('customer.wishlist.move'); Route::get('wishlist/move/{id}', [WishlistController::class, 'move'])->name('customer.wishlist.move');
/** /**
* Customer account. All the below routes are related to * Customer account. All the below routes are related to
@ -238,104 +259,104 @@ Route::group(['middleware' => ['web', 'locale', 'theme', 'currency']], function
/** /**
* Dashboard. * Dashboard.
*/ */
Route::get('index', 'Webkul\Customer\Http\Controllers\AccountController@index')->defaults('_config', [ Route::get('index', [AccountController::class, 'index'])->defaults('_config', [
'view' => 'shop::customers.account.index' 'view' => 'shop::customers.account.index'
])->name('customer.account.index'); ])->name('customer.account.index');
/** /**
* Profile. * Profile.
*/ */
Route::get('profile', 'Webkul\Customer\Http\Controllers\CustomerController@index')->defaults('_config', [ Route::get('profile', [CustomerController::class, 'index'])->defaults('_config', [
'view' => 'shop::customers.account.profile.index' 'view' => 'shop::customers.account.profile.index'
])->name('customer.profile.index'); ])->name('customer.profile.index');
Route::get('profile/edit', 'Webkul\Customer\Http\Controllers\CustomerController@edit')->defaults('_config', [ Route::get('profile/edit', [CustomerController::class, 'edit'])->defaults('_config', [
'view' => 'shop::customers.account.profile.edit' 'view' => 'shop::customers.account.profile.edit'
])->name('customer.profile.edit'); ])->name('customer.profile.edit');
Route::post('profile/edit', 'Webkul\Customer\Http\Controllers\CustomerController@update')->defaults('_config', [ Route::post('profile/edit', [CustomerController::class, 'update'])->defaults('_config', [
'redirect' => 'customer.profile.index' 'redirect' => 'customer.profile.index'
])->name('customer.profile.store'); ])->name('customer.profile.store');
Route::post('profile/destroy', 'Webkul\Customer\Http\Controllers\CustomerController@destroy')->defaults('_config', [ Route::post('profile/destroy', [CustomerController::class, 'destroy'])->defaults('_config', [
'redirect' => 'customer.profile.index' 'redirect' => 'customer.profile.index'
])->name('customer.profile.destroy'); ])->name('customer.profile.destroy');
/** /**
* Addresses. * Addresses.
*/ */
Route::get('addresses', 'Webkul\Customer\Http\Controllers\AddressController@index')->defaults('_config', [ Route::get('addresses', [AddressController::class, 'index'])->defaults('_config', [
'view' => 'shop::customers.account.address.index' 'view' => 'shop::customers.account.address.index'
])->name('customer.address.index'); ])->name('customer.address.index');
Route::get('addresses/create', 'Webkul\Customer\Http\Controllers\AddressController@create')->defaults('_config', [ Route::get('addresses/create', [AddressController::class, 'create'])->defaults('_config', [
'view' => 'shop::customers.account.address.create' 'view' => 'shop::customers.account.address.create'
])->name('customer.address.create'); ])->name('customer.address.create');
Route::post('addresses/create', 'Webkul\Customer\Http\Controllers\AddressController@store')->defaults('_config', [ Route::post('addresses/create', [AddressController::class, 'store'])->defaults('_config', [
'view' => 'shop::customers.account.address.address', 'view' => 'shop::customers.account.address.address',
'redirect' => 'customer.address.index' 'redirect' => 'customer.address.index'
])->name('customer.address.store'); ])->name('customer.address.store');
Route::get('addresses/edit/{id}', 'Webkul\Customer\Http\Controllers\AddressController@edit')->defaults('_config', [ Route::get('addresses/edit/{id}', [AddressController::class, 'edit'])->defaults('_config', [
'view' => 'shop::customers.account.address.edit' 'view' => 'shop::customers.account.address.edit'
])->name('customer.address.edit'); ])->name('customer.address.edit');
Route::put('addresses/edit/{id}', 'Webkul\Customer\Http\Controllers\AddressController@update')->defaults('_config', [ Route::put('addresses/edit/{id}', [AddressController::class, 'update'])->defaults('_config', [
'redirect' => 'customer.address.index' 'redirect' => 'customer.address.index'
])->name('customer.address.update'); ])->name('customer.address.update');
Route::get('addresses/default/{id}', 'Webkul\Customer\Http\Controllers\AddressController@makeDefault')->name('make.default.address'); Route::get('addresses/default/{id}', [AddressController::class, 'makeDefault'])->name('make.default.address');
Route::delete('addresses/delete/{id}', 'Webkul\Customer\Http\Controllers\AddressController@destroy')->name('address.delete'); Route::delete('addresses/delete/{id}', [AddressController::class, 'destroy'])->name('address.delete');
/** /**
* Wishlist. * Wishlist.
*/ */
Route::get('wishlist', 'Webkul\Customer\Http\Controllers\WishlistController@index')->defaults('_config', [ Route::get('wishlist', [WishlistController::class, 'index'])->defaults('_config', [
'view' => 'shop::customers.account.wishlist.wishlist' 'view' => 'shop::customers.account.wishlist.wishlist'
])->name('customer.wishlist.index'); ])->name('customer.wishlist.index');
/** /**
* Orders. * Orders.
*/ */
Route::get('orders', 'Webkul\Shop\Http\Controllers\OrderController@index')->defaults('_config', [ Route::get('orders', [OrderController::class, 'index'])->defaults('_config', [
'view' => 'shop::customers.account.orders.index' 'view' => 'shop::customers.account.orders.index'
])->name('customer.orders.index'); ])->name('customer.orders.index');
Route::get('orders/view/{id}', 'Webkul\Shop\Http\Controllers\OrderController@view')->defaults('_config', [ Route::get('orders/view/{id}', [OrderController::class, 'view'])->defaults('_config', [
'view' => 'shop::customers.account.orders.view' 'view' => 'shop::customers.account.orders.view'
])->name('customer.orders.view'); ])->name('customer.orders.view');
Route::get('orders/print/{id}', 'Webkul\Shop\Http\Controllers\OrderController@print')->defaults('_config', [ Route::get('orders/print/{id}', [OrderController::class, 'print'])->defaults('_config', [
'view' => 'shop::customers.account.orders.print' 'view' => 'shop::customers.account.orders.print'
])->name('customer.orders.print'); ])->name('customer.orders.print');
Route::post('/orders/cancel/{id}', 'Webkul\Shop\Http\Controllers\OrderController@cancel')->name('customer.orders.cancel'); Route::post('/orders/cancel/{id}', [OrderController::class, 'cancel'])->name('customer.orders.cancel');
/** /**
* Downloadable products. * Downloadable products.
*/ */
Route::get('downloadable-products', 'Webkul\Shop\Http\Controllers\DownloadableProductController@index')->defaults('_config', [ Route::get('downloadable-products', [DownloadableProductController::class, 'index'])->defaults('_config', [
'view' => 'shop::customers.account.downloadable_products.index' 'view' => 'shop::customers.account.downloadable_products.index'
])->name('customer.downloadable_products.index'); ])->name('customer.downloadable_products.index');
Route::get('downloadable-products/download/{id}', 'Webkul\Shop\Http\Controllers\DownloadableProductController@download')->defaults('_config', [ Route::get('downloadable-products/download/{id}', [DownloadableProductController::class, 'download'])->defaults('_config', [
'view' => 'shop::customers.account.downloadable_products.index' 'view' => 'shop::customers.account.downloadable_products.index'
])->name('customer.downloadable_products.download'); ])->name('customer.downloadable_products.download');
/** /**
* Reviews. * Reviews.
*/ */
Route::get('reviews', 'Webkul\Customer\Http\Controllers\CustomerController@reviews')->defaults('_config', [ Route::get('reviews', [CustomerController::class, 'reviews'])->defaults('_config', [
'view' => 'shop::customers.account.reviews.index' 'view' => 'shop::customers.account.reviews.index'
])->name('customer.reviews.index'); ])->name('customer.reviews.index');
Route::delete('reviews/delete/{id}', 'Webkul\Shop\Http\Controllers\ReviewController@destroy')->defaults('_config', [ Route::delete('reviews/delete/{id}', [ReviewController::class, 'destroy'])->defaults('_config', [
'redirect' => 'customer.reviews.index' 'redirect' => 'customer.reviews.index'
])->name('customer.review.delete'); ])->name('customer.review.delete');
Route::delete('reviews/all-delete', 'Webkul\Shop\Http\Controllers\ReviewController@deleteAll')->defaults('_config', [ Route::delete('reviews/all-delete', [ReviewController::class, 'deleteAll'])->defaults('_config', [
'redirect' => 'customer.reviews.index' 'redirect' => 'customer.reviews.index'
])->name('customer.review.deleteall'); ])->name('customer.review.deleteall');
}); });
@ -345,7 +366,7 @@ Route::group(['middleware' => ['web', 'locale', 'theme', 'currency']], function
/** /**
* CMS pages. * CMS pages.
*/ */
Route::get('page/{slug}', 'Webkul\CMS\Http\Controllers\Shop\PagePresenterController@presenter')->name('shop.cms.page'); Route::get('page/{slug}', [PagePresenterController::class, 'presenter'])->name('shop.cms.page');
/** /**
* Fallback route. * Fallback route.

View File

@ -1,12 +1,15 @@
<?php <?php
// Controllers
use Webkul\SocialLogin\Http\Controllers\LoginController;
Route::group(['middleware' => ['web', 'locale', 'theme', 'currency']], function () { Route::group(['middleware' => ['web', 'locale', 'theme', 'currency']], function () {
Route::prefix('customer')->group(function () { Route::prefix('customer')->group(function () {
Route::get('social-login/{provider}', 'Webkul\SocialLogin\Http\Controllers\LoginController@redirectToProvider')->defaults('_config', [ Route::get('social-login/{provider}', [LoginController::class, 'redirectToProvider'])->defaults('_config', [
'redirect' => 'customer.profile.index' 'redirect' => 'customer.profile.index'
])->name('customer.social-login.index'); ])->name('customer.social-login.index');
Route::get('social-login/{provider}/callback','Webkul\SocialLogin\Http\Controllers\LoginController@handleProviderCallback')->defaults('_config', [ Route::get('social-login/{provider}/callback',[LoginController::class, 'handleProviderCallback'])->defaults('_config', [
'redirect' => 'customer.profile.index' 'redirect' => 'customer.profile.index'
])->name('customer.social-login.callback'); ])->name('customer.social-login.callback');
}); });

View File

@ -1,46 +1,48 @@
<?php <?php
// Controllers
use Webkul\Velocity\Http\Controllers\Admin\ConfigurationController;
use Webkul\Velocity\Http\Controllers\Admin\ContentController;
Route::group(['middleware' => ['web', 'admin_locale']], function () { Route::group(['middleware' => ['web', 'admin_locale']], function () {
Route::prefix(config('app.admin_url') . '/velocity')->group(function () { Route::prefix(config('app.admin_url') . '/velocity')->group(function () {
Route::group(['middleware' => ['admin']], function () { Route::group(['middleware' => ['admin']], function () {
Route::namespace('Webkul\Velocity\Http\Controllers\Admin')->group(function () { // Content Pages Route
// Content Pages Route Route::get('/content', [ContentController::class, 'index'])->defaults('_config', [
Route::get('/content', 'ContentController@index')->defaults('_config', [ 'view' => 'velocity::admin.content.index'
'view' => 'velocity::admin.content.index' ])->name('velocity.admin.content.index');
])->name('velocity.admin.content.index');
Route::get('/content/search', 'ContentController@search')->name('velocity.admin.content.search'); Route::get('/content/search', [ContentController::class, 'search'])->name('velocity.admin.content.search');
Route::get('/content/create', 'ContentController@create')->defaults('_config',[ Route::get('/content/create', [ContentController::class, 'create'])->defaults('_config',[
'view' => 'velocity::admin.content.create' 'view' => 'velocity::admin.content.create'
])->name('velocity.admin.content.create'); ])->name('velocity.admin.content.create');
Route::post('/content/create', 'ContentController@store')->defaults('_config',[ Route::post('/content/create', [ContentController::class, 'store'])->defaults('_config',[
'redirect' => 'velocity.admin.content.index' 'redirect' => 'velocity.admin.content.index'
])->name('velocity.admin.content.store'); ])->name('velocity.admin.content.store');
Route::get('/content/edit/{id}', 'ContentController@edit')->defaults('_config',[ Route::get('/content/edit/{id}', [ContentController::class, 'edit'])->defaults('_config',[
'view' => 'velocity::admin.content.edit' 'view' => 'velocity::admin.content.edit'
])->name('velocity.admin.content.edit'); ])->name('velocity.admin.content.edit');
Route::put('/content/edit/{id}', 'ContentController@update')->defaults('_config', [ Route::put('/content/edit/{id}', [ContentController::class, 'update'])->defaults('_config', [
'redirect' => 'velocity.admin.content.index' 'redirect' => 'velocity.admin.content.index'
])->name('velocity.admin.content.update'); ])->name('velocity.admin.content.update');
Route::post('/content/delete/{id}', 'ContentController@destroy')->name('velocity.admin.content.delete'); Route::post('/content/delete/{id}', [ContentController::class, 'destroy'])->name('velocity.admin.content.delete');
Route::post('/content/masssdelete', 'ContentController@massDestroy')->defaults('_config', [ Route::post('/content/masssdelete', [ContentController::class, 'massDestroy'])->defaults('_config', [
'redirect' => 'velocity.admin.content.index' 'redirect' => 'velocity.admin.content.index'
])->name('velocity.admin.content.mass-delete'); ])->name('velocity.admin.content.mass-delete');
Route::get('/meta-data', 'ConfigurationController@renderMetaData')->defaults('_config', [ Route::get('/meta-data', [ConfigurationController::class, 'renderMetaData'])->defaults('_config', [
'view' => 'velocity::admin.meta-info.meta-data' 'view' => 'velocity::admin.meta-info.meta-data'
])->name('velocity.admin.meta-data'); ])->name('velocity.admin.meta-data');
Route::post('/meta-data/{id}', 'ConfigurationController@storeMetaData')->defaults('_config', [ Route::post('/meta-data/{id}', [ConfigurationController::class, 'storeMetaData'])->defaults('_config', [
'redirect' => 'velocity.admin.meta-data' 'redirect' => 'velocity.admin.meta-data'
])->name('velocity.admin.store.meta-data'); ])->name('velocity.admin.store.meta-data');
});
}); });
}); });
}); });

View File

@ -1,88 +1,91 @@
<?php <?php
// Controllers
use Webkul\Velocity\Http\Controllers\Shop\CartController;
use Webkul\Velocity\Http\Controllers\Shop\ComparisonController;
use Webkul\Velocity\Http\Controllers\Shop\ShopController;
Route::group(['middleware' => ['web', 'locale', 'theme', 'currency']], function () { Route::group(['middleware' => ['web', 'locale', 'theme', 'currency']], function () {
Route::namespace('Webkul\Velocity\Http\Controllers\Shop')->group(function () { /**
* Cart merger middleware. This middleware will take care of the items
* which are deactivated at the time of buy now functionality. If somehow
* user redirects without completing the checkout then this will merge
* full cart.
*
* If some routes are not able to merge the cart, then place the route in this
* group.
*/
Route::group(['middleware' => ['cart.merger']], function () {
/** /**
* Cart merger middleware. This middleware will take care of the items * Authenticated routes. All the routes inside this, will be passed
* which are deactivated at the time of buy now functionality. If somehow * by customer middleware.
* user redirects without completing the checkout then this will merge
* full cart.
*
* If some routes are not able to merge the cart, then place the route in this
* group.
*/ */
Route::group(['middleware' => ['cart.merger']], function () { Route::group(['middleware' => ['customer']], function () {
/** /**
* Authenticated routes. All the routes inside this, will be passed * Customer compare products.
* by customer middleware.
*/ */
Route::group(['middleware' => ['customer']], function () { Route::get('/customer/account/comparison', [ComparisonController::class, 'getComparisonList'])
/** ->name('velocity.customer.product.compare')
* Customer compare products.
*/
Route::get('/customer/account/comparison', 'ComparisonController@getComparisonList')
->name('velocity.customer.product.compare')
->defaults('_config', [
'view' => 'shop::customers.account.compare.index'
]);
});
/**
* Guest compare products.
*/
Route::get('/comparison', 'ComparisonController@getComparisonList')
->name('velocity.product.compare')
->defaults('_config', [ ->defaults('_config', [
'view' => 'shop::guest.compare.index' 'view' => 'shop::customers.account.compare.index'
]); ]);
Route::put('/comparison', 'ComparisonController@addCompareProduct')
->name('customer.product.add.compare');
Route::delete('/comparison', 'ComparisonController@deleteComparisonProduct')
->name('customer.product.delete.compare');
/**
* Categories and products.
*/
Route::get('/product-details/{slug}', 'ShopController@fetchProductDetails')
->name('velocity.shop.product');
Route::get('/categorysearch', 'ShopController@search')
->name('velocity.search.index')
->defaults('_config', [
'view' => 'shop::search.search'
]);
Route::get('/fancy-category-details/{slug}', 'ShopController@fetchFancyCategoryDetails')
->name('velocity.fancy.category.details');
Route::get('/category-details', 'ShopController@categoryDetails')
->name('velocity.category.details');
Route::get('/category-products/{categoryId}', 'ShopController@getCategoryProducts')
->name('velocity.category.products');
}); });
/** /**
* Cart, coupons and checkout. * Guest compare products.
*/ */
Route::get('/mini-cart', 'CartController@getMiniCartDetails') Route::get('/comparison', [ComparisonController::class, 'getComparisonList'])
->name('velocity.cart.get.details'); ->name('velocity.product.compare')
->defaults('_config', [
'view' => 'shop::guest.compare.index'
]);
Route::post('/cart/add', 'CartController@addProductToCart') Route::put('/comparison', [ComparisonController::class, 'addCompareProduct'])
->name('velocity.cart.add.product'); ->name('customer.product.add.compare');
Route::delete('/cart/remove/{id}', 'CartController@removeProductFromCart') Route::delete('/comparison', [ComparisonController::class, 'deleteComparisonProduct'])
->name('velocity.cart.remove.product'); ->name('customer.product.delete.compare');
Route::get('/categories', 'ShopController@fetchCategories') /**
->name('velocity.categoriest'); * Categories and products.
*/
Route::get('/product-details/{slug}', [ShopController::class, 'fetchProductDetails'])
->name('velocity.shop.product');
Route::get('/items-count', 'ShopController@getItemsCount') Route::get('/categorysearch', [ShopController::class, 'search'])
->name('velocity.product.item-count'); ->name('velocity.search.index')
->defaults('_config', [
'view' => 'shop::search.search'
]);
Route::get('/detailed-products', 'ShopController@getDetailedProducts') Route::get('/fancy-category-details/{slug}', [ShopController::class, 'fetchFancyCategoryDetails'])
->name('velocity.product.details'); ->name('velocity.fancy.category.details');
Route::get('/category-details', [ShopController::class, 'categoryDetails'])
->name('velocity.category.details');
Route::get('/category-products/{categoryId}', [ShopController::class, 'getCategoryProducts'])
->name('velocity.category.products');
}); });
/**
* Cart, coupons and checkout.
*/
Route::get('/mini-cart', [CartController::class, 'getMiniCartDetails'])
->name('velocity.cart.get.details');
Route::post('/cart/add', [CartController::class, 'addProductToCart'])
->name('velocity.cart.add.product');
Route::delete('/cart/remove/{id}', [CartController::class, 'removeProductFromCart'])
->name('velocity.cart.remove.product');
Route::get('/categories', [ShopController::class, 'fetchCategories'])
->name('velocity.categoriest');
Route::get('/items-count', [ShopController::class, 'getItemsCount'])
->name('velocity.product.item-count');
Route::get('/detailed-products', [ShopController::class, 'getDetailedProducts'])
->name('velocity.product.details');
}); });