App\Controllers\Sites\BaseController::render PHP Method

render() public method

public render ( $template )
    public function render($template)
    {
        $store = $this->c->cache->store();
        $cacheName = 'controller.universal.before.render' . md5($this->request->getUri());
        if (!$store->has($cacheName)) {
            $this->beforeRender();
            $obj = new \stdClass();
            $obj->request = $this->request;
            $obj->response = $this->result;
            $obj->pageData = $this->data;
            $event = new BaseContainerEvent($this->c, $obj);
            $event = $this->c->dispatcher->dispatch('publiccontroller.render.before', $event);
            $this->data = $event->getParams()->pageData;
            $store->put($cacheName, $this->data, 60);
        } else {
            $this->data = $store->get($cacheName);
        }
        $this->view->render($this->result, $template, $this->data);
        $this->afterRender();
        $obj = new \stdClass();
        $obj->request = $this->request;
        $obj->response = $this->result;
        $obj->pageData = $this->data;
        $event = new BaseContainerEvent($this->c, $obj);
        $this->c->dispatcher->dispatch('publiccontroller.render.after', $event);
        return $this->result;
    }