<?php
declare(strict_types=1);
/**************************************************************************************
*
* Catalyst PHP Framework
* PHP Version 8.3 (Required).
*
* @package Catalyst
* @subpackage Public
* @see https://github.com/arcanisgk/catalyst
*
* @author Walter Nuñez (arcanisgk/original founder) <[email protected]>
* @copyright 2023 - 2025
* @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License
*
* @note This program is distributed in the hope that it will be useful
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
* or FITNESS FOR A PARTICULAR PURPOSE.
*
* @category Framework
* @filesource
*
* @link https://catalyst.dock Local development URL
*
*/
use Catalyst\Framework\Core\Route\Router;
$router = Router::getInstance();
$router->group(['namespace' => 'Catalyst\Solution\Controllers'], function ($router) {
$router->get('/', 'HomeController@landing')->name('landing');
$router->group(['prefix' => 'configure', 'middleware' => 'Catalyst\Framework\Core\Middleware\BasicAuthMiddleware'], function ($router) {
$router->get('/', 'ConfigController@index')->name('config.index');
$router->get('/{section}', 'ConfigController@showSection')->name('config.section');
$router->post('/{section}/save', 'ConfigController@saveConfig')->name('config.save');
$router->get('/check-dkim-keys', 'ConfigController@checkDkimKeys');
$router->post('/generate-dkim-keys', 'ConfigController@generateDkimKeys');
$router->post('/test-connection', 'ConfigController@testConnection')->name('config.test');
$router->post('/change-environment', 'ConfigController@changeEnvironment')->name('config.environment');
});
});
/*
$router->group(['namespace' => 'Catalyst\Solution\Controllers'], function ($router) {
$router->get('/configure/oauth/credentials/{service}', 'ConfigController@getOAuthCredentials')->name('oauth.credentials');
$router->post('/configure/oauth/save', 'ConfigController@saveOAuthCredentials')->name('oauth.save');
$router->post('/configure/oauth/clear', 'ConfigController@clearOAuthCredentials')->name('oauth.clear');
$router->get('/configure', 'ConfigController@index')->name('config.index');
$router->get('/configure/{section}', 'ConfigController@showSection')->name('config.section');
$router->post('/configure/{section}/save', 'ConfigController@saveConfig')->name('config.save');
// Add this route with your other configuration routes
$router->get('/configure/check-dkim-keys', 'ConfigController@checkDkimKeys');
$router->post('/configure/generate-dkim-keys', 'ConfigController@generateDkimKeys');
$router->post('/configure/test-connection', 'ConfigController@testConnection')->name('config.test');
$router->post('/configure/change-environment', 'ConfigController@changeEnvironment')->name('config.environment');
$router->get('/', 'HomeController@landing')->name('landing');
$router->get('/home', 'HomeController@index')->name('home');
});
/*
// Routes with parameters
$router->get('/articles/{id}', 'ArticleController@show')->name('articles.show')
->where('id', '[0-9]+'); // Add constraint: id must be numeric
// Optional parameters example
$router->get('/products/{category?}', 'ProductController@index')->name('products.index');
// Multiple parameters
$router->get('/categories/{category}/products/{id}', 'ProductController@show')
->name('products.show');
// Auth routes
$router->group(['prefix' => 'auth'], function ($router) {
$router->get('/login', 'AuthController@loginForm')->name('auth.login');
$router->post('/login', 'AuthController@login')->name('auth.login.post');
$router->get('/register', 'AuthController@registerForm')->name('auth.register');
$router->post('/register', 'AuthController@register')->name('auth.register.post');
$router->post('/logout', 'AuthController@logout')->name('auth.logout');
});
// Example of routes with middleware
$router->group(['middleware' => 'auth'], function ($router) {
$router->get('/dashboard', 'DashboardController@index')->name('dashboard');
$router->get('/profile', 'ProfileController@show')->name('profile');
$router->put('/profile', 'ProfileController@update')->name('profile.update');
});
*/
|