/** * @param WebRequest $request Object containing the HTTP request */ public function fromWebRequest(WebRequest $request) { $this->setBaseUrl($request->getBaseUrl()); $this->setPathInfo($request->getPathInfo()); $this->setMethod($request->getMethod()); $this->setHost($request->getHost()); $this->setScheme($request->getScheme()); $this->setHttpPort($request->isSecure() ? $this->getHttpPort : $request->getPort()); $this->setHttpsPort($request->isSecure() ? $request->getPort() : $this->getHttpsPort()); if (class_exists('\\Mobile_Detect') && $request->getDevice() instanceof \Mobile_Detect) { $this->setDevice($request->getDevice()); } }
/** * Pull together all the parameters for the template * * @param TemplateAbstract $template * * @return array */ protected function getTemplateParameters(TemplateAbstract $template) { // merge the controller parameters $templateParams = array(); $controllerParams = $this->controller->getControllerParameters(); if (is_array($controllerParams)) { $templateParams = array_merge($this->controller->getParameters(), $controllerParams); } // and merge with any pre-existing template parameters $templateParams = array_merge($templateParams, $template->getParameters()); // local params to pass $params = array('absoluteStubUrl' => $this->absoluteStubUrl, 'device' => $this->request->getDevice()); return array_merge($templateParams, $params); }