/** * Executes edit action * * @param sfRequest $request A request object */ public function executeEdit(sfWebRequest $request) { // Get user profile from database $user = $this->getUser()->getGuardUser(); $profile = Doctrine_Core::getTable("SfGuardUserProfile")->findOneByUserId($user->getId()); $this->ldapAuthentication = sfConfig::get("app_authentication_method", "symfony") == "ldap" ? true : false; // If user has no profile, create a new one for him if (empty($profile)) { $profile = new sfGuardUserProfile(); $profile->setUserId($user->getId()); $profile->setToken(MiscUtils::generateToken()); $profile->setSecurityLevel(sfConfig::get("app_security_level_new_user", 0)); $profile->save(); } $this->form = new ProfileForm(array('first_name' => $user->getFirstName(), 'last_name' => $user->getLastName(), 'email' => $user->getEmailAddress())); $this->token = $profile->getToken(); $this->securityLevel = Labeler::getSecurityLevelLabel($profile->getSecurityLevel()); // Process form if ($request->isMethod("post")) { $this->processEdit($request, $this->form); } }