Back | Home
الـ Path الحالي: /home/picotech/domains/instantly.picotech.app/public_html/public/../routes
الملفات الموجودة في هذا الـ Path:
.
..
api.php
channels.php
console.php
web.php

مشاهدة ملف: web.php

<?php

use App\Http\Controllers\Admin\AcceleratorCategoryController as AcController;
use App\Http\Controllers\Admin\AddonController;
use App\Http\Controllers\Admin\AcceleratorController as AdminAccController;
use App\Http\Controllers\Admin\CustomerController;
use App\Http\Controllers\Admin\EmailServerController;
use App\Http\Controllers\Admin\FaqController;
use App\Http\Controllers\Admin\FrontContactController;
use App\Http\Controllers\Admin\PageController;
use App\Http\Controllers\Admin\PlanController;
use App\Http\Controllers\Admin\TaxController;
use App\Http\Controllers\Admin\LeadController;
use App\Http\Controllers\Admin\TemplateController;
use App\Http\Controllers\AssetController;
use App\Http\Controllers\Auth\AdminLoginController;
use App\Http\Controllers\Auth\CustomerLoginController;
use App\Http\Controllers\Auth\ForgotPasswordController;
use App\Http\Controllers\Customer\AcceleratorController;
use App\Http\Controllers\Customer\AnalyticsController;
use App\Http\Controllers\Customer\BillingController;
use App\Http\Controllers\Customer\CampaignController;
use App\Http\Controllers\Customer\ComposeController;
use App\Http\Controllers\Customer\ContactController;
use App\Http\Controllers\Customer\DashboardController;
use App\Http\Controllers\Customer\DomainController;
use App\Http\Controllers\Customer\DraftController;
use App\Http\Controllers\Customer\EmailAccountController;
use App\Http\Controllers\Customer\EmailTemplateController;
use App\Http\Controllers\Customer\FormController;
use App\Http\Controllers\Customer\GroupController;
use App\Http\Controllers\Customer\InboxController;
use App\Http\Controllers\Customer\SenderController;
use App\Http\Controllers\Customer\SentController;
use App\Http\Controllers\Customer\SettingsController;
use App\Http\Controllers\Customer\LeadFinderController;
use App\Http\Controllers\Customer\TicketController;
use App\Http\Controllers\Customer\TrashController;
use App\Http\Controllers\Customer\UniboxController;
use App\Http\Controllers\ScheduleController;
use Illuminate\Support\Facades\Route;

/*
|--------------------------------------------------------------------------
| 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::get('/', [\App\Http\Controllers\FrontController::class, 'home'])->name('home');
Route::get('/pricing', [\App\Http\Controllers\FrontController::class, 'price'])->name('price');
Route::get('/warmup', [\App\Http\Controllers\FrontController::class, 'warmup'])->name('warmup');
Route::get('/about_us', [\App\Http\Controllers\FrontController::class, 'about_us'])->name('about.us');
Route::get('/leads', [\App\Http\Controllers\FrontController::class, 'leads'])->name('leads');
//#region admin route
Route::group(['as' => 'admin.', 'prefix' => 'admin'], function () {

    Route::group(['middleware' => 'guest'], function () {
        Route::get('/login', [AdminLoginController::class, 'index'])->name('login');
        Route::post('/login', [AdminLoginController::class, 'authenticate'])->name('authenticate');

        Route::get('/password/reset', [\App\Http\Controllers\Auth\ForgotPasswordController::class, 'showLinkRequestFormAdmin'])->name('password.request');
        Route::post('/password/email', [\App\Http\Controllers\Auth\ForgotPasswordController::class, 'sendResetLinkEmailAdmin'])->name('password.email');
    });

    Route::group(['middleware' => 'auth'], function () {
        Route::get('/logout', [AdminLoginController::class, 'logout'])->name('logout');

        Route::get('/dashboard', [\App\Http\Controllers\Admin\DashboardController::class, 'index'])->name('dashboard');

        Route::resource('/customers', CustomerController::class);
        Route::resource('/plans', PlanController::class);
        Route::resource('/page', PageController::class);
        Route::get('/get/all/leads', [LeadController::class, 'getAll'])->name('get.all.leads');
        Route::resource('/lead',LeadController::class);
        Route::get('/get/all/accelerator-category', [AcController::class, 'getAll'])->name('get.all.accelerator.category');
        Route::resource('/accelerator-category', AcController::class);
        Route::get('/get/all/accelerator', [AdminAccController::class, 'getAll'])->name('get.all.accelerator');
        Route::resource('/accelerator', AdminAccController::class);
//            Tax
        Route::group(['as' => 'tax.', 'prefix' => 'tax'], function () {
            Route::get('/all', [TaxController::class, 'getAll']);
        });
        Route::resource('/tax', TaxController::class);

        Route::group(['as' => 'customer.', 'prefix' => 'customer'], function () {
            Route::get('/all', [CustomerController::class, 'getAll'])->name('get.all');
            Route::post('/change-plan', [CustomerController::class, 'changePlan'])->name('plan.change');
            Route::post('/login-as', [CustomerController::class, 'loginAs'])->name('login.as');
            Route::get('/verified/user', [CustomerController::class, 'verified'])->name('verified.user');
        });

        Route::group(['as' => 'plan.', 'prefix' => 'plan'], function () {
            Route::get('/all', [PlanController::class, 'getAll'])->name('get.all');
            Route::get('/requests', [PlanController::class, 'requests'])->name('requests');
            Route::get('/requests/get', [PlanController::class, 'get_requests'])->name('get.requests');
        });

        Route::group(['as' => 'settings.', 'prefix' => 'settings'], function () {
            Route::get('/', [\App\Http\Controllers\Admin\SettingsController::class, 'index'])->name('index');
            Route::post('/update/profile', [\App\Http\Controllers\Admin\SettingsController::class, 'profile_update'])->name('profile_update');
            Route::post('/update/application', [\App\Http\Controllers\Admin\SettingsController::class, 'app_update'])->name('app_update');
            Route::post('/update/smtp', [\App\Http\Controllers\Admin\SettingsController::class, 'smtp_update'])->name('smtp_update');
            Route::post('/update/api', [\App\Http\Controllers\Admin\SettingsController::class, 'api_update'])->name('api_update');
            Route::post('/email-template/store', [\App\Http\Controllers\Admin\SettingsController::class, 'templateStore'])->name('email.template.store');
            Route::post('/update/local/setting', [\App\Http\Controllers\Admin\SettingsController::class, 'local_settings'])->name('local.setting');

        });

        Route::group(['as' => 'ticket.', 'prefix' => 'ticket'], function () {
            Route::get('/', [\App\Http\Controllers\Admin\TicketController::class, 'index'])->name('index');
            Route::get('/get-all', [\App\Http\Controllers\Admin\TicketController::class, 'show'])->name('get.all');
            Route::post('/store', [\App\Http\Controllers\Admin\TicketController::class, 'store'])->name('store');
            Route::get('/reply', [\App\Http\Controllers\Admin\TicketController::class, 'reply'])->name('reply');
            Route::post('/status', [\App\Http\Controllers\Admin\TicketController::class, 'status'])->name('status');
            Route::get('/download', [\App\Http\Controllers\Admin\TicketController::class, 'documentDownload'])->name('download');
        });


        Route::group(['as' => 'addon.', 'prefix' => 'addon'], function () {
            Route::get('/', [AddonController::class, 'index'])->name('index');
            Route::get('/import', [AddonController::class, 'import'])->name('import');
            Route::post('/import', [AddonController::class, 'importPost'])->name('import');
            Route::get('/get/all', [AddonController::class, 'getAll'])->name('get.all');
            Route::delete('/uninstall', [AddonController::class, 'uninstall'])->name('uninstall');
            Route::post('/change-status', [AddonController::class, 'changeStatus'])->name('change-status');

        });

        Route::group(['as' => 'page.', 'prefix' => 'page'], function () {
            Route::get('/all', [PageController::class, 'getAll'])->name('get.all');
        });
        Route::resource('/faq', FAQController::class);
        Route::get('/get-all/faq', [FAQController::class, 'getAll'])->name('get.all.faq');

        Route::group(['as' => 'page.', 'prefix' => 'page'], function () {
            Route::get('/all', [PageController::class, 'getAll'])->name('get.all');
        });
        Route::resource('/faq', FAQController::class);
        Route::get('/get-all/faq', [FAQController::class, 'getAll'])->name('get.all.faq');


        Route::resource('/servers', EmailServerController::class);
        Route::group(['as' => 'server.', 'prefix' => 'server'], function () {
            Route::get('/all', [EmailServerController::class, 'getAll'])->name('get.all');
            Route::get('/get/fields', [EmailServerController::class, 'getFields'])->name('get.fields');
            Route::put('/test/connection', [EmailServerController::class, 'testConnection'])->name('test.connection');
        });

        //Front Template
        Route::get('/template/customize', [TemplateController::class, 'index'])->name('front.template.customize');
        Route::post('/template/customize/store', [TemplateController::class, 'store'])->name('front.template.customize.store');
        //FAQs
        Route::resource('/faq', FaqController::class);
        Route::group(['as' => 'faq.', 'prefix' => 'faq'], function () {
            Route::get('/get/all', [FaqController::class, 'getAll'])->name('get.all');
        });
        //Front Contacts
        Route::get('/front/contacts', [FrontContactController::class, 'frontContact'])->name('front.contacts');
        Route::get('/front/contacts/get/all', [FrontContactController::class, 'getAll'])->name('front.contacts.get.all');
        Route::delete('/front/contacts/delete', [FrontContactController::class, 'destroy'])->name('front.contacts.destroy');
    });

});
//#endregion


//#region customer routes

//Guest customer route
Route::group(['middleware' => 'guest:customer'], function () {
    Route::get('/login', [CustomerLoginController::class, 'index'])->name('login');
    Route::post('/login', [CustomerLoginController::class, 'authenticate'])->name('authenticate');

    Route::get('/sign-up', [CustomerLoginController::class, 'sign_up'])->name('signup');
    Route::post('/sign-up', [CustomerLoginController::class, 'sign_up_create'])->name('signup');

    Route::get('password/reset', [ForgotPasswordController::class, 'show_form'])->name('password.request');
    Route::post('password/reset', [ForgotPasswordController::class, 'sent_email'])->name('password.sent');
    Route::get('password/reset/confirm', [ForgotPasswordController::class, 'reset_form'])->name('password.reset.confirm');
    Route::post('password/reset/confirm', [ForgotPasswordController::class, 'reset_confirm'])->name('password.reset.confirm');

    Route::get('/check/schedule', [ScheduleController::class, 'process'])->name('schedule.process');
    Route::get('/verify/', [CustomerLoginController::class, 'verifyView'])->name('customer.verify.view');
    Route::get('/verify/customer', [CustomerLoginController::class, 'verify'])->name('customer.verify');

});

//    Campaign Mail
Route::get('/image/logo.jpg', [AssetController::class, 'mailOpen'])->name('get.image');
Route::get('/unsubscribe', [AssetController::class, 'unsubscribe'])->name('unsubscribe');
Route::get('/clicked', [AssetController::class, 'mailClicked'])->name('clicked');
Route::post('/front/contact/store', [\App\Http\Controllers\FrontController::class, 'contactStore'])->name('front.contact.store');


//Auth customer route
Route::group(['as' => 'customer.', 'middleware' => ['auth:customer', 'email.verify:customer']], function () {
    Route::get('/logout', [CustomerLoginController::class, 'logout'])->name('logout');

        Route::get('/dashboard', [DashboardController::class, 'index'])->name('dashboard');

        Route::group(['as' => 'settings.', 'prefix' => 'settings'], function () {
            Route::get('/index', [SettingsController::class, 'index'])->name('index');
            Route::post('/profile-update', [SettingsController::class, 'profile_update'])->name('profile_update');
            Route::post('/password-update', [SettingsController::class, 'password_update'])->name('password_update');
            Route::post('/notification-update', [SettingsController::class, 'notification_update'])->name('notification_update');
        });
        Route::group(['as' => 'emailbox.', 'prefix' => 'emailbox'], function () {
            //inbox
            Route::get('/inbox', [InboxController::class, 'index'])->name('inbox');
            Route::post('/inbox/trash', [InboxController::class, 'move_trash'])->name('inbox.trash');
            Route::post('/inbox/change-status', [InboxController::class, 'changeStatus'])->name('inbox.change-status');

            //sent
            Route::get('/sent', [SentController::class, 'index'])->name('sent');
            Route::post('/sent/trash', [SentController::class, 'move_trash'])->name('sent.trash');

            //draft
            Route::get('/draft', [DraftController::class, 'index'])->name('draft');
            Route::post('/draft/store', [DraftController::class, 'store'])->name('draft.store');
            Route::post('/draft/delete', [DraftController::class, 'delete'])->name('draft.delete');

            //trash
            Route::get('/trash', [TrashController::class, 'index'])->name('trash');

            //compose
            Route::get('/compose', [ComposeController::class, 'index'])->name('compose');
            Route::post('/compose/sent', [ComposeController::class, 'sentCompose'])->name('compose.sent');

            //Queue
            Route::get('/queue', [ComposeController::class, 'queueList'])->name('queue');

            //Inbox
            Route::get('/check/inbox', [InboxController::class, 'getAll'])->name('check.inbox');

        });

        Route::group(['as' => 'billing.', 'prefix' => 'billing'], function () {
            Route::get('/', [BillingController::class, 'index'])->name('index');
            Route::get('/get-numbers', [BillingController::class, 'get_numbers'])->name('get.numbers');
            Route::post('/update', [BillingController::class, 'update'])->name('update');
        });

        //Contacts
        Route::resource('/contacts', ContactController::class);
        Route::group(['as' => 'contact.', 'prefix' => 'contact'], function () {
            Route::get('/get', [ContactController::class, 'getAll'])->name('get.all');
            Route::get('/search', [ContactController::class, 'search'])->name('get.search');
            Route::get('/import/contacts/create', [ContactController::class, 'import_contacts'])->name('import.contacts');
            Route::post('/import/contacts/show', [ContactController::class, 'import_contacts_show'])->name('import.contacts.show');
            Route::post('/import/contacts/store', [ContactController::class, 'import_contacts_store'])->name('import.contacts.store');
        });

//        Domain
        Route::post('/domain/verification', [DomainController::class, 'verifyDomain'])->name('domain.verification');
        Route::resource('/domain', DomainController::class);
        Route::get('/get/all/domain', [DomainController::class, 'getAll'])->name('get.all.domain');
        Route::get('/domain/keys/show', [DomainController::class, 'domain_keys_show'])->name('domain.keys.show');
        Route::post('/dkim/generator', [DomainController::class, 'dkimGenerator'])->name('dkim.generator');
        //sender
        Route::resource('/sender', SenderController::class);
        Route::get('/get/all/sender', [SenderController::class, 'getAll'])->name('get.all.sender');

        //Groups
        Route::resource('/groups', GroupController::class);
        Route::group(['as' => 'group.', 'prefix' => 'group'], function () {
            Route::get('/get', [GroupController::class, 'getAll'])->name('get.all');
            Route::get('/get/numbers', [GroupController::class, 'getAllNumbers'])->name('get.numbers');

        });
        Route::get('/group-records', [GroupController::class, 'groupRecords'])->name('group.records');
        Route::get('/filtered-records', [GroupController::class, 'filteredRecord'])->name('group.filter.records');
        Route::post('/new-group', [GroupController::class, 'newGroup'])->name('create.new.group');

        Route::resource('/campaign', CampaignController::class);
        Route::get('/get/email-template', [CampaignController::class, 'getTemplate'])->name('get.email.template');
        Route::get('/campaign/template/show', [CampaignController::class, 'campaign_template_show'])->name('campaign.template.show');
        Route::get('/campaign/get/to/email', [CampaignController::class, 'campaign_template_get_to_email'])->name('campaign.template.get.to.email');
        Route::post('/campaign/template/show/store', [CampaignController::class, 'campaign_template_show_store'])->name('campaign.template.show.store');
        Route::get('/get/campaigns', [CampaignController::class, 'getAll'])->name('get.campaigns');
        Route::post('/campaigns/status', [CampaignController::class, 'status'])->name('campaign.status');
        Route::get('/campaign/template/send', [CampaignController::class, 'campaign_template_send'])->name('campaign.template.send');
//        Campaign Statistic
        Route::get('/campaigns/statistic/{id}', [CampaignController::class, 'statistic'])->name('campaign.statistic');
        Route::post('/campaigns/preview/email/store', [CampaignController::class, 'campaigns_preview_email_store'])->name('campaigns.preview.email.store');
        Route::post('/campaigns/preview/test', [CampaignController::class, 'campaigns_preview_test'])->name('campaigns.preview.test');

        //campaign details
        Route::post('/change/contact/label', [CampaignController::class, 'changeLabel'])->name('change.contact.label');
        Route::get('/campaigns/details/{id}', [CampaignController::class, 'campaign_details'])->name('campaign.details');
        Route::get('/campaigns/analytics/result', [CampaignController::class, 'campaign_analytics_result'])->name('campaign.analytics.result');

//        Label Resource
        Route::get('/label/get',[\App\Http\Controllers\Customer\LabelController::class, 'getAll'])->name('get.all.labels');
        Route::resource('/label',\App\Http\Controllers\Customer\LabelController::class);

//        email template
        Route::post('email/template', [EmailTemplateController::class, 'store'])->name('email.template');
        Route::delete('email/template/delete', [EmailTemplateController::class, 'delete'])->name('email.template.delete');

        Route::group(['as' => 'ticket.', 'prefix' => 'ticket'], function () {
            Route::get('/', [TicketController::class, 'index'])->name('index');
            Route::post('/store', [TicketController::class, 'store'])->name('store');
            Route::get('/get-all', [TicketController::class, 'show'])->name('get.all');
            Route::get('/details', [TicketController::class, 'details'])->name('details');
            Route::post('/reply', [TicketController::class, 'reply'])->name('reply');
            Route::get('/download', [TicketController::class, 'documentDownload'])->name('download');
        });


//        email template
        Route::post('email/template', [EmailTemplateController::class, 'store'])->name('email.template');
        Route::delete('email/template/delete', [EmailTemplateController::class, 'destroy'])->name('email.template.delete');

        //download sample
        Route::get('/download/sample/{type}', [SettingsController::class, 'downloadSample'])->name('download.sample');

        //add form
        Route::resource('/forms', FormController::class);
        Route::group(['as' => 'form.', 'prefix' => 'form'], function () {
            Route::get('/get', [FormController::class, 'getAll'])->name('get.all');
            Route::post('/view/store', [FormController::class, 'view_form_store'])->name('view.form.store');
            Route::get('/data/{id}', [FormController::class, 'form_data'])->name('form.data');
            Route::delete('/data/delete/{id}', [FormController::class, 'form_data_delete'])->name('form.data.delete');
        });

        Route::get('/lead', [LeadFinderController::class, 'index'])->name('lead.index');
        Route::get('/leads/all', [LeadFinderController::class, 'getAll'])->name('get.all.lead');

        Route::get('/email_account', [EmailAccountController::class, 'index'])->name('email_account.index');
        Route::get('/email_account/add/new', [EmailAccountController::class, 'add_new'])->name('email_account.add.new');
        Route::post('/email-account/store', [EmailAccountController::class, 'store'])->name('email.account.store');




        Route::get('/unibox', [UniboxController::class, 'index'])->name('unibox.index');
        Route::get('/analytics', [AnalyticsController::class, 'index'])->name('analytics.index');
        Route::get('/accelerator', [AcceleratorController::class, 'index'])->name('accelerator.index');
        Route::get('/accelerator/item/{id}', [AcceleratorController::class, 'item'])->name('accelerator.item');
        Route::get('/accelerator/details/{id}', [AcceleratorController::class, 'details'])->name('accelerator.item.details');
});

//#endregion

Route::get('/process/email', [ScheduleController::class, 'processEmail'])->name('email.process');

Route::get('/process/upgrade', [\App\Http\Controllers\UpgradeController::class, 'process'])->name('process.upgrade');
Route::any('inbound/message', [\App\Http\Controllers\InboundController::class, 'inbound'])->name('inbound.message');
Route::redirect('/admin', url('admin/login'));
Route::get('/view/{id}', [FormController::class, 'view'])->name('view');