Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
<?php use App\Http\Controllers\Auth\EmailVerificationController; use App\Http\Controll..
Decoded Output download
<?php
use App\Http\Controllers\Auth\EmailVerificationController;
use App\Http\Controllers\Auth\GoogleController;
use App\Http\Controllers\Auth\LogoutController;
use App\Http\Controllers\Backend\Admin\{AccountSetupController, AdminAttendanceController, AttendanceController, SubcriptionController, CompanyController, CustomerBankController, CustomerCashFlowCategoryController, CustomerCashFlowController, CustomerClusteringController, CustomerController, CustomerGoodsController, CustomerInventoryCategoryController, CustomerInventoryController, CustomerInventoryStatusController, CustomerInventoryUnitController, CustomerInvoiceController, CustomerPackageController, CustomerRouterOsController, CustomerStaticController, CustomerStockHistoryController, CustomerWorkOrderController, DashboardController, ProfileController, UserController, DesignationController, DepartmentController, FaqController, FileManagerController, LeaveController, ServerLocationController, NotificationController, PppoeController, ReportController, RoleController, SettingAppController, SettingController, TicketController, TicketTodosController, TicketTypeController, TripayController, WhatsAppAutoReplyController, WhatsAppController, XenditController};
use App\Http\Controllers\Backend\Client\ClientDashboard;
use App\Http\Controllers\Backend\Client\ClientInvoiceController;
use App\Http\Controllers\Backend\Client\ClientProfileController;
use App\Http\Controllers\Backend\Superadmin\{SuperadminCashFlowController, SuperadminDashboardController, SuperadminPackageController, SuperadminTripayController, SuperadminCompanyController, SuperadminFrontController, SuperadminLicenseController, SuperadminProfileController, SuperadminReportController, SuperadminWhatsAppController};
use App\Http\Controllers\Frontend\DocsController;
use App\Mail\InvoiceMail;
use App\Models\Superadmin\Subscription;
use App\Models\User;
use App\Services\ShortLinkService;
use App\Services\XenditLinkService;
use Illuminate\Support\Facades\Artisan;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Route;
use Inertia\Inertia;
/*
|--------------------------------------------------------------------------
| 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::group(['middleware' => 'web'], function () {
// Route::auth();
Auth::routes();
});
Route::get('/invalid-license', function () {
$license = \App\Models\License::first();
if($license->status == 'active') {
return redirect(route('dashboard.index'));
} else {
return view('errors.invalid');
}
})->name('invalid');
Route::get('/account-not-active', function () {
return view('errors.not-active');
})->name('not-active');
Route::get('/migrate-seed', function () {
try {
Artisan::call('migrate:fresh', ["--seed"=> true, "--force"=> true]);
} catch(Exception $e){
return $e->getMessage();
}
return 'Migrate & seed success';
})->name('migrate');
Route::controller(AttendanceController::class)->name('attendance.')->group(function () {
Route::get('attendance/{company_uuid}', 'index')->name('index');
Route::get('attendance/{company_uuid}/clock-in', 'clockin')->name('clockin');
Route::post('attendance/{company_uuid}/clock-in', 'clockinStore')->name('clockin');
Route::get('attendance/{company_uuid}/clock-out', 'clockout')->name('clockout');
Route::post('attendance/{company_uuid}/clock-out', 'clockoutStore')->name('clockout');
});
Route::get('/schedulle-command-deleted', function () {
if(\Illuminate\Support\Facades\File::exists(base_path('app/Console/Commands/CheckLicense.php'))) {
return redirect(route('dashboard.index'));
} else {
return view('errors.check_license_command_deleted');
}
})->name('check_license_command_deleted');
Route::group(['prefix' => 'filemanager', 'middleware' => ['auth', 'verified']], function (){
\Mafftor\LaravelFileManager\Lfm::routes();
});
Route::group(['middleware' => ['auth', 'verified']], function () {
Route::get('file-manager', [FileManagerController::class, 'index'])->name('file.index');
Route::post('dashboard/get-widget-data', [DashboardController::class, 'getWidgetData'])->name('dashboard.getWidgetData');
Route::get('dashboard', [DashboardController::class, 'index'])->name('dashboard.index');
Route::get('dashboard/getChartYear', [DashboardController::class, 'getChartYear'])->name('dashboard.getChartYear');
Route::get('dashboard/chart-month', [DashboardController::class, 'chartThisMonth'])->name('dashboard.chartThisMonth');
Route::get('dashboard/widget-package', [DashboardController::class, 'widgetPackage'])->name('dashboard.widgetPackage');
Route::get('settings/employees/{user}/edit', [UserController::class, 'edit'])->name('users.edit');
Route::get('settings/employees/{user}/show', [UserController::class, 'show'])->name('users.show');
Route::put('settings/employees/{user}/update-data', [UserController::class, 'update'])->name('users.updatedata');
Route::post('settings/reset-password/{id}', [UserController::class, 'resetPassword'])->name('users.resetPassword');
Route::get('settings/employees/', [UserController::class, 'index'])->name('users.index');
Route::get('settings/employees/create', [UserController::class, 'create'])->name('users.create');
Route::post('settings/employees/store', [UserController::class, 'store'])->name('users.store');
Route::delete('settings/employees/{user}', [UserController::class, 'destroy'])->name('users.destroy');
Route::post('settings/departments/quick-store', [DepartmentController::class, 'quickStore'])->name('departments.quickStore');
Route::get('settings/departments/get-data', [DepartmentController::class, 'getData'])->name('departments.getData');
Route::resource('settings/departments', DepartmentController::class);
Route::post('settings/designations/quick-store', [DesignationController::class, 'quickStore'])->name('designations.quickStore');
Route::resource('settings/designations', DesignationController::class);
Route::controller(CustomerController::class)->name('customers.')->group(function () {
Route::get('customers/export/pdf', 'pdf')->name('pdf');
Route::get('customers/export/{format?}', 'export')->name('export');
Route::get('customers/import/download-example', 'download')->name('download');
Route::delete('customers/delete', 'deleteSelected')->name('deleteSelected');
Route::post('customers/import', 'import')->name('import');
Route::post('customers/data', 'data')->name('data');
Route::get('customers/get-edit/{customer}', 'getEdit')->name('getEdit');
Route::get('customers/get-cities/{id}', 'getCities')->name('getCities');
Route::get('customers/get-districts/{id}', 'getDistricts')->name('getDistricts');
Route::get('customers/get-villages/{id}', 'getVillages')->name('getVillages');
Route::get('customers/generate-qr/{id}', 'pdfQr')->name('pdfQr');
Route::get('customers/invoice/install-fee/{customer}', 'pdfInstallFee')->name('pdfInstallFee');
Route::get('customers/invoice/install-fee/pdf/{customer}', 'installFeePdf')->name('installFeePdf');
Route::get('customers/get-cluster/{serverId}', 'getCluster')->name('getCluster');
Route::get('customers/template-update-customer', 'templateUpdateCustomer')->name('templateUpdateCustomer');
Route::post('customers/import-update-customer', 'updateImport')->name('updateImport');
Route::get('customers/map-customers', 'mapCustomers')->name('mapCustomers');
Route::get('customers/{customer}/invoice-history', 'showInvoice')->name('showInvoice');
Route::get('customers/{customer}/active-deactive', 'activeDeactiveCustomer')->name('activeDeactiveCustomer');
Route::post('customers/isolate-customer', 'isolateCustomer')->name('isolateCustomer');
Route::post('customers/{server?}/sync-static-customer', 'syncStatic')->name('syncStatic');
});
Route::resource('customers', CustomerController::class);
Route::controller(CustomerPackageController::class)->name('internet-packages.')->group(function () {
Route::post('internet-packages/quick-store', 'quickStore')->name('quickStore');
});
Route::resource('internet-packages', CustomerPackageController::class);
Route::controller(ServerLocationController::class)->name('server-locations.')->group(function () {
Route::post('server-locations/quick-store', 'quickStore')->name('quickStore');
});
Route::resource('server-locations', ServerLocationController::class);
Route::controller(CustomerInventoryController::class)->name('customer-inventories.')->group(function () {
Route::post('customer-inventories/data', 'data')->name('data');
Route::post('customer-inventories/quick-store', 'quickStore')->name('quickStore');
});
Route::resource('customer-inventories', CustomerInventoryController::class);
Route::controller(CustomerInventoryStatusController::class)->name('inventories-status.')->group(function () {
Route::post('inventories-status/data', 'data')->name('data');
Route::post('inventories-status/quick-store', 'quickStore')->name('quickStore');
});
Route::resource('inventories-status', CustomerInventoryStatusController::class)->except(['show']);
Route::controller(TicketTypeController::class)->name('ticket-type.')->group(function () {
Route::post('ticket-type/data', 'data')->name('data');
Route::post('ticket-type/quick-store', 'quickStore')->name('quickStore');
});
Route::resource('ticket-type', TicketTypeController::class)->except(['show']);
Route::controller(CustomerInventoryUnitController::class)->name('inventories-unit.')->group(function () {
Route::post('inventories-unit/data', 'data')->name('data');
Route::post('inventories-unit/quick-store', 'quickStore')->name('quickStore');
});
Route::resource('inventories-unit', CustomerInventoryUnitController::class)->except(['show']);
Route::controller(CustomerClusteringController::class)->name('clustering.')->group(function () {
Route::post('clustering/data', 'data')->name('data');
Route::post('clustering/quick-store', 'quickStore')->name('quickStore');
});
Route::resource('clustering', CustomerClusteringController::class)->except(['show']);
Route::controller(CustomerInventoryCategoryController::class)->name('inventories-category.')->group(function () {
Route::post('inventories-category/data', 'data')->name('data');
Route::post('inventories-category/quick-store', 'quickStore')->name('quickStore');
});
Route::resource('inventories-category', CustomerInventoryCategoryController::class)->except(['show']);
Route::controller(CustomerStockHistoryController::class)->name('inventories-stock.')->group(function () {
Route::post('inventories-stock/data', 'data')->name('data');
Route::post('inventories-stock/quick-store', 'quickStore')->name('quickStore');
Route::get('inventories-stock/get-goods-stock/{customerGoods}', 'getGoods')->name('getGoods');
});
Route::resource('inventories-stock', CustomerStockHistoryController::class)->except(['show']);
Route::controller(CustomerWorkOrderController::class)->name('work-orders.')->group(function () {
Route::get('work-orders/create/{customer?}', 'create')->name('create');
Route::get('work-orders/data', 'data')->name('data');
Route::post('work-orders/store/work-order-item', 'storeItem')->name('storeItem');
Route::get('work-orders/table/work-order-item', 'showTable')->name('showTable');
Route::post('work-orders/return', 'return')->name('return');
Route::get('work-orders/{customer?}', 'index')->name('index');
Route::get('work-orders/{workOrder}/edit', 'edit')->name('edit');
Route::get('work-orders/{workOrder}/print-work-order', 'printWo')->name('printWo');
Route::delete('work-orders/table/delete/{id}/work-order-item', 'deleteItem')->name('deleteItem');
});
Route::resource('work-orders', CustomerWorkOrderController::class)->except(['show', 'edit', 'index', 'create']);
Route::controller(TicketController::class)->name('tickets.')->group(function () {
Route::get('tickets/create/{customer?}', 'create')->name('create');
Route::get('tickets/data', 'data')->name('data');
Route::get('tickets/{ticket}/edit', 'edit')->name('edit');
Route::get('tickets/{customer?}', 'index')->name('index');
Route::get('tickets/{ticket}/show', 'show')->name('show');
Route::delete('tickets/table/delete/{id}/work-order-item', 'deleteItem')->name('deleteItem');
Route::post('tickets/files/upload', 'filesStore')->name('filesStore');
Route::delete('tickets/files/delete/{ticketFiles}', 'destroyImage')->name('destroyImage');
Route::get('tickets/files/show/{ticket}', 'showUploaded')->name('showUploaded');
});
Route::resource('tickets', TicketController::class)->except(['edit', 'create', 'index', 'show']);
Route::controller(TicketTodosController::class)->name('ticket-todos.')->group(function () {
Route::get('ticket-todos/table/{ticket}', 'index')->name('index');
Route::post('ticket-todos/store', 'store')->name('store');
Route::post('ticket-todos/update/status/{ticketTodos}', 'updateIsDone')->name('updateIsDone');
Route::delete('ticket-todos/delete/{ticketTodos}', 'destroy')->name('destroy');
});
Route::controller(AdminAttendanceController::class)->name('admin-attendance.')->group(function () {
Route::get('admin-attendance', 'index')->name('index');
Route::get('admin-attendance/data', 'data')->name('data');
Route::get('admin-attendance/{attendance}/edit', 'edit')->name('edit');
Route::get('admin-attendance/get-widget-data', 'getWidget')->name('getWidget');
Route::post('admin-attendance/store', 'store')->name('store');
Route::delete('admin-attendance/delete/{attendance}', 'destroy')->name('destroy');
});
Route::controller(LeaveController::class)->name('leaves.')->group(function () {
Route::get('leaves', 'index')->name('index');
Route::get('leaves/data', 'data')->name('data');
Route::get('leaves/{leave}/edit', 'edit')->name('edit');
Route::get('leaves/{user_id}/get-leave-balance', 'getLeaveBalance')->name('getLeaveBalance');
Route::post('leaves/store', 'store')->name('store');
Route::delete('leaves/delete/{leave}', 'destroy')->name('destroy');
});
Route::controller(CustomerGoodsController::class)->name('customer-goods.')->group(function () {
Route::post('customer-goods/data', 'data')->name('data');
Route::get('customer-goods/{customerGoods}/edit', 'edit')->name('edit');
Route::delete('customer-goods/{customerGoods}', 'destroy')->name('destroy');
Route::post('customer-goods/quick-store', 'quickStore')->name('quickStore');
Route::post('customer-goods/update-stock', 'updateStock')->name('updateStock');
});
Route::resource('customer-goods', CustomerGoodsController::class)->except(['show', 'edit', 'destroy']);
Route::controller(WhatsAppController::class)->name('whatsapp.')->group(function () {
Route::post('whatsapp/get-qr-code', 'getQrCode')->name('getQrCode');
Route::get('whatsapp/message/text-message', 'textMessage')->name('textMessage');
Route::post('whatsapp/logout', 'logoutDevice')->name('logoutDevice');
Route::post('whatsapp/notification-setting', 'store')->name('store');
Route::post('whatsapp/text-message/send', 'textMessageStore')->name('textMessageStore');
Route::post('whatsapp/template-message/send', 'templateMessageStore')->name('templateMessageStore');
Route::get('whatsapp/message/blast', 'blastMessage')->name('blastMessage');
Route::get('whatsapp/template/message', 'templateMessage')->name('templateMessage');
Route::post('whatsapp/blast-message/send', 'blastMessageStore')->name('blastMessageStore');
Route::post('whatsapp/number/delete', 'deleteNumber')->name('deleteNumber');
Route::get('whatsapp/reset', 'resetWhatsApp')->name('resetWhatsApp');
});
Route::get('whatsapp/auto-reply', [WhatsAppAutoReplyController::class, 'autoReply'])->name('whatsapp.autoReply');
Route::get('whatsapp/auto-reply/data', [WhatsAppAutoReplyController::class, 'data'])->name('whatsapp.data');
Route::get('whatsapp/auto-reply/get-type/{type}', [WhatsAppAutoReplyController::class, 'getFormByType'])->name('whatsapp.getFormByType');
Route::get('whatsapp/auto-reply/show/{id}', [WhatsAppAutoReplyController::class, 'showRespond'])->name('whatsapp.showRespond');
Route::get('whatsapp/auto-reply/edit/{id}', [WhatsAppAutoReplyController::class, 'editReply'])->name('whatsapp.editReply');
Route::get('whatsapp/auto-reply/new-edit/{type}/{id?}', [WhatsAppAutoReplyController::class, 'getFormByTypeEdit'])->name('whatsapp.getFormByTypeEdit');
Route::post('whatsapp/auto-reply/store', [WhatsAppAutoReplyController::class, 'storeReply'])->name('whatsapp.storeReply');
Route::delete('whatsapp/auto-reply/destroy/{id}', [WhatsAppAutoReplyController::class, 'destroyReply'])->name('whatsapp.destroyReply');
Route::delete('whatsapp/auto-reply/destroy-all', [WhatsAppAutoReplyController::class, 'destroyAllReply'])->name('whatsapp.destroyAllReply');
Route::resource('whatsapp', WhatsAppController::class);
Route::controller(CustomerRouterOsController::class)->name('routers.')->group(function () {
Route::get('routers/list', 'listRouter')->name('listRouter');
Route::get('routers/generate-vpn', 'generateVpn')->name('generateVpn');
Route::post('routers/data', 'data')->name('data');
Route::post('routers/quick-store', 'quickStore')->name('quickStore');
Route::post('routers/check-connection', 'checkConnection')->name('checkConnection');
Route::post('routers/store', 'store')->name('store');
Route::get('routers/{server?}', 'index')->name('index');
Route::get('routers/trafic/{server?}', 'getTrafic')->name('getTrafic');
Route::get('routers/resource/{server?}', 'getResource')->name('getResource');
Route::get('routers/pppoe/{server?}/test', 'testService')->name('testService');
Route::delete('routers/{serverLocation}/delete', 'destroy')->name('destroy');
Route::post('routers/syncronize', 'syncronize')->name('syncronize');
Route::controller(PppoeController::class)->name('pppoe.')->group(function () {
Route::get('routers/pppoe/{server?}/test', 'testService')->name('testService');
Route::get('routers/pppoe/{server?}', 'index')->name('index');
Route::get('routers/pppoe/get-active/{server?}', 'pppoeActive')->name('pppoeActive');
Route::post('routers/pppoe/{server?}', 'store')->name('store');
Route::post('routers/pppoe/{server?}/enable-disable', 'enableDisablePPP')->name('enableDisablePPP');
Route::delete('routers/pppoe/{server?}', 'destroy')->name('destroy');
Route::get('routers/pppoe/{server?}/datatable', 'data')->name('data');
Route::get('routers/pppoe/{server?}/get-edit', 'getEdit')->name('getEdit');
Route::get('routers/pppoe/{server?}/traffic-monitor/{interface}/{customer}', 'trafficMonitor')->name('trafficMonitor');
Route::post('routers/pppoe/{server?}/cancel-sync', 'cancelSync')->name('cancelSync');
Route::get('routers/pppoe/get-secrets/{server?}', 'getSecrets')->name('getSecrets');
Route::get('routers/pppoe/get-customers/{server?}', 'getCustomers')->name('getCustomers');
Route::get('routers/pppoe/get-customers-all/{server?}', 'getCustomerAll')->name('getCustomerAll');
Route::post('routers/pppoe/{server?}/store', 'syncPppoe')->name('syncPppoe');
Route::post('routers/pppoe/{server?}/update-data-pppoe', 'updatePppoe')->name('updatePppoe');
});
Route::controller(CustomerStaticController::class)->name('static.')->group(function () {
Route::get('routers/static/{server?}', 'index')->name('index');
Route::get('routers/static/get-bindings/{server?}', 'getBindings')->name('getBindings');
Route::get('routers/static/get-customers/{server?}', 'getCustomers')->name('getCustomers');
Route::get('routers/static/get-queue/{server?}/{target}', 'getSingleQueue')->name('getSingleQueue');
Route::get('routers/static/get-data-static/{server?}', 'getDataStatic')->name('getDataStatic');
Route::get('routers/static/get-static-active/{server?}', 'staticActive')->name('staticActive');
Route::get('routers/static/{server?}/datatable', 'data')->name('data');
Route::get('routers/static/{server?}/trafic-monitor', 'getTrafic')->name('getTrafic');
Route::post('routers/static/{server?}/store', 'syncStatic')->name('syncStatic');
Route::post('routers/static/{server?}/enable-disable', 'enableDisableBinding')->name('enableDisableBinding');
Route::post('routers/static/{server?}/cancel-sync', 'cancelSync')->name('cancelSync');
Route::get('routers/static/{server?}/traffic-monitor/{mac}/{ip}/{customer}', 'trafficMonitor')->name('trafficMonitor');
});
});
// Route::resource('routers', CustomerRouterOsController::class)->except(['index', 'show']);
Route::controller(ReportController::class)->name('reports.')->group(function () {
Route::get('reports/table-customer', 'tableCustomer')->name('tableCustomer');
Route::get('reports/invoices', 'invoices')->name('invoices');
Route::get('reports/table-invoices', 'tableInvoices')->name('tableInvoices');
Route::get('reports/cash-flows', 'cashFlows')->name('cashFlows');
Route::get('reports/table-cash-flows', 'tableCashFlows')->name('tableCashFlows');
Route::get('reports/invoice-bill', 'bill')->name('bill');
Route::get('reports/table-invoice-bill', 'tableBill')->name('tableBill');
Route::get('reports/invoices/bill', 'billInvoice')->name('billInvoice');
Route::get('reports/invoices/bill/{invoice}', 'getInvoice')->name('getInvoice');
Route::get('reports/invoices/all-invoice/{periode}', 'getAllInvoice')->name('getAllInvoice');
Route::get('reports/invoices/all-invoice/pdf/{periode}', 'allInvoicePDF')->name('allInvoicePDF');
});
Route::resource('reports', ReportController::class)->except(['edit', 'update', 'destroy', 'show']);
Route::controller(CustomerBankController::class)->name('bank-accounts.')->group(function () {
Route::post('settings/bank-accounts/quick-store', 'quickStore')->name('quickStore');
});
Route::resource('settings/bank-accounts', CustomerBankController::class);
Route::controller(SettingAppController::class)->name('applications.')->group(function () {
Route::get('settings/applications', 'index')->name('index');
Route::post('settings/applications/store', 'store')->name('store');
Route::get('settings/applications/getEdit', 'getEdit')->name('getEdit');
});
Route::controller(SettingController::class)->name('settings.')->group(function () {
Route::get('settings/company', 'company')->name('company');
Route::get('settings/payment', 'payment')->name('payment');
Route::post('settings/payment', 'storePayment')->name('storePayment');
Route::post('settings/payment/xendit', 'storePaymentXendit')->name('storePaymentXendit');
Route::post('settings/payment/set-default-pg/{vendor}', 'setDefaultPG')->name('setDefaultPG');
Route::controller(RoleController::class)->name('roles.')->group(function () {
Route::get('settings/roles/data', 'dataTable')->name('dataTable');
});
Route::resource('settings/roles', RoleController::class);
});
Route::resource('settings', SettingController::class);
Route::controller(CustomerCashFlowController::class)->name('cash-flows.')->group(function () {
Route::get('cash-flows/fill-empty-category-id', 'fillEmptyCategoryId')->name('fillEmptyCategoryId');
Route::get('cash-flows/get-widget-cash-data', 'getWidgetCash')->name('getWidgetCash');
Route::post('cash-flows/data', 'data')->name('data');
Route::delete('cash-flows/delete-all', 'deleteAll')->name('deleteAll');
Route::controller(CustomerCashFlowCategoryController::class)->name('category.')->group(function () {
Route::get('cash-flows/category/data', 'dataTable')->name('dataTable');
});
Route::resource('category', CustomerCashFlowCategoryController::class);
});
Route::resource('cash-flows', CustomerCashFlowController::class);
Route::controller(CustomerInvoiceController::class)->name('invoices.')->group(function () {
Route::get('invoices/history/{slug?}', 'invoiceHistory')->name('invoiceHistory');
Route::get('invoices/payment/scan-qr', 'scanQrPage')->name('scanQrPage');
Route::get('invoices/payment/scan-qr-result/{serviceNumber}', 'scanQrResult')->name('scanQrResult');
Route::get('invoices/export/pdf', 'pdf')->name('pdf');
Route::get('invoices/export/pdf-thermal/{customerInvoice}', 'pdfThermal')->name('pdfThermal');
Route::get('invoices/export/{format?}', 'export')->name('export');
Route::get('invoices/{customerInvoice}', 'invoice')->name('invoice');
Route::get('invoices/{customerInvoice}/pdf', 'invoicePDF')->name('invoicePDF');
Route::post('invoices/payment-confirmation', 'paymentConfirmation')->name('paymentConfirmation');
Route::post('invoices/get-payment/{customerInvoice}', 'getPayment')->name('getPayment');
Route::post('invoices/data', 'data')->name('data');
Route::post('invoices/history/{customer}', 'getInvoicesHistory')->name('history');
Route::post('invoices/generate-manually/{type?}', 'generateBills')->name('generateBills');
Route::post('invoices/generate-prorates', 'generateProrates')->name('generateProrates');
Route::delete('invoices/delete', 'deleteSelected')->name('deleteSelected');
Route::delete('invoices/delete-all', 'deleteAll')->name('deleteAll');
Route::post('invoices/multi-payment', 'paySelected')->name('paySelected');
Route::get('invoices/import/download-example', 'download')->name('download');
Route::post('invoices/import', 'import')->name('import');
Route::post('invoices/whatsapp/sendBillReminder/{customerInvoice}', 'sendBillReminder')->name('sendBillReminder');
Route::post('invoices/whatsapp/sendBillPaid/{customerInvoice}', 'sendBillPaid')->name('sendBillPaid');
Route::get('invoices/widget/get-widget-invoice', 'getWidgetInvoice')->name('getWidgetInvoice');
Route::get('invoices/widget/get-difference-invoice/{value}', 'invoiceNotGenerated')->name('invoiceNotGenerated');
});
Route::resource('invoices', CustomerInvoiceController::class);
});
Route::group(['middleware' => ['auth', 'verified']], function () {
//preview email
Route::get('/mailable', function () {
$invoice = Subscription::query()->with('package')->find(5);
$user = User::find(4);
$url = route('subscriptions.confirmPayment', $invoice);
return new InvoiceMail($invoice, $user, $url);
});
Route::get('/debug-sentry', function () {
throw new Exception('My first Sentry error!');
});
Route::get('/subscription-expired', function () {
return view('errors.nosubscription');
});
//SuperAdmin
Route::name('superadmin.')->group(function () {
Route::controller(SuperadminDashboardController::class)->name('dashboard.')->group(function () {
Route::get('super-admin/dashboard/get-widget', 'getWidgetData')->name('getWidgetData');
Route::get('super-admin/dashboard/getChartYear', 'getChartYear')->name('getChartYear');
});
Route::resource('super-admin/dashboard', SuperadminDashboardController::class);
Route::resource('super-admin/packages', SuperadminPackageController::class);
Route::controller(SuperadminCompanyController::class)->name('companies.')->group(function () {
Route::get('super-admin/companies/check-migrations', 'checkMigrateStatus')->name('checkMigrateStatus');
Route::post('super-admin/companies/data', 'data')->name('data');
Route::post('super-admin/companies/confirm-payment/store', 'storeConfirmPayment')->name('storeConfirmPayment');
Route::get('super-admin/companies/setting', 'setting')->name('setting');
Route::post('super-admin/companies/renew-subs/{company}', 'renewSubs')->name('renewSubs');
Route::get('super-admin/companies/upgrade-subs/get', 'getUpgradeSubs')->name('getUpgradeSubs');
Route::post('super-admin/companies/upgrade-subs/{company}', 'upgradeSubs')->name('upgradeSubs');
Route::get('super-admin/companies/login/{id}', 'login')->name('login');
Route::get('super-admin/companies/get-widget-package/{company_id}', 'widgetPackage')->name('widgetPackage');
Route::post('super-admin/companies/send-bill-reminder', 'sendBillReminder')->name('sendBillReminder');
Route::post('super-admin/companies/add-company', 'storeCompany')->name('storeCompany');
Route::post('super-admin/companies/reset-password/{id}', 'resetPassword')->name('resetPassword');
});
Route::resource('super-admin/companies', SuperadminCompanyController::class);
Route::controller(SuperadminPackageController::class)->name('super-admin/packages.')->group(function () {
Route::post('super-admin/packages/quick-store', 'quickStore')->name('quickStore');
Route::get('super-admin/packages/{id}/edit', 'edit')->name('edit');
Route::delete('super-admin/packages/{id}/delete', 'destroy')->name('destroy');
});
Route::resource('super-admin/packages', SuperadminPackageController::class)->except(['show', 'edit', 'destroy']);
Route::controller(SuperadminWhatsAppController::class)->name('whatsapp.')->group(function () {
Route::post('superadmin/whatsapp/get-qr-code', 'getQrCode')->name('getQrCode');
Route::get('superadmin/whatsapp/message/text-message', 'textMessage')->name('textMessage');
Route::post('superadmin/whatsapp/logout', 'logoutDevice')->name('logoutDevice');
Route::post('superadmin/whatsapp/notification-setting', 'store')->name('store');
Route::post('superadmin/whatsapp/text-message/send', 'textMessageStore')->name('textMessageStore');
Route::get('superadmin/whatsapp/message/blast', 'blastMessage')->name('blastMessage');
Route::post('superadmin/whatsapp/blast-message/send', 'blastMessageStore')->name('blastMessageStore');
Route::post('superadmin/whatsapp/number/delete', 'deleteNumber')->name('deleteNumber');
});
Route::resource('superadmin/whatsapp', SuperadminWhatsAppController::class);
Route::controller(SuperadminReportController::class)->name('reports.')->group(function () {
Route::get('superadmin/reports/invoices', 'invoices')->name('invoices');
Route::get('superadmin/reports/table-invoices', 'tableInvoices')->name('tableInvoices');
Route::get('superadmin/reports/invoice-detail', 'invoiceDetail')->name('invoiceDetail');
Route::get('superadmin/reports/table-invoice-detail', 'tableInvoiceDetail')->name('tableInvoiceDetail');
});
Route::resource('superadmin/reports', SuperadminReportController::class)->except(['edit', 'update', 'destroy', 'show']);
Route::controller(SuperadminCashFlowController::class)->name('cash-flows.')->group(function () {
Route::get('superadmin/cash-flows/get-widget-cash-data', 'getWidgetCash')->name('getWidgetCash');
Route::post('superadmin/cash-flows/data', 'data')->name('data');
});
Route::resource('superadmin/cash-flows', SuperadminCashFlowController::class);
Route::controller(SuperadminProfileController::class)->name('profiles.')->group(function () {
Route::get('superadmin/profiles', 'index')->name('index');
Route::post('superadmin/profiles/store', 'store')->name('store');
Route::post('superadmin/profiles/update-password/{id}', 'updatePassword')->name('updatePassword');
});
Route::controller(SuperadminFrontController::class)->name('front.')->group(function () {
Route::get('super-admin/frontend/set-data-home', 'index')->name('index');
Route::post('super-admin/frontend/set-data-home/store', 'store')->name('store');
Route::get('super-admin/frontend/set-data-general', 'general')->name('general');
Route::post('super-admin/frontend/set-data-general/store', 'generalStore')->name('general-store');
Route::post('super-admin/frontend/{value}/disable-landing', 'disableLanding')->name('disableLanding');
});
Route::resource('superadmin/licenses', SuperadminLicenseController::class);
});
//Company
Route::get('account-setup', [AccountSetupController::class, 'index'])->name('account-setup');
Route::post('account-setup', [AccountSetupController::class, 'store'])->name('account-setup');
Route::group(['prefix' => 'profiles/'], function () {
Route::get('', [ProfileController::class, 'index'])->name('profiles.index');
Route::post('store', [ProfileController::class, 'store'])->name('profiles.store');
Route::post('update-password/{id}', [ProfileController::class, 'updatePassword'])->name('profiles.updatePassword');
});
Route::resource('companies', CompanyController::class);
Route::resource('faq', FaqController::class);
//Client
Route::name('client.')->group(function () {
Route::controller(ClientDashboard::class)->name('dashboard.')->group(function () {
Route::get('client/dashboard/data', 'data')->name('data');
});
Route::resource('client/dashboard', ClientDashboard::class);
Route::controller(ClientInvoiceController::class)->name('invoices.')->group(function () {
Route::get('client/invoices/data', 'data')->name('data');
Route::post('client/invoices/history/{customer}', 'getInvoicesHistory')->name('history');
Route::post('client/invoices/get-payment/{customerInvoice}', 'getPayment')->name('getPayment');
Route::get('client/invoices/{customerInvoice}', 'invoice')->name('invoice');
Route::get('client/invoices/{customerInvoice}/pdf', 'invoicePDF')->name('invoicePDF');
});
Route::resource('client/invoices', ClientInvoiceController::class);
Route::controller(ClientProfileController::class)->name('profiles.')->group(function () {
Route::get('client/profiles/get-edit/{customer}', 'getEdit')->name('getEdit');
Route::get('client/get-cities/{id}', 'getCities')->name('getCities');
Route::get('client/get-districts/{id}', 'getDistricts')->name('getDistricts');
Route::get('client/get-villages/{id}', 'getVillages')->name('getVillages');
Route::post('client/update-profile/{customer}', 'updateProfile')->name('updateProfile');
});
Route::resource('client/profiles', ClientProfileController::class);
});
//email verification
Route::controller(SuperadminTripayController::class)->name('tripay.')->group(function () {
Route::get('tripay/get/payment-channel', 'getPaymentChannel')->middleware('auth')->name('getPaymentChannel');
Route::get('tripay/get/payment-instruction', 'getPaymentInstruction')->middleware('auth')->name('getPaymentInstruction');
});
//notification
Route::get('clear-notification', [NotificationController::class, 'clearNotification'])->name('clear-notification');
});
Route::group(['middleware' => ['auth']], function () {
Route::post('logout', LogoutController::class)->name('logout');
//email verification
Route::controller(EmailVerificationController::class)->group(function () {
Route::get('/email/verify', 'emailVerify')->name('verification.notice');
Route::post('/email/verification-notification', 'resendVerification')->middleware(['throttle:6,1'])->name('verification.resend');
Route::get('/email/verify/{id}/{hash}', 'verifyVerification')->middleware(['signed'])->name('verification.verify');
});
});
Route::middleware('guest')->group(function () {
Route::get('/register', function () {
return redirect('/login');
});
Route::get('auth/google', [GoogleController::class, 'redirectToGoogle'])->name('auth.google');
Route::get('auth/google/callback', [GoogleController::class, 'handleGoogleCallback']);
});
Route::get('frontend/lang/{locale}', [App\Http\Controllers\Frontend\FrontController::class, 'lang']);
Route::name('landing.')->group(base_path('routes/landing.php'));
//calback tripay
Route::post('payment/tripay/callback', [TripayController::class, 'tripayCallback'])->name('tripayCallback');
//calback xendit
Route::post('payment/xendit/callback', [XenditController::class, 'xenditCallback'])->name('xenditCallback');
//Tripay
Route::controller(TripayController::class)->name('tripay.')->group(function () {
Route::get('payment/tripay/get-payment-channel', 'getPaymentChannel')->name('getPaymentChannel');
Route::get('payment/tripay/choose-channel/{invoice}', 'index')->name('index');
Route::get('payment/tripay/{invoice}', 'paymentSuccess')->name('paymentSuccess');
Route::get('payment/tripay/error/{invoice}', 'paymentError')->name('paymentError');
Route::post('payment/tripay/request-transaction/{invoice}', 'reqTransaction')->name('reqTransaction');
});
//Xendit
Route::controller(XenditController::class)->name('xendit.')->group(function () {
Route::get('payment/xendit/{invoice}', 'paymentSuccess')->name('paymentSuccess');
Route::get('payment/xendit/error/{invoice}', 'paymentError')->name('paymentError');
Route::get('payment/xendit/get/balance', 'getBalance')->name('getBalance');
Route::get('payment/xendit/get-payment-channel', 'getPaymentChannels')->name('getPaymentChannels');
Route::get('payment/xendit/get-virtual-account-bank', 'getVABanks')->name('getVABanks');
Route::get('payment/xendit/create-retail-payment-code', 'createRetailPaymentCode')->name('createRetailPaymentCode');
Route::get('payment/xendit/create-invoice/{invoice}', 'createInvoice')->name('createInvoice');
});
Route::get('index/{locale}', [App\Http\Controllers\HomeController::class, 'lang']);
Route::get('/isolir', function() {
return view('isolir.isolir1');
});
Route::controller(DocsController::class)->name('docs.')->group(function () {
Route::get('docs/index', 'index')->name('index');
});
Route::get('{code}', function($code) {
$tripayLink = ShortLinkService::getShortLink($code);
if($tripayLink['status'] != false) {
return redirect()->away($tripayLink['url']);
} elseif ($tripayLink['status'] == false) {
$xenditLink = XenditLinkService::getXenditLink($code);
if($xenditLink['status'] != false) {
return redirect()->away($xenditLink['url']);
} else {
abort(404);
}
}
});
// Route::get('{any}', [App\Http\Controllers\HomeController::class, 'index'])->name('index');
//Language Translation
// Route::get('{any}', [App\Http\Controllers\HomeController::class, 'index']);
Route::get('/inertia/home', function () {
return Inertia::render('Home');
})->name('inertia.home');
// Route::get('/pricing', [PricingController::class, 'index'])->name('pricing');
// Route::get('/contact', [ContactController::class, 'index'])->name('contact');
?>
Did this file decode correctly?
Original Code
<?php
use App\Http\Controllers\Auth\EmailVerificationController;
use App\Http\Controllers\Auth\GoogleController;
use App\Http\Controllers\Auth\LogoutController;
use App\Http\Controllers\Backend\Admin\{AccountSetupController, AdminAttendanceController, AttendanceController, SubcriptionController, CompanyController, CustomerBankController, CustomerCashFlowCategoryController, CustomerCashFlowController, CustomerClusteringController, CustomerController, CustomerGoodsController, CustomerInventoryCategoryController, CustomerInventoryController, CustomerInventoryStatusController, CustomerInventoryUnitController, CustomerInvoiceController, CustomerPackageController, CustomerRouterOsController, CustomerStaticController, CustomerStockHistoryController, CustomerWorkOrderController, DashboardController, ProfileController, UserController, DesignationController, DepartmentController, FaqController, FileManagerController, LeaveController, ServerLocationController, NotificationController, PppoeController, ReportController, RoleController, SettingAppController, SettingController, TicketController, TicketTodosController, TicketTypeController, TripayController, WhatsAppAutoReplyController, WhatsAppController, XenditController};
use App\Http\Controllers\Backend\Client\ClientDashboard;
use App\Http\Controllers\Backend\Client\ClientInvoiceController;
use App\Http\Controllers\Backend\Client\ClientProfileController;
use App\Http\Controllers\Backend\Superadmin\{SuperadminCashFlowController, SuperadminDashboardController, SuperadminPackageController, SuperadminTripayController, SuperadminCompanyController, SuperadminFrontController, SuperadminLicenseController, SuperadminProfileController, SuperadminReportController, SuperadminWhatsAppController};
use App\Http\Controllers\Frontend\DocsController;
use App\Mail\InvoiceMail;
use App\Models\Superadmin\Subscription;
use App\Models\User;
use App\Services\ShortLinkService;
use App\Services\XenditLinkService;
use Illuminate\Support\Facades\Artisan;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Route;
use Inertia\Inertia;
/*
|--------------------------------------------------------------------------
| 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::group(['middleware' => 'web'], function () {
// Route::auth();
Auth::routes();
});
Route::get('/invalid-license', function () {
$license = \App\Models\License::first();
if($license->status == 'active') {
return redirect(route('dashboard.index'));
} else {
return view('errors.invalid');
}
})->name('invalid');
Route::get('/account-not-active', function () {
return view('errors.not-active');
})->name('not-active');
Route::get('/migrate-seed', function () {
try {
Artisan::call('migrate:fresh', ["--seed"=> true, "--force"=> true]);
} catch(Exception $e){
return $e->getMessage();
}
return 'Migrate & seed success';
})->name('migrate');
Route::controller(AttendanceController::class)->name('attendance.')->group(function () {
Route::get('attendance/{company_uuid}', 'index')->name('index');
Route::get('attendance/{company_uuid}/clock-in', 'clockin')->name('clockin');
Route::post('attendance/{company_uuid}/clock-in', 'clockinStore')->name('clockin');
Route::get('attendance/{company_uuid}/clock-out', 'clockout')->name('clockout');
Route::post('attendance/{company_uuid}/clock-out', 'clockoutStore')->name('clockout');
});
Route::get('/schedulle-command-deleted', function () {
if(\Illuminate\Support\Facades\File::exists(base_path('app/Console/Commands/CheckLicense.php'))) {
return redirect(route('dashboard.index'));
} else {
return view('errors.check_license_command_deleted');
}
})->name('check_license_command_deleted');
Route::group(['prefix' => 'filemanager', 'middleware' => ['auth', 'verified']], function (){
\Mafftor\LaravelFileManager\Lfm::routes();
});
Route::group(['middleware' => ['auth', 'verified']], function () {
Route::get('file-manager', [FileManagerController::class, 'index'])->name('file.index');
Route::post('dashboard/get-widget-data', [DashboardController::class, 'getWidgetData'])->name('dashboard.getWidgetData');
Route::get('dashboard', [DashboardController::class, 'index'])->name('dashboard.index');
Route::get('dashboard/getChartYear', [DashboardController::class, 'getChartYear'])->name('dashboard.getChartYear');
Route::get('dashboard/chart-month', [DashboardController::class, 'chartThisMonth'])->name('dashboard.chartThisMonth');
Route::get('dashboard/widget-package', [DashboardController::class, 'widgetPackage'])->name('dashboard.widgetPackage');
Route::get('settings/employees/{user}/edit', [UserController::class, 'edit'])->name('users.edit');
Route::get('settings/employees/{user}/show', [UserController::class, 'show'])->name('users.show');
Route::put('settings/employees/{user}/update-data', [UserController::class, 'update'])->name('users.updatedata');
Route::post('settings/reset-password/{id}', [UserController::class, 'resetPassword'])->name('users.resetPassword');
Route::get('settings/employees/', [UserController::class, 'index'])->name('users.index');
Route::get('settings/employees/create', [UserController::class, 'create'])->name('users.create');
Route::post('settings/employees/store', [UserController::class, 'store'])->name('users.store');
Route::delete('settings/employees/{user}', [UserController::class, 'destroy'])->name('users.destroy');
Route::post('settings/departments/quick-store', [DepartmentController::class, 'quickStore'])->name('departments.quickStore');
Route::get('settings/departments/get-data', [DepartmentController::class, 'getData'])->name('departments.getData');
Route::resource('settings/departments', DepartmentController::class);
Route::post('settings/designations/quick-store', [DesignationController::class, 'quickStore'])->name('designations.quickStore');
Route::resource('settings/designations', DesignationController::class);
Route::controller(CustomerController::class)->name('customers.')->group(function () {
Route::get('customers/export/pdf', 'pdf')->name('pdf');
Route::get('customers/export/{format?}', 'export')->name('export');
Route::get('customers/import/download-example', 'download')->name('download');
Route::delete('customers/delete', 'deleteSelected')->name('deleteSelected');
Route::post('customers/import', 'import')->name('import');
Route::post('customers/data', 'data')->name('data');
Route::get('customers/get-edit/{customer}', 'getEdit')->name('getEdit');
Route::get('customers/get-cities/{id}', 'getCities')->name('getCities');
Route::get('customers/get-districts/{id}', 'getDistricts')->name('getDistricts');
Route::get('customers/get-villages/{id}', 'getVillages')->name('getVillages');
Route::get('customers/generate-qr/{id}', 'pdfQr')->name('pdfQr');
Route::get('customers/invoice/install-fee/{customer}', 'pdfInstallFee')->name('pdfInstallFee');
Route::get('customers/invoice/install-fee/pdf/{customer}', 'installFeePdf')->name('installFeePdf');
Route::get('customers/get-cluster/{serverId}', 'getCluster')->name('getCluster');
Route::get('customers/template-update-customer', 'templateUpdateCustomer')->name('templateUpdateCustomer');
Route::post('customers/import-update-customer', 'updateImport')->name('updateImport');
Route::get('customers/map-customers', 'mapCustomers')->name('mapCustomers');
Route::get('customers/{customer}/invoice-history', 'showInvoice')->name('showInvoice');
Route::get('customers/{customer}/active-deactive', 'activeDeactiveCustomer')->name('activeDeactiveCustomer');
Route::post('customers/isolate-customer', 'isolateCustomer')->name('isolateCustomer');
Route::post('customers/{server?}/sync-static-customer', 'syncStatic')->name('syncStatic');
});
Route::resource('customers', CustomerController::class);
Route::controller(CustomerPackageController::class)->name('internet-packages.')->group(function () {
Route::post('internet-packages/quick-store', 'quickStore')->name('quickStore');
});
Route::resource('internet-packages', CustomerPackageController::class);
Route::controller(ServerLocationController::class)->name('server-locations.')->group(function () {
Route::post('server-locations/quick-store', 'quickStore')->name('quickStore');
});
Route::resource('server-locations', ServerLocationController::class);
Route::controller(CustomerInventoryController::class)->name('customer-inventories.')->group(function () {
Route::post('customer-inventories/data', 'data')->name('data');
Route::post('customer-inventories/quick-store', 'quickStore')->name('quickStore');
});
Route::resource('customer-inventories', CustomerInventoryController::class);
Route::controller(CustomerInventoryStatusController::class)->name('inventories-status.')->group(function () {
Route::post('inventories-status/data', 'data')->name('data');
Route::post('inventories-status/quick-store', 'quickStore')->name('quickStore');
});
Route::resource('inventories-status', CustomerInventoryStatusController::class)->except(['show']);
Route::controller(TicketTypeController::class)->name('ticket-type.')->group(function () {
Route::post('ticket-type/data', 'data')->name('data');
Route::post('ticket-type/quick-store', 'quickStore')->name('quickStore');
});
Route::resource('ticket-type', TicketTypeController::class)->except(['show']);
Route::controller(CustomerInventoryUnitController::class)->name('inventories-unit.')->group(function () {
Route::post('inventories-unit/data', 'data')->name('data');
Route::post('inventories-unit/quick-store', 'quickStore')->name('quickStore');
});
Route::resource('inventories-unit', CustomerInventoryUnitController::class)->except(['show']);
Route::controller(CustomerClusteringController::class)->name('clustering.')->group(function () {
Route::post('clustering/data', 'data')->name('data');
Route::post('clustering/quick-store', 'quickStore')->name('quickStore');
});
Route::resource('clustering', CustomerClusteringController::class)->except(['show']);
Route::controller(CustomerInventoryCategoryController::class)->name('inventories-category.')->group(function () {
Route::post('inventories-category/data', 'data')->name('data');
Route::post('inventories-category/quick-store', 'quickStore')->name('quickStore');
});
Route::resource('inventories-category', CustomerInventoryCategoryController::class)->except(['show']);
Route::controller(CustomerStockHistoryController::class)->name('inventories-stock.')->group(function () {
Route::post('inventories-stock/data', 'data')->name('data');
Route::post('inventories-stock/quick-store', 'quickStore')->name('quickStore');
Route::get('inventories-stock/get-goods-stock/{customerGoods}', 'getGoods')->name('getGoods');
});
Route::resource('inventories-stock', CustomerStockHistoryController::class)->except(['show']);
Route::controller(CustomerWorkOrderController::class)->name('work-orders.')->group(function () {
Route::get('work-orders/create/{customer?}', 'create')->name('create');
Route::get('work-orders/data', 'data')->name('data');
Route::post('work-orders/store/work-order-item', 'storeItem')->name('storeItem');
Route::get('work-orders/table/work-order-item', 'showTable')->name('showTable');
Route::post('work-orders/return', 'return')->name('return');
Route::get('work-orders/{customer?}', 'index')->name('index');
Route::get('work-orders/{workOrder}/edit', 'edit')->name('edit');
Route::get('work-orders/{workOrder}/print-work-order', 'printWo')->name('printWo');
Route::delete('work-orders/table/delete/{id}/work-order-item', 'deleteItem')->name('deleteItem');
});
Route::resource('work-orders', CustomerWorkOrderController::class)->except(['show', 'edit', 'index', 'create']);
Route::controller(TicketController::class)->name('tickets.')->group(function () {
Route::get('tickets/create/{customer?}', 'create')->name('create');
Route::get('tickets/data', 'data')->name('data');
Route::get('tickets/{ticket}/edit', 'edit')->name('edit');
Route::get('tickets/{customer?}', 'index')->name('index');
Route::get('tickets/{ticket}/show', 'show')->name('show');
Route::delete('tickets/table/delete/{id}/work-order-item', 'deleteItem')->name('deleteItem');
Route::post('tickets/files/upload', 'filesStore')->name('filesStore');
Route::delete('tickets/files/delete/{ticketFiles}', 'destroyImage')->name('destroyImage');
Route::get('tickets/files/show/{ticket}', 'showUploaded')->name('showUploaded');
});
Route::resource('tickets', TicketController::class)->except(['edit', 'create', 'index', 'show']);
Route::controller(TicketTodosController::class)->name('ticket-todos.')->group(function () {
Route::get('ticket-todos/table/{ticket}', 'index')->name('index');
Route::post('ticket-todos/store', 'store')->name('store');
Route::post('ticket-todos/update/status/{ticketTodos}', 'updateIsDone')->name('updateIsDone');
Route::delete('ticket-todos/delete/{ticketTodos}', 'destroy')->name('destroy');
});
Route::controller(AdminAttendanceController::class)->name('admin-attendance.')->group(function () {
Route::get('admin-attendance', 'index')->name('index');
Route::get('admin-attendance/data', 'data')->name('data');
Route::get('admin-attendance/{attendance}/edit', 'edit')->name('edit');
Route::get('admin-attendance/get-widget-data', 'getWidget')->name('getWidget');
Route::post('admin-attendance/store', 'store')->name('store');
Route::delete('admin-attendance/delete/{attendance}', 'destroy')->name('destroy');
});
Route::controller(LeaveController::class)->name('leaves.')->group(function () {
Route::get('leaves', 'index')->name('index');
Route::get('leaves/data', 'data')->name('data');
Route::get('leaves/{leave}/edit', 'edit')->name('edit');
Route::get('leaves/{user_id}/get-leave-balance', 'getLeaveBalance')->name('getLeaveBalance');
Route::post('leaves/store', 'store')->name('store');
Route::delete('leaves/delete/{leave}', 'destroy')->name('destroy');
});
Route::controller(CustomerGoodsController::class)->name('customer-goods.')->group(function () {
Route::post('customer-goods/data', 'data')->name('data');
Route::get('customer-goods/{customerGoods}/edit', 'edit')->name('edit');
Route::delete('customer-goods/{customerGoods}', 'destroy')->name('destroy');
Route::post('customer-goods/quick-store', 'quickStore')->name('quickStore');
Route::post('customer-goods/update-stock', 'updateStock')->name('updateStock');
});
Route::resource('customer-goods', CustomerGoodsController::class)->except(['show', 'edit', 'destroy']);
Route::controller(WhatsAppController::class)->name('whatsapp.')->group(function () {
Route::post('whatsapp/get-qr-code', 'getQrCode')->name('getQrCode');
Route::get('whatsapp/message/text-message', 'textMessage')->name('textMessage');
Route::post('whatsapp/logout', 'logoutDevice')->name('logoutDevice');
Route::post('whatsapp/notification-setting', 'store')->name('store');
Route::post('whatsapp/text-message/send', 'textMessageStore')->name('textMessageStore');
Route::post('whatsapp/template-message/send', 'templateMessageStore')->name('templateMessageStore');
Route::get('whatsapp/message/blast', 'blastMessage')->name('blastMessage');
Route::get('whatsapp/template/message', 'templateMessage')->name('templateMessage');
Route::post('whatsapp/blast-message/send', 'blastMessageStore')->name('blastMessageStore');
Route::post('whatsapp/number/delete', 'deleteNumber')->name('deleteNumber');
Route::get('whatsapp/reset', 'resetWhatsApp')->name('resetWhatsApp');
});
Route::get('whatsapp/auto-reply', [WhatsAppAutoReplyController::class, 'autoReply'])->name('whatsapp.autoReply');
Route::get('whatsapp/auto-reply/data', [WhatsAppAutoReplyController::class, 'data'])->name('whatsapp.data');
Route::get('whatsapp/auto-reply/get-type/{type}', [WhatsAppAutoReplyController::class, 'getFormByType'])->name('whatsapp.getFormByType');
Route::get('whatsapp/auto-reply/show/{id}', [WhatsAppAutoReplyController::class, 'showRespond'])->name('whatsapp.showRespond');
Route::get('whatsapp/auto-reply/edit/{id}', [WhatsAppAutoReplyController::class, 'editReply'])->name('whatsapp.editReply');
Route::get('whatsapp/auto-reply/new-edit/{type}/{id?}', [WhatsAppAutoReplyController::class, 'getFormByTypeEdit'])->name('whatsapp.getFormByTypeEdit');
Route::post('whatsapp/auto-reply/store', [WhatsAppAutoReplyController::class, 'storeReply'])->name('whatsapp.storeReply');
Route::delete('whatsapp/auto-reply/destroy/{id}', [WhatsAppAutoReplyController::class, 'destroyReply'])->name('whatsapp.destroyReply');
Route::delete('whatsapp/auto-reply/destroy-all', [WhatsAppAutoReplyController::class, 'destroyAllReply'])->name('whatsapp.destroyAllReply');
Route::resource('whatsapp', WhatsAppController::class);
Route::controller(CustomerRouterOsController::class)->name('routers.')->group(function () {
Route::get('routers/list', 'listRouter')->name('listRouter');
Route::get('routers/generate-vpn', 'generateVpn')->name('generateVpn');
Route::post('routers/data', 'data')->name('data');
Route::post('routers/quick-store', 'quickStore')->name('quickStore');
Route::post('routers/check-connection', 'checkConnection')->name('checkConnection');
Route::post('routers/store', 'store')->name('store');
Route::get('routers/{server?}', 'index')->name('index');
Route::get('routers/trafic/{server?}', 'getTrafic')->name('getTrafic');
Route::get('routers/resource/{server?}', 'getResource')->name('getResource');
Route::get('routers/pppoe/{server?}/test', 'testService')->name('testService');
Route::delete('routers/{serverLocation}/delete', 'destroy')->name('destroy');
Route::post('routers/syncronize', 'syncronize')->name('syncronize');
Route::controller(PppoeController::class)->name('pppoe.')->group(function () {
Route::get('routers/pppoe/{server?}/test', 'testService')->name('testService');
Route::get('routers/pppoe/{server?}', 'index')->name('index');
Route::get('routers/pppoe/get-active/{server?}', 'pppoeActive')->name('pppoeActive');
Route::post('routers/pppoe/{server?}', 'store')->name('store');
Route::post('routers/pppoe/{server?}/enable-disable', 'enableDisablePPP')->name('enableDisablePPP');
Route::delete('routers/pppoe/{server?}', 'destroy')->name('destroy');
Route::get('routers/pppoe/{server?}/datatable', 'data')->name('data');
Route::get('routers/pppoe/{server?}/get-edit', 'getEdit')->name('getEdit');
Route::get('routers/pppoe/{server?}/traffic-monitor/{interface}/{customer}', 'trafficMonitor')->name('trafficMonitor');
Route::post('routers/pppoe/{server?}/cancel-sync', 'cancelSync')->name('cancelSync');
Route::get('routers/pppoe/get-secrets/{server?}', 'getSecrets')->name('getSecrets');
Route::get('routers/pppoe/get-customers/{server?}', 'getCustomers')->name('getCustomers');
Route::get('routers/pppoe/get-customers-all/{server?}', 'getCustomerAll')->name('getCustomerAll');
Route::post('routers/pppoe/{server?}/store', 'syncPppoe')->name('syncPppoe');
Route::post('routers/pppoe/{server?}/update-data-pppoe', 'updatePppoe')->name('updatePppoe');
});
Route::controller(CustomerStaticController::class)->name('static.')->group(function () {
Route::get('routers/static/{server?}', 'index')->name('index');
Route::get('routers/static/get-bindings/{server?}', 'getBindings')->name('getBindings');
Route::get('routers/static/get-customers/{server?}', 'getCustomers')->name('getCustomers');
Route::get('routers/static/get-queue/{server?}/{target}', 'getSingleQueue')->name('getSingleQueue');
Route::get('routers/static/get-data-static/{server?}', 'getDataStatic')->name('getDataStatic');
Route::get('routers/static/get-static-active/{server?}', 'staticActive')->name('staticActive');
Route::get('routers/static/{server?}/datatable', 'data')->name('data');
Route::get('routers/static/{server?}/trafic-monitor', 'getTrafic')->name('getTrafic');
Route::post('routers/static/{server?}/store', 'syncStatic')->name('syncStatic');
Route::post('routers/static/{server?}/enable-disable', 'enableDisableBinding')->name('enableDisableBinding');
Route::post('routers/static/{server?}/cancel-sync', 'cancelSync')->name('cancelSync');
Route::get('routers/static/{server?}/traffic-monitor/{mac}/{ip}/{customer}', 'trafficMonitor')->name('trafficMonitor');
});
});
// Route::resource('routers', CustomerRouterOsController::class)->except(['index', 'show']);
Route::controller(ReportController::class)->name('reports.')->group(function () {
Route::get('reports/table-customer', 'tableCustomer')->name('tableCustomer');
Route::get('reports/invoices', 'invoices')->name('invoices');
Route::get('reports/table-invoices', 'tableInvoices')->name('tableInvoices');
Route::get('reports/cash-flows', 'cashFlows')->name('cashFlows');
Route::get('reports/table-cash-flows', 'tableCashFlows')->name('tableCashFlows');
Route::get('reports/invoice-bill', 'bill')->name('bill');
Route::get('reports/table-invoice-bill', 'tableBill')->name('tableBill');
Route::get('reports/invoices/bill', 'billInvoice')->name('billInvoice');
Route::get('reports/invoices/bill/{invoice}', 'getInvoice')->name('getInvoice');
Route::get('reports/invoices/all-invoice/{periode}', 'getAllInvoice')->name('getAllInvoice');
Route::get('reports/invoices/all-invoice/pdf/{periode}', 'allInvoicePDF')->name('allInvoicePDF');
});
Route::resource('reports', ReportController::class)->except(['edit', 'update', 'destroy', 'show']);
Route::controller(CustomerBankController::class)->name('bank-accounts.')->group(function () {
Route::post('settings/bank-accounts/quick-store', 'quickStore')->name('quickStore');
});
Route::resource('settings/bank-accounts', CustomerBankController::class);
Route::controller(SettingAppController::class)->name('applications.')->group(function () {
Route::get('settings/applications', 'index')->name('index');
Route::post('settings/applications/store', 'store')->name('store');
Route::get('settings/applications/getEdit', 'getEdit')->name('getEdit');
});
Route::controller(SettingController::class)->name('settings.')->group(function () {
Route::get('settings/company', 'company')->name('company');
Route::get('settings/payment', 'payment')->name('payment');
Route::post('settings/payment', 'storePayment')->name('storePayment');
Route::post('settings/payment/xendit', 'storePaymentXendit')->name('storePaymentXendit');
Route::post('settings/payment/set-default-pg/{vendor}', 'setDefaultPG')->name('setDefaultPG');
Route::controller(RoleController::class)->name('roles.')->group(function () {
Route::get('settings/roles/data', 'dataTable')->name('dataTable');
});
Route::resource('settings/roles', RoleController::class);
});
Route::resource('settings', SettingController::class);
Route::controller(CustomerCashFlowController::class)->name('cash-flows.')->group(function () {
Route::get('cash-flows/fill-empty-category-id', 'fillEmptyCategoryId')->name('fillEmptyCategoryId');
Route::get('cash-flows/get-widget-cash-data', 'getWidgetCash')->name('getWidgetCash');
Route::post('cash-flows/data', 'data')->name('data');
Route::delete('cash-flows/delete-all', 'deleteAll')->name('deleteAll');
Route::controller(CustomerCashFlowCategoryController::class)->name('category.')->group(function () {
Route::get('cash-flows/category/data', 'dataTable')->name('dataTable');
});
Route::resource('category', CustomerCashFlowCategoryController::class);
});
Route::resource('cash-flows', CustomerCashFlowController::class);
Route::controller(CustomerInvoiceController::class)->name('invoices.')->group(function () {
Route::get('invoices/history/{slug?}', 'invoiceHistory')->name('invoiceHistory');
Route::get('invoices/payment/scan-qr', 'scanQrPage')->name('scanQrPage');
Route::get('invoices/payment/scan-qr-result/{serviceNumber}', 'scanQrResult')->name('scanQrResult');
Route::get('invoices/export/pdf', 'pdf')->name('pdf');
Route::get('invoices/export/pdf-thermal/{customerInvoice}', 'pdfThermal')->name('pdfThermal');
Route::get('invoices/export/{format?}', 'export')->name('export');
Route::get('invoices/{customerInvoice}', 'invoice')->name('invoice');
Route::get('invoices/{customerInvoice}/pdf', 'invoicePDF')->name('invoicePDF');
Route::post('invoices/payment-confirmation', 'paymentConfirmation')->name('paymentConfirmation');
Route::post('invoices/get-payment/{customerInvoice}', 'getPayment')->name('getPayment');
Route::post('invoices/data', 'data')->name('data');
Route::post('invoices/history/{customer}', 'getInvoicesHistory')->name('history');
Route::post('invoices/generate-manually/{type?}', 'generateBills')->name('generateBills');
Route::post('invoices/generate-prorates', 'generateProrates')->name('generateProrates');
Route::delete('invoices/delete', 'deleteSelected')->name('deleteSelected');
Route::delete('invoices/delete-all', 'deleteAll')->name('deleteAll');
Route::post('invoices/multi-payment', 'paySelected')->name('paySelected');
Route::get('invoices/import/download-example', 'download')->name('download');
Route::post('invoices/import', 'import')->name('import');
Route::post('invoices/whatsapp/sendBillReminder/{customerInvoice}', 'sendBillReminder')->name('sendBillReminder');
Route::post('invoices/whatsapp/sendBillPaid/{customerInvoice}', 'sendBillPaid')->name('sendBillPaid');
Route::get('invoices/widget/get-widget-invoice', 'getWidgetInvoice')->name('getWidgetInvoice');
Route::get('invoices/widget/get-difference-invoice/{value}', 'invoiceNotGenerated')->name('invoiceNotGenerated');
});
Route::resource('invoices', CustomerInvoiceController::class);
});
Route::group(['middleware' => ['auth', 'verified']], function () {
//preview email
Route::get('/mailable', function () {
$invoice = Subscription::query()->with('package')->find(5);
$user = User::find(4);
$url = route('subscriptions.confirmPayment', $invoice);
return new InvoiceMail($invoice, $user, $url);
});
Route::get('/debug-sentry', function () {
throw new Exception('My first Sentry error!');
});
Route::get('/subscription-expired', function () {
return view('errors.nosubscription');
});
//SuperAdmin
Route::name('superadmin.')->group(function () {
Route::controller(SuperadminDashboardController::class)->name('dashboard.')->group(function () {
Route::get('super-admin/dashboard/get-widget', 'getWidgetData')->name('getWidgetData');
Route::get('super-admin/dashboard/getChartYear', 'getChartYear')->name('getChartYear');
});
Route::resource('super-admin/dashboard', SuperadminDashboardController::class);
Route::resource('super-admin/packages', SuperadminPackageController::class);
Route::controller(SuperadminCompanyController::class)->name('companies.')->group(function () {
Route::get('super-admin/companies/check-migrations', 'checkMigrateStatus')->name('checkMigrateStatus');
Route::post('super-admin/companies/data', 'data')->name('data');
Route::post('super-admin/companies/confirm-payment/store', 'storeConfirmPayment')->name('storeConfirmPayment');
Route::get('super-admin/companies/setting', 'setting')->name('setting');
Route::post('super-admin/companies/renew-subs/{company}', 'renewSubs')->name('renewSubs');
Route::get('super-admin/companies/upgrade-subs/get', 'getUpgradeSubs')->name('getUpgradeSubs');
Route::post('super-admin/companies/upgrade-subs/{company}', 'upgradeSubs')->name('upgradeSubs');
Route::get('super-admin/companies/login/{id}', 'login')->name('login');
Route::get('super-admin/companies/get-widget-package/{company_id}', 'widgetPackage')->name('widgetPackage');
Route::post('super-admin/companies/send-bill-reminder', 'sendBillReminder')->name('sendBillReminder');
Route::post('super-admin/companies/add-company', 'storeCompany')->name('storeCompany');
Route::post('super-admin/companies/reset-password/{id}', 'resetPassword')->name('resetPassword');
});
Route::resource('super-admin/companies', SuperadminCompanyController::class);
Route::controller(SuperadminPackageController::class)->name('super-admin/packages.')->group(function () {
Route::post('super-admin/packages/quick-store', 'quickStore')->name('quickStore');
Route::get('super-admin/packages/{id}/edit', 'edit')->name('edit');
Route::delete('super-admin/packages/{id}/delete', 'destroy')->name('destroy');
});
Route::resource('super-admin/packages', SuperadminPackageController::class)->except(['show', 'edit', 'destroy']);
Route::controller(SuperadminWhatsAppController::class)->name('whatsapp.')->group(function () {
Route::post('superadmin/whatsapp/get-qr-code', 'getQrCode')->name('getQrCode');
Route::get('superadmin/whatsapp/message/text-message', 'textMessage')->name('textMessage');
Route::post('superadmin/whatsapp/logout', 'logoutDevice')->name('logoutDevice');
Route::post('superadmin/whatsapp/notification-setting', 'store')->name('store');
Route::post('superadmin/whatsapp/text-message/send', 'textMessageStore')->name('textMessageStore');
Route::get('superadmin/whatsapp/message/blast', 'blastMessage')->name('blastMessage');
Route::post('superadmin/whatsapp/blast-message/send', 'blastMessageStore')->name('blastMessageStore');
Route::post('superadmin/whatsapp/number/delete', 'deleteNumber')->name('deleteNumber');
});
Route::resource('superadmin/whatsapp', SuperadminWhatsAppController::class);
Route::controller(SuperadminReportController::class)->name('reports.')->group(function () {
Route::get('superadmin/reports/invoices', 'invoices')->name('invoices');
Route::get('superadmin/reports/table-invoices', 'tableInvoices')->name('tableInvoices');
Route::get('superadmin/reports/invoice-detail', 'invoiceDetail')->name('invoiceDetail');
Route::get('superadmin/reports/table-invoice-detail', 'tableInvoiceDetail')->name('tableInvoiceDetail');
});
Route::resource('superadmin/reports', SuperadminReportController::class)->except(['edit', 'update', 'destroy', 'show']);
Route::controller(SuperadminCashFlowController::class)->name('cash-flows.')->group(function () {
Route::get('superadmin/cash-flows/get-widget-cash-data', 'getWidgetCash')->name('getWidgetCash');
Route::post('superadmin/cash-flows/data', 'data')->name('data');
});
Route::resource('superadmin/cash-flows', SuperadminCashFlowController::class);
Route::controller(SuperadminProfileController::class)->name('profiles.')->group(function () {
Route::get('superadmin/profiles', 'index')->name('index');
Route::post('superadmin/profiles/store', 'store')->name('store');
Route::post('superadmin/profiles/update-password/{id}', 'updatePassword')->name('updatePassword');
});
Route::controller(SuperadminFrontController::class)->name('front.')->group(function () {
Route::get('super-admin/frontend/set-data-home', 'index')->name('index');
Route::post('super-admin/frontend/set-data-home/store', 'store')->name('store');
Route::get('super-admin/frontend/set-data-general', 'general')->name('general');
Route::post('super-admin/frontend/set-data-general/store', 'generalStore')->name('general-store');
Route::post('super-admin/frontend/{value}/disable-landing', 'disableLanding')->name('disableLanding');
});
Route::resource('superadmin/licenses', SuperadminLicenseController::class);
});
//Company
Route::get('account-setup', [AccountSetupController::class, 'index'])->name('account-setup');
Route::post('account-setup', [AccountSetupController::class, 'store'])->name('account-setup');
Route::group(['prefix' => 'profiles/'], function () {
Route::get('', [ProfileController::class, 'index'])->name('profiles.index');
Route::post('store', [ProfileController::class, 'store'])->name('profiles.store');
Route::post('update-password/{id}', [ProfileController::class, 'updatePassword'])->name('profiles.updatePassword');
});
Route::resource('companies', CompanyController::class);
Route::resource('faq', FaqController::class);
//Client
Route::name('client.')->group(function () {
Route::controller(ClientDashboard::class)->name('dashboard.')->group(function () {
Route::get('client/dashboard/data', 'data')->name('data');
});
Route::resource('client/dashboard', ClientDashboard::class);
Route::controller(ClientInvoiceController::class)->name('invoices.')->group(function () {
Route::get('client/invoices/data', 'data')->name('data');
Route::post('client/invoices/history/{customer}', 'getInvoicesHistory')->name('history');
Route::post('client/invoices/get-payment/{customerInvoice}', 'getPayment')->name('getPayment');
Route::get('client/invoices/{customerInvoice}', 'invoice')->name('invoice');
Route::get('client/invoices/{customerInvoice}/pdf', 'invoicePDF')->name('invoicePDF');
});
Route::resource('client/invoices', ClientInvoiceController::class);
Route::controller(ClientProfileController::class)->name('profiles.')->group(function () {
Route::get('client/profiles/get-edit/{customer}', 'getEdit')->name('getEdit');
Route::get('client/get-cities/{id}', 'getCities')->name('getCities');
Route::get('client/get-districts/{id}', 'getDistricts')->name('getDistricts');
Route::get('client/get-villages/{id}', 'getVillages')->name('getVillages');
Route::post('client/update-profile/{customer}', 'updateProfile')->name('updateProfile');
});
Route::resource('client/profiles', ClientProfileController::class);
});
//email verification
Route::controller(SuperadminTripayController::class)->name('tripay.')->group(function () {
Route::get('tripay/get/payment-channel', 'getPaymentChannel')->middleware('auth')->name('getPaymentChannel');
Route::get('tripay/get/payment-instruction', 'getPaymentInstruction')->middleware('auth')->name('getPaymentInstruction');
});
//notification
Route::get('clear-notification', [NotificationController::class, 'clearNotification'])->name('clear-notification');
});
Route::group(['middleware' => ['auth']], function () {
Route::post('logout', LogoutController::class)->name('logout');
//email verification
Route::controller(EmailVerificationController::class)->group(function () {
Route::get('/email/verify', 'emailVerify')->name('verification.notice');
Route::post('/email/verification-notification', 'resendVerification')->middleware(['throttle:6,1'])->name('verification.resend');
Route::get('/email/verify/{id}/{hash}', 'verifyVerification')->middleware(['signed'])->name('verification.verify');
});
});
Route::middleware('guest')->group(function () {
Route::get('/register', function () {
return redirect('/login');
});
Route::get('auth/google', [GoogleController::class, 'redirectToGoogle'])->name('auth.google');
Route::get('auth/google/callback', [GoogleController::class, 'handleGoogleCallback']);
});
Route::get('frontend/lang/{locale}', [App\Http\Controllers\Frontend\FrontController::class, 'lang']);
Route::name('landing.')->group(base_path('routes/landing.php'));
//calback tripay
Route::post('payment/tripay/callback', [TripayController::class, 'tripayCallback'])->name('tripayCallback');
//calback xendit
Route::post('payment/xendit/callback', [XenditController::class, 'xenditCallback'])->name('xenditCallback');
//Tripay
Route::controller(TripayController::class)->name('tripay.')->group(function () {
Route::get('payment/tripay/get-payment-channel', 'getPaymentChannel')->name('getPaymentChannel');
Route::get('payment/tripay/choose-channel/{invoice}', 'index')->name('index');
Route::get('payment/tripay/{invoice}', 'paymentSuccess')->name('paymentSuccess');
Route::get('payment/tripay/error/{invoice}', 'paymentError')->name('paymentError');
Route::post('payment/tripay/request-transaction/{invoice}', 'reqTransaction')->name('reqTransaction');
});
//Xendit
Route::controller(XenditController::class)->name('xendit.')->group(function () {
Route::get('payment/xendit/{invoice}', 'paymentSuccess')->name('paymentSuccess');
Route::get('payment/xendit/error/{invoice}', 'paymentError')->name('paymentError');
Route::get('payment/xendit/get/balance', 'getBalance')->name('getBalance');
Route::get('payment/xendit/get-payment-channel', 'getPaymentChannels')->name('getPaymentChannels');
Route::get('payment/xendit/get-virtual-account-bank', 'getVABanks')->name('getVABanks');
Route::get('payment/xendit/create-retail-payment-code', 'createRetailPaymentCode')->name('createRetailPaymentCode');
Route::get('payment/xendit/create-invoice/{invoice}', 'createInvoice')->name('createInvoice');
});
Route::get('index/{locale}', [App\Http\Controllers\HomeController::class, 'lang']);
Route::get('/isolir', function() {
return view('isolir.isolir1');
});
Route::controller(DocsController::class)->name('docs.')->group(function () {
Route::get('docs/index', 'index')->name('index');
});
Route::get('{code}', function($code) {
$tripayLink = ShortLinkService::getShortLink($code);
if($tripayLink['status'] != false) {
return redirect()->away($tripayLink['url']);
} elseif ($tripayLink['status'] == false) {
$xenditLink = XenditLinkService::getXenditLink($code);
if($xenditLink['status'] != false) {
return redirect()->away($xenditLink['url']);
} else {
abort(404);
}
}
});
// Route::get('{any}', [App\Http\Controllers\HomeController::class, 'index'])->name('index');
//Language Translation
// Route::get('{any}', [App\Http\Controllers\HomeController::class, 'index']);
Route::get('/inertia/home', function () {
return Inertia::render('Home');
})->name('inertia.home');
// Route::get('/pricing', [PricingController::class, 'index'])->name('pricing');
// Route::get('/contact', [ContactController::class, 'index'])->name('contact');
Function Calls
None |
Stats
MD5 | 48b295760ac4e509f628e3ad9f667444 |
Eval Count | 0 |
Decode Time | 68 ms |