Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Moving default routes into a separate file.
Removing Router::defaults() as its not needed anymore. Removing default routes from inside router. Removing properties related to default routes. Removing dead tests and updating tests.
- Loading branch information
Showing
4 changed files
with
113 additions
and
206 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Original file line | Diff line number | Diff line change |
---|---|---|---|
@@ -0,0 +1,83 @@ | |||
<?php | |||
/** | |||
* Default routes that CakePHP provides as catch all routes. | |||
* | |||
* PHP 5 | |||
* | |||
* CakePHP(tm) : Rapid Development Framework (http://cakephp.org) | |||
* Copyright 2005-2011, Cake Software Foundation, Inc. (http://cakefoundation.org) | |||
* | |||
* Licensed under The MIT License | |||
* Redistributions of files must retain the above copyright notice. | |||
* | |||
* @copyright Copyright 2005-2011, Cake Software Foundation, Inc. (http://cakefoundation.org) | |||
* @link http://cakephp.org CakePHP(tm) Project | |||
* @package cake.config | |||
* @since CakePHP(tm) v 2.0 | |||
* @license MIT License (http://www.opensource.org/licenses/mit-license.php) | |||
*/ | |||
|
|||
/** | |||
* Connects the default, built-in routes, including prefix and plugin routes. The following routes are created | |||
* in the order below: | |||
* | |||
* For each of the Routing.prefixes the following routes are created. Routes containing `:plugin` are only | |||
* created when your application has one or more plugins. | |||
* | |||
* - `/:prefix/:plugin` a plugin shortcut route. | |||
* - `/:prefix/:plugin/:action/*` a plugin shortcut route. | |||
* - `/:prefix/:plugin/:controller` | |||
* - `/:prefix/:plugin/:controller/:action/*` | |||
* - `/:prefix/:controller` | |||
* - `/:prefix/:controller/:action/*` | |||
* | |||
* If plugins are found in your application the following routes are created: | |||
* | |||
* - `/:plugin` a plugin shortcut route. | |||
* - `/:plugin/:action/*` a plugin shortcut route. | |||
* - `/:plugin/:controller` | |||
* - `/:plugin/:controller/:action/*` | |||
* | |||
* And lastly the following catch-all routes are connected. | |||
* | |||
* - `/:controller' | |||
* - `/:controller/:action/*' | |||
* | |||
* You can disable the connection of default routes by deleting the require inside APP/Config/routes.php. | |||
*/ | |||
$prefixes = Router::prefixes(); | |||
|
|||
if ($plugins = CakePlugin::loaded()) { | |||
App::uses('PluginShortRoute', 'Routing/Route'); | |||
foreach ($plugins as $key => $value) { | |||
$plugins[$key] = Inflector::underscore($value); | |||
} | |||
$pluginPattern = implode('|', $plugins); | |||
$match = array('plugin' => $pluginPattern); | |||
$shortParams = array('routeClass' => 'PluginShortRoute', 'plugin' => $pluginPattern); | |||
|
|||
foreach ($prefixes as $prefix) { | |||
$params = array('prefix' => $prefix, $prefix => true); | |||
$indexParams = $params + array('action' => 'index'); | |||
Router::connect("/{$prefix}/:plugin", $indexParams, $shortParams); | |||
Router::connect("/{$prefix}/:plugin/:controller", $indexParams, $match); | |||
Router::connect("/{$prefix}/:plugin/:controller/:action/*", $params, $match); | |||
} | |||
Router::connect('/:plugin', array('action' => 'index'), $shortParams); | |||
Router::connect('/:plugin/:controller', array('action' => 'index'), $match); | |||
Router::connect('/:plugin/:controller/:action/*', array(), $match); | |||
} | |||
|
|||
foreach ($prefixes as $prefix) { | |||
$params = array('prefix' => $prefix, $prefix => true); | |||
$indexParams = $params + array('action' => 'index'); | |||
Router::connect("/{$prefix}/:controller", $indexParams); | |||
Router::connect("/{$prefix}/:controller/:action/*", $params); | |||
} | |||
Router::connect('/:controller', array('action' => 'index')); | |||
Router::connect('/:controller/:action/*'); | |||
|
|||
$namedConfig = Router::namedConfig(); | |||
if ($namedConfig['rules'] === false) { | |||
Router::connectNamed(true); | |||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.