Admin_Form_User::setDefaultsFromEntity PHP Method

setDefaultsFromEntity() public method

Set form defaults
public setDefaultsFromEntity ( User $user ) : Admin_Form_User
$user Newscoop\Entity\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));
    }

Usage Example

Example #1
0
 /**
  * Set staff groups
  *
  * @param Newscoop\Entity\User\Staff $staff
  * @return void
  */
 public function setDefaultsFromEntity(Staff $staff)
 {
     parent::setDefaultsFromEntity($staff);
     if (!$this->isAdmin) {
         return;
     }
     $groups = array();
     foreach ($staff->getGroups() as $group) {
         $groups[] = $group->getId();
     }
     $this->setDefaults(array('groups' => $groups));
     $this->getElement('groups')->setOrder(31);
     // $this->getElement('password_confirm')->getOrder() + 1
 }
All Usage Examples Of Admin_Form_User::setDefaultsFromEntity