133 lines
7.6 KiB
PHP
133 lines
7.6 KiB
PHP
<?php
|
|
|
|
use CodeIgniter\Router\RouteCollection;
|
|
|
|
/**
|
|
* @var RouteCollection $routes
|
|
*/
|
|
|
|
//추가 Custom RULE 만들때 : ex)UUID형식
|
|
$routes->addPlaceholder('uuid', '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}');
|
|
//authFilter는 추가적인 작업이 필요
|
|
//1. app/Filters/AuthFilter.php
|
|
//2. Config/Filters.php -> $aliases = ['authFilter' => AuthFilter::class]
|
|
$routes->group('cli', ['namespace' => 'App\Controllers\CLI'], function ($routes) {
|
|
$routes->group('cloudflare', function ($routes) {
|
|
$routes->cli('reload', 'Cloudflare::reload');
|
|
$routes->cli('reload/(:num)', 'Cloudflare::reload/$1');
|
|
$routes->cli('auditlog', 'Cloudflare::auditlog');
|
|
$routes->cli('auditlog/(:num)', 'Cloudflare::auditlog/$1');
|
|
$routes->cli('expire', 'Cloudflare::expire');
|
|
$routes->cli('expire/(:any)', 'Cloudflare::expire/$1');
|
|
});
|
|
});
|
|
$routes->get('/', 'Home::index');
|
|
$routes->group('/RSSFeed', function ($routes) {
|
|
$routes->get('getITWorld', 'RSSFeedController::getITWorld');
|
|
});
|
|
$routes->group('/Webhook', function ($routes) {
|
|
$routes->post('Cloudflare', 'WebhookController::cloudflare');
|
|
});
|
|
$routes->group('/user', function ($routes) {
|
|
$routes->get('login', 'UserController::login_form');
|
|
$routes->post('login', 'UserController::login');
|
|
$routes->get('google_login', 'UserController::google_login');
|
|
$routes->get('logout', 'UserController::logout');
|
|
});
|
|
$routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'authFilter:manager'], function ($routes) {
|
|
$routes->get('/', 'Home::index');
|
|
});
|
|
$routes->group('admin/mapurl', ['namespace' => 'App\Controllers\Admin', 'filter' => 'authFilter:manager'], function ($routes) {
|
|
$routes->get('/', 'MapurlController::index');
|
|
$routes->get('create', 'MapurlController::create_form');
|
|
$routes->post('create', 'MapurlController::create');
|
|
$routes->get('modify/(:num)', 'MapurlController::modify_form/$1');
|
|
$routes->post('modify/(:num)', 'MapurlController::modify/$1');
|
|
$routes->get('view/(:num)', 'MapurlController::view/$1');
|
|
$routes->get('delete/(:num)', 'MapurlController::delete/$1');
|
|
$routes->get('toggle/(:num)/(:any)', 'MapurlController::toggle/$1/$2');
|
|
$routes->post('batchjob', 'MapurlController::batchjob');
|
|
$routes->post('batchjob_delete', 'MapurlController::batchjob_delete');
|
|
$routes->get('download/(:alpha)', 'MapurlController::download/$1');
|
|
});
|
|
$routes->group('admin/user', ['namespace' => 'App\Controllers\Admin', 'filter' => 'authFilter:master'], function ($routes) {
|
|
$routes->get('/', 'UserController::index', []);
|
|
$routes->get('create', 'UserController::create_form');
|
|
$routes->post('create', 'UserController::create');
|
|
$routes->get('modify/(:num)', 'UserController::modify_form/$1');
|
|
$routes->post('modify/(:num)', 'UserController::modify/$1');
|
|
$routes->get('view/(:num)', 'UserController::view/$1');
|
|
$routes->get('delete/(:num)', 'UserController::delete/$1');
|
|
$routes->get('toggle/(:num)/(:any)', 'UserController::toggle/$1/$2');
|
|
$routes->post('batchjob', 'UserController::batchjob');
|
|
$routes->post('batchjob_delete', 'UserController::batchjob_delete');
|
|
$routes->get('download/(:alpha)', 'UserController::download/$1');
|
|
});
|
|
$routes->group('admin/usersns', ['namespace' => 'App\Controllers\Admin', 'filter' => 'authFilter:master'], function ($routes) {
|
|
$routes->get('/', 'UserSNSController::index');
|
|
$routes->get('delete/(:num)', 'UserSNSController::delete/$1');
|
|
$routes->get('toggle/(:num)/(:any)', 'UserSNSController::toggle/$1/$2');
|
|
$routes->post('batchjob', 'UserSNSController::batchjob');
|
|
$routes->post('batchjob_delete', 'UserSNSController::batchjob_delete');
|
|
$routes->get('download/(:alpha)', 'UserSNSController::download/$1');
|
|
});
|
|
|
|
$routes->group('admin/cloudflare/auth', ['namespace' => 'App\Controllers\Admin\Cloudflare', 'filter' => 'authFilter:cloudflare'], function ($routes) {
|
|
$routes->get('/', 'AuthController::index');
|
|
$routes->get('create', 'AuthController::create_form');
|
|
$routes->post('create', 'AuthController::create');
|
|
$routes->get('modify/(:num)', 'AuthController::modify_form/$1');
|
|
$routes->post('modify/(:num)', 'AuthController::modify/$1');
|
|
$routes->get('view/(:num)', 'AuthController::view/$1');
|
|
$routes->get('delete/(:num)', 'AuthController::delete/$1');
|
|
$routes->get('toggle/(:num)/(:any)', 'AuthController::toggle/$1/$2');
|
|
$routes->post('batchjob', 'AuthController::batchjob');
|
|
$routes->post('batchjob_delete', 'AuthController::batchjob_delete');
|
|
$routes->get('download/(:alpha)', 'AccountController::download/$1');
|
|
});
|
|
$routes->group('admin/cloudflare/account', ['namespace' => 'App\Controllers\Admin\Cloudflare', 'filter' => 'authFilter:cloudflare'], function ($routes) {
|
|
$routes->get('/', 'AccountController::index');
|
|
$routes->get('view/(:alphanum)', 'AccountController::view/$1');
|
|
$routes->get('reload/(:num)', 'AccountController::reload/$1');
|
|
$routes->get('download/(:alphanum)', 'AccountController::download/$1');
|
|
});
|
|
$routes->group('admin/cloudflare/auditlog', ['namespace' => 'App\Controllers\Admin\Cloudflare', 'filter' => 'authFilter:cloudflare'], function ($routes) {
|
|
$routes->get('/', 'AuditLogController::index');
|
|
$routes->get('view/(:any)', 'AuditLogController::view/$1');
|
|
$routes->get('reload/(:alphanum)', 'AuditLogController::reload/$1');
|
|
$routes->get('download/(:alphanum)', 'AuditLogController::download/$1');
|
|
});
|
|
$routes->group('admin/cloudflare/zone', ['namespace' => 'App\Controllers\Admin\Cloudflare', 'filter' => 'authFilter:cloudflare'], function ($routes) {
|
|
$routes->get('/', 'ZoneController::index');
|
|
$routes->get('create', 'ZoneController::create_form');
|
|
$routes->post('create', 'ZoneController::create');
|
|
$routes->get('view/(:alphanum)', 'ZoneController::view/$1');
|
|
$routes->get('delete/(:alphanum)', 'ZoneController::delete/$1');
|
|
$routes->get('sync/(:alphanum)', 'ZoneController::sync/$1');
|
|
$routes->get('toggle/(:alphanum)/(:any)', 'ZoneController::toggle/$1/$2');
|
|
$routes->post('batchjob', 'ZoneController::batchjob');
|
|
$routes->post('batchjob_delete', 'ZoneController::batchjob_delete');
|
|
$routes->get('reload/(:alphanum)', 'ZoneController::reload/$1');
|
|
$routes->get('download/(:alpha)', 'ZoneController::download/$1');
|
|
});
|
|
$routes->group('admin/cloudflare/record', ['namespace' => 'App\Controllers\Admin\Cloudflare', 'filter' => 'authFilter:cloudflare'], function ($routes) {
|
|
$routes->get('/', 'RecordController::index');
|
|
$routes->get('create', 'RecordController::create_form');
|
|
$routes->post('create', 'RecordController::create');
|
|
$routes->get('view/(:alphanum)', 'RecordController::view/$1');
|
|
$routes->get('delete/(:alphanum)', 'RecordController::delete/$1');
|
|
$routes->get('sync/(:alphanum)', 'RecordController::sync/$1');
|
|
$routes->get('toggle/(:alphanum)/(:any)', 'RecordController::toggle/$1/$2');
|
|
$routes->post('batchjob', 'RecordController::batchjob');
|
|
$routes->post('batchjob_delete', 'RecordController::batchjob_delete');
|
|
$routes->get('reload/(:alphanum)', 'RecordController::reload/$1');
|
|
$routes->get('download/(:alpha)', 'RecordController::download/$1');
|
|
});
|
|
$routes->group('admin/cloudflare/firewall', ['namespace' => 'App\Controllers\Admin\Cloudflare', 'filter' => 'authFilter:firewall'], function ($routes) {
|
|
$routes->get('/', 'FirewallController::index');
|
|
$routes->get('view/(:alphanum)', 'FirewallController::view/$1');
|
|
$routes->get('toggle/(:alphanum)/(:any)', 'FirewallController::toggle/$1/$2');
|
|
$routes->get('reload/(:alphanum)', 'FirewallController::reload/$1');
|
|
$routes->get('download/(:alpha)', 'FirewallController::download/$1');
|
|
});
|