Permalink
Browse files

Adding constructor to Router.

Adding __setPrefixes to initialize prefixes and merge Routing.admin with new Routing.prefixes.
  • Loading branch information...
1 parent 2f46f39 commit 3904c6f7b507080201420ffc9ff4fdd07e280527 @markstory markstory committed Sep 27, 2009
Showing with 27 additions and 3 deletions.
  1. +26 −2 cake/libs/router.php
  2. +1 −1 cake/tests/cases/libs/router.test.php
View
@@ -164,6 +164,31 @@ class Router {
*/
var $__defaultsMapped = false;
+/**
+ * Constructor for Router.
+ * Builds __prefixes
+ *
+ * @return void
+ **/
+ function Router() {
+ $this->__setPrefixes();
+ }
+
+/**
+ * Sets the Routing prefixes.
+ *
+ * @return void
+ * @access private
+ **/
+ function __setPrefixes() {
+ $routing = Configure::read('Routing');
+ if (isset($routing['admin'])) {
+ $this->__prefixes[] = $this->__admin = $routing['admin'];
+ }
+ if (isset($routing['prefixes'])) {
+ $this->__prefixes = array_merge($this->__prefixes, $routing['prefixes']);
+ }
+ }
/**
* Gets a reference to the Router object instance
*
@@ -176,7 +201,6 @@ function &getInstance() {
if (!$instance) {
$instance[0] =& new Router();
- $instance[0]->__admin = Configure::read('Routing.admin');
}
return $instance[0];
}
@@ -722,7 +746,7 @@ function reload() {
foreach (get_class_vars('Router') as $key => $val) {
$_this->{$key} = $val;
}
- $_this->__admin = Configure::read('Routing.admin');
+ $_this->__setPrefixes();
}
/**
@@ -1655,7 +1655,7 @@ function testPassedArgsOrder() {
$this->assertEqual($result, $expected);
$result = Router::prefixes();
- $expected = array('protected', 'admin');
+ $expected = array('admin', 'protected');
$this->assertEqual($result, $expected);
}

0 comments on commit 3904c6f

Please sign in to comment.