This commit is contained in:
Simon Sessingø
2016-11-17 05:36:44 +01:00
parent b298665d33
commit c59ab12e1a
4 changed files with 19 additions and 29 deletions
+8 -16
View File
@@ -329,9 +329,11 @@ abstract class RouterEntry {
*/
public function getMergeableData() {
$output = [
'namespace' => $this->namespace,
];
$output = array();
if($this->namespace !== null) {
$output['namespace'] = $this->namespace;
}
if(count($this->middlewares)) {
$output['middleware'] = $this->middlewares;
@@ -360,27 +362,17 @@ abstract class RouterEntry {
*/
public function setData(array $settings) {
if (isset($settings['namespace'])) {
if (isset($settings['namespace']) && $this->namespace === null) {
$this->setNamespace($settings['namespace']);
}
// Push middleware if multiple
if (isset($settings['middleware'])) {
if (!is_array($settings['middleware'])) {
$settings['middleware'] = array_merge($this->middlewares, array($settings['middleware']));
} else {
$settings['middleware'][] = $this->middlewares;
}
$middlewares = is_array($settings['middleware']) ? $settings['middleware'] : array($settings['middleware']);
$this->middlewares = array_reverse(array_merge($this->middlewares, $middlewares));
$this->middlewares = array_merge((array)$settings['middleware'], $this->middlewares);
}
if(isset($settings['method'])) {
$requestMethods = is_array($settings['method']) ? $settings['method'] : array($settings['method']);
$this->setRequestMethods($requestMethods);
$this->setRequestMethods((array)$settings['method']);
}
if(isset($settings['where'])) {