/** * Returns a user created using an array with user data. * * @param mixed[] $userRow * @return UserModel */ public function loadFromArray($userRow = array()) { $user = new UserModel(); if (isset($userRow['id'])) { $user->setId($userRow['id']); } if (isset($userRow['name'])) { $user->setName($userRow['name']); } if (isset($userRow['email'])) { $user->setEmail($userRow['email']); } if (isset($userRow['first_name'])) { $user->setFirstName($userRow['first_name']); } if (isset($userRow['last_name'])) { $user->setLastName($userRow['last_name']); } if (isset($userRow['homepage'])) { $user->setHomepage($userRow['homepage']); } if (isset($userRow['city'])) { $user->setCity($userRow['city']); } if (isset($userRow['birthday'])) { $user->setBirthday($userRow['birthday']); } if (isset($userRow['avatar'])) { if (file_exists($userRow['avatar'])) { $user->setAvatar($userRow['avatar']); } else { $user->setAvatar('static/img/noavatar.jpg'); } } if (isset($userRow['signature'])) { $user->setSignature($userRow['signature']); } if (isset($userRow['password'])) { $user->setPassword($userRow['password']); } if (isset($userRow['opt_mail'])) { $user->setOptMail($userRow['opt_mail']); } if (isset($userRow['date_created'])) { $dateCreated = new IlchDate($userRow['date_created']); $user->setDateCreated($dateCreated); } if (isset($userRow['date_confirmed'])) { $dateConfirmed = new IlchDate($userRow['date_confirmed']); $user->setDateConfirmed($dateConfirmed); } if (isset($userRow['date_last_activity'])) { $dateLastActivity = new IlchDate($userRow['date_last_activity']); $user->setDateLastActivity($dateLastActivity); } if (isset($userRow['confirmed'])) { $user->setConfirmed($userRow['confirmed']); } if (isset($userRow['confirmed_code'])) { $user->setConfirmedCode($userRow['confirmed_code']); } return $user; }
public function settingAction() { $profilMapper = new UserMapper(); $this->getLayout()->getHmenu()->add($this->getTranslator()->trans('menuPanel'), array('controller' => 'panel', 'action' => 'index'))->add($this->getTranslator()->trans('menuSettings'), array('controller' => 'panel', 'action' => 'settings'))->add($this->getTranslator()->trans('menuSetting'), array('controller' => 'panel', 'action' => 'setting')); if ($this->getRequest()->isPost()) { $model = new UserModel(); $model->setId($this->getUser()->getId()); $model->setOptMail($this->getRequest()->getPost('opt_mail')); $profilMapper->save($model); $this->redirect(array('action' => 'setting')); } }
/** * Tests if the access for a user can be returned. */ public function testHasAccess() { $group = new Group(); $group->setId(3); $group->setName('Testgroup'); $user = new User(); $user->setId(123); $user->addGroup($group); $dbMock = $this->getMock('Ilch_Database', array('queryCell')); $dbMock->expects($this->once())->method('queryCell')->with($this->logicalAnd($this->stringContains('FROM [prefix]_groups_access'), $this->stringContains('INNER JOIN `[prefix]_modules`'), $this->stringContains('user')))->will($this->returnValue('0')); Registry::remove('db'); Registry::set('db', $dbMock); $this->assertEquals(0, $user->hasAccess('module_user')); }