PartKeepr\AuthBundle\Entity\UserPreference::setPreferenceKey PHP Method

setPreferenceKey() public method

Sets the key for this user preference.
public setPreferenceKey ( string $key )
$key string The key name
    public function setPreferenceKey($key)
    {
        $this->preferenceKey = $key;
    }

Usage Example

Exemplo n.º 1
0
 /**
  * Creates or updates a preference for a given user.
  *
  * @param User   $user  The user to set the preference for
  * @param string $key   The key to set
  * @param string $value The value to set
  *
  * @return UserPreference The user preference
  */
 public function setPreference(User $user, $key, $value)
 {
     $dql = 'SELECT up FROM PartKeepr\\AuthBundle\\Entity\\UserPreference up WHERE up.user = :user AND ';
     $dql .= 'up.preferenceKey = :key';
     $query = $this->entityManager->createQuery($dql);
     $query->setParameter('user', $user);
     $query->setParameter('key', $key);
     try {
         $userPreference = $query->getSingleResult();
     } catch (\Exception $e) {
         $userPreference = new UserPreference();
         $userPreference->setUser($user);
         $userPreference->setPreferenceKey($key);
         $this->entityManager->persist($userPreference);
     }
     $userPreference->setPreferenceValue($value);
     $this->entityManager->flush();
     return $userPreference;
 }