<?php

/*
|--------------------------------------------------------------------------
| 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!
|
*/

use App\Http\Controllers\Auth\LoginController;
use App\Http\Controllers\PagesController;
use App\Http\Controllers\UsersController;
use App\Http\Controllers\RolesController;
use App\Http\Controllers\PermissionsController;
use App\Http\Controllers\ContentElementsController;
use App\Http\Controllers\PhotosController;
use App\Http\Controllers\FileUploadsController;
use App\Http\Controllers\BlogsController;
use App\Http\Controllers\TagsController;
use App\Http\Controllers\InquiriesController;
use App\Http\Controllers\LivestreamsController;
use App\Http\Controllers\ChatController;
use App\Http\Controllers\SearchController;
use App\Http\Controllers\CalendarsController;
use App\Http\Controllers\PageSlugsController;
use App\Http\Controllers\PageRedirectsController;
use App\Http\Controllers\CoursesController;
use App\Http\Controllers\StaffProfilesController;
use App\Http\Controllers\TimetableContentsController;
use App\Http\Controllers\InlinePhotosController;
use App\Http\Controllers\SitemapController;
use App\Http\Controllers\MenuController;
use App\Http\Controllers\VideoTextsController;
use App\Http\Controllers\AnnouncementsController;
use App\Http\Controllers\CourseListsController;
use App\Http\Controllers\SocialMediaController;
use App\Http\Controllers\VOHController;
use Illuminate\Http\Request;
use Spatie\Csp\AddCspHeaders;

Route::get('/nxt-form/{id}', [PagesController::class, 'nxtForm'])->name('nxt.form')->middleware('throttle:global');

Route::group(['middleware' => env('APP_DEBUG') ? ['throttle:global'] : ['throttle:global', AddCspHeaders::class]], function () {
    Route::group(['middleware' => ['guest']], function () {
        Route::get('/login', [LoginController::class, 'view'])->name('login-page');
        Route::post('/login', [LoginController::class, 'store'])->name('login')->middleware('throttle:login');
        Route::get('/login/google', [LoginController::class, 'redirectToGoogle'])->name('google-login');
        Route::get('/login/google/authorized', [LoginController::class, 'handleGoogleCallback']);
        Route::post('/intended-url', [LoginController::class, 'intendedUrl'])->name('intended-url');

        Route::post('/users/request-password-reset', [UsersController::class, 'requestPasswordReset'])->name('users.request-password-reset')->middleware('throttle:login');
        Route::get('/users/{id}/reset-password', [UsersController::class, 'viewResetPassword'])->name('users.reset-password')->where('id', '\d+');
        Route::post('/users/{id}/reset-password', [UsersController::class, 'resetPassword'])->name('users.reset-password-process')->where('id', '\d+');
    });

    Route::get('/load-menu', [MenuController::class, 'load'])->name('load-menu');
    Route::get('/sitemap', [SitemapController::class, 'index'])->name('sitemap');

    Route::get('/register', [UsersController::class, 'register'])->name('users.register')->middleware('throttle:login');

    Route::get('/users/{id}/verify-email', [UsersController::class, 'verifyEmail'])->name('users.verify-email')->where('id', '\d+');
    Route::post('/users/activation-check', [UsersController::class, 'activationCheck'])->name('users.activation-check');

    Route::get('/pages', [PagesController::class, 'index'])->name('pages.index');
    Route::get('/pages/{id}/sibling-nav', [PagesController::class, 'siblingNav'])->name('pages.sibling-nav')->where('id', '\d+');

    Route::post('/global-search/search', [SearchController::class, 'search'])->name('search');

    //Route::get('/live', [LivestreamsController::class, 'publicIndex'])->name('livestreams.public-index');
    Route::post('/livestreams', [LivestreamsController::class, 'paginate'])->name('livestreams.paginate');
    Route::post('/livestreams/search', [LivestreamsController::class, 'search'])->name('livestreams.search');

    Route::post('/calendars/events', [CalendarsController::class, 'events'])->name('calendars.events');
    Route::post('/calendars/events/search', [CalendarsController::class, 'events'])->name('calendars.events.search');

    Route::get('/livestreams/{id}', [LivestreamsController::class, 'view'])->name('livestreams.view')->where('id', '\d+');
    Route::get('/livestreams/{id}/user/{user_id}', [LivestreamsController::class, 'user'])->name('livestreams.user')->where('id', '\d+')->where('user_id', '\d+');
    Route::get('/livestreams/{id}/register', [LivestreamsController::class, 'register'])->name('livestreams.register')->where('id', '\d+');
    Route::post('/livestreams/{id}/register', [LivestreamsController::class, 'saveRegistration'])->name('livestreams.save-registration')->where('id', '\d+');
    Route::get('/livestreams/{id}/registration-complete', [LivestreamsController::class, 'registrationComplete'])->name('livestreams.registration-complete')->where('id', '\d+');
    Route::get('/livestreams/{id}/unregister/{user_id}', [LivestreamsController::class, 'unregister'])->name('livestreams.unregister')->where('id', '\d+')->where('user_id', '\d+');

    Route::post('/blogs', [BlogsController::class, 'paginate'])->name('blogs.paginate');
    Route::get('/blogs/{page}', [BlogsController::class, 'load'])->name('blogs.load')->where('page', '.*');
    Route::get('/BLOGS/{page}', [BlogsController::class, 'load'])->name('blogs.load-caps')->where('page', '.*'); // I dont like this....
    Route::post('/blogs/search', [BlogsController::class, 'search'])->name('blogs.search');

    Route::post('/announcements', [AnnouncementsController::class, 'paginate'])->name('announcements.paginate');
    Route::get('/announcements/{page}', [AnnouncementsController::class, 'load'])->name('announcements.load')->where('page', '.*');
    Route::get('/ANNOUNCEMENTS/{page}', [AnnouncementsController::class, 'load'])->name('announcements.load-caps')->where('page', '.*'); // I dont like this....
    Route::post('/announcements/search', [AnnouncementsController::class, 'search'])->name('announcements.search');

    //Route::get('/inquiry', [InquiriesController::class, 'create'])->name('inquiries.create');
    Route::post('/inquiry', [InquiriesController::class, 'store'])->name('inquiries.store')->middleware('throttle:login');
    Route::get('/inquiry/tags', [InquiriesController::class, 'tags'])->name('inquiries.tags');
    Route::get('/inquiry/{id}', [InquiriesController::class, 'view'])->name('inquiries.view')->where('id', '\d+');
    Route::post('/inquiry/{id}', [InquiriesController::class, 'store'])->name('inquiries.update')->where('id', '\d+');

    Route::post('/courses', [CoursesController::class, 'paginate'])->name('courses.paginate');
    Route::get('/courses/{page}', [CoursesController::class, 'load'])->name('courses.load')->where('page', '.*');
    Route::get('/COURSES/{page}', [CoursesController::class, 'load'])->name('courses.load-caps')->where('page', '.*'); // I dont like this....
    Route::post('/courses/search', [CoursesController::class, 'search'])->name('courses.search');
    Route::get('/course-lists/{id}/courses', [CourseListsController::class, 'courses'])->name('course-lists.courses')->where('id', '\d+');

    Route::post('/staff-profiles', [StaffProfilesController::class, 'paginate'])->name('staff-profiles.paginate');
    Route::post('/staff-profiles/search', [StaffProfilesController::class, 'search'])->name('staff-profiles.search');

    Route::post('/timetable-contents', [TimetableContentsController::class, 'load'])->name('timetable-contents.load');

    Route::post('/social-media', [SocialMediaController::class, 'load'])->name('social-media.load');

    Route::group(['middleware' => ['auth']], function () {
        Route::post('/logout', [LoginController::class, 'destroy'])->name('logout');
        Route::post('/timeout-check', [LoginController::class, 'timeoutCheck'])->name('timeout-check');

        Route::get('/users', [UsersController::class, 'index'])->name('users.index');
        Route::post('/users-index', [UsersController::class, 'paginate'])->name('users-index.paginate');
        Route::post('/users-index/search', [UsersController::class, 'paginate'])->name('users-index.search');
        Route::get('/users/current', [UsersController::class, 'current'])->name('users.current');
        Route::post('/users/{id}', [UsersController::class, 'store'])->name('users.update')->where('id', '\d+');
        Route::post('/users/search', [UsersController::class, 'search'])->name('users.search');
        Route::post('/users/{id}/ban', [UsersController::class, 'ban'])->name('users.ban')->where('id', '\d+');
        Route::post('/users/{id}/send-email-verification', [UsersController::class, 'sendEmailVerification'])->name('users.send-email-verification')->where('id', '\d+');

        Route::get('/roles', [RolesController::class, 'index'])->name('roles.index');
        Route::post('/roles/create', [RolesController::class, 'store'])->name('roles.store');
        Route::post('/roles/{id}', [RolesController::class, 'store'])->name('roles.update')->where('id', '\d+');
        Route::post('/roles/search', [RolesController::class, 'search'])->name('roles.search');
        Route::post('/roles/{id}/remove', [RolesController::class, 'remove'])->name('roles.remove')->where('id', '\d+');
        //Route::post('/roles/{id}/remove-user', [RolesController::class, 'removeUser'])->name('roles.remove-user')->where('id', '\d+');

        Route::get('/permissions/pages', [PermissionsController::class, 'pages'])->name('permissions.pages');
        Route::post('/permissions/load', [PermissionsController::class, 'load'])->name('permissions.load');
        Route::post('/permissions/create', [PermissionsController::class, 'store'])->name('permissions.store');
        Route::post('/permissions/{id}/destroy', [PermissionsController::class, 'destroy'])->name('permissions.destroy')->where('id', '\d+');

        Route::post('/dark-toggle', [UsersController::class, 'darkToggle'])->name('dark-toggle');
        Route::post('/editing-toggle', [UsersController::class, 'editingToggle'])->name('editing-toggle');

        Route::post('/pages/create', [PagesController::class, 'store'])->name('pages.store');
        Route::post('/pages/expand', [PagesController::class, 'toggleExpanded'])->name('pages.expand');
        Route::get('/pages/{id}', [PagesController::class, 'load'])->name('pages.load-by-id')->where('id', '\d+');
        Route::post('/pages/{id}', [PagesController::class, 'store'])->name('pages.update')->where('id', '\d+');
        Route::post('/pages/{id}/publish', [PagesController::class, 'publish'])->name('pages.publish')->where('id', '\d+');
        Route::post('/pages/{id}/remove', [PagesController::class, 'remove'])->name('pages.remove')->where('id', '\d+');
        Route::post('/pages/{id}/restore', [PagesController::class, 'restore'])->name('pages.restore')->where('id', '\d+');
        Route::post('/pages/{id}/sort', [PagesController::class, 'sortPage'])->name('pages.sort')->where('id', '\d+');
        Route::post('/pages/{id}/unlist', [PagesController::class, 'unlist'])->name('pages.unlist')->where('id', '\d+');
        Route::post('/pages/{id}/reveal', [PagesController::class, 'reveal'])->name('pages.reveal')->where('id', '\d+');
        Route::post('/pages/{id}/publishing-request', [PagesController::class, 'publishingRequest'])->name('pages.publishing-request')->where('id', '\d+');
        Route::post('/pages/{id}/sub-pages', [PagesController::class, 'subPages'])->name('pages.sub-pages')->where('id', '\d+');
        Route::post('/pages/{id}/attributes', [PagesController::class, 'attributes'])->name('pages.attributes')->where('id', '\d+');
        Route::post('/pages/{id}/signed-url', [PagesController::class, 'signedUrl'])->name('pages.signed-url')->where('id', '\d+');
        Route::post('/pages/{id}/preview-url', [PagesController::class, 'previewUrl'])->name('pages.preview-url')->where('id', '\d+');
        Route::post('/pages/search-tree', [PagesController::class, 'searchTree'])->name('pages.search-tree');

        Route::post('/page-slugs/create', [PageSlugsController::class, 'store'])->name('page-slugs.store');
        Route::post('/page-slugs/{id}/remove', [PageSlugsController::class, 'remove'])->name('page-slugs.remove')->where('id', '\d+');
        Route::post('/page-slugs/get-slug', [PageSlugsController::class, 'getSlug'])->name('page-slugs.get-slug');
        Route::post('/page-slugs/get-link', [PageSlugsController::class, 'getLink'])->name('page-slugs.get-link');

        Route::get('/page-redirects', [PageRedirectsController::class, 'index'])->name('page-redirects.index');
        Route::post('/page-redirects/create', [PageRedirectsController::class, 'store'])->name('page-redirects.store');
        Route::post('/page-redirects/{id}', [PageRedirectsController::class, 'store'])->name('page-redirects.update')->where('id', '\d+');
        Route::post('/page-redirects/{id}/remove', [PageRedirectsController::class, 'remove'])->name('page-redirects.remove')->where('id', '\d+');

        Route::post('/content-elements/create', [ContentElementsController::class, 'store'])->name('content-elements.store');
        Route::post('/content-elements/{id}', [ContentElementsController::class, 'store'])->name('content-elements.update')->where('id', '\d+');
        Route::post('/content-elements/{id}/load', [ContentElementsController::class, 'load'])->name('content-elements.load')->where('id', '\d+');
        Route::post('/content-elements/{id}/remove', [ContentElementsController::class, 'remove'])->name('content-elements.remove')->where('id', '\d+');
        Route::post('/content-elements/{id}/restore', [ContentElementsController::class, 'restore'])->name('content-elements.restore')->where('id', '\d+');
        Route::post('/content-elements/{id}/publish', [ContentElementsController::class, 'publish'])->name('content-elements.publish')->where('id', '\d+');
        Route::post('/content-elements/{id}/previous-version', [ContentElementsController::class, 'previousVersion'])->name('content-elements.previous-version')->where('id', '\d+');

        Route::post('/photos/paginate', [PhotosController::class, 'paginate'])->name('photos.paginate');
        Route::post('/photos/{id}/update', [PhotosController::class, 'store'])->name('photos.update')->where('id', '\d+');
        Route::post('/photos/{id}/remove', [PhotosController::class, 'remove'])->name('photos.remove')->where('id', '\d+');
        Route::post('/photos/{id}/restore', [PhotosController::class, 'restore'])->name('photos.restore')->where('id', '\d+');
        Route::post('/photos/{id}/hide', [PhotosController::class, 'hide'])->name('photos.hide')->where('id', '\d+');
        Route::post('/inline-photos/create', [InlinePhotosController::class, 'store'])->name('inline-photos.create')->where('id', '\d+');
        Route::get('/photos/{id}/download', [PhotosController::class, 'download'])->name('photos.download')->where('id', '\d+');

        Route::post('/file-uploads/create', [FileUploadsController::class, 'store'])->name('file-uploads.create')->middleware('throttle:uploads');
        Route::post('/file-uploads/pre-validate', [FileUploadsController::class, 'preValidateFile'])->name('file-uploads.pre-validate')->middleware('throttle:uploads');
        Route::post('/file-uploads/{id}/destroy', [FileUploadsController::class, 'destroy'])->name('file-uploads.destroy')->where('id', '\d+');

        Route::get('/blogs-manage', [BlogsController::class, 'index'])->name('blogs.manage');
        Route::get('/blogs/load', [BlogsController::class, 'load'])->name('blogs.load-blog');
        Route::post('/blogs/create', [BlogsController::class, 'store'])->name('blogs.store');
        Route::post('/blogs/{id}', [BlogsController::class, 'store'])->name('blogs.update')->where('id', '\d+');
        Route::post('/blogs/{id}/publish', [BlogsController::class, 'publish'])->name('blogs.publish')->where('id', '\d+');
        Route::post('/blogs/{id}/remove', [BlogsController::class, 'remove'])->name('blogs.remove')->where('id', '\d+');
        Route::post('/blogs/{id}/restore', [BlogsController::class, 'restore'])->name('blogs.restore')->where('id', '\d+');
        Route::post('/blogs/{id}/unlist', [BlogsController::class, 'unlist'])->name('blogs.unlist')->where('id', '\d+');
        Route::post('/blogs/{id}/reveal', [BlogsController::class, 'reveal'])->name('blogs.reveal')->where('id', '\d+');
        Route::post('/blogs/{id}/publishing-request', [BlogsController::class, 'publishingRequest'])->name('blogs.publishing-request')->where('id', '\d+');
        Route::post('/blogs/{id}/attributes', [BlogsController::class, 'attributes'])->name('blogs.attributes')->where('id', '\d+');
        Route::post('/blogs/{id}/signed-url', [BlogsController::class, 'signedUrl'])->name('blogs.signed-url')->where('id', '\d+');
        Route::post('/blogs/{id}/preview-url', [BlogsController::class, 'previewUrl'])->name('blogs.preview-url')->where('id', '\d+');
        Route::post('/blogs/{id}/update-published-at', [BlogsController::class, 'updatePublishedAt'])->name('blogs.update-published-at')->where('id', '\d+');

        Route::get('/announcements-manage', [AnnouncementsController::class, 'index'])->name('announcements.manage');
        //Route::get('/announcements/load', [AnnouncementsController::class, 'load'])->name('announcements.load-blog');
        Route::post('/announcements/create', [AnnouncementsController::class, 'store'])->name('announcements.store');
        Route::post('/announcements/{id}', [AnnouncementsController::class, 'store'])->name('announcements.update')->where('id', '\d+');
        Route::post('/announcements/{id}/publish', [AnnouncementsController::class, 'publish'])->name('announcements.publish')->where('id', '\d+');
        Route::post('/announcements/{id}/remove', [AnnouncementsController::class, 'remove'])->name('announcements.remove')->where('id', '\d+');
        Route::post('/announcements/{id}/restore', [AnnouncementsController::class, 'restore'])->name('announcements.restore')->where('id', '\d+');
        Route::post('/announcements/{id}/unlist', [AnnouncementsController::class, 'unlist'])->name('announcements.unlist')->where('id', '\d+');
        Route::post('/announcements/{id}/reveal', [AnnouncementsController::class, 'reveal'])->name('announcements.reveal')->where('id', '\d+');
        Route::post('/announcements/{id}/publishing-request', [AnnouncementsController::class, 'publishingRequest'])->name('announcements.publishing-request')->where('id', '\d+');
        Route::post('/announcements/{id}/attributes', [AnnouncementsController::class, 'attributes'])->name('announcements.attributes')->where('id', '\d+');
        Route::post('/announcements/{id}/signed-url', [AnnouncementsController::class, 'signedUrl'])->name('announcements.signed-url')->where('id', '\d+');
        Route::post('/announcements/{id}/preview-url', [AnnouncementsController::class, 'previewUrl'])->name('announcements.preview-url')->where('id', '\d+');
        Route::post('/announcements/{id}/update-published-at', [AnnouncementsController::class, 'updatePublishedAt'])->name('announcements.update-published-at')->where('id', '\d+');

        Route::get('/tags', [TagsController::class, 'index'])->name('tags.index');
        Route::post('/tags/search', [TagsController::class, 'search'])->name('tags.search');
        Route::post('/tags/create', [TagsController::class, 'store'])->name('tags.store');
        Route::post('/tags/{id}', [TagsController::class, 'store'])->name('tags.update')->where('id', '\d+');
        Route::post('/tags/{id}/items', [TagsController::class, 'items'])->name('tags.items')->where('id', '\d+');
        Route::post('/tags/{id}/remove-items', [TagsController::class, 'removeItems'])->name('tags.remove-items')->where('id', '\d+');
        Route::post('/tags/{id}/retag-items', [TagsController::class, 'retagItems'])->name('tags.retag-items')->where('id', '\d+');

        Route::get('/inquiries', [InquiriesController::class, 'index'])->name('inquiries.index');
        Route::post('/inquiries', [InquiriesController::class, 'paginate'])->name('inquiries.paginate'); // for pagination
        Route::post('/inquiries/search', [InquiriesController::class, 'paginate'])->name('inquiries.search'); // for search
        Route::post('/inquiry/{id}/remove', [InquiriesController::class, 'remove'])->name('inquiries.remove')->where('id', '\d+');
        Route::post('/inquiry/{id}/restore', [InquiriesController::class, 'restore'])->name('inquiries.restore')->where('id', '\d+');
        Route::post('/inquiry/{id}/archive', [InquiriesController::class, 'archive'])->name('inquiries.archive')->where('id', '\d+');

        Route::get('/livestreams', [LivestreamsController::class, 'index'])->name('livestreams.index');
        Route::post('/livestreams/create', [LivestreamsController::class, 'store'])->name('livestreams.store');
        Route::post('/livestreams/{id}', [LivestreamsController::class, 'store'])->name('livestreams.update')->where('id', '\d+');
        Route::post('/livestreams/{id}/send-reminder-emails', [LivestreamsController::class, 'sendReminderEmails'])->name('livestreams.reminder-emails')->where('id', '\d+');

        Route::get('/courses-manage', [CoursesController::class, 'index'])->name('courses.manage');
        Route::post('/courses/create', [CoursesController::class, 'store'])->name('courses.store');
        Route::post('/courses/{id}', [CoursesController::class, 'store'])->name('courses.update')->where('id', '\d+');
        Route::post('/courses/{id}/remove', [CoursesController::class, 'remove'])->name('courses.remove')->where('id', '\d+');
        Route::post('/courses/{id}/restore', [CoursesController::class, 'restore'])->name('courses.restore')->where('id', '\d+');
        Route::post('/courses/{id}/unlist', [CoursesController::class, 'unlist'])->name('courses.unlist')->where('id', '\d+');
        Route::post('/courses/{id}/reveal', [CoursesController::class, 'reveal'])->name('courses.reveal')->where('id', '\d+');
        Route::post('/courses/{id}/publish', [CoursesController::class, 'publish'])->name('courses.publish')->where('id', '\d+');
        Route::post('/courses/{id}/publishing-request', [CoursesController::class, 'publishingRequest'])->name('courses.publishing-request')->where('id', '\d+');
        Route::post('/courses/{id}/attributes', [CoursesController::class, 'attributes'])->name('courses.attributes')->where('id', '\d+');
        Route::post('/courses/{id}/signed-url', [CoursesController::class, 'signedUrl'])->name('courses.signed-url')->where('id', '\d+');
        Route::post('/courses/{id}/preview-url', [CoursesController::class, 'previewUrl'])->name('courses.preview-url')->where('id', '\d+');

        Route::post('/chat/send-message', [ChatController::class, 'sendMessage'])->name('chat.send-message')->middleware('throttle:chat');
        Route::post('/chat/{id}/delete', [ChatController::class, 'destroy'])->name('chat.delete')->where('id', '\d+');
        Route::post('/chat/load', [ChatController::class, 'load'])->name('chat.load');
        Route::get('/chat/view/{room}', [ChatController::class, 'view'])->name('chat.view');
        Route::post('/chat/{id}/select', [ChatController::class, 'toggleSelected'])->name('chat.select')->where('id', '\d+');

        Route::get('/staff-profiles-manage', [StaffProfilesController::class, 'index'])->name('staff-profiles.manage');
        Route::post('/staff-profiles/create', [StaffProfilesController::class, 'store'])->name('staff-profiles.store');
        Route::post('/staff-profiles/{id}', [StaffProfilesController::class, 'store'])->name('staff-profiles.update')->where('id', '\d+');
        Route::get('/staff-profiles/{id}/edit', [StaffProfilesController::class, 'edit'])->name('staff-profiles.edit')->where('id', '\d+');
        Route::post('/staff-profiles/{id}/remove', [StaffProfilesController::class, 'remove'])->name('staff-profiles.remove')->where('id', '\d+');
        Route::post('/staff-profiles/{id}/restore', [StaffProfilesController::class, 'restore'])->name('staff-profiles.restore')->where('id', '\d+');
        Route::post('/staff-profiles/{id}/publish', [StaffProfilesController::class, 'publish'])->name('staff-profiles.publish')->where('id', '\d+');
        Route::get('/my-profile', [StaffProfilesController::class, 'myProfile'])->name('staff-profiles.my-profile');

        Route::get('/timetable-contents-manage', [TimetableContentsController::class, 'manage'])->name('timetable-contents.manage');
        Route::post('/timetable-contents/create', [TimetableContentsController::class, 'store'])->name('timetable-contents.store');
        Route::post('/timetable-contents/{id}', [TimetableContentsController::class, 'store'])->name('timetable-contents.update')->where('id', '\d+');

        Route::post('/video-texts/{id}/remove', [VideoTextsController::class, 'remove'])->name('video-texts.remove')->where('id', '\d+');
    });

    /*
    Route::get('/mailable', function () {
        $inquiry = App\Models\Inquiry::all()->last();
        return new App\Mail\InquiryCreated($inquiry);
        $livestream_registrations = collect();
        return new App\Mail\InquiryConfirmation($inquiry, $livestream_registrations);
        $page = App\Models\Page::all()->random();
        return new App\Mail\PublishingRequest(App\Models\User::find(1), $page->version->name, $page->full_slug.'?editing=true');
    });
     */
	/*
        Route::get('/test-exception', function() {
        try {
            throw new Exception('Enhanced exception test - ' . now());
        } catch (Exception $e) {
            Mail::to('aqeel.mozumder@brentwood.ca')->send(new App\Mail\ExceptionReport($e));
            return 'Exception email sent successfully!';
        }
	});
	 */


    Route::get('/virtual-open-house/start', [VOHController::class, 'start']);

    Route::get('/virtual-open-house/watch', [VOHController::class, 'watch'])->name('voh.view');

    Route::get('{page}', [PagesController::class, 'load'])->name('pages.load')->where('page', '.*');
});

