Exemple #1
0
<?php

# particular page
\Plethora\Router::addRoute('page', '/page/{rewrite}')->addParameterType('rewrite', 'string')->setController('Frontend\\Pages')->setAction('page');
Exemple #2
0
<?php

# particular page
\Plethora\Router::addRoute('sitemap', '/sitemap')->setController('Frontend\\Sitemap')->setAction('default');
Exemple #3
0
<?php

# default action
\Plethora\Router::addRoute('filemanager', '/filemanager/{fmaction}.php')->addParameterType('fmaction', 'string')->setController('Tinymcefilemanager');
Exemple #4
0
<?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);
});
Exemple #5
0
<?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');