<?php
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\admin\AdminController;
use App\Http\Controllers\admin\ItemController;
use App\Http\Controllers\admin\CategoryController;
use App\Http\Controllers\admin\ContactController;
use App\Http\Controllers\admin\SliderController;
use App\Http\Controllers\admin\DriverController;
use App\Http\Controllers\admin\BannerController;
use App\Http\Controllers\admin\AboutController;
use App\Http\Controllers\admin\GlobalExtrasController;
use App\Http\Controllers\admin\OrderController;
use App\Http\Controllers\admin\MediaController;
use App\Http\Controllers\admin\CMSPagesController;
use App\Http\Controllers\admin\SystemAddonsController;
use App\Http\Controllers\admin\TimeController;
use App\Http\Controllers\admin\OtherPagesController;
use App\Http\Controllers\admin\PaymentController;
use App\Http\Controllers\admin\WhyChooseUsController;
use App\Http\Controllers\front\UserController as WebUserController;
use App\Http\Controllers\front\ItemController as WebItemController;
use App\Http\Controllers\front\OrderController as WebOrderController;
use App\Http\Controllers\front\OtherPagesController as WebOtherPagesController;
use App\Http\Controllers\addons\MercadoPagoController;
use App\Http\Controllers\front\HomeController;
use App\Http\Controllers\front\MenuController;
use App\Http\Controllers\front\FavoriteController;
use App\Http\Controllers\front\CartController;
use App\Http\Controllers\front\CheckoutController;
use App\Http\Controllers\front\AddressController;
use App\Http\Controllers\front\WalletController;
use App\Http\Controllers\admin\TaxController;
use App\Http\Controllers\addons\included\CurrencyController;
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These routes are loaded by the RouteServiceProvider within a group which contains the "web" middleware group. Now create something great!
|
*/
Route::post('add-on/session/save', [AdminController::class, 'sessionsave']);
Route::group(['namespace' => 'front', 'middleware' => 'MaintenanceMiddleware'], function () {
// home
Route::post('changeqty', [HomeController::class, 'changeqty']);
Route::get('get-products-variant-quantity', [HomeController::class, 'getProductsVariantQuantity']);
Route::get('/', [HomeController::class, 'index'])->name('home');
Route::get('/pwa', [HomeController::class, 'index']);
// Route::get('/home', [HomeController::class, 'index'])->name('home');
Route::get('/direction', [HomeController::class, 'change_dir'])->name('change_dir');
Route::get('/categories', [HomeController::class, 'categories'])->name('categories');
// item
Route::get('/menu', [MenuController::class, 'index'])->name('menu');
Route::get('/show-item', [WebItemController::class, 'showitem']);
Route::get('/item-{slug}', [WebItemController::class, 'itemdetails'])->name('itemdetails');
Route::get('/search', [WebItemController::class, 'search'])->name('search');
Route::get('/view-all', [WebItemController::class, 'viewall'])->name('viewall');
// otherpages
Route::get('/abous-us', [WebOtherPagesController::class, 'aboutus'])->name('about-us');
Route::get('/privacy-policy', [WebOtherPagesController::class, 'privacypolicy'])->name('privacy-policy');
Route::get('/refund-policy', [WebOtherPagesController::class, 'refundpolicy'])->name('refund-policy');
Route::get('/gallery', [WebOtherPagesController::class, 'gallery'])->name('gallery');
Route::get('/terms-conditions', [WebOtherPagesController::class, 'termsconditions'])->name('terms-conditions');
Route::get('/faq', [WebOtherPagesController::class, 'faq'])->name('faq');
Route::get('/contactus', [WebOtherPagesController::class, 'contactindex'])->name('contact-us');
Route::post('/contactus/store', [WebOtherPagesController::class, 'contactstore'])->name('createcontact');
Route::get('/testimonials', [WebOtherPagesController::class, 'testimonials'])->name('testimonials');
Route::get('/ourteam', [WebOtherPagesController::class, 'ourteam'])->name('ourteam');
Route::post('/postsubscribe', [WebOtherPagesController::class, 'Subscribe']);
Route::get('/delete-password', [WebUserController::class, 'deletepassword'])->name('delete-password');
Route::get('/deleteaccount', [WebUserController::class, 'deleteaccount']);
Route::get('/delete', [WebUserController::class, 'delete']);
Route::group(['middleware' => 'NoUserAuthMiddleware'], function () {
// auth
Route::get('/register', [WebUserController::class, 'register'])->name('register');
Route::post('/adduser', [WebUserController::class, 'create'])->name('adduser');
Route::get('/verification', [WebUserController::class, 'verification'])->name('verification');
Route::post('/verify-otp', [WebUserController::class, 'verifyotp'])->name('verifyotp');
Route::get('/resend-otp', [WebUserController::class, 'resendotp']);
Route::get('/forgot-password', [WebUserController::class, 'forgotpassword'])->name('forgot-password');
Route::post('/send-pass', [WebUserController::class, 'sendpass'])->name('sendpass');
Route::get('/login', [WebUserController::class, 'login'])->name('login');
Route::post('/checklogin', [WebUserController::class, 'checklogin']);
// social login
});
// cart
Route::get('/cart', [CartController::class, 'index'])->name('cart');
Route::post('addtocart', [CartController::class, 'addtocart']);
Route::post('/cart/deleteitem', [CartController::class, 'deletecartitem']);
Route::post('/cart/qtyupdate', [CartController::class, 'qtyupdate']);
// checkout
Route::get('/checkout', [CheckoutController::class, 'index']);
Route::post('/isopenclose', [CheckoutController::class, 'isopenclose']);
Route::post('/placeorder', [CheckoutController::class, 'placeorder']);
Route::post('/timeslot', [CheckoutController::class, 'timeslot']);
// Payment SUCCESS/FAIL
Route::any('/paymentsuccess', [CheckoutController::class, 'paymentsuccess']);
Route::post('mercadorequest', [MercadoPagoController::class, 'index']);
// orders
Route::get('/success-{order_number}', [WebOrderController::class, 'success'])->name('success');
Route::get('/orders', [WebOrderController::class, 'index'])->name('order-history');
Route::get('/orders-{order_number}', [WebOrderController::class, 'orderdetails'])->name('order-details');
Route::post('/orders/cancel', [WebOrderController::class, 'statusupdate']);
Route::post('/changepassword', [WebUserController::class, 'updatepassword']);
Route::post('/getaddress', [AddressController::class, 'getaddress']);
Route::group(['middleware' => 'UserMiddleware'], function () {
// user
Route::get('/profile', [WebUserController::class, 'getprofile'])->name('user-profile');
Route::post('/profile/update', [WebUserController::class, 'editprofile']);
Route::get('/profile/send-email-status', [WebUserController::class, 'send_email_status']);
Route::get('/refer-earn', [WebUserController::class, 'referearn'])->name('refer-earn');
// address
Route::get('/address', [AddressController::class, 'index'])->name('address');
Route::get('/address/add', [AddressController::class, 'add'])->name('add-address');
Route::post('/address/store', [AddressController::class, 'store']);
Route::get('/address-{id}', [AddressController::class, 'show'])->name('update-address');
Route::post('/address/update-{id}', [AddressController::class, 'update']);
Route::post('/address/delete', [AddressController::class, 'deleteaddress']);
Route::post('/address/status', [AddressController::class, 'address_status']);
// wallet
Route::get('/wallet', [WalletController::class, 'index'])->name('user-wallet');
Route::get('/wallet/addmoney', [WalletController::class, 'addform'])->name('add-money');
Route::post('/wallet/recharge', [WalletController::class, 'addwallet']);
Route::any('/addwalletsuccess', [WalletController::class, 'addsuccess']);
Route::get('/addfail', [WalletController::class, 'addfail']);
// favorite
Route::get('/favouritelist', [FavoriteController::class, 'index'])->name('user-favouritelist');
Route::post('/managefavorite', [FavoriteController::class, 'managefavorite']);
Route::get('/logout', [WebUserController::class, 'logout'])->name('logout');
});
});
// ------------------------------- for admin ----------------------------------------- //
Route::get('/auth', function () {
return view('/auth');
});
Route::post('auth', 'HomeController@auth');
Route::group(['prefix' => 'admin', 'namespace' => 'admin'], function () {
Route::get('/', function () {
return view('admin.auth.login');
});
Route::post('check-login', [AdminController::class, 'check_admin']);
Route::get('/forgot-password', function () {
return view('admin.auth.forgot_password');
});
Route::post('send-pass', [AdminController::class, 'send_pass']);
Route::post('auth', [AdminController::class, 'auth']);
Route::group(['middleware' => 'AdminAuth'], function () {
// our-team
Route::get('our-team', [OtherPagesController::class, 'our_team_index']);
Route::get('our-team/add', [OtherPagesController::class, 'our_team_add']);
Route::post('our-team/store', [OtherPagesController::class, 'our_team_store']);
Route::get('our-team-{id}', [OtherPagesController::class, 'our_team_show']);
Route::post('our-team/update-{id}', [OtherPagesController::class, 'our_team_update']);
Route::post('our-team/delete', [OtherPagesController::class, 'our_team_delete']);
// tutorial
Route::get('tutorial', [OtherPagesController::class, 'tutorial_index']);
Route::get('tutorial/add', [OtherPagesController::class, 'tutorial_add']);
Route::post('tutorial/store', [OtherPagesController::class, 'tutorial_store']);
Route::get('tutorial-{id}', [OtherPagesController::class, 'tutorial_show']);
Route::post('tutorial/update-{id}', [OtherPagesController::class, 'tutorial_update']);
Route::post('tutorial/delete', [OtherPagesController::class, 'tutorial_delete']);
// faq
Route::get('faq', [OtherPagesController::class, 'faq_index']);
Route::get('faq/add', [OtherPagesController::class, 'faq_add']);
Route::post('faq/store', [OtherPagesController::class, 'faq_store']);
Route::get('faq-{id}', [OtherPagesController::class, 'faq_show']);
Route::post('faq/update-{id}', [OtherPagesController::class, 'faq_update']);
Route::post('faq/delete', [OtherPagesController::class, 'faq_delete']);
Route::post('faqs/reorder_faqs', [OtherPagesController::class, 'reorder_faqs']);
// gallery
Route::get('gallery', [OtherPagesController::class, 'gallery_index']);
Route::get('gallery/add', [OtherPagesController::class, 'gallery_add']);
Route::post('gallery/store', [OtherPagesController::class, 'gallery_store']);
Route::get('gallery-{id}', [OtherPagesController::class, 'gallery_show']);
Route::post('gallery/update-{id}', [OtherPagesController::class, 'gallery_update']);
Route::post('gallery/delete', [OtherPagesController::class, 'gallery_delete']);
Route::get('/subscribers', [OtherPagesController::class, 'subscribers']);
Route::post('/subscribers/delete', [OtherPagesController::class, 'subscribers_delete']);
// others
Route::get('home', [AdminController::class, 'home'])->name('dashboard');
Route::post('change-password', [AdminController::class, 'changepassword']);
Route::post('edit-profile', [AdminController::class, 'editprofile']);
Route::get('getorder', [AdminController::class, 'getorder']);
Route::get('change-status', [AdminController::class, 'changestatus']);
// slider
Route::get('slider', [SliderController::class, 'index']);
Route::get('slider/list', [SliderController::class, 'list']);
Route::get('slider/add', [SliderController::class, 'add']);
Route::post('slider/store', [SliderController::class, 'store']);
Route::get('slider-{id}', [SliderController::class, 'show']);
Route::post('slider/update-{id}', [SliderController::class, 'update']);
Route::post('slider/status', [SliderController::class, 'status']);
Route::post('slider/destroy', [SliderController::class, 'destroy']);
Route::post('slider/reorder_slider', [SliderController::class, 'reorder_slider']);
// category
Route::get('category', [CategoryController::class, 'index']);
Route::get('category/add', [CategoryController::class, 'add']);
Route::post('category/store', [CategoryController::class, 'store']);
Route::get('category-{id}', [CategoryController::class, 'show']);
Route::post('category/update-{id}', [CategoryController::class, 'update']);
Route::post('category/status', [CategoryController::class, 'status']);
Route::post('category/delete', [CategoryController::class, 'delete']);
Route::post('category/reorder_category', [CategoryController::class, 'reorder_category']);
// why choose us
Route::get('/choose_us', [WhyChooseUsController::class, 'index']);
Route::post('/choose_us/savecontent', [WhyChooseUsController::class, 'savecontent']);
Route::get('/choose_us/add', [WhyChooseUsController::class, 'add']);
Route::get('/choose_us/edit-{id}', [WhyChooseUsController::class, 'edit']);
Route::post('/choose_us/update-{id}', [WhyChooseUsController::class, 'update']);
Route::post('/choose_us/save', [WhyChooseUsController::class, 'save']);
Route::post('/choose_us/delete', [WhyChooseUsController::class, 'delete']);
Route::post('/choose_us/reorder_choose_us', [WhyChooseUsController::class, 'reorder_choose_us']);
// sub-category
Route::get('sub-category', [CategoryController::class, 'subcategory_index']);
Route::get('sub-category/add', [CategoryController::class, 'subcategory_add']);
Route::post('sub-category/store', [CategoryController::class, 'subcategory_store']);
Route::post('sub-category/status', [CategoryController::class, 'subcategory_status']);
Route::post('sub-category/delete', [CategoryController::class, 'subcategory_delete']);
Route::get('sub-category-{id}', [CategoryController::class, 'subcategory_show']);
Route::post('sub-category/update-{id}', [CategoryController::class, 'subcategory_update']);
Route::post('sub-category/reorder_subcategory', [CategoryController::class, 'reorder_subcategory']);
// item
Route::get('item', [ItemController::class, 'index']);
Route::get('item/add', [ItemController::class, 'additem']);
Route::post('item/store', [ItemController::class, 'store']);
Route::get('item/list', [ItemController::class, 'list']);
Route::post('item/update', [ItemController::class, 'update']);
Route::post('item/showimage', [ItemController::class, 'showimage']);
Route::post('item/updateimage', [ItemController::class, 'updateimage']);
Route::post('item/storeimages', [ItemController::class, 'storeimages']);
Route::post('item/destroyimage', [ItemController::class, 'destroyimage']);
Route::post('item/status', [ItemController::class, 'status']);
Route::post('item/featured', [ItemController::class, 'featured']);
Route::post('item/delete', [ItemController::class, 'delete']);
Route::post('item/deletevariation', [ItemController::class, 'deletevariation']);
Route::get('item-{id}', [ItemController::class, 'edititem']);
Route::get('item/subcategories', [ItemController::class, 'subcategories']);
Route::post('item/reorder_item', [ItemController::class, 'reorder_item']);
Route::post('item/review/delete', [ItemController::class, 'delete_review']);
Route::get('products/delete/extras-{id}', [ItemController::class, 'delete_extras']);
Route::get('share', [OtherPagesController::class, 'share']);
//shipping
Route::group(['prefix' => 'shipping'], function () {
Route::get('/', [OtherPagesController::class, 'shippingindex']);
Route::post('/savecontent', [OtherPagesController::class, 'savecontent']);
});
// for variation
Route::group(
['prefix' => 'products'],
function () {
Route::post('/product-variants-possibilities/{product_id}', [ItemController::class, 'getProductVariantsPossibilities']);
Route::get('/get-product-variants-possibilities', [ItemController::class, 'getProductVariantsPossibilities']);
Route::get('/variants/edit/{product_id}', [ItemController::class, 'productVariantsEdit']);
Route::post('/reorder_image-{item_id}', [ItemController::class, 'reorder_image']);
}
);
// tax
Route::group(
['prefix' => 'tax'],
function () {
Route::get('/', [TaxController::class, 'index']);
Route::get('add', [TaxController::class, 'add']);
Route::post('save', [TaxController::class, 'save']);
Route::get('edit-{id}', [TaxController::class, 'edit']);
Route::post('update-{id}', [TaxController::class, 'update']);
Route::post('change_status', [TaxController::class, 'change_status']);
Route::post('delete', [TaxController::class, 'delete']);
Route::post('reorder_tax', [TaxController::class, 'reorder_tax']);
}
);
// Media
Route::group(
['prefix' => 'media'],
function () {
Route::get('/', [MediaController::class, 'index']);
Route::post('/add_image', [MediaController::class, 'add_image']);
Route::post('/delete', [MediaController::class, 'delete_media']);
Route::get('download-{id}', [MediaController::class, 'download']);
}
);
Route::get('/getextras', [GlobalExtrasController::class, 'getextras']);
Route::get('/editgetextras-{id}', [GlobalExtrasController::class, 'editgetextras']);
// extras
Route::get('/getextras', [GlobalExtrasController::class, 'getextras']);
Route::get('/editgetextras-{id}', [GlobalExtrasController::class, 'editgetextras']);
Route::group(
['prefix' => 'extras'],
function () {
Route::get('/', [GlobalExtrasController::class, 'index']);
Route::get('/add', [GlobalExtrasController::class, 'add']);
Route::post('/save', [GlobalExtrasController::class, 'save']);
Route::get('/edit-{id}', [GlobalExtrasController::class, 'edit']);
Route::post('/update-{id}', [GlobalExtrasController::class, 'update']);
Route::post('/change_status', [GlobalExtrasController::class, 'change_status']);
Route::post('delete', [GlobalExtrasController::class, 'delete']);
Route::post('/reorder_extras', [GlobalExtrasController::class, 'reorder_extras']);
}
);
// payment
Route::get('payment', [PaymentController::class, 'index']);
Route::post('payment/status', [PaymentController::class, 'status']);
Route::get('payment-{id}', [PaymentController::class, 'managepayment']);
Route::post('payment/update', [PaymentController::class, 'update']);
Route::post('payment/reorder_payment', [PaymentController::class, 'reorder_payment']);
Route::post('social_links/update', [AboutController::class, 'social_links_update']);
Route::get('settings/delete-sociallinks-{id}', [AboutController::class, 'delete_sociallinks']);
// users
Route::get('orders', [OrderController::class, 'index']);
Route::get('invoice/{id}', [OrderController::class, 'invoice']);
Route::get('print/{id}', [OrderController::class, 'print']);
Route::post('orders/update-{id}-{status}-{type}', [OrderController::class, 'update']);
Route::post('orders/assign-driver', [OrderController::class, 'assign_driver']);
Route::get('report', [OrderController::class, 'get_reports']);
Route::post('/orders/customerinfo/', [OrderController::class, 'customerinfo']);
Route::post('/orders/vendor_note/', [OrderController::class, 'vendor_note']);
Route::post('/orders/payment_status-{status}', [OrderController::class, 'payment_status']);
Route::get('/orders/generatepdf/{order_number}', [OrderController::class, 'generatepdf']);
// banner
Route::get('bannersection-1', [BannerController::class, 'index']);
Route::get('bannersection-2', [BannerController::class, 'index']);
Route::get('bannersection-3', [BannerController::class, 'index']);
Route::get('bannersection-4', [BannerController::class, 'index']);
Route::get('bannersection-1/add', [BannerController::class, 'add']);
Route::get('bannersection-2/add', [BannerController::class, 'add']);
Route::get('bannersection-3/add', [BannerController::class, 'add']);
Route::get('bannersection-4/add', [BannerController::class, 'add']);
Route::post('banner/store', [BannerController::class, 'store']);
Route::get('bannersection-{section}-{id}', [BannerController::class, 'show']);
Route::post('banner/update-{id}', [BannerController::class, 'update']);
Route::post('banner/status', [BannerController::class, 'status']);
Route::post('banner/destroy', [BannerController::class, 'destroy']);
Route::post('banner/reorder_banner', [BannerController::class, 'reorder_banner']);
// settings
Route::get('settings', [AboutController::class, 'index']);
Route::get('settings/delete-feature-{id}', [AboutController::class, 'delete_feature']);
Route::post('settings/update', [AboutController::class, 'settings_update']);
Route::post('settings/safe-secure-store', [AboutController::class, 'safe_secure_store']);
Route::post('/maintenance_update', [AboutController::class, 'maintenance_update']);
Route::post('/estimated_delivery', [AboutController::class, 'estimated_delivery']);
// contact
Route::get('contact', [ContactController::class, 'index']);
Route::post('contact/destroy', [ContactController::class, 'destroy']);
// driver
Route::get('driver', [DriverController::class, 'index']);
Route::get('driver/add', [DriverController::class, 'add']);
Route::post('driver/store', [DriverController::class, 'store']);
Route::get('driver-{id}', [DriverController::class, 'show']);
Route::post('driver/update-{id}', [DriverController::class, 'update']);
Route::post('driver/status', [DriverController::class, 'status']);
Route::get('driver/details-{id}', [DriverController::class, 'driverdetails']);
Route::post('driver/reorder_driver', [DriverController::class, 'reorder_driver']);
// time
Route::get('time', [TimeController::class, 'index']);
Route::post('time/store', [TimeController::class, 'store']);
// CMS PAGES
Route::get('privacypolicy', [CMSPagesController::class, 'privacypolicy']);
Route::post('privacypolicy/update', [CMSPagesController::class, 'privacypolicy_update']);
Route::get('aboutus', [CMSPagesController::class, 'aboutus']);
Route::post('aboutus/update', [CMSPagesController::class, 'about_us_update']);
Route::get('termscondition', [CMSPagesController::class, 'termscondition']);
Route::post('termscondition/update', [CMSPagesController::class, 'termscondition_update']);
Route::get('refundpolicy', [CMSPagesController::class, 'refundpolicy']);
Route::post('refundpolicy/update', [CMSPagesController::class, 'refundpolicy_update']);
// clear-cache
Route::get('clear-cache', function () {
Artisan::call('cache:clear');
Artisan::call('route:clear');
Artisan::call('config:clear');
Artisan::call('view:clear');
return redirect()->back()->with('success', trans('messages.success'));
});
// systemaddons
Route::get('systemaddons', [SystemAddonsController::class, 'index']);
Route::get('systemaddons-{type}', [SystemAddonsController::class, 'index']);
Route::get('createsystem-addons', [SystemAddonsController::class, 'createsystemaddons']);
Route::post('systemaddons/store', [SystemAddonsController::class, 'store']);
Route::get('systemaddons/list', [SystemAddonsController::class, 'list']);
Route::post('systemaddons/update', [SystemAddonsController::class, 'update']);
// currency-setting
Route::group(['prefix' => 'currency-settings'], function () {
Route::get('/', [CurrencyController::class, 'index']);
Route::get('/currency/edit-{id}', [CurrencyController::class, 'edit']);
Route::post('/update-{id}', [CurrencyController::class, 'update']);
});
});
Route::get('logout', [AdminController::class, 'logout']);
});