Adopt class based routes

This commit is contained in:
Shift
2023-01-07 20:33:11 +00:00
parent 41cb65c70c
commit 962785f858
6 changed files with 463 additions and 448 deletions

View File

@@ -1,5 +1,8 @@
<?php
use App\Http\Controllers\Common;
use Illuminate\Support\Facades\Route;
/*
* ================================================================================================
* @version v1
@@ -9,58 +12,58 @@
* @name Faveo
*/
Route::prefix('api/v1')->group(function () {
Route::post('authenticate', '\App\Api\v1\TokenAuthController@authenticate');
Route::get('authenticate/user', '\App\Api\v1\TokenAuthController@getAuthenticatedUser');
Route::get('/database-config', '\App\Api\v1\InstallerApiController@config_database')->name('database-config');
Route::get('/system-config', '\App\Api\v1\InstallerApiController@config_system')->name('database-config');
Route::post('authenticate', [\App\Api\v1\TokenAuthController::class, 'authenticate']);
Route::get('authenticate/user', [\App\Api\v1\TokenAuthController::class, 'getAuthenticatedUser']);
Route::get('/database-config', [\App\Api\v1\InstallerApiController::class, 'config_database'])->name('database-config');
Route::get('/system-config', [\App\Api\v1\InstallerApiController::class, 'config_system'])->name('database-config');
/*
* Helpdesk
*/
Route::prefix('helpdesk')->group(function () {
Route::post('create', '\App\Api\v1\ApiController@createTicket');
Route::post('reply', '\App\Api\v1\ApiController@ticketReply');
Route::post('edit', '\App\Api\v1\ApiController@editTicket');
Route::post('delete', '\App\Api\v1\ApiController@deleteTicket');
Route::post('assign', '\App\Api\v1\ApiController@assignTicket');
Route::get('open', '\App\Api\v1\ApiController@openedTickets');
Route::get('unassigned', '\App\Api\v1\ApiController@unassignedTickets');
Route::get('closed', '\App\Api\v1\ApiController@closeTickets');
Route::get('agents', '\App\Api\v1\ApiController@getAgents');
Route::get('teams', '\App\Api\v1\ApiController@getTeams');
Route::get('customers', '\App\Api\v1\ApiController@getCustomers');
Route::get('customer', '\App\Api\v1\ApiController@getCustomer');
Route::get('ticket-search', '\App\Api\v1\ApiController@searchTicket');
Route::get('ticket-thread', '\App\Api\v1\ApiController@ticketThreads');
Route::get('url', '\App\Api\v1\ApiExceptAuthController@checkUrl');
Route::get('check-url', '\App\Api\v1\ApiExceptAuthController@urlResult');
Route::get('api_key', '\App\Api\v1\ApiController@generateApiKey');
Route::get('help-topic', '\App\Api\v1\ApiController@getHelpTopic');
Route::get('sla-plan', '\App\Api\v1\ApiController@getSlaPlan');
Route::get('priority', '\App\Api\v1\ApiController@getPriority');
Route::get('department', '\App\Api\v1\ApiController@getDepartment');
Route::get('tickets', '\App\Api\v1\ApiController@getTickets');
Route::get('ticket', '\App\Api\v1\ApiController@getTicketById');
Route::get('inbox', '\App\Api\v1\ApiController@inbox');
Route::get('trash', '\App\Api\v1\ApiController@getTrash');
Route::get('my-tickets-agent', '\App\Api\v1\ApiController@getMyTicketsAgent');
Route::post('internal-note', '\App\Api\v1\ApiController@internalNote');
Route::post('create', [\App\Api\v1\ApiController::class, 'createTicket']);
Route::post('reply', [\App\Api\v1\ApiController::class, 'ticketReply']);
Route::post('edit', [\App\Api\v1\ApiController::class, 'editTicket']);
Route::post('delete', [\App\Api\v1\ApiController::class, 'deleteTicket']);
Route::post('assign', [\App\Api\v1\ApiController::class, 'assignTicket']);
Route::get('open', [\App\Api\v1\ApiController::class, 'openedTickets']);
Route::get('unassigned', [\App\Api\v1\ApiController::class, 'unassignedTickets']);
Route::get('closed', [\App\Api\v1\ApiController::class, 'closeTickets']);
Route::get('agents', [\App\Api\v1\ApiController::class, 'getAgents']);
Route::get('teams', [\App\Api\v1\ApiController::class, 'getTeams']);
Route::get('customers', [\App\Api\v1\ApiController::class, 'getCustomers']);
Route::get('customer', [\App\Api\v1\ApiController::class, 'getCustomer']);
Route::get('ticket-search', [\App\Api\v1\ApiController::class, 'searchTicket']);
Route::get('ticket-thread', [\App\Api\v1\ApiController::class, 'ticketThreads']);
Route::get('url', [\App\Api\v1\ApiExceptAuthController::class, 'checkUrl']);
Route::get('check-url', [\App\Api\v1\ApiExceptAuthController::class, 'urlResult']);
Route::get('api_key', [\App\Api\v1\ApiController::class, 'generateApiKey']);
Route::get('help-topic', [\App\Api\v1\ApiController::class, 'getHelpTopic']);
Route::get('sla-plan', [\App\Api\v1\ApiController::class, 'getSlaPlan']);
Route::get('priority', [\App\Api\v1\ApiController::class, 'getPriority']);
Route::get('department', [\App\Api\v1\ApiController::class, 'getDepartment']);
Route::get('tickets', [\App\Api\v1\ApiController::class, 'getTickets']);
Route::get('ticket', [\App\Api\v1\ApiController::class, 'getTicketById']);
Route::get('inbox', [\App\Api\v1\ApiController::class, 'inbox']);
Route::get('trash', [\App\Api\v1\ApiController::class, 'getTrash']);
Route::get('my-tickets-agent', [\App\Api\v1\ApiController::class, 'getMyTicketsAgent']);
Route::post('internal-note', [\App\Api\v1\ApiController::class, 'internalNote']);
/*
* Newly added
*/
Route::get('customers-custom', '\App\Api\v1\ApiController@getCustomersWith');
Route::get('collaborator/search', '\App\Api\v1\ApiController@collaboratorSearch');
Route::post('collaborator/create', '\App\Api\v1\ApiController@addCollaboratorForTicket');
Route::post('collaborator/remove', '\App\Api\v1\ApiController@deleteCollaborator');
Route::post('collaborator/get-ticket', '\App\Api\v1\ApiController@getCollaboratorForTicket');
Route::get('my-tickets-user', '\App\Api\v1\ApiController@getMyTicketsUser');
Route::get('dependency', '\App\Api\v1\ApiController@dependency');
Route::post('register', '\App\Api\v1\ApiController@createUser');
Route::get('customers-custom', [\App\Api\v1\ApiController::class, 'getCustomersWith']);
Route::get('collaborator/search', [\App\Api\v1\ApiController::class, 'collaboratorSearch']);
Route::post('collaborator/create', [\App\Api\v1\ApiController::class, 'addCollaboratorForTicket']);
Route::post('collaborator/remove', [\App\Api\v1\ApiController::class, 'deleteCollaborator']);
Route::post('collaborator/get-ticket', [\App\Api\v1\ApiController::class, 'getCollaboratorForTicket']);
Route::get('my-tickets-user', [\App\Api\v1\ApiController::class, 'getMyTicketsUser']);
Route::get('dependency', [\App\Api\v1\ApiController::class, 'dependency']);
Route::post('register', [\App\Api\v1\ApiController::class, 'createUser']);
});
/*
* FCM token response
*/
Route::post('fcmtoken', 'Common\PushNotificationController@fcmToken')->name('fcmtoken');
Route::post('fcmtoken', [Common\PushNotificationController::class, 'fcmToken'])->name('fcmtoken');
});
/*
* ================================================================================================
@@ -75,6 +78,6 @@
* Helpdesk
*/
Route::prefix('helpdesk')->group(function () {
Route::get('tickets', '\App\Api\v2\TicketController@getTickets');
Route::get('tickets', [\App\Api\v2\TicketController::class, 'getTickets']);
});
});

View File

@@ -1,9 +1,12 @@
<?php
use App\Http\Controllers\App;
use Illuminate\Support\Facades\Route;
Breadcrumbs::register('logs', function ($breadcrumbs) {
$breadcrumbs->parent('setting');
$breadcrumbs->push('System Logs', route('logs'));
});
Route::middleware('web', 'auth', 'roles')->group(function () {
Route::get('logs', 'App\FaveoLog\controllers\LogViewerController@index')->name('logs');
Route::get('logs', [App\FaveoLog\controllers\LogViewerController::class, 'index'])->name('logs');
});

View File

@@ -1,12 +1,15 @@
<?php
use App\Http\Controllers\App;
use Illuminate\Support\Facades\Route;
\Event::listen('settings.system', function () {
$controller = new \App\FaveoStorage\Controllers\SettingsController();
echo $controller->settingsIcon();
});
Route::middleware('web')->group(function () {
Route::get('storage', 'App\FaveoStorage\Controllers\SettingsController@settings')->name('storage');
Route::post('storage', 'App\FaveoStorage\Controllers\SettingsController@postSettings')->name('post.storage');
Route::get('attachment', 'App\FaveoStorage\Controllers\SettingsController@attachment')->name('attach');
Route::get('storage', [App\FaveoStorage\Controllers\SettingsController::class, 'settings'])->name('storage');
Route::post('storage', [App\FaveoStorage\Controllers\SettingsController::class, 'postSettings'])->name('post.storage');
Route::get('attachment', [App\FaveoStorage\Controllers\SettingsController::class, 'attachment'])->name('attach');
});

View File

@@ -10,15 +10,6 @@ use Illuminate\Support\Facades\Route;
class RouteServiceProvider extends ServiceProvider
{
/**
* This namespace is applied to your controller routes.
*
* In addition, it is set as the URL generator's root namespace.
*
* @var string
*/
protected $namespace = 'App\Http\Controllers';
/**
* The path to the "home" route for your application.
*
@@ -55,7 +46,7 @@ class RouteServiceProvider extends ServiceProvider
*/
protected function mapWebRoutes()
{
Route::middleware('web')->namespace($this->namespace)->group(function ($router) {
Route::middleware('web')->group(function ($router) {
require base_path('routes/web.php');
});
}
@@ -69,7 +60,7 @@ class RouteServiceProvider extends ServiceProvider
*/
protected function mapApiRoutes()
{
Route::middleware('api')->namespace($this->namespace)->prefix('api')->group(function ($router) {
Route::middleware('api')->prefix('api')->group(function ($router) {
require base_path('routes/api.php');
});
}
@@ -83,7 +74,7 @@ class RouteServiceProvider extends ServiceProvider
*/
protected function mapInstallerRoutes()
{
Route::middleware('web', 'installer')->namespace($this->namespace)->group(function ($router) {
Route::middleware('web', 'installer')->group(function ($router) {
require base_path('routes/installer.php');
});
}
@@ -97,7 +88,7 @@ class RouteServiceProvider extends ServiceProvider
*/
protected function mapUpdateRoutes()
{
Route::middleware('web', 'redirect', 'install')->namespace($this->namespace)->prefix('app/update')->group(function ($router) {
Route::middleware('web', 'redirect', 'install')->prefix('app/update')->group(function ($router) {
require base_path('routes/update.php');
});
}

View File

@@ -1,30 +1,33 @@
<?php
Route::get('serial', 'Installer\helpdesk\InstallController@serialkey')->name('serialkey');
Route::post('/post-serial', 'Installer\helpdesk\InstallController@postSerialKeyToFaveo')->name('post.serialkey');
Route::post('/post-bill', 'Installer\helpdesk\InstallController@returnFormBilling')->name('return.bill');
use App\Http\Controllers\Installer;
use Illuminate\Support\Facades\Route;
Route::get('/JavaScript-disabled', 'Installer\helpdesk\InstallController@jsDisabled')->name('js-disabled');
Route::get('/step2', 'Installer\helpdesk\InstallController@licence')->name('licence');
Route::post('/step1post', 'Installer\helpdesk\InstallController@licencecheck')->name('postlicence');
Route::get('/step1', 'Installer\helpdesk\InstallController@prerequisites')->name('prerequisites');
Route::post('/step2post', 'Installer\helpdesk\InstallController@prerequisitescheck')->name('postprerequisites');
Route::get('/step3', 'Installer\helpdesk\InstallController@configuration')->name('configuration');
Route::post('/step4post', 'Installer\helpdesk\InstallController@configurationcheck')->name('postconfiguration');
Route::get('/step4', 'Installer\helpdesk\InstallController@database')->name('database');
Route::get('/step5', 'Installer\helpdesk\InstallController@account')->name('account');
Route::post('/step6post', 'Installer\helpdesk\InstallController@accountcheck')->name('postaccount');
Route::get('/final', 'Installer\helpdesk\InstallController@finalize')->name('final');
Route::post('/finalpost', 'Installer\helpdesk\InstallController@finalcheck')->name('postfinal');
Route::post('/postconnection', 'Installer\helpdesk\InstallController@postconnection')->name('postconnection');
Route::get('/change-file-permission', 'Installer\helpdesk\InstallController@changeFilePermission')->name('change-permission');
Route::get('serial', [Installer\helpdesk\InstallController::class, 'serialkey'])->name('serialkey');
Route::post('/post-serial', [Installer\helpdesk\InstallController::class, 'postSerialKeyToFaveo'])->name('post.serialkey');
Route::post('/post-bill', [Installer\helpdesk\InstallController::class, 'returnFormBilling'])->name('return.bill');
Route::get('create/env', 'Installer\helpdesk\InstallController@createEnv')->name('create.env');
Route::get('/JavaScript-disabled', [Installer\helpdesk\InstallController::class, 'jsDisabled'])->name('js-disabled');
Route::get('/step2', [Installer\helpdesk\InstallController::class, 'licence'])->name('licence');
Route::post('/step1post', [Installer\helpdesk\InstallController::class, 'licencecheck'])->name('postlicence');
Route::get('/step1', [Installer\helpdesk\InstallController::class, 'prerequisites'])->name('prerequisites');
Route::post('/step2post', [Installer\helpdesk\InstallController::class, 'prerequisitescheck'])->name('postprerequisites');
Route::get('/step3', [Installer\helpdesk\InstallController::class, 'configuration'])->name('configuration');
Route::post('/step4post', [Installer\helpdesk\InstallController::class, 'configurationcheck'])->name('postconfiguration');
Route::get('/step4', [Installer\helpdesk\InstallController::class, 'database'])->name('database');
Route::get('/step5', [Installer\helpdesk\InstallController::class, 'account'])->name('account');
Route::post('/step6post', [Installer\helpdesk\InstallController::class, 'accountcheck'])->name('postaccount');
Route::get('/final', [Installer\helpdesk\InstallController::class, 'finalize'])->name('final');
Route::post('/finalpost', [Installer\helpdesk\InstallController::class, 'finalcheck'])->name('postfinal');
Route::post('/postconnection', [Installer\helpdesk\InstallController::class, 'postconnection'])->name('postconnection');
Route::get('/change-file-permission', [Installer\helpdesk\InstallController::class, 'changeFilePermission'])->name('change-permission');
Route::get('preinstall/check', 'Installer\helpdesk\InstallController@checkPreInstall')->name('preinstall.check');
Route::get('create/env', [Installer\helpdesk\InstallController::class, 'createEnv'])->name('create.env');
Route::get('migrate', 'Installer\helpdesk\InstallController@migrate')->name('migrate');
Route::get('preinstall/check', [Installer\helpdesk\InstallController::class, 'checkPreInstall'])->name('preinstall.check');
Route::get('seed', 'Installer\helpdesk\InstallController@seed')->name('seed');
Route::get('migrate', [Installer\helpdesk\InstallController::class, 'migrate'])->name('migrate');
Route::get('update/install', 'Installer\helpdesk\InstallController@updateInstalEnv')->name('update.install');
Route::get('seed', [Installer\helpdesk\InstallController::class, 'seed'])->name('seed');
Route::get('update/install', [Installer\helpdesk\InstallController::class, 'updateInstalEnv'])->name('update.install');

File diff suppressed because it is too large Load Diff