/** * Initializes session, checks is user's info saves in session and gets it from db if it is */ public static function init() { if (!session_id()) { session_start(); } if ($id = self::get('username')) { $model = new SecurityModel(); if ($item = $model->set('id', $id)->getItem()) { $model->update(); self::$_user = $item; } } }
/** * Updates user's profile * * @return string */ public function updateAction() { if (!$this->getUser()) { $this->redirect('/login', 'Please, login first!'); } $errors = array(); $model = new SecurityModel(); $model->setItem($this->getUser()); $model->set('email', Request::get('email'))->set('name', Request::get('name')); if ($model->isValid()) { try { $model->update(); $this->redirect('/', 'Data has been saved successfully'); } catch (DatabaseException $e) { $errors['email'] = 'Email already exists!'; } } else { $errors = $model->getErrors(); } return $this->_renderView('form.html', array('user' => $this->getUser(), 'errors' => $errors)); }