<?php # particular page \Plethora\Router::addRoute('page', '/page/{rewrite}')->addParameterType('rewrite', 'string')->setController('Frontend\\Pages')->setAction('page');
<?php # particular page \Plethora\Router::addRoute('sitemap', '/sitemap')->setController('Frontend\\Sitemap')->setAction('default');
<?php # default action \Plethora\Router::addRoute('filemanager', '/filemanager/{fmaction}.php')->addParameterType('fmaction', 'string')->setController('Tinymcefilemanager');
<?php use Plethora\Route; use Plethora\Router; # home Router::addRoute('home', '/'); # 404 Router::addRoute('err404', '/err404')->setController('Frontend\\Error404'); # cron Router::addRoute('cron', '/cron/{token}')->setController('Cron'); # cron - clear temp directory Router::addRoute('cron_clear_temp', '/cron_clear_temp')->setController('Cron')->setAction('ClearTemp'); # changelog Router::addRoute('framework_changelog', '/fw/changelog')->setController('Base')->setAction('Changelog')->addDefault('package', 'Backend'); # backend Router::addRoute('backend', '/a(/{controller}(/{action}(/{id}(/{extra}))))')->setController('Dashboard')->addParameterType('id', '[a-zA-Z0-9]+')->addParameterType('extra', '[a-zA-Z0-9]+')->addParameterType('controller', '[a-zA-Z0-9_]+')->addParameterType('action', '[a-zA-Z0-9_]+')->addDefault('package', 'Backend')->addDefault('css', 'backend')->addDefault('id', NULL)->addDefault('extra', NULL)->addAccessFunction(function (Route $oRoute, array $aParams = []) { $sClass = '\\Controller\\Backend\\' . str_replace('_', '\\', ucfirst($aParams['controller'])); $sPrefix = call_user_func([$sClass, 'getPermissionPrefix']); $sPermission = $sPrefix . $aParams['action']; return UserPermissions::hasPerm($sPermission); }); # AJAX Router::addRoute('ajax', '/ajax(/{controller}(/{action}(/{id}(/{extra}))))')->setController('Dashboard')->addParameterType('id', '[a-zA-Z0-9]+')->addParameterType('extra', '[a-zA-Z0-9]+')->addParameterType('controller', '[a-zA-Z0-9_]+')->addParameterType('action', '[a-zA-Z0-9_]+')->addDefault('package', 'Ajax')->addDefault('css', 'backend')->addDefault('id', NULL)->addDefault('extra', NULL)->addAccessFunction(function (Route $oRoute, array $aParams = []) { $sClass = '\\Controller\\Backend\\' . str_replace('_', '\\', ucfirst($aParams['controller'])); $sPrefix = call_user_func([$sClass, 'getPermissionPrefix']); $sPermission = $sPrefix . $aParams['action']; return UserPermissions::hasPerm($sPermission); });
<?php defined('PATH_ROOT') or die('No direct script access.'); # login_check \Plethora\Router::addRoute('login', '/login')->setController('Frontend\\User')->setAction('login'); # logout \Plethora\Router::addRoute('logout', '/logout')->setController('Frontend\\User')->setAction('logout'); # user_profile \Plethora\Router::addRoute('user_profile', '/user/{id}')->setAction('Profile')->setController('Frontend\\User')->addParameterType('id', 'number')->addDefault('id', NULL); # user_profile_edit \Plethora\Router::addRoute('user_profile_edit', '/edit_profile')->setController('Frontend\\User')->setAction('EditProfile'); # user_password_change \Plethora\Router::addRoute('user_password_change', '/edit_profile/password')->setController('Frontend\\User')->setAction('ChangePassword'); # registration \Plethora\Router::addRoute('register', '/register')->setController('Frontend\\User\\Registration'); # account_activation \Plethora\Router::addRoute('account_activation', '/account_activation/{code}')->setController('Frontend\\User\\Registration')->setAction('activation')->addParameterType('code', 'string'); # password recovery \Plethora\Router::addRoute('password_recovery', '/password_recovery')->setController('Frontend\\User\\PasswordRecovery'); # account_activation \Plethora\Router::addRoute('password_recovery_code', '/password_recovery/{code}')->setController('Frontend\\User\\PasswordRecovery')->setAction('NewPassword')->addParameterType('code', 'string');