/** * Return a user notification setting given a user. * * @param User $user * @param string $name * @param mixed $default * * @return mixed */ public function getUserNotificationSetting(User $user, $name, $default = true) { if (false === $user->getNotificationSettings()->containsKey($name)) { return $default; } return $user->getNotificationSettings()->get($name)->getValue(); }
/** * Removes user settings. * * @param User $user */ private function cleanSettings(User $user) { foreach ($user->getNotificationSettings() as $userNotificationSetting) { $this->objectManager->remove($userNotificationSetting); } $user->getNotificationSettings()->clear(); foreach ($user->getSettings() as $userSetting) { $this->objectManager->remove($userSetting); } $user->getSettings()->clear(); }
public function testConstructor() { $this->assertInstanceOf('\\Doctrine\\Common\\Collections\\ArrayCollection', $this->user->getQueries()); $this->assertInstanceOf('\\Doctrine\\Common\\Collections\\ArrayCollection', $this->user->getNotificationSettings()); $this->assertInstanceOf('\\Doctrine\\Common\\Collections\\ArrayCollection', $this->user->getSettings()); }
/** * Sets a notification setting for a user. * * @param User $user * @param string $name * @param string $value */ public function setNotificationSetting(User $user, $name, $value) { if ($user->getNotificationSettings()->containsKey($name)) { $user->getNotificationSettings()->get($name)->setValue((bool) $value); } else { $userSetting = new UserNotificationSetting(); $userSetting->setUser($user); $userSetting->setName($name); $userSetting->setValue($value); $user->addNotificationSettings($userSetting); } $this->manager->update($user); }
/** * {@inheritDoc} */ public function getNotificationSettings() { $this->__initializer__ && $this->__initializer__->__invoke($this, 'getNotificationSettings', array()); return parent::getNotificationSettings(); }