Merge branch 'master' into frontend-breadcrumb

This commit is contained in:
Devansh 2021-10-22 17:19:02 +05:30
commit 8283cf398b
15 changed files with 1186 additions and 992 deletions

View File

@ -1,933 +0,0 @@
<?php
// Controllers
use Webkul\Admin\Http\Controllers\Controller;
use Webkul\Admin\Http\Controllers\ConfigurationController;
use Webkul\Admin\Http\Controllers\Customer\AddressController;
use Webkul\Admin\Http\Controllers\Customer\CustomerController;
use Webkul\Admin\Http\Controllers\Customer\CustomerGroupController;
use Webkul\Admin\Http\Controllers\DashboardController;
use Webkul\Admin\Http\Controllers\ExportController;
use Webkul\Admin\Http\Controllers\Sales\InvoiceController;
use Webkul\Admin\Http\Controllers\Sales\OrderController;
use Webkul\Admin\Http\Controllers\Sales\RefundController;
use Webkul\Admin\Http\Controllers\Sales\ShipmentController;
use Webkul\Admin\Http\Controllers\Sales\TransactionController;
use Webkul\Admin\Http\Controllers\TinyMCEController;
use Webkul\Attribute\Http\Controllers\AttributeController;
use Webkul\Attribute\Http\Controllers\AttributeFamilyController;
use Webkul\CartRule\Http\Controllers\CartRuleController;
use Webkul\CartRule\Http\Controllers\CartRuleCouponController;
use Webkul\CatalogRule\Http\Controllers\CatalogRuleController;
use Webkul\Category\Http\Controllers\CategoryController;
use Webkul\CMS\Http\Controllers\Admin\PageController;
use Webkul\Core\Http\Controllers\ChannelController;
use Webkul\Core\Http\Controllers\CurrencyController;
use Webkul\Core\Http\Controllers\ExchangeRateController;
use Webkul\Core\Http\Controllers\LocaleController;
use Webkul\Core\Http\Controllers\SliderController;
use Webkul\Core\Http\Controllers\SubscriptionController;
use Webkul\Inventory\Http\Controllers\InventorySourceController;
use Webkul\Marketing\Http\Controllers\CampaignController;
use Webkul\Marketing\Http\Controllers\EventController;
use Webkul\Marketing\Http\Controllers\TemplateController;
use Webkul\Product\Http\Controllers\ProductController;
use Webkul\Product\Http\Controllers\ReviewController;
use Webkul\Tax\Http\Controllers\TaxController;
use Webkul\Tax\Http\Controllers\TaxCategoryController;
use Webkul\Tax\Http\Controllers\TaxRateController;
use Webkul\User\Http\Controllers\AccountController;
use Webkul\User\Http\Controllers\ForgetPasswordController;
use Webkul\User\Http\Controllers\ResetPasswordController;
use Webkul\User\Http\Controllers\RoleController;
use Webkul\User\Http\Controllers\SessionController;
use Webkul\User\Http\Controllers\UserController;
Route::group(['middleware' => ['web', 'admin_locale']], function () {
Route::prefix(config('app.admin_url'))->group(function () {
Route::get('/', [Controller::class, 'redirectToLogin']);
// Login Routes
Route::get('/login', [SessionController::class, 'create'])->defaults('_config', [
'view' => 'admin::users.sessions.create',
])->name('admin.session.create');
//login post route to admin auth controller
Route::post('/login', [SessionController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.dashboard.index',
])->name('admin.session.store');
// Forget Password Routes
Route::get('/forget-password', [ForgetPasswordController::class, 'create'])->defaults('_config', [
'view' => 'admin::users.forget-password.create',
])->name('admin.forget-password.create');
Route::post('/forget-password', [ForgetPasswordController::class, 'store'])->name('admin.forget-password.store');
// Reset Password Routes
Route::get('/reset-password/{token}', [ResetPasswordController::class, 'create'])->defaults('_config', [
'view' => 'admin::users.reset-password.create',
])->name('admin.reset-password.create');
Route::post('/reset-password', [ResetPasswordController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.dashboard.index',
])->name('admin.reset-password.store');
// Admin Routes
Route::group(['middleware' => ['admin']], function () {
Route::get('/logout', [SessionController::class, 'destroy'])->defaults('_config', [
'redirect' => 'admin.session.create',
])->name('admin.session.destroy');
/**
* Tinymce file upload handler.
*/
Route::post('tinymce/upload', [TinyMCEController::class, 'upload'])
->name('admin.tinymce.upload');
// Dashboard Route
Route::get('dashboard', [DashboardController::class, 'index'])->defaults('_config', [
'view' => 'admin::dashboard.index',
])->name('admin.dashboard.index');
// Customer Management Routes
Route::get('customers', [CustomerController::class, 'index'])->defaults('_config', [
'view' => 'admin::customers.index',
])->name('admin.customer.index');
Route::get('customers/create', [CustomerController::class, 'create'])->defaults('_config', [
'view' => 'admin::customers.create',
])->name('admin.customer.create');
Route::post('customers/create', [CustomerController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.customer.index',
])->name('admin.customer.store');
Route::get('customers/edit/{id}', [CustomerController::class, 'edit'])->defaults('_config', [
'view' => 'admin::customers.edit',
])->name('admin.customer.edit');
Route::get('customers/note/{id}', [CustomerController::class, 'createNote'])->defaults('_config', [
'view' => 'admin::customers.note',
])->name('admin.customer.note.create');
Route::put('customers/note/{id}', [CustomerController::class, 'storeNote'])->defaults('_config', [
'redirect' => 'admin.customer.index',
])->name('admin.customer.note.store');
Route::put('customers/edit/{id}', [CustomerController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.customer.index',
])->name('admin.customer.update');
Route::post('customers/delete/{id}', [CustomerController::class, 'destroy'])->name('admin.customer.delete');
Route::post('customers/masssdelete', [CustomerController::class, 'massDestroy'])->name('admin.customer.mass-delete');
Route::post('customers/masssupdate', [CustomerController::class, 'massUpdate'])->name('admin.customer.mass-update');
Route::get('reviews', [ReviewController::class, 'index'])->defaults('_config', [
'view' => 'admin::customers.reviews.index',
])->name('admin.customer.review.index');
// Customer's addresses routes
Route::get('customers/{id}/addresses', [AddressController::class, 'index'])->defaults('_config', [
'view' => 'admin::customers.addresses.index',
])->name('admin.customer.addresses.index');
Route::get('customers/{id}/addresses/create', [AddressController::class, 'create'])->defaults('_config', [
'view' => 'admin::customers.addresses.create',
])->name('admin.customer.addresses.create');
Route::post('customers/{id}/addresses/create', [AddressController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.customer.addresses.index',
])->name('admin.customer.addresses.store');
Route::get('customers/addresses/edit/{id}', [AddressController::class, 'edit'])->defaults('_config', [
'view' => 'admin::customers.addresses.edit',
])->name('admin.customer.addresses.edit');
Route::put('customers/addresses/edit/{id}', [AddressController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.customer.addresses.index',
])->name('admin.customer.addresses.update');
Route::post('customers/addresses/delete/{id}', [AddressController::class, 'destroy'])->defaults('_config', [
'redirect' => 'admin.customer.addresses.index',
])->name('admin.customer.addresses.delete');
//mass destroy
Route::post('customers/{id}/addresses', [AddressController::class, 'massDestroy'])->defaults('_config', [
'redirect' => 'admin.customer.addresses.index',
])->name('admin.customer.addresses.massdelete');
// Customer's invoices route
Route::get('customers/{id}/invoices', [CustomerController::class, 'invoices'])->name('admin.customer.invoices.data');
// Customer's orders route
Route::get('customers/{id}/orders', [CustomerController::class, 'orders'])->defaults('_config', [
'view' => 'admin::customers.orders.index',
])->name('admin.customer.orders.data');
// Configuration routes
Route::get('configuration/{slug?}/{slug2?}', [ConfigurationController::class, 'index'])->defaults('_config', [
'view' => 'admin::configuration.index',
])->name('admin.configuration.index');
Route::post('configuration/{slug?}/{slug2?}', [ConfigurationController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.configuration.index',
])->name('admin.configuration.index.store');
Route::get('configuration/{slug?}/{slug2?}/{path}', [ConfigurationController::class, 'download'])->defaults('_config', [
'redirect' => 'admin.configuration.index',
])->name('admin.configuration.download');
// Reviews Routes
Route::get('reviews/edit/{id}', [ReviewController::class, 'edit'])->defaults('_config', [
'view' => 'admin::customers.reviews.edit',
])->name('admin.customer.review.edit');
Route::put('reviews/edit/{id}', [ReviewController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.customer.review.index',
])->name('admin.customer.review.update');
Route::post('reviews/delete/{id}', [ReviewController::class, 'destroy'])->defaults('_config', [
'redirect' => 'admin.customer.review.index',
])->name('admin.customer.review.delete');
//mass destroy
Route::post('reviews/massdestroy', [ReviewController::class, 'massDestroy'])->defaults('_config', [
'redirect' => 'admin.customer.review.index',
])->name('admin.customer.review.massdelete');
//mass update
Route::post('reviews/massupdate', [ReviewController::class, 'massUpdate'])->defaults('_config', [
'redirect' => 'admin.customer.review.index',
])->name('admin.customer.review.massupdate');
// Customer Groups Routes
Route::get('groups', [CustomerGroupController::class, 'index'])->defaults('_config', [
'view' => 'admin::customers.groups.index',
])->name('admin.groups.index');
Route::get('groups/create', [CustomerGroupController::class, 'create'])->defaults('_config', [
'view' => 'admin::customers.groups.create',
])->name('admin.groups.create');
Route::post('groups/create', [CustomerGroupController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.groups.index',
])->name('admin.groups.store');
Route::get('groups/edit/{id}', [CustomerGroupController::class, 'edit'])->defaults('_config', [
'view' => 'admin::customers.groups.edit',
])->name('admin.groups.edit');
Route::put('groups/edit/{id}', [CustomerGroupController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.groups.index',
])->name('admin.groups.update');
Route::post('groups/delete/{id}', [CustomerGroupController::class, 'destroy'])->name('admin.groups.delete');
// Sales Routes
Route::prefix('sales')->group(function () {
// Sales Order Routes
Route::get('/orders', [OrderController::class, 'index'])->defaults('_config', [
'view' => 'admin::sales.orders.index',
])->name('admin.sales.orders.index');
Route::get('/orders/view/{id}', [OrderController::class, 'view'])->defaults('_config', [
'view' => 'admin::sales.orders.view',
])->name('admin.sales.orders.view');
Route::get('/orders/cancel/{id}', [OrderController::class, 'cancel'])->defaults('_config', [
'view' => 'admin::sales.orders.cancel',
])->name('admin.sales.orders.cancel');
Route::post('/orders/create/{order_id}', [OrderController::class, 'comment'])->name('admin.sales.orders.comment');
// Sales Invoices Routes
Route::get('/invoices', [InvoiceController::class, 'index'])->defaults('_config', [
'view' => 'admin::sales.invoices.index',
])->name('admin.sales.invoices.index');
Route::get('/invoices/create/{order_id}', [InvoiceController::class, 'create'])->defaults('_config', [
'view' => 'admin::sales.invoices.create',
])->name('admin.sales.invoices.create');
Route::post('/invoices/create/{order_id}', [InvoiceController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.sales.orders.view',
])->name('admin.sales.invoices.store');
Route::get('/invoices/view/{id}', [InvoiceController::class, 'view'])->defaults('_config', [
'view' => 'admin::sales.invoices.view',
])->name('admin.sales.invoices.view');
Route::get('/invoices/print/{id}', [InvoiceController::class, 'print'])->defaults('_config', [
'view' => 'admin::sales.invoices.print',
])->name('admin.sales.invoices.print');
// Sales Shipments Routes
Route::get('/shipments', [ShipmentController::class, 'index'])->defaults('_config', [
'view' => 'admin::sales.shipments.index',
])->name('admin.sales.shipments.index');
Route::get('/shipments/create/{order_id}', [ShipmentController::class, 'create'])->defaults('_config', [
'view' => 'admin::sales.shipments.create',
])->name('admin.sales.shipments.create');
Route::post('/shipments/create/{order_id}', [ShipmentController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.sales.orders.view',
])->name('admin.sales.shipments.store');
Route::get('/shipments/view/{id}', [ShipmentController::class, 'view'])->defaults('_config', [
'view' => 'admin::sales.shipments.view',
])->name('admin.sales.shipments.view');
// Sales Redunds Routes
Route::get('/refunds', [RefundController::class, 'index'])->defaults('_config', [
'view' => 'admin::sales.refunds.index',
])->name('admin.sales.refunds.index');
Route::get('/refunds/create/{order_id}', [RefundController::class, 'create'])->defaults('_config', [
'view' => 'admin::sales.refunds.create',
])->name('admin.sales.refunds.create');
Route::post('/refunds/create/{order_id}', [RefundController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.sales.orders.view',
])->name('admin.sales.refunds.store');
Route::post('/refunds/update-qty/{order_id}', [RefundController::class, 'updateQty'])->defaults('_config', [
'redirect' => 'admin.sales.orders.view',
])->name('admin.sales.refunds.update_qty');
Route::get('/refunds/view/{id}', [RefundController::class, 'view'])->defaults('_config', [
'view' => 'admin::sales.refunds.view',
])->name('admin.sales.refunds.view');
// Sales Transactions Routes
Route::get('/transactions', [TransactionController::class, 'index'])->defaults('_config', [
'view' => 'admin::sales.transactions.index',
])->name('admin.sales.transactions.index');
Route::get('/transactions/create', [TransactionController::class, 'create'])->defaults('_config', [
'view' => 'admin::sales.transactions.create',
])->name('admin.sales.transactions.create');
Route::post('/transactions/create', [TransactionController::class, 'store'])->name('admin.sales.transactions.store');
Route::get('/transactions/view/{id}', [TransactionController::class, 'view'])->defaults('_config', [
'view' => 'admin::sales.transactions.view',
])->name('admin.sales.transactions.view');
});
// Catalog Routes
Route::prefix('catalog')->group(function () {
Route::get('/sync', [ProductController::class, 'sync']);
// Catalog Product Routes
Route::get('/products', [ProductController::class, 'index'])->defaults('_config', [
'view' => 'admin::catalog.products.index',
])->name('admin.catalog.products.index');
Route::get('/products/create', [ProductController::class, 'create'])->defaults('_config', [
'view' => 'admin::catalog.products.create',
])->name('admin.catalog.products.create');
Route::post('/products/create', [ProductController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.catalog.products.edit',
])->name('admin.catalog.products.store');
Route::get('products/copy/{id}', [ProductController::class, 'copy'])->defaults('_config', [
'view' => 'admin::catalog.products.edit',
])->name('admin.catalog.products.copy');
Route::get('/products/edit/{id}', [ProductController::class, 'edit'])->defaults('_config', [
'view' => 'admin::catalog.products.edit',
])->name('admin.catalog.products.edit');
Route::put('/products/edit/{id}', [ProductController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.catalog.products.index',
])->name('admin.catalog.products.update');
Route::put('/products/edit/{id}/inventories', [ProductController::class, 'updateInventories'])->defaults('_config', [
'redirect' => 'admin.catalog.products.index',
])->name('admin.catalog.products.update-inventories');
Route::post('/products/upload-file/{id}', [ProductController::class, 'uploadLink'])->name('admin.catalog.products.upload_link');
Route::post('/products/upload-sample/{id}', [ProductController::class, 'uploadSample'])->name('admin.catalog.products.upload_sample');
//product delete
Route::post('/products/delete/{id}', [ProductController::class, 'destroy'])->name('admin.catalog.products.delete');
//product massaction
Route::post('products/massaction', [ProductController::class, 'massActionHandler'])->name('admin.catalog.products.massaction');
//product massdelete
Route::post('products/massdelete', [ProductController::class, 'massDestroy'])->defaults('_config', [
'redirect' => 'admin.catalog.products.index',
])->name('admin.catalog.products.massdelete');
//product massupdate
Route::post('products/massupdate', [ProductController::class, 'massUpdate'])->defaults('_config', [
'redirect' => 'admin.catalog.products.index',
])->name('admin.catalog.products.massupdate');
//product search for linked products
Route::get('products/search', [ProductController::class, 'productLinkSearch'])->defaults('_config', [
'view' => 'admin::catalog.products.edit',
])->name('admin.catalog.products.productlinksearch');
Route::get('products/search-simple-products', [ProductController::class, 'searchSimpleProducts'])->name('admin.catalog.products.search_simple_product');
Route::get('/products/{id}/{attribute_id}', [ProductController::class, 'download'])->defaults('_config', [
'view' => 'admin.catalog.products.edit',
])->name('admin.catalog.products.file.download');
// Catalog Category Routes
Route::get('/categories', [CategoryController::class, 'index'])->defaults('_config', [
'view' => 'admin::catalog.categories.index',
])->name('admin.catalog.categories.index');
Route::get('/categories/create', [CategoryController::class, 'create'])->defaults('_config', [
'view' => 'admin::catalog.categories.create',
])->name('admin.catalog.categories.create');
Route::post('/categories/create', [CategoryController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.catalog.categories.index',
])->name('admin.catalog.categories.store');
Route::get('/categories/edit/{id}', [CategoryController::class, 'edit'])->defaults('_config', [
'view' => 'admin::catalog.categories.edit',
])->name('admin.catalog.categories.edit');
Route::put('/categories/edit/{id}', [CategoryController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.catalog.categories.index',
])->name('admin.catalog.categories.update');
Route::post('/categories/delete/{id}', [CategoryController::class, 'destroy'])->name('admin.catalog.categories.delete');
//category massdelete
Route::post('categories/massdelete', [CategoryController::class, 'massDestroy'])->defaults('_config', [
'redirect' => 'admin.catalog.categories.index',
])->name('admin.catalog.categories.massdelete');
Route::post('/categories/product/count', [CategoryController::class, 'categoryProductCount'])->name('admin.catalog.categories.product.count');
// Catalog Attribute Routes
Route::get('/attributes', [AttributeController::class, 'index'])->defaults('_config', [
'view' => 'admin::catalog.attributes.index',
])->name('admin.catalog.attributes.index');
Route::get('/attributes/{id}/options', [AttributeController::class, 'getAttributeOptions'])->defaults('_config', [
'view' => 'admin::catalog.attributes.options',
])->name('admin.catalog.attributes.options');
Route::get('/attributes/create', [AttributeController::class, 'create'])->defaults('_config', [
'view' => 'admin::catalog.attributes.create',
])->name('admin.catalog.attributes.create');
Route::post('/attributes/create', [AttributeController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.catalog.attributes.index',
])->name('admin.catalog.attributes.store');
Route::get('/attributes/edit/{id}', [AttributeController::class, 'edit'])->defaults('_config', [
'view' => 'admin::catalog.attributes.edit',
])->name('admin.catalog.attributes.edit');
Route::put('/attributes/edit/{id}', [AttributeController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.catalog.attributes.index',
])->name('admin.catalog.attributes.update');
Route::post('/attributes/delete/{id}', [AttributeController::class, 'destroy'])->name('admin.catalog.attributes.delete');
Route::post('/attributes/massdelete', [AttributeController::class, 'massDestroy'])->name('admin.catalog.attributes.massdelete');
// Catalog Family Routes
Route::get('/families', [AttributeFamilyController::class, 'index'])->defaults('_config', [
'view' => 'admin::catalog.families.index',
])->name('admin.catalog.families.index');
Route::get('/families/create', [AttributeFamilyController::class, 'create'])->defaults('_config', [
'view' => 'admin::catalog.families.create',
])->name('admin.catalog.families.create');
Route::post('/families/create', [AttributeFamilyController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.catalog.families.index',
])->name('admin.catalog.families.store');
Route::get('/families/edit/{id}', [AttributeFamilyController::class, 'edit'])->defaults('_config', [
'view' => 'admin::catalog.families.edit',
])->name('admin.catalog.families.edit');
Route::put('/families/edit/{id}', [AttributeFamilyController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.catalog.families.index',
])->name('admin.catalog.families.update');
Route::post('/families/delete/{id}', [AttributeFamilyController::class, 'destroy'])->name('admin.catalog.families.delete');
});
// User Routes
//datagrid for backend users
Route::get('/users', [UserController::class, 'index'])->defaults('_config', [
'view' => 'admin::users.users.index',
])->name('admin.users.index');
//create backend user get
Route::get('/users/create', [UserController::class, 'create'])->defaults('_config', [
'view' => 'admin::users.users.create',
])->name('admin.users.create');
//create backend user post
Route::post('/users/create', [UserController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.users.index',
])->name('admin.users.store');
//delete backend user view
Route::get('/users/edit/{id}', [UserController::class, 'edit'])->defaults('_config', [
'view' => 'admin::users.users.edit',
])->name('admin.users.edit');
//edit backend user submit
Route::put('/users/edit/{id}', [UserController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.users.index',
])->name('admin.users.update');
//delete backend user
Route::post('/users/delete/{id}', [UserController::class, 'destroy'])->name('admin.users.delete');
Route::get('/users/confirm/{id}', [UserController::class, 'confirm'])->defaults('_config', [
'view' => 'admin::customers.confirm-password',
])->name('super.users.confirm');
Route::post('/users/confirm/{id}', [UserController::class, 'destroySelf'])->defaults('_config', [
'redirect' => 'admin.users.index',
])->name('admin.users.destroy');
// User Role Routes
Route::get('/roles', [RoleController::class, 'index'])->defaults('_config', [
'view' => 'admin::users.roles.index',
])->name('admin.roles.index');
Route::get('/roles/create', [RoleController::class, 'create'])->defaults('_config', [
'view' => 'admin::users.roles.create',
])->name('admin.roles.create');
Route::post('/roles/create', [RoleController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.roles.index',
])->name('admin.roles.store');
Route::get('/roles/edit/{id}', [RoleController::class, 'edit'])->defaults('_config', [
'view' => 'admin::users.roles.edit',
])->name('admin.roles.edit');
Route::put('/roles/edit/{id}', [RoleController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.roles.index',
])->name('admin.roles.update');
Route::post('/roles/delete/{id}', [RoleController::class, 'destroy'])->name('admin.roles.delete');
// Locale Routes
Route::get('/locales', [LocaleController::class, 'index'])->defaults('_config', [
'view' => 'admin::settings.locales.index',
])->name('admin.locales.index');
Route::get('/locales/create', [LocaleController::class, 'create'])->defaults('_config', [
'view' => 'admin::settings.locales.create',
])->name('admin.locales.create');
Route::post('/locales/create', [LocaleController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.locales.index',
])->name('admin.locales.store');
Route::get('/locales/edit/{id}', [LocaleController::class, 'edit'])->defaults('_config', [
'view' => 'admin::settings.locales.edit',
])->name('admin.locales.edit');
Route::put('/locales/edit/{id}', [LocaleController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.locales.index',
])->name('admin.locales.update');
Route::post('/locales/delete/{id}', [LocaleController::class, 'destroy'])->name('admin.locales.delete');
// Currency Routes
Route::get('/currencies', [CurrencyController::class, 'index'])->defaults('_config', [
'view' => 'admin::settings.currencies.index',
])->name('admin.currencies.index');
Route::get('/currencies/create', [CurrencyController::class, 'create'])->defaults('_config', [
'view' => 'admin::settings.currencies.create',
])->name('admin.currencies.create');
Route::post('/currencies/create', [CurrencyController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.currencies.index',
])->name('admin.currencies.store');
Route::get('/currencies/edit/{id}', [CurrencyController::class, 'edit'])->defaults('_config', [
'view' => 'admin::settings.currencies.edit',
])->name('admin.currencies.edit');
Route::put('/currencies/edit/{id}', [CurrencyController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.currencies.index',
])->name('admin.currencies.update');
Route::post('/currencies/delete/{id}', [CurrencyController::class, 'destroy'])->name('admin.currencies.delete');
Route::post('/currencies/massdelete', [CurrencyController::class, 'massDestroy'])->name('admin.currencies.massdelete');
// Exchange Rates Routes
Route::get('/exchange_rates', [ExchangeRateController::class, 'index'])->defaults('_config', [
'view' => 'admin::settings.exchange_rates.index',
])->name('admin.exchange_rates.index');
Route::get('/exchange_rates/create', [ExchangeRateController::class, 'create'])->defaults('_config', [
'view' => 'admin::settings.exchange_rates.create',
])->name('admin.exchange_rates.create');
Route::post('/exchange_rates/create', [ExchangeRateController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.exchange_rates.index',
])->name('admin.exchange_rates.store');
Route::get('/exchange_rates/edit/{id}', [ExchangeRateController::class, 'edit'])->defaults('_config', [
'view' => 'admin::settings.exchange_rates.edit',
])->name('admin.exchange_rates.edit');
Route::get('/exchange_rates/update-rates', [ExchangeRateController::class, 'updateRates'])->name('admin.exchange_rates.update_rates');
Route::put('/exchange_rates/edit/{id}', [ExchangeRateController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.exchange_rates.index',
])->name('admin.exchange_rates.update');
Route::post('/exchange_rates/delete/{id}', [ExchangeRateController::class, 'destroy'])->name('admin.exchange_rates.delete');
// Inventory Source Routes
Route::get('/inventory_sources', [InventorySourceController::class, 'index'])->defaults('_config', [
'view' => 'admin::settings.inventory_sources.index',
])->name('admin.inventory_sources.index');
Route::get('/inventory_sources/create', [InventorySourceController::class, 'create'])->defaults('_config', [
'view' => 'admin::settings.inventory_sources.create',
])->name('admin.inventory_sources.create');
Route::post('/inventory_sources/create', [InventorySourceController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.inventory_sources.index',
])->name('admin.inventory_sources.store');
Route::get('/inventory_sources/edit/{id}', [InventorySourceController::class, 'edit'])->defaults('_config', [
'view' => 'admin::settings.inventory_sources.edit',
])->name('admin.inventory_sources.edit');
Route::put('/inventory_sources/edit/{id}', [InventorySourceController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.inventory_sources.index',
])->name('admin.inventory_sources.update');
Route::post('/inventory_sources/delete/{id}', [InventorySourceController::class, 'destroy'])->name('admin.inventory_sources.delete');
// Channel Routes
Route::get('/channels', [ChannelController::class, 'index'])->defaults('_config', [
'view' => 'admin::settings.channels.index',
])->name('admin.channels.index');
Route::get('/channels/create', [ChannelController::class, 'create'])->defaults('_config', [
'view' => 'admin::settings.channels.create',
])->name('admin.channels.create');
Route::post('/channels/create', [ChannelController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.channels.index',
])->name('admin.channels.store');
Route::get('/channels/edit/{id}', [ChannelController::class, 'edit'])->defaults('_config', [
'view' => 'admin::settings.channels.edit',
])->name('admin.channels.edit');
Route::put('/channels/edit/{id}', [ChannelController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.channels.index',
])->name('admin.channels.update');
Route::post('/channels/delete/{id}', [ChannelController::class, 'destroy'])->name('admin.channels.delete');
// Admin Profile route
Route::get('/account', [AccountController::class, 'edit'])->defaults('_config', [
'view' => 'admin::account.edit',
])->name('admin.account.edit');
Route::put('/account', [AccountController::class, 'update'])->name('admin.account.update');
//slider index
Route::get('/slider', [SliderController::class, 'index'])->defaults('_config', [
'view' => 'admin::settings.sliders.index',
])->name('admin.sliders.index');
//slider create show
Route::get('slider/create', [SliderController::class, 'create'])->defaults('_config', [
'view' => 'admin::settings.sliders.create',
])->name('admin.sliders.create');
//slider create show
Route::post('slider/create', [SliderController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.sliders.index',
])->name('admin.sliders.store');
//slider edit show
Route::get('slider/edit/{id}', [SliderController::class, 'edit'])->defaults('_config', [
'view' => 'admin::settings.sliders.edit',
])->name('admin.sliders.edit');
//slider edit update
Route::post('slider/edit/{id}', [SliderController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.sliders.index',
])->name('admin.sliders.update');
//destroy a slider item
Route::post('slider/delete/{id}', [SliderController::class, 'destroy'])->name('admin.sliders.delete');
//tax routes
Route::get('/tax-categories', [TaxController::class, 'index'])->defaults('_config', [
'view' => 'admin::tax.tax-categories.index',
])->name('admin.tax-categories.index');
// tax category routes
Route::get('/tax-categories/create', [TaxCategoryController::class, 'show'])->defaults('_config', [
'view' => 'admin::tax.tax-categories.create',
])->name('admin.tax-categories.create');
Route::post('/tax-categories/create', [TaxCategoryController::class, 'create'])->defaults('_config', [
'redirect' => 'admin.tax-categories.index',
])->name('admin.tax-categories.store');
Route::get('/tax-categories/edit/{id}', [TaxCategoryController::class, 'edit'])->defaults('_config', [
'view' => 'admin::tax.tax-categories.edit',
])->name('admin.tax-categories.edit');
Route::put('/tax-categories/edit/{id}', [TaxCategoryController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.tax-categories.index',
])->name('admin.tax-categories.update');
Route::post('/tax-categories/delete/{id}', [TaxCategoryController::class, 'destroy'])->name('admin.tax-categories.delete');
//tax category ends
//tax rate
Route::get('tax-rates', [TaxRateController::class, 'index'])->defaults('_config', [
'view' => 'admin::tax.tax-rates.index',
])->name('admin.tax-rates.index');
Route::get('tax-rates/create', [TaxRateController::class, 'show'])->defaults('_config', [
'view' => 'admin::tax.tax-rates.create',
])->name('admin.tax-rates.create');
Route::post('tax-rates/create', [TaxRateController::class, 'create'])->defaults('_config', [
'redirect' => 'admin.tax-rates.index',
])->name('admin.tax-rates.store');
Route::get('tax-rates/edit/{id}', [TaxRateController::class, 'edit'])->defaults('_config', [
'view' => 'admin::tax.tax-rates.edit',
])->name('admin.tax-rates.edit');
Route::put('tax-rates/update/{id}', [TaxRateController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.tax-rates.index',
])->name('admin.tax-rates.update');
Route::post('/tax-rates/delete/{id}', [TaxRateController::class, 'destroy'])->name('admin.tax-rates.delete');
Route::post('/tax-rates/import', [TaxRateController::class, 'import'])->defaults('_config', [
'redirect' => 'admin.tax-rates.index',
])->name('admin.tax-rates.import');
//tax rate ends
//DataGrid Export
Route::post(config('app.admin_url') . '/export', [ExportController::class, 'export'])->name('admin.datagrid.export');
Route::prefix('promotions')->group(function () {
Route::get('cart-rules', [CartRuleController::class, 'index'])->defaults('_config', [
'view' => 'admin::marketing.promotions.cart-rules.index',
])->name('admin.cart-rules.index');
Route::get('cart-rules/create', [CartRuleController::class, 'create'])->defaults('_config', [
'view' => 'admin::marketing.promotions.cart-rules.create',
])->name('admin.cart-rules.create');
Route::post('cart-rules/create', [CartRuleController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.cart-rules.index',
])->name('admin.cart-rules.store');
Route::get('cart-rules/copy/{id}', [CartRuleController::class, 'copy'])->defaults('_config', [
'view' => 'admin::marketing.promotions.cart-rules.edit',
])->name('admin.cart-rules.copy');
Route::get('cart-rules/edit/{id}', [CartRuleController::class, 'edit'])->defaults('_config', [
'view' => 'admin::marketing.promotions.cart-rules.edit',
])->name('admin.cart-rules.edit');
Route::post('cart-rules/edit/{id}', [CartRuleController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.cart-rules.index',
])->name('admin.cart-rules.update');
Route::post('cart-rules/delete/{id}', [CartRuleController::class, 'destroy'])->name('admin.cart-rules.delete');
Route::post('cart-rules/generate-coupons/{id?}', [CartRuleController::class, 'generateCoupons'])->name('admin.cart-rules.generate-coupons');
Route::post('/massdelete', [CartRuleCouponController::class, 'massDelete'])->name('admin.cart-rule-coupons.mass-delete');
//Catalog rules
Route::get('catalog-rules', [CatalogRuleController::class, 'index'])->defaults('_config', [
'view' => 'admin::marketing.promotions.catalog-rules.index',
])->name('admin.catalog-rules.index');
Route::get('catalog-rules/create', [CatalogRuleController::class, 'create'])->defaults('_config', [
'view' => 'admin::marketing.promotions.catalog-rules.create',
])->name('admin.catalog-rules.create');
Route::post('catalog-rules/create', [CatalogRuleController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.catalog-rules.index',
])->name('admin.catalog-rules.store');
Route::get('catalog-rules/edit/{id}', [CatalogRuleController::class, 'edit'])->defaults('_config', [
'view' => 'admin::marketing.promotions.catalog-rules.edit',
])->name('admin.catalog-rules.edit');
Route::post('catalog-rules/edit/{id}', [CatalogRuleController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.catalog-rules.index',
])->name('admin.catalog-rules.update');
Route::post('catalog-rules/delete/{id}', [CatalogRuleController::class, 'destroy'])->name('admin.catalog-rules.delete');
//Marketing campaigns routes
Route::get('campaigns', [CampaignController::class, 'index'])->defaults('_config', [
'view' => 'admin::marketing.email-marketing.campaigns.index',
])->name('admin.campaigns.index');
Route::get('campaigns/create', [CampaignController::class, 'create'])->defaults('_config', [
'view' => 'admin::marketing.email-marketing.campaigns.create',
])->name('admin.campaigns.create');
Route::post('campaigns/create', [CampaignController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.campaigns.index',
])->name('admin.campaigns.store');
Route::get('campaigns/edit/{id}', [CampaignController::class, 'edit'])->defaults('_config', [
'view' => 'admin::marketing.email-marketing.campaigns.edit',
])->name('admin.campaigns.edit');
Route::post('campaigns/edit/{id}', [CampaignController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.campaigns.index',
])->name('admin.campaigns.update');
Route::post('campaigns/delete/{id}', [CampaignController::class, 'destroy'])->name('admin.campaigns.delete');
//Marketing emails templates routes
Route::get('email-templates', [TemplateController::class, 'index'])->defaults('_config', [
'view' => 'admin::marketing.email-marketing.templates.index',
])->name('admin.email-templates.index');
Route::get('email-templates/create', [TemplateController::class, 'create'])->defaults('_config', [
'view' => 'admin::marketing.email-marketing.templates.create',
])->name('admin.email-templates.create');
Route::post('email-templates/create', [TemplateController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.email-templates.index',
])->name('admin.email-templates.store');
Route::get('email-templates/edit/{id}', [TemplateController::class, 'edit'])->defaults('_config', [
'view' => 'admin::marketing.email-marketing.templates.edit',
])->name('admin.email-templates.edit');
Route::post('email-templates/edit/{id}', [TemplateController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.email-templates.index',
])->name('admin.email-templates.update');
Route::post('email-templates/delete/{id}', [TemplateController::class, 'destroy'])->name('admin.email-templates.delete');
//Marketing events routes
Route::get('events', [EventController::class, 'index'])->defaults('_config', [
'view' => 'admin::marketing.email-marketing.events.index',
])->name('admin.events.index');
Route::get('events/create', [EventController::class, 'create'])->defaults('_config', [
'view' => 'admin::marketing.email-marketing.events.create',
])->name('admin.events.create');
Route::post('events/create', [EventController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.events.index',
])->name('admin.events.store');
Route::get('events/edit/{id}', [EventController::class, 'edit'])->defaults('_config', [
'view' => 'admin::marketing.email-marketing.events.edit',
])->name('admin.events.edit');
Route::post('events/edit/{id}', [EventController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.events.index',
])->name('admin.events.update');
Route::post('events/delete/{id}', [EventController::class, 'destroy'])->name('admin.events.delete');
// Admin Store Front Settings Route
Route::get('/subscribers', [SubscriptionController::class, 'index'])->defaults('_config', [
'view' => 'admin::marketing.email-marketing.subscribers.index',
])->name('admin.customers.subscribers.index');
//destroy a newsletter subscription item
Route::post('subscribers/delete/{id}', [SubscriptionController::class, 'destroy'])->name('admin.customers.subscribers.delete');
Route::get('subscribers/edit/{id}', [SubscriptionController::class, 'edit'])->defaults('_config', [
'view' => 'admin::marketing.email-marketing.subscribers.edit',
])->name('admin.customers.subscribers.edit');
Route::put('subscribers/update/{id}', [SubscriptionController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.customers.subscribers.index',
])->name('admin.customers.subscribers.update');
});
Route::prefix('cms')->group(function () {
Route::get('/', [PageController::class, 'index'])->defaults('_config', [
'view' => 'admin::cms.index',
])->name('admin.cms.index');
Route::get('create', [PageController::class, 'create'])->defaults('_config', [
'view' => 'admin::cms.create',
])->name('admin.cms.create');
Route::post('create', [PageController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.cms.index',
])->name('admin.cms.store');
Route::get('edit/{id}', [PageController::class, 'edit'])->defaults('_config', [
'view' => 'admin::cms.edit',
])->name('admin.cms.edit');
Route::post('edit/{id}', [PageController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.cms.index',
])->name('admin.cms.update');
Route::post('/delete/{id}', [PageController::class, 'delete'])->defaults('_config', [
'redirect' => 'admin.cms.index',
])->name('admin.cms.delete');
Route::post('/massdelete', [PageController::class, 'massDelete'])->defaults('_config', [
'redirect' => 'admin.cms.index',
])->name('admin.cms.mass-delete');
// Route::post('/delete/{id}', 'Webkul\CMS\Http\Controllers\Admin\PageController@delete')->defaults('_config', [
// 'redirect' => 'admin.cms.index'
// ])->name('admin.cms.delete');
});
});
});
});

View File

@ -2,10 +2,10 @@
namespace Webkul\Admin\Providers;
use Webkul\Core\Tree;
use Illuminate\Routing\Router;
use Illuminate\Support\ServiceProvider;
use Webkul\Admin\Http\Middleware\Locale;
use Webkul\Core\Tree;
class AdminServiceProvider extends ServiceProvider
{
@ -16,18 +16,14 @@ class AdminServiceProvider extends ServiceProvider
*/
public function boot(Router $router)
{
$this->loadRoutesFrom(__DIR__ . '/../Http/routes.php');
$this->loadRoutesFrom(__DIR__ . '/../Routes/web.php');
$this->loadTranslationsFrom(__DIR__ . '/../Resources/lang', 'admin');
$this->publishes([__DIR__ . '/../Resources/lang' => resource_path('lang/vendor/admin')]);
$this->publishes([
__DIR__ . '/../../publishable/assets' => public_path('vendor/webkul/admin/assets'),
], 'public');
$this->loadViewsFrom(__DIR__ . '/../Resources/views', 'admin');
$this->loadPublishers();
$this->composeView();
$this->registerACL();
@ -47,6 +43,41 @@ class AdminServiceProvider extends ServiceProvider
$this->registerConfig();
}
/**
* Register package config.
*
* @return void
*/
protected function registerConfig()
{
$this->mergeConfigFrom(
dirname(__DIR__) . '/Config/menu.php',
'menu.admin'
);
$this->mergeConfigFrom(
dirname(__DIR__) . '/Config/acl.php',
'acl'
);
$this->mergeConfigFrom(
dirname(__DIR__) . '/Config/system.php',
'core'
);
}
/**
* Load publishers.
*
* @return void
*/
protected function loadPublishers(): void
{
$this->publishes([__DIR__ . '/../Resources/lang' => resource_path('lang/vendor/admin')]);
$this->publishes([__DIR__ . '/../../publishable/assets' => public_path('vendor/webkul/admin/assets')], 'public');
}
/**
* Bind the data to the views.
*
@ -111,11 +142,11 @@ class AdminServiceProvider extends ServiceProvider
}
/**
* Registers acl to entire application
* Register ACL to entire application.
*
* @return void
*/
public function registerACL()
protected function registerACL()
{
$this->app->singleton('acl', function () {
return $this->createACL();
@ -127,7 +158,7 @@ class AdminServiceProvider extends ServiceProvider
*
* @return mixed
*/
public function createACL()
protected function createACL()
{
static $tree;
@ -145,27 +176,4 @@ class AdminServiceProvider extends ServiceProvider
return $tree;
}
/**
* Register package config.
*
* @return void
*/
protected function registerConfig()
{
$this->mergeConfigFrom(
dirname(__DIR__) . '/Config/menu.php',
'menu.admin'
);
$this->mergeConfigFrom(
dirname(__DIR__) . '/Config/acl.php',
'acl'
);
$this->mergeConfigFrom(
dirname(__DIR__) . '/Config/system.php',
'core'
);
}
}

View File

@ -0,0 +1,51 @@
<?php
use Illuminate\Support\Facades\Route;
use Webkul\Admin\Http\Controllers\Controller;
use Webkul\User\Http\Controllers\ForgetPasswordController;
use Webkul\User\Http\Controllers\ResetPasswordController;
use Webkul\User\Http\Controllers\SessionController;
/**
* Auth routes.
*/
Route::group(['middleware' => ['web', 'admin_locale'], 'prefix' => config('app.admin_url')], function () {
/**
* Redirect route.
*/
Route::get('/', [Controller::class, 'redirectToLogin']);
/**
* Login routes.
*/
Route::get('/login', [SessionController::class, 'create'])->defaults('_config', [
'view' => 'admin::users.sessions.create',
])->name('admin.session.create');
/**
* Login post route to admin auth controller.
*/
Route::post('/login', [SessionController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.dashboard.index',
])->name('admin.session.store');
/**
* Forget password routes.
*/
Route::get('/forget-password', [ForgetPasswordController::class, 'create'])->defaults('_config', [
'view' => 'admin::users.forget-password.create',
])->name('admin.forget-password.create');
Route::post('/forget-password', [ForgetPasswordController::class, 'store'])->name('admin.forget-password.store');
/**
* Reset password routes.
*/
Route::get('/reset-password/{token}', [ResetPasswordController::class, 'create'])->defaults('_config', [
'view' => 'admin::users.reset-password.create',
])->name('admin.reset-password.create');
Route::post('/reset-password', [ResetPasswordController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.dashboard.index',
])->name('admin.reset-password.store');
});

View File

@ -0,0 +1,163 @@
<?php
use Illuminate\Support\Facades\Route;
use Webkul\Attribute\Http\Controllers\AttributeController;
use Webkul\Attribute\Http\Controllers\AttributeFamilyController;
use Webkul\Category\Http\Controllers\CategoryController;
use Webkul\Product\Http\Controllers\ProductController;
/**
* Catalog routes.
*/
Route::group(['middleware' => ['web', 'admin', 'admin_locale'], 'prefix' => config('app.admin_url')], function () {
Route::prefix('catalog')->group(function () {
/**
* Sync route.
*/
Route::get('/sync', [ProductController::class, 'sync']);
/**
* Products routes.
*/
Route::get('/products', [ProductController::class, 'index'])->defaults('_config', [
'view' => 'admin::catalog.products.index',
])->name('admin.catalog.products.index');
Route::get('/products/create', [ProductController::class, 'create'])->defaults('_config', [
'view' => 'admin::catalog.products.create',
])->name('admin.catalog.products.create');
Route::post('/products/create', [ProductController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.catalog.products.edit',
])->name('admin.catalog.products.store');
Route::get('products/copy/{id}', [ProductController::class, 'copy'])->defaults('_config', [
'view' => 'admin::catalog.products.edit',
])->name('admin.catalog.products.copy');
Route::get('/products/edit/{id}', [ProductController::class, 'edit'])->defaults('_config', [
'view' => 'admin::catalog.products.edit',
])->name('admin.catalog.products.edit');
Route::put('/products/edit/{id}', [ProductController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.catalog.products.index',
])->name('admin.catalog.products.update');
Route::put('/products/edit/{id}/inventories', [ProductController::class, 'updateInventories'])->defaults('_config', [
'redirect' => 'admin.catalog.products.index',
])->name('admin.catalog.products.update-inventories');
Route::post('/products/upload-file/{id}', [ProductController::class, 'uploadLink'])->name('admin.catalog.products.upload_link');
Route::post('/products/upload-sample/{id}', [ProductController::class, 'uploadSample'])->name('admin.catalog.products.upload_sample');
Route::post('/products/delete/{id}', [ProductController::class, 'destroy'])->name('admin.catalog.products.delete');
Route::post('products/massaction', [ProductController::class, 'massActionHandler'])->name('admin.catalog.products.massaction');
Route::post('products/massdelete', [ProductController::class, 'massDestroy'])->defaults('_config', [
'redirect' => 'admin.catalog.products.index',
])->name('admin.catalog.products.massdelete');
Route::post('products/massupdate', [ProductController::class, 'massUpdate'])->defaults('_config', [
'redirect' => 'admin.catalog.products.index',
])->name('admin.catalog.products.massupdate');
Route::get('products/search', [ProductController::class, 'productLinkSearch'])->defaults('_config', [
'view' => 'admin::catalog.products.edit',
])->name('admin.catalog.products.productlinksearch');
Route::get('products/search-simple-products', [ProductController::class, 'searchSimpleProducts'])->name('admin.catalog.products.search_simple_product');
Route::get('/products/{id}/{attribute_id}', [ProductController::class, 'download'])->defaults('_config', [
'view' => 'admin.catalog.products.edit',
])->name('admin.catalog.products.file.download');
/**
* Categories routes.
*/
Route::get('/categories', [CategoryController::class, 'index'])->defaults('_config', [
'view' => 'admin::catalog.categories.index',
])->name('admin.catalog.categories.index');
Route::get('/categories/create', [CategoryController::class, 'create'])->defaults('_config', [
'view' => 'admin::catalog.categories.create',
])->name('admin.catalog.categories.create');
Route::post('/categories/create', [CategoryController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.catalog.categories.index',
])->name('admin.catalog.categories.store');
Route::get('/categories/edit/{id}', [CategoryController::class, 'edit'])->defaults('_config', [
'view' => 'admin::catalog.categories.edit',
])->name('admin.catalog.categories.edit');
Route::put('/categories/edit/{id}', [CategoryController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.catalog.categories.index',
])->name('admin.catalog.categories.update');
Route::post('/categories/delete/{id}', [CategoryController::class, 'destroy'])->name('admin.catalog.categories.delete');
Route::post('categories/massdelete', [CategoryController::class, 'massDestroy'])->defaults('_config', [
'redirect' => 'admin.catalog.categories.index',
])->name('admin.catalog.categories.massdelete');
Route::post('/categories/product/count', [CategoryController::class, 'categoryProductCount'])->name('admin.catalog.categories.product.count');
/**
* Attributes routes.
*/
Route::get('/attributes', [AttributeController::class, 'index'])->defaults('_config', [
'view' => 'admin::catalog.attributes.index',
])->name('admin.catalog.attributes.index');
Route::get('/attributes/{id}/options', [AttributeController::class, 'getAttributeOptions'])->defaults('_config', [
'view' => 'admin::catalog.attributes.options',
])->name('admin.catalog.attributes.options');
Route::get('/attributes/create', [AttributeController::class, 'create'])->defaults('_config', [
'view' => 'admin::catalog.attributes.create',
])->name('admin.catalog.attributes.create');
Route::post('/attributes/create', [AttributeController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.catalog.attributes.index',
])->name('admin.catalog.attributes.store');
Route::get('/attributes/edit/{id}', [AttributeController::class, 'edit'])->defaults('_config', [
'view' => 'admin::catalog.attributes.edit',
])->name('admin.catalog.attributes.edit');
Route::put('/attributes/edit/{id}', [AttributeController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.catalog.attributes.index',
])->name('admin.catalog.attributes.update');
Route::post('/attributes/delete/{id}', [AttributeController::class, 'destroy'])->name('admin.catalog.attributes.delete');
Route::post('/attributes/massdelete', [AttributeController::class, 'massDestroy'])->name('admin.catalog.attributes.massdelete');
/**
* Attribute families routes.
*/
Route::get('/families', [AttributeFamilyController::class, 'index'])->defaults('_config', [
'view' => 'admin::catalog.families.index',
])->name('admin.catalog.families.index');
Route::get('/families/create', [AttributeFamilyController::class, 'create'])->defaults('_config', [
'view' => 'admin::catalog.families.create',
])->name('admin.catalog.families.create');
Route::post('/families/create', [AttributeFamilyController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.catalog.families.index',
])->name('admin.catalog.families.store');
Route::get('/families/edit/{id}', [AttributeFamilyController::class, 'edit'])->defaults('_config', [
'view' => 'admin::catalog.families.edit',
])->name('admin.catalog.families.edit');
Route::put('/families/edit/{id}', [AttributeFamilyController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.catalog.families.index',
])->name('admin.catalog.families.update');
Route::post('/families/delete/{id}', [AttributeFamilyController::class, 'destroy'])->name('admin.catalog.families.delete');
});
});

View File

@ -0,0 +1,39 @@
<?php
use Illuminate\Support\Facades\Route;
use Webkul\CMS\Http\Controllers\Admin\PageController;
/**
* CMS routes.
*/
Route::group(['middleware' => ['web', 'admin', 'admin_locale'], 'prefix' => config('app.admin_url')], function () {
Route::prefix('cms')->group(function () {
Route::get('/', [PageController::class, 'index'])->defaults('_config', [
'view' => 'admin::cms.index',
])->name('admin.cms.index');
Route::get('create', [PageController::class, 'create'])->defaults('_config', [
'view' => 'admin::cms.create',
])->name('admin.cms.create');
Route::post('create', [PageController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.cms.index',
])->name('admin.cms.store');
Route::get('edit/{id}', [PageController::class, 'edit'])->defaults('_config', [
'view' => 'admin::cms.edit',
])->name('admin.cms.edit');
Route::post('edit/{id}', [PageController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.cms.index',
])->name('admin.cms.update');
Route::post('/delete/{id}', [PageController::class, 'delete'])->defaults('_config', [
'redirect' => 'admin.cms.index',
])->name('admin.cms.delete');
Route::post('/massdelete', [PageController::class, 'massDelete'])->defaults('_config', [
'redirect' => 'admin.cms.index',
])->name('admin.cms.mass-delete');
});
});

View File

@ -0,0 +1,21 @@
<?php
use Illuminate\Support\Facades\Route;
use Webkul\Admin\Http\Controllers\ConfigurationController;
/**
* Configuration routes.
*/
Route::group(['middleware' => ['web', 'admin', 'admin_locale'], 'prefix' => config('app.admin_url')], function () {
Route::get('configuration/{slug?}/{slug2?}', [ConfigurationController::class, 'index'])->defaults('_config', [
'view' => 'admin::configuration.index',
])->name('admin.configuration.index');
Route::post('configuration/{slug?}/{slug2?}', [ConfigurationController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.configuration.index',
])->name('admin.configuration.index.store');
Route::get('configuration/{slug?}/{slug2?}/{path}', [ConfigurationController::class, 'download'])->defaults('_config', [
'redirect' => 'admin.configuration.index',
])->name('admin.configuration.download');
});

View File

@ -0,0 +1,138 @@
<?php
use Illuminate\Support\Facades\Route;
use Webkul\Admin\Http\Controllers\Customer\AddressController;
use Webkul\Admin\Http\Controllers\Customer\CustomerController;
use Webkul\Admin\Http\Controllers\Customer\CustomerGroupController;
use Webkul\Product\Http\Controllers\ReviewController;
/**
* Customers routes.
*/
Route::group(['middleware' => ['web', 'admin', 'admin_locale'], 'prefix' => config('app.admin_url')], function () {
/**
* Customer management routes.
*/
Route::get('customers', [CustomerController::class, 'index'])->defaults('_config', [
'view' => 'admin::customers.index',
])->name('admin.customer.index');
Route::get('customers/create', [CustomerController::class, 'create'])->defaults('_config', [
'view' => 'admin::customers.create',
])->name('admin.customer.create');
Route::post('customers/create', [CustomerController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.customer.index',
])->name('admin.customer.store');
Route::get('customers/edit/{id}', [CustomerController::class, 'edit'])->defaults('_config', [
'view' => 'admin::customers.edit',
])->name('admin.customer.edit');
Route::get('customers/note/{id}', [CustomerController::class, 'createNote'])->defaults('_config', [
'view' => 'admin::customers.note',
])->name('admin.customer.note.create');
Route::put('customers/note/{id}', [CustomerController::class, 'storeNote'])->defaults('_config', [
'redirect' => 'admin.customer.index',
])->name('admin.customer.note.store');
Route::put('customers/edit/{id}', [CustomerController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.customer.index',
])->name('admin.customer.update');
Route::post('customers/delete/{id}', [CustomerController::class, 'destroy'])->name('admin.customer.delete');
Route::post('customers/masssdelete', [CustomerController::class, 'massDestroy'])->name('admin.customer.mass-delete');
Route::post('customers/masssupdate', [CustomerController::class, 'massUpdate'])->name('admin.customer.mass-update');
Route::get('customers/{id}/invoices', [CustomerController::class, 'invoices'])->name('admin.customer.invoices.data');
Route::get('customers/{id}/orders', [CustomerController::class, 'orders'])->defaults('_config', [
'view' => 'admin::customers.orders.index',
])->name('admin.customer.orders.data');
/**
* Customer's addresses routes.
*/
Route::get('customers/{id}/addresses', [AddressController::class, 'index'])->defaults('_config', [
'view' => 'admin::customers.addresses.index',
])->name('admin.customer.addresses.index');
Route::get('customers/{id}/addresses/create', [AddressController::class, 'create'])->defaults('_config', [
'view' => 'admin::customers.addresses.create',
])->name('admin.customer.addresses.create');
Route::post('customers/{id}/addresses/create', [AddressController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.customer.addresses.index',
])->name('admin.customer.addresses.store');
Route::get('customers/addresses/edit/{id}', [AddressController::class, 'edit'])->defaults('_config', [
'view' => 'admin::customers.addresses.edit',
])->name('admin.customer.addresses.edit');
Route::put('customers/addresses/edit/{id}', [AddressController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.customer.addresses.index',
])->name('admin.customer.addresses.update');
Route::post('customers/addresses/delete/{id}', [AddressController::class, 'destroy'])->defaults('_config', [
'redirect' => 'admin.customer.addresses.index',
])->name('admin.customer.addresses.delete');
Route::post('customers/{id}/addresses', [AddressController::class, 'massDestroy'])->defaults('_config', [
'redirect' => 'admin.customer.addresses.index',
])->name('admin.customer.addresses.massdelete');
/**
* Customer's reviews routes.
*/
Route::get('reviews', [ReviewController::class, 'index'])->defaults('_config', [
'view' => 'admin::customers.reviews.index',
])->name('admin.customer.review.index');
Route::get('reviews/edit/{id}', [ReviewController::class, 'edit'])->defaults('_config', [
'view' => 'admin::customers.reviews.edit',
])->name('admin.customer.review.edit');
Route::put('reviews/edit/{id}', [ReviewController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.customer.review.index',
])->name('admin.customer.review.update');
Route::post('reviews/delete/{id}', [ReviewController::class, 'destroy'])->defaults('_config', [
'redirect' => 'admin.customer.review.index',
])->name('admin.customer.review.delete');
Route::post('reviews/massdestroy', [ReviewController::class, 'massDestroy'])->defaults('_config', [
'redirect' => 'admin.customer.review.index',
])->name('admin.customer.review.massdelete');
Route::post('reviews/massupdate', [ReviewController::class, 'massUpdate'])->defaults('_config', [
'redirect' => 'admin.customer.review.index',
])->name('admin.customer.review.massupdate');
/**
* Customer groups routes.
*/
Route::get('groups', [CustomerGroupController::class, 'index'])->defaults('_config', [
'view' => 'admin::customers.groups.index',
])->name('admin.groups.index');
Route::get('groups/create', [CustomerGroupController::class, 'create'])->defaults('_config', [
'view' => 'admin::customers.groups.create',
])->name('admin.groups.create');
Route::post('groups/create', [CustomerGroupController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.groups.index',
])->name('admin.groups.store');
Route::get('groups/edit/{id}', [CustomerGroupController::class, 'edit'])->defaults('_config', [
'view' => 'admin::customers.groups.edit',
])->name('admin.groups.edit');
Route::put('groups/edit/{id}', [CustomerGroupController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.groups.index',
])->name('admin.groups.update');
Route::post('groups/delete/{id}', [CustomerGroupController::class, 'destroy'])->name('admin.groups.delete');
});

View File

@ -0,0 +1,170 @@
<?php
use Illuminate\Support\Facades\Route;
use Webkul\CartRule\Http\Controllers\CartRuleController;
use Webkul\CartRule\Http\Controllers\CartRuleCouponController;
use Webkul\CatalogRule\Http\Controllers\CatalogRuleController;
use Webkul\Core\Http\Controllers\SubscriptionController;
use Webkul\Marketing\Http\Controllers\CampaignController;
use Webkul\Marketing\Http\Controllers\EventController;
use Webkul\Marketing\Http\Controllers\TemplateController;
/**
* Marketing routes.
*/
Route::group(['middleware' => ['web', 'admin', 'admin_locale'], 'prefix' => config('app.admin_url')], function () {
Route::prefix('promotions')->group(function () {
/**
* Cart rules routes.
*/
Route::get('cart-rules', [CartRuleController::class, 'index'])->defaults('_config', [
'view' => 'admin::marketing.promotions.cart-rules.index',
])->name('admin.cart-rules.index');
Route::get('cart-rules/create', [CartRuleController::class, 'create'])->defaults('_config', [
'view' => 'admin::marketing.promotions.cart-rules.create',
])->name('admin.cart-rules.create');
Route::post('cart-rules/create', [CartRuleController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.cart-rules.index',
])->name('admin.cart-rules.store');
Route::get('cart-rules/copy/{id}', [CartRuleController::class, 'copy'])->defaults('_config', [
'view' => 'admin::marketing.promotions.cart-rules.edit',
])->name('admin.cart-rules.copy');
Route::get('cart-rules/edit/{id}', [CartRuleController::class, 'edit'])->defaults('_config', [
'view' => 'admin::marketing.promotions.cart-rules.edit',
])->name('admin.cart-rules.edit');
Route::post('cart-rules/edit/{id}', [CartRuleController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.cart-rules.index',
])->name('admin.cart-rules.update');
Route::post('cart-rules/delete/{id}', [CartRuleController::class, 'destroy'])->name('admin.cart-rules.delete');
Route::post('cart-rules/generate-coupons/{id?}', [CartRuleController::class, 'generateCoupons'])->name('admin.cart-rules.generate-coupons');
Route::post('/massdelete', [CartRuleCouponController::class, 'massDelete'])->name('admin.cart-rule-coupons.mass-delete');
/**
* Catalog rules routes.
*/
Route::get('catalog-rules', [CatalogRuleController::class, 'index'])->defaults('_config', [
'view' => 'admin::marketing.promotions.catalog-rules.index',
])->name('admin.catalog-rules.index');
Route::get('catalog-rules/create', [CatalogRuleController::class, 'create'])->defaults('_config', [
'view' => 'admin::marketing.promotions.catalog-rules.create',
])->name('admin.catalog-rules.create');
Route::post('catalog-rules/create', [CatalogRuleController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.catalog-rules.index',
])->name('admin.catalog-rules.store');
Route::get('catalog-rules/edit/{id}', [CatalogRuleController::class, 'edit'])->defaults('_config', [
'view' => 'admin::marketing.promotions.catalog-rules.edit',
])->name('admin.catalog-rules.edit');
Route::post('catalog-rules/edit/{id}', [CatalogRuleController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.catalog-rules.index',
])->name('admin.catalog-rules.update');
Route::post('catalog-rules/delete/{id}', [CatalogRuleController::class, 'destroy'])->name('admin.catalog-rules.delete');
/**
* Campaigns routes.
*/
Route::get('campaigns', [CampaignController::class, 'index'])->defaults('_config', [
'view' => 'admin::marketing.email-marketing.campaigns.index',
])->name('admin.campaigns.index');
Route::get('campaigns/create', [CampaignController::class, 'create'])->defaults('_config', [
'view' => 'admin::marketing.email-marketing.campaigns.create',
])->name('admin.campaigns.create');
Route::post('campaigns/create', [CampaignController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.campaigns.index',
])->name('admin.campaigns.store');
Route::get('campaigns/edit/{id}', [CampaignController::class, 'edit'])->defaults('_config', [
'view' => 'admin::marketing.email-marketing.campaigns.edit',
])->name('admin.campaigns.edit');
Route::post('campaigns/edit/{id}', [CampaignController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.campaigns.index',
])->name('admin.campaigns.update');
Route::post('campaigns/delete/{id}', [CampaignController::class, 'destroy'])->name('admin.campaigns.delete');
/**
* Emails templates routes.
*/
Route::get('email-templates', [TemplateController::class, 'index'])->defaults('_config', [
'view' => 'admin::marketing.email-marketing.templates.index',
])->name('admin.email-templates.index');
Route::get('email-templates/create', [TemplateController::class, 'create'])->defaults('_config', [
'view' => 'admin::marketing.email-marketing.templates.create',
])->name('admin.email-templates.create');
Route::post('email-templates/create', [TemplateController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.email-templates.index',
])->name('admin.email-templates.store');
Route::get('email-templates/edit/{id}', [TemplateController::class, 'edit'])->defaults('_config', [
'view' => 'admin::marketing.email-marketing.templates.edit',
])->name('admin.email-templates.edit');
Route::post('email-templates/edit/{id}', [TemplateController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.email-templates.index',
])->name('admin.email-templates.update');
Route::post('email-templates/delete/{id}', [TemplateController::class, 'destroy'])->name('admin.email-templates.delete');
/**
* Events routes.
*/
Route::get('events', [EventController::class, 'index'])->defaults('_config', [
'view' => 'admin::marketing.email-marketing.events.index',
])->name('admin.events.index');
Route::get('events/create', [EventController::class, 'create'])->defaults('_config', [
'view' => 'admin::marketing.email-marketing.events.create',
])->name('admin.events.create');
Route::post('events/create', [EventController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.events.index',
])->name('admin.events.store');
Route::get('events/edit/{id}', [EventController::class, 'edit'])->defaults('_config', [
'view' => 'admin::marketing.email-marketing.events.edit',
])->name('admin.events.edit');
Route::post('events/edit/{id}', [EventController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.events.index',
])->name('admin.events.update');
Route::post('events/delete/{id}', [EventController::class, 'destroy'])->name('admin.events.delete');
/**
* Admin store front settings route.
*/
Route::get('/subscribers', [SubscriptionController::class, 'index'])->defaults('_config', [
'view' => 'admin::marketing.email-marketing.subscribers.index',
])->name('admin.customers.subscribers.index');
/**
* Destroy a newsletter subscription item.
*/
Route::post('subscribers/delete/{id}', [SubscriptionController::class, 'destroy'])->name('admin.customers.subscribers.delete');
Route::get('subscribers/edit/{id}', [SubscriptionController::class, 'edit'])->defaults('_config', [
'view' => 'admin::marketing.email-marketing.subscribers.edit',
])->name('admin.customers.subscribers.edit');
Route::put('subscribers/update/{id}', [SubscriptionController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.customers.subscribers.index',
])->name('admin.customers.subscribers.update');
});
});

View File

@ -0,0 +1,44 @@
<?php
use Illuminate\Support\Facades\Route;
use Webkul\Admin\Http\Controllers\DashboardController;
use Webkul\Admin\Http\Controllers\ExportController;
use Webkul\Admin\Http\Controllers\TinyMCEController;
use Webkul\User\Http\Controllers\AccountController;
use Webkul\User\Http\Controllers\SessionController;
/**
* Extra routes.
*/
Route::group(['middleware' => ['web', 'admin', 'admin_locale'], 'prefix' => config('app.admin_url')], function () {
/**
* Tinymce file upload handler.
*/
Route::post('tinymce/upload', [TinyMCEController::class, 'upload'])
->name('admin.tinymce.upload');
/**
* Dashboard routes.
*/
Route::get('dashboard', [DashboardController::class, 'index'])->defaults('_config', [
'view' => 'admin::dashboard.index',
])->name('admin.dashboard.index');
/**
* Admin profile routes.
*/
Route::get('/account', [AccountController::class, 'edit'])->defaults('_config', [
'view' => 'admin::account.edit',
])->name('admin.account.edit');
Route::put('/account', [AccountController::class, 'update'])->name('admin.account.update');
Route::get('/logout', [SessionController::class, 'destroy'])->defaults('_config', [
'redirect' => 'admin.session.create',
])->name('admin.session.destroy');
/**
* DataGrid export.
*/
Route::post('/export', [ExportController::class, 'export'])->name('admin.datagrid.export');
});

View File

@ -0,0 +1,114 @@
<?php
use Illuminate\Support\Facades\Route;
use Webkul\Admin\Http\Controllers\Sales\InvoiceController;
use Webkul\Admin\Http\Controllers\Sales\OrderController;
use Webkul\Admin\Http\Controllers\Sales\RefundController;
use Webkul\Admin\Http\Controllers\Sales\ShipmentController;
use Webkul\Admin\Http\Controllers\Sales\TransactionController;
/**
* Sales routes.
*/
Route::group(['middleware' => ['web', 'admin', 'admin_locale'], 'prefix' => config('app.admin_url')], function () {
Route::prefix('sales')->group(function () {
/**
* Orders routes.
*/
Route::get('/orders', [OrderController::class, 'index'])->defaults('_config', [
'view' => 'admin::sales.orders.index',
])->name('admin.sales.orders.index');
Route::get('/orders/view/{id}', [OrderController::class, 'view'])->defaults('_config', [
'view' => 'admin::sales.orders.view',
])->name('admin.sales.orders.view');
Route::get('/orders/cancel/{id}', [OrderController::class, 'cancel'])->defaults('_config', [
'view' => 'admin::sales.orders.cancel',
])->name('admin.sales.orders.cancel');
Route::post('/orders/create/{order_id}', [OrderController::class, 'comment'])->name('admin.sales.orders.comment');
/**
* Invoices routes.
*/
Route::get('/invoices', [InvoiceController::class, 'index'])->defaults('_config', [
'view' => 'admin::sales.invoices.index',
])->name('admin.sales.invoices.index');
Route::get('/invoices/create/{order_id}', [InvoiceController::class, 'create'])->defaults('_config', [
'view' => 'admin::sales.invoices.create',
])->name('admin.sales.invoices.create');
Route::post('/invoices/create/{order_id}', [InvoiceController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.sales.orders.view',
])->name('admin.sales.invoices.store');
Route::get('/invoices/view/{id}', [InvoiceController::class, 'view'])->defaults('_config', [
'view' => 'admin::sales.invoices.view',
])->name('admin.sales.invoices.view');
Route::get('/invoices/print/{id}', [InvoiceController::class, 'print'])->defaults('_config', [
'view' => 'admin::sales.invoices.print',
])->name('admin.sales.invoices.print');
/**
* Shipments routes.
*/
Route::get('/shipments', [ShipmentController::class, 'index'])->defaults('_config', [
'view' => 'admin::sales.shipments.index',
])->name('admin.sales.shipments.index');
Route::get('/shipments/create/{order_id}', [ShipmentController::class, 'create'])->defaults('_config', [
'view' => 'admin::sales.shipments.create',
])->name('admin.sales.shipments.create');
Route::post('/shipments/create/{order_id}', [ShipmentController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.sales.orders.view',
])->name('admin.sales.shipments.store');
Route::get('/shipments/view/{id}', [ShipmentController::class, 'view'])->defaults('_config', [
'view' => 'admin::sales.shipments.view',
])->name('admin.sales.shipments.view');
/**
* Refunds routes.
*/
Route::get('/refunds', [RefundController::class, 'index'])->defaults('_config', [
'view' => 'admin::sales.refunds.index',
])->name('admin.sales.refunds.index');
Route::get('/refunds/create/{order_id}', [RefundController::class, 'create'])->defaults('_config', [
'view' => 'admin::sales.refunds.create',
])->name('admin.sales.refunds.create');
Route::post('/refunds/create/{order_id}', [RefundController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.sales.orders.view',
])->name('admin.sales.refunds.store');
Route::post('/refunds/update-qty/{order_id}', [RefundController::class, 'updateQty'])->defaults('_config', [
'redirect' => 'admin.sales.orders.view',
])->name('admin.sales.refunds.update_qty');
Route::get('/refunds/view/{id}', [RefundController::class, 'view'])->defaults('_config', [
'view' => 'admin::sales.refunds.view',
])->name('admin.sales.refunds.view');
/**
* Transactions routes.
*/
Route::get('/transactions', [TransactionController::class, 'index'])->defaults('_config', [
'view' => 'admin::sales.transactions.index',
])->name('admin.sales.transactions.index');
Route::get('/transactions/create', [TransactionController::class, 'create'])->defaults('_config', [
'view' => 'admin::sales.transactions.create',
])->name('admin.sales.transactions.create');
Route::post('/transactions/create', [TransactionController::class, 'store'])->name('admin.sales.transactions.store');
Route::get('/transactions/view/{id}', [TransactionController::class, 'view'])->defaults('_config', [
'view' => 'admin::sales.transactions.view',
])->name('admin.sales.transactions.view');
});
});

View File

@ -0,0 +1,285 @@
<?php
use Illuminate\Support\Facades\Route;
use Webkul\Core\Http\Controllers\ChannelController;
use Webkul\Core\Http\Controllers\CurrencyController;
use Webkul\Core\Http\Controllers\ExchangeRateController;
use Webkul\Core\Http\Controllers\LocaleController;
use Webkul\Core\Http\Controllers\SliderController;
use Webkul\Inventory\Http\Controllers\InventorySourceController;
use Webkul\Tax\Http\Controllers\TaxCategoryController;
use Webkul\Tax\Http\Controllers\TaxController;
use Webkul\Tax\Http\Controllers\TaxRateController;
use Webkul\User\Http\Controllers\RoleController;
use Webkul\User\Http\Controllers\UserController;
/**
* Settings routes.
*/
Route::group(['middleware' => ['web', 'admin', 'admin_locale'], 'prefix' => config('app.admin_url')], function () {
/**
* Roles routes.
*/
Route::get('/roles', [RoleController::class, 'index'])->defaults('_config', [
'view' => 'admin::users.roles.index',
])->name('admin.roles.index');
Route::get('/roles/create', [RoleController::class, 'create'])->defaults('_config', [
'view' => 'admin::users.roles.create',
])->name('admin.roles.create');
Route::post('/roles/create', [RoleController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.roles.index',
])->name('admin.roles.store');
Route::get('/roles/edit/{id}', [RoleController::class, 'edit'])->defaults('_config', [
'view' => 'admin::users.roles.edit',
])->name('admin.roles.edit');
Route::put('/roles/edit/{id}', [RoleController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.roles.index',
])->name('admin.roles.update');
Route::post('/roles/delete/{id}', [RoleController::class, 'destroy'])->name('admin.roles.delete');
/**
* Locales routes.
*/
Route::get('/locales', [LocaleController::class, 'index'])->defaults('_config', [
'view' => 'admin::settings.locales.index',
])->name('admin.locales.index');
Route::get('/locales/create', [LocaleController::class, 'create'])->defaults('_config', [
'view' => 'admin::settings.locales.create',
])->name('admin.locales.create');
Route::post('/locales/create', [LocaleController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.locales.index',
])->name('admin.locales.store');
Route::get('/locales/edit/{id}', [LocaleController::class, 'edit'])->defaults('_config', [
'view' => 'admin::settings.locales.edit',
])->name('admin.locales.edit');
Route::put('/locales/edit/{id}', [LocaleController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.locales.index',
])->name('admin.locales.update');
Route::post('/locales/delete/{id}', [LocaleController::class, 'destroy'])->name('admin.locales.delete');
/**
* Currencies routes.
*/
Route::get('/currencies', [CurrencyController::class, 'index'])->defaults('_config', [
'view' => 'admin::settings.currencies.index',
])->name('admin.currencies.index');
Route::get('/currencies/create', [CurrencyController::class, 'create'])->defaults('_config', [
'view' => 'admin::settings.currencies.create',
])->name('admin.currencies.create');
Route::post('/currencies/create', [CurrencyController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.currencies.index',
])->name('admin.currencies.store');
Route::get('/currencies/edit/{id}', [CurrencyController::class, 'edit'])->defaults('_config', [
'view' => 'admin::settings.currencies.edit',
])->name('admin.currencies.edit');
Route::put('/currencies/edit/{id}', [CurrencyController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.currencies.index',
])->name('admin.currencies.update');
Route::post('/currencies/delete/{id}', [CurrencyController::class, 'destroy'])->name('admin.currencies.delete');
Route::post('/currencies/massdelete', [CurrencyController::class, 'massDestroy'])->name('admin.currencies.massdelete');
/**
* Exchange rates routes.
*/
Route::get('/exchange_rates', [ExchangeRateController::class, 'index'])->defaults('_config', [
'view' => 'admin::settings.exchange_rates.index',
])->name('admin.exchange_rates.index');
Route::get('/exchange_rates/create', [ExchangeRateController::class, 'create'])->defaults('_config', [
'view' => 'admin::settings.exchange_rates.create',
])->name('admin.exchange_rates.create');
Route::post('/exchange_rates/create', [ExchangeRateController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.exchange_rates.index',
])->name('admin.exchange_rates.store');
Route::get('/exchange_rates/edit/{id}', [ExchangeRateController::class, 'edit'])->defaults('_config', [
'view' => 'admin::settings.exchange_rates.edit',
])->name('admin.exchange_rates.edit');
Route::get('/exchange_rates/update-rates', [ExchangeRateController::class, 'updateRates'])->name('admin.exchange_rates.update_rates');
Route::put('/exchange_rates/edit/{id}', [ExchangeRateController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.exchange_rates.index',
])->name('admin.exchange_rates.update');
Route::post('/exchange_rates/delete/{id}', [ExchangeRateController::class, 'destroy'])->name('admin.exchange_rates.delete');
/**
* Inventory sources routes.
*/
Route::get('/inventory_sources', [InventorySourceController::class, 'index'])->defaults('_config', [
'view' => 'admin::settings.inventory_sources.index',
])->name('admin.inventory_sources.index');
Route::get('/inventory_sources/create', [InventorySourceController::class, 'create'])->defaults('_config', [
'view' => 'admin::settings.inventory_sources.create',
])->name('admin.inventory_sources.create');
Route::post('/inventory_sources/create', [InventorySourceController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.inventory_sources.index',
])->name('admin.inventory_sources.store');
Route::get('/inventory_sources/edit/{id}', [InventorySourceController::class, 'edit'])->defaults('_config', [
'view' => 'admin::settings.inventory_sources.edit',
])->name('admin.inventory_sources.edit');
Route::put('/inventory_sources/edit/{id}', [InventorySourceController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.inventory_sources.index',
])->name('admin.inventory_sources.update');
Route::post('/inventory_sources/delete/{id}', [InventorySourceController::class, 'destroy'])->name('admin.inventory_sources.delete');
/**
* Channels routes.
*/
Route::get('/channels', [ChannelController::class, 'index'])->defaults('_config', [
'view' => 'admin::settings.channels.index',
])->name('admin.channels.index');
Route::get('/channels/create', [ChannelController::class, 'create'])->defaults('_config', [
'view' => 'admin::settings.channels.create',
])->name('admin.channels.create');
Route::post('/channels/create', [ChannelController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.channels.index',
])->name('admin.channels.store');
Route::get('/channels/edit/{id}', [ChannelController::class, 'edit'])->defaults('_config', [
'view' => 'admin::settings.channels.edit',
])->name('admin.channels.edit');
Route::put('/channels/edit/{id}', [ChannelController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.channels.index',
])->name('admin.channels.update');
Route::post('/channels/delete/{id}', [ChannelController::class, 'destroy'])->name('admin.channels.delete');
/**
* Users routes.
*/
Route::get('/users', [UserController::class, 'index'])->defaults('_config', [
'view' => 'admin::users.users.index',
])->name('admin.users.index');
Route::get('/users/create', [UserController::class, 'create'])->defaults('_config', [
'view' => 'admin::users.users.create',
])->name('admin.users.create');
Route::post('/users/create', [UserController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.users.index',
])->name('admin.users.store');
Route::get('/users/edit/{id}', [UserController::class, 'edit'])->defaults('_config', [
'view' => 'admin::users.users.edit',
])->name('admin.users.edit');
Route::put('/users/edit/{id}', [UserController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.users.index',
])->name('admin.users.update');
Route::post('/users/delete/{id}', [UserController::class, 'destroy'])->name('admin.users.delete');
Route::get('/users/confirm/{id}', [UserController::class, 'confirm'])->defaults('_config', [
'view' => 'admin::customers.confirm-password',
])->name('super.users.confirm');
Route::post('/users/confirm/{id}', [UserController::class, 'destroySelf'])->defaults('_config', [
'redirect' => 'admin.users.index',
])->name('admin.users.destroy');
/**
* Slider routes.
*/
Route::get('/slider', [SliderController::class, 'index'])->defaults('_config', [
'view' => 'admin::settings.sliders.index',
])->name('admin.sliders.index');
Route::get('slider/create', [SliderController::class, 'create'])->defaults('_config', [
'view' => 'admin::settings.sliders.create',
])->name('admin.sliders.create');
Route::post('slider/create', [SliderController::class, 'store'])->defaults('_config', [
'redirect' => 'admin.sliders.index',
])->name('admin.sliders.store');
Route::get('slider/edit/{id}', [SliderController::class, 'edit'])->defaults('_config', [
'view' => 'admin::settings.sliders.edit',
])->name('admin.sliders.edit');
Route::post('slider/edit/{id}', [SliderController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.sliders.index',
])->name('admin.sliders.update');
Route::post('slider/delete/{id}', [SliderController::class, 'destroy'])->name('admin.sliders.delete');
/**
* Tax categories routes.
*/
Route::get('/tax-categories', [TaxController::class, 'index'])->defaults('_config', [
'view' => 'admin::tax.tax-categories.index',
])->name('admin.tax-categories.index');
Route::get('/tax-categories/create', [TaxCategoryController::class, 'show'])->defaults('_config', [
'view' => 'admin::tax.tax-categories.create',
])->name('admin.tax-categories.create');
Route::post('/tax-categories/create', [TaxCategoryController::class, 'create'])->defaults('_config', [
'redirect' => 'admin.tax-categories.index',
])->name('admin.tax-categories.store');
Route::get('/tax-categories/edit/{id}', [TaxCategoryController::class, 'edit'])->defaults('_config', [
'view' => 'admin::tax.tax-categories.edit',
])->name('admin.tax-categories.edit');
Route::put('/tax-categories/edit/{id}', [TaxCategoryController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.tax-categories.index',
])->name('admin.tax-categories.update');
Route::post('/tax-categories/delete/{id}', [TaxCategoryController::class, 'destroy'])->name('admin.tax-categories.delete');
/**
* Tax rates routes.
*/
Route::get('tax-rates', [TaxRateController::class, 'index'])->defaults('_config', [
'view' => 'admin::tax.tax-rates.index',
])->name('admin.tax-rates.index');
Route::get('tax-rates/create', [TaxRateController::class, 'show'])->defaults('_config', [
'view' => 'admin::tax.tax-rates.create',
])->name('admin.tax-rates.create');
Route::post('tax-rates/create', [TaxRateController::class, 'create'])->defaults('_config', [
'redirect' => 'admin.tax-rates.index',
])->name('admin.tax-rates.store');
Route::get('tax-rates/edit/{id}', [TaxRateController::class, 'edit'])->defaults('_config', [
'view' => 'admin::tax.tax-rates.edit',
])->name('admin.tax-rates.edit');
Route::put('tax-rates/update/{id}', [TaxRateController::class, 'update'])->defaults('_config', [
'redirect' => 'admin.tax-rates.index',
])->name('admin.tax-rates.update');
Route::post('/tax-rates/delete/{id}', [TaxRateController::class, 'destroy'])->name('admin.tax-rates.delete');
Route::post('/tax-rates/import', [TaxRateController::class, 'import'])->defaults('_config', [
'redirect' => 'admin.tax-rates.index',
])->name('admin.tax-rates.import');
});

View File

@ -0,0 +1,46 @@
<?php
/**
* Auth routes.
*/
require 'auth-routes.php';
/**
* Sales routes.
*/
require 'sales-routes.php';
/**
* Catalog routes.
*/
require 'catalog-routes.php';
/**
* Customers routes.
*/
require 'customers-routes.php';
/**
* Marketing routes.
*/
require 'marketing-routes.php';
/**
* CMS routes.
*/
require 'cms-routes.php';
/**
* Settings routes.
*/
require 'settings-routes.php';
/**
* Configuration routes.
*/
require 'configuration-routes.php';
/**
* Remaining routes.
*/
require 'rest-routes.php';

File diff suppressed because one or more lines are too long

View File

@ -1,6 +0,0 @@
{
"/js/velocity.js": "/js/velocity.js?id=5b0e7e5d2810ad90cde3",
"/css/velocity-admin.css": "/css/velocity-admin.css?id=4322502d80a0e4a0affd",
"/css/velocity.css": "/css/velocity.css?id=15c96f5b4c7e02625f1e",
"/js/velocity-core.js": "/js/velocity-core.js?id=5c0fe2bf195ee94576fd"
}

View File

@ -26,7 +26,9 @@
font-family: $font-family-pro;
}
*, *:before, *:after {
*,
*:before,
*:after {
box-sizing: inherit;
}
@ -65,7 +67,11 @@ input[type=checkbox] {
}
}
button, input, optgroup, select, textarea {
button,
input,
optgroup,
select,
textarea {
font-family: $font-family-pro;
color: $font-color;
}
@ -111,7 +117,8 @@ body {
padding: 6px 5px;
}
.btn-link:hover, .btn-link:focus {
.btn-link:hover,
.btn-link:focus {
color: $font-color;
text-decoration: none;
}
@ -214,7 +221,7 @@ body {
}
}
+ .account-modal {
+.account-modal {
top: 40px;
right: 10px;
z-index: 101;
@ -253,11 +260,11 @@ body {
}
}
> div:last-child {
>div:last-child {
height: 32px;
}
> div {
>div {
.default {
padding: 5px;
font-size: 14px;
@ -294,7 +301,7 @@ body {
border-top: 3px solid $border-primary;
border-radius: 0px;
background: $white-color;
@include box-shadow(11px 10px 17px 0 rgba(0,0,0,0.21));
@include box-shadow(11px 10px 17px 0 rgba(0, 0, 0, 0.21));
li {
a {
@ -361,14 +368,17 @@ body {
background: $button-primary-bg;
border-color: $button-primary-bg;
}
&:focus {
background: $button-primary-bg;
border-color: $button-primary-bg;
}
&:active:hover {
background: $button-primary-bg;
border-color: $button-primary-bg;
}
&:active:focus {
background: $button-primary-bg;
border-color: $button-primary-bg;
@ -384,14 +394,17 @@ body {
background: $button-danger;
border-color: $border-danger;
}
&:focus {
background: $button-danger;
border-color: $border-danger;
}
&:active:hover {
background: $button-danger;
border-color: $border-danger;
}
&:active:focus {
background: $button-danger;
border-color: $border-danger;
@ -436,7 +449,7 @@ header {
border-radius: 2px 0px 0px 2px;
border: 1px solid $theme-color;
border-right: 0;
font-family:"Source Sans Pro", sans-serif;
font-family: "Source Sans Pro", sans-serif;
-webkit-appearance: none;
-moz-appearance: none;
@ -505,7 +518,7 @@ header {
display: inline-block;
i {
+ span.cart-text {
+span.cart-text {
padding-left: 0px;
vertical-align: text-bottom;
}
@ -515,7 +528,7 @@ header {
padding-left: 5px;
}
+ .down-arrow-container {
+.down-arrow-container {
.rango-arrow-down {
top: 8px;
}
@ -527,7 +540,8 @@ header {
.left-wrapper {
float: right;
.compare-btn, .wishlist-btn {
.compare-btn,
.wishlist-btn {
height: 50px;
font-size: 18px;
font-weight: 600;
@ -623,6 +637,7 @@ header {
letter-spacing: 0;
text-align: left;
}
.item-price {
font-weight: 600;
font-size: 16px;
@ -634,6 +649,7 @@ header {
}
}
}
.dropdown-header {
padding: 10px 10px 5px;
border-top: 1px solid $border-common;
@ -653,6 +669,7 @@ header {
text-align: right;
}
}
.dropdown-footer {
padding: 10px 10px 0px 10px;
border-top: 1px solid $border-common;
@ -663,6 +680,7 @@ header {
.cart-link {
text-align: left;
a {
vertical-align: middle;
}
@ -685,7 +703,7 @@ header {
margin: 0px;
font-family: SourceSansPro-Semibold;
font-size: 16px;
color: rgba(0,0,0,0.83);
color: rgba(0, 0, 0, 0.83);
letter-spacing: 0;
cursor: pointer;
min-height: 40px;
@ -702,7 +720,7 @@ header {
display: inline-block;
padding: 5px 5px 5px 35px;
.material-icons{
.material-icons {
position: absolute;
left: 0;
top: 2px;
@ -730,7 +748,7 @@ header {
position: relative;
font-weight: 600;
font-size: 14px;
color: rgba(0,0,0,0.83);
color: rgba(0, 0, 0, 0.83);
letter-spacing: 0;
font-weight: 600;
display: block;
@ -917,7 +935,8 @@ i.within-circle {
.center_div {
margin: 0 auto;
width: 80%/* value of your choice which suits your alignment */
width: 80%
/* value of your choice which suits your alignment */
}
.form-style {
@ -984,7 +1003,10 @@ i.within-circle {
margin: 0 auto;
}
.row:before, .row:after {display: none !important;}
.row:before,
.row:after {
display: none !important;
}
// image wrapper
.image-wrapper {
@ -1018,7 +1040,7 @@ i.within-circle {
}
.remove-image {
background-image: linear-gradient(-180deg, rgba(0,0,0,0.08) 0%, rgba(0,0,0,0.24) 100%);
background-image: linear-gradient(-180deg, rgba(0, 0, 0, 0.08) 0%, rgba(0, 0, 0, 0.24) 100%);
@include border-radius(0 0 4px 4px);
position: absolute;
bottom: 0;
@ -1026,7 +1048,7 @@ i.within-circle {
padding: 10px;
text-align: center;
color: $white-color;
text-shadow: 0 1px 2px rgba(0,0,0,0.24);
text-shadow: 0 1px 2px rgba(0, 0, 0, 0.24);
margin-right: 20px;
cursor: pointer;
}
@ -1045,3 +1067,36 @@ i.within-circle {
background-color: #26A37C !important;
border-color: #26A37C !important;
}
/* Category Filter UI Responsivenes */
.category-page-wrapper .category-container .filters-container {
left: 0;
top: 30px;
padding: 0;
width: 96%;
z-index: 9;
position: unset;
margin-left: 7px;
padding-bottom: 7px;
background-color: #fff;
-webkit-box-shadow: none;
box-shadow: none;
}
.filters-container .toolbar-wrapper>div select {
cursor: pointer;
padding: 6px 8px;
color: rgba(0, 0, 0, .83);
background-color: #fff
}
.filters-container .toolbar-wrapper>div {
margin: 0 8px 0 0;
}
@media (max-width:600px) {
.selective-div {
width: 97px;
-webkit-appearance: none
}
}