protected function setRequestValues(\Rapid\Request $request) { $request->setModule($this->moduleName())->setController($this->controllerName())->setAction($this->actionName()); foreach ($this->additionalParams() as $key => $value) { $request->setParam($key, $value); } }
protected function processPath() { $path = $this->request->path(); $parts = explode('/', $path); $partsCount = count($parts); $partsMaxIndex = $partsCount - 1; $module = ''; $controller = ''; $action = ''; $paramsKey = ''; foreach ($parts as $key => $part) { if (!$controller && $this->application->hasModule($module . $part . '/')) { $module .= $part . '/'; continue; } if (!$controller) { $controller = $part; continue; } if (!$action) { $action = $part; continue; } if ($partsMaxIndex > $key && !$paramsKey) { $paramsKey = $part; continue; } if ($paramsKey) { $this->request->setParam($paramsKey, $part); $paramsKey = ''; } else { $this->request->setParam($part, 1); } } $this->request->setModule($module)->setController($controller ? $controller : $this->defaultController)->setAction($action ? $action : $this->defaultAction); }
public function testModule() { $this->assertEquals(null, $this->request->module(), 'Module is not null'); $this->request->setModule('admin'); $this->assertEquals('admin', $this->request->module(), 'Module is not "admin"'); }