public function exportUser(PFUser $user, SimpleXMLElement $members_node, $child_name) { if ($user->getLdapId()) { $member_node = $members_node->addChild($child_name, $user->getLdapId()); $member_node->addAttribute('format', 'ldap'); } else { $member_node = $members_node->addChild($child_name, $user->getUserName()); $member_node->addAttribute('format', 'username'); } }
/** * Get LDAPResult object corresponding to a User object * * @param PFUser $user * @return LDAPResult */ function getLdapFromUser($user) { if ($user && !$user->isAnonymous()) { return $this->getLdapFromLdapId($user->getLdapId()); } else { return false; } }
/** * Create new account * * @param PFUser $user * * @return PFUser */ function createAccount($user) { $dao = $this->getDao(); $user_id = $dao->create($user->getUserName(), $user->getEmail(), $user->getPassword(), $user->getRealName(), $user->getRegisterPurpose(), $user->getStatus(), $user->getShell(), $user->getUnixStatus(), $user->getUnixUid(), $user->getUnixBox(), $user->getLdapId(), $_SERVER['REQUEST_TIME'], $user->getConfirmHash(), $user->getMailSiteUpdates(), $user->getMailVA(), $user->getStickyLogin(), $user->getAuthorizedKeys(), $user->getNewMail(), $user->getTimeZone(), $user->getTheme(), $user->getLanguageID(), $user->getExpiryDate(), $_SERVER['REQUEST_TIME']); if (!$user_id) { $GLOBALS['Response']->addFeedback('error', $GLOBALS['Language']->getText('include_exit', 'error')); return 0; } else { $user->setId($user_id); $this->assignNextUnixUid($user); $em = $this->_getEventManager(); $em->processEvent(Event::USER_MANAGER_CREATE_ACCOUNT, array('user' => $user)); // Create the first layout for the user and add some initial widgets $lm = $this->_getWidgetLayoutManager(); $lm->createDefaultLayoutForUser($user_id); switch ($user->getStatus()) { case PFUser::STATUS_PENDING: if (ForgeConfig::get('sys_user_approval')) { $this->pending_user_notifier->notifyAdministrator($user); } break; case PFUser::STATUS_ACTIVE: case PFUser::STATUS_RESTRICTED: $em->processEvent('project_admin_activate_user', array('user_id' => $user_id)); break; } return $user; } }