$template = 'register-user'; } $renderer = TemplateRendererFactory::build()->getRenderer(ForgeConfig::get('codendi_dir') . '/src/templates/account/'); $renderer->renderToPage($template, $presenter); } // ###### first check for valid login, if so, congratulate $request =& HTTPRequest::instance(); $hp =& Codendi_HTMLPurifier::instance(); $errors = array(); if ($request->isPost() && $request->exist('Register')) { $page = $request->get('page'); $displayed_image = true; $image_url = ''; $email_presenter = ''; $mail_confirm_code_generator = new MailConfirmationCodeGenerator(UserManager::instance(), new RandomNumberGenerator()); $mail_confirm_code = $mail_confirm_code_generator->getConfirmationCode(); $logo_retriever = new LogoRetriever(); if ($new_userid = register_valid($mail_confirm_code, $errors)) { $confirmation_register = true; $user_name = user_getname($new_userid); $content = ''; $admin_creation = false; if ($page == 'admin_creation') { $admin_creation = true; if ($request->get('form_send_email')) { //send an email to the user with th login and password $from = $GLOBALS['sys_noreply']; $to = $request->get('form_email'); $login = $hp->purify($request->get('form_loginname')); $password = $hp->purify($request->get('form_pw')); if (!send_admin_new_user_email($to, $login, $password)) {
/** * Create user account based on LDAP info. * * @param String $eduid * @param String $uid * @param String $cn * @param String $email * @return PFUser */ function createAccount($eduid, $uid, $cn, $email) { if (trim($uid) == '' || trim($eduid) == '') { return false; } $user = new PFUser(); $user->setUserName($this->generateLogin($uid)); $user->setLdapId($eduid); $user->setRealName($cn); $user->setEmail($email); $mail_confirm_code_generator = new MailConfirmationCodeGenerator($this->getUserManager(), new RandomNumberGenerator()); $mail_confirm_code = $mail_confirm_code_generator->getConfirmationCode(); $user->setConfirmHash($mail_confirm_code); // Default LDAP $user->setStatus($this->getLdap()->getLDAPParam('default_user_status')); $user->setRegisterPurpose('LDAP'); $user->setUnixStatus('S'); $user->setTimezone('GMT'); $user->setLanguageID($GLOBALS['Language']->getText('conf', 'language_id')); $um = $this->getUserManager(); $u = $um->createAccount($user); if ($u) { $u = $um->getUserById($user->getId()); // Create an entry in the ldap user db $ldapUserDao = $this->getDao(); $ldapUserDao->createLdapUser($u->getId(), 0, $uid); return $u; } return false; }