protected override Account DoCreateAccount(WebContext context) { if (Config.instance.IsMigrationEnabled) { try { Account tmpAccount = Account.LoadByName(context.httprequest.Form["login"]); if (tmpAccount.needsMigration) { throw new RedirectException("/My/Login/MigrateAccount/" + context.httprequest.Form["login"]); } } catch (NotFoundInDBException) { } } Invite invite = Invite.LoadById(int.Parse(context.httprequest.Form["inviteId"])); if (invite.isUsed) { throw new FLocalException("Invite is already used"); } if (context.httprequest.Form["password"] != context.httprequest.Form["password2"]) { throw new FLocalException("Passwords mismatch"); } return(invite.createAccount(context.httprequest.Form["code"], context.httprequest.Form["login"], context.httprequest.Form["password"], context.httprequest.UserHostAddress, context.httprequest.Form["registrationEmail"])); }