public function setDefaultsFromEntity(User $user) { $defaults = array('first_name' => $user->getFirstName(), 'last_name' => $user->getLastName(), 'username' => $user->getUsername(), 'attributes' => array()); $profile = $this->getSubForm('attributes'); foreach ($profile as $field) { $defaults['attributes'][$field->getName()] = (string) $user->getAttribute($field->getName()); } $this->setDefaults($defaults); }
/** * Set form defaults * * @param Newscoop\Entity\User $user * @return Admin_Form_User */ public function setDefaultsFromEntity(User $user) { $defaults = array('first_name' => $user->getFirstName(), 'last_name' => $user->getLastName(), 'username' => $user->getUsername(), 'attributes' => array()); $profile = $this->getSubForm('attributes'); foreach ($profile as $field) { $defaults['attributes'][$field->getName()] = (string) $user->getAttribute($field->getName()); } $types = array(); foreach ($user->getUserTypes() as $type) { $types[] = $type->getId(); } try { $user->getAuthorId(); } catch (\Doctrine\ORM\EntityNotFoundException $e) { // deleted author $user->setAuthor(null); } $settings = array('first_name' => $user->getFirstName(), 'last_name' => $user->getLastName(), 'email' => $user->getEmail(), 'username' => $user->getUsername(), 'status' => $user->isActive(), 'is_admin' => $user->isAdmin(), 'is_public' => $user->isPublic(), 'is_verified' => $user->getAttribute('is_verified'), 'is_featured' => $user->getAttribute('is_featured'), 'user_type' => $types, 'author' => $user->getAuthorId()); return $this->setDefaults(array_merge($settings, $defaults)); }
/** * Get blog info article * * @param Newscoop\Entity\User $user * @return Article|null */ public function getBlogInfo(User $user) { $articles = \Article::GetArticles($this->config['publication'], $this->config['issue'], null, null, null, false, array("Type = '" . $this->config['type'] . "'")); foreach ($articles as $article) { $data = $article->getArticleData(); $authors = array_map('trim', explode(self::SEPARATOR, $data->getFieldValue('loginname'))); if (in_array($user->getUsername(), $authors)) { return $article; } } return null; }
public function let(Container $container, EntityManager $entityManager, Request $request, AbstractQuery $query, UserTopicService $userTopicService, UserRepository $userRepository, User $user, Paginator $knpPaginator, PaginatorService $paginator, EntityRepository $repository) { $container->get('em')->willReturn($entityManager); $container->get('user.topic')->willReturn($userTopicService); $container->get('newscoop.paginator.paginator_service')->willReturn($paginator); $entityManager->persist(Argument::any())->willReturn(true); $entityManager->flush(Argument::any())->willReturn(true); $entityManager->remove(Argument::any())->willReturn(true); $entityManager->getRepository('Newscoop\\Entity\\User')->willReturn($repository); $user->getId()->willReturn(1); $user->getUsername()->willReturn('admin'); $user->getEmail()->willReturn('*****@*****.**'); $this->setContainer($container); }
/** * Set form defaults * * @param Newscoop\Entity\User $user * @return Admin_Form_User */ public function setDefaultsFromEntity(User $user) { $types = array(); foreach ($user->getUserTypes() as $type) { $types[] = $type->getId(); } try { $user->getAuthorId(); } catch (\Doctrine\ORM\EntityNotFoundException $e) { // deleted author $user->setAuthor(null); } return $this->setDefaults(array('first_name' => $user->getFirstName(), 'last_name' => $user->getLastName(), 'email' => $user->getEmail(), 'username' => $user->getUsername(), 'status' => $user->isActive(), 'is_admin' => $user->isAdmin(), 'is_public' => $user->isPublic(), 'user_type' => $types, 'author' => $user->getAuthorId())); }
public function indexAction() { $translator = Zend_Registry::get('container')->getService('translator'); $form = $this->_helper->form('profile'); $form->setMethod('POST'); $form->setDefaults((array) $this->user->getView()); $form->username->setRequired(false); $form->removeElement('username'); $username = $this->user->getUsername(); $request = $this->getRequest(); if ($request->isPost() && $form->isValid($request->getPost())) { $values = $form->getValues(); $values['username'] = $username; try { if (!empty($values['image'])) { $imageInfo = array_pop($form->image->getFileInfo()); $values['image'] = $this->_helper->service('image')->save($imageInfo); } //TODO add event to subscribe for newsletter $this->service->save($values, $this->user); $this->_helper->flashMessenger->addMessage($translator->trans('Profile saved.', array(), 'users')); $this->_helper->redirector('index'); } catch (\InvalidArgumentException $e) { switch ($e->getMessage()) { case 'username_conflict': $form->username->addError($translator->trans("User with given username exists.")); break; default: $form->image->addError($e->getMessage()); break; } } } $this->view->user = new MetaUser($this->user); $this->view->form = $form; }
public function getUsername() { $this->__load(); return parent::getUsername(); }
/** * Save pending user * * @param array $data * @param Newscoop\Entity\User $user * * @return void */ public function savePending($data, User $user) { if (!$user->isPending()) { throw new \InvalidArgumentException("User '{$user->getUsername()}' is not pending user."); } $user->setActive(); $user->setPublic(true); $this->save($data, $user); return $this; }