コード例 #1
0
 /**
  * {@inheritDoc}
  */
 protected function onSuccess(UserInterface $user)
 {
     $user->setPlainPassword($this->form->getData()->plainPassword)->setConfirmationToken(null)->setPasswordRequestedAt(null)->setEnabled(true);
     $this->manager->updateUser($user);
 }
コード例 #2
0
 /**
  * @param UserInterface $user
  * @param string        $field
  * @param mixed         $data
  *
  * @throws \InvalidArgumentException
  */
 protected function setData(UserInterface $user, $field, $data)
 {
     switch ($field) {
         case 'username':
             $user->setUsername($data);
             break;
         case 'name_prefix':
             $user->setNamePrefix($data);
             break;
         case 'first_name':
             $user->setFirstName($data);
             break;
         case 'middle_name':
             $user->setMiddleName($data);
             break;
         case 'last_name':
             $user->setLastName($data);
             break;
         case 'name_suffix':
             $user->setNameSuffix($data);
             break;
         case 'email':
             $user->setEmail($data);
             break;
         case 'password':
             $user->setPlainPassword($data);
             $this->userManager->updatePassword($user);
             break;
         case 'birthday':
             $user->setBirthday(new \DateTime($data, \DateTime::ISO8601));
             break;
         case 'email_notifications':
             $user->setEmailNotifications($data);
             break;
         case 'catalog_locale':
             $user->setCatalogLocale($this->findLocale($data));
             break;
         case 'user_locale':
             $user->setUiLocale($this->findLocale($data));
             break;
         case 'catalog_scope':
             $user->setCatalogScope($this->findChannel($data));
             break;
         case 'default_tree':
             $user->setDefaultTree($this->findCategory($data));
             break;
         case 'roles':
             foreach ($data as $code) {
                 $role = $this->findRole($code);
                 $user->addRole($role);
             }
             break;
         case 'groups':
             foreach ($data as $code) {
                 $role = $this->findGroup($code);
                 $user->addGroup($role);
             }
             break;
         case 'api_key':
             if (null === ($api = $user->getApi())) {
                 $api = new UserApi();
             }
             $api->setApiKey($data)->setUser($user);
             $user->setApi($api);
             break;
     }
 }