/** * Called after the controller action is run, but before the view is * rendered. * You can use this method to perform logic or set view variables that * are required on every request. * @param \Cake\Event\Event $event An Event instance * @return void * @see http://api.cakephp.org/3.3/class-Cake.Controller.Controller.html#_beforeRender */ public function beforeRender(\Cake\Event\Event $event) { parent::beforeRender($event); //Uses a custom View class (`MeYoutube.AppView` or `MeCms.AdminView`) if ($this->request->isAdmin()) { $this->viewBuilder()->className('MeCms.View/Admin'); } else { $this->viewBuilder()->className('MeYoutube.View/App'); } }
/** * Called after the controller action is run, but before the view is * rendered. * You can use this method to perform logic or set view variables that * are required on every request. * @param \Cake\Event\Event $event An Event instance * @return void * @see http://api.cakephp.org/3.3/class-Cake.Controller.Controller.html#_beforeRender * @uses MeCms\Controller\AppController::beforeRender() * @uses MeInstagram\Utility\Instagram::user() */ public function beforeRender(\Cake\Event\Event $event) { parent::beforeRender($event); //Tries to get data from the cache $user = Cache::read($cache = 'user_profile', 'instagram'); //If the data are not available from the cache if (empty($user)) { $user = Instagram::user(); Cache::write($cache, $user, 'instagram'); } $this->set(compact('user')); }