tryCreateAccount static method
Try to create an account using a verification code. Returns the UserInfo object if successful, null otherwise.
Implementation
static Future<UserInfo?> tryCreateAccount(
Session session, {
required String email,
required String verificationCode,
}) async {
var request = await Emails.findAccountRequest(session, email);
if (request == null) {
return null;
}
if (request.verificationCode != verificationCode) {
return null;
}
// Email is verified, create a new user
var userInfo = await Emails.createUser(
session,
request.userName,
email,
null,
request.hash,
);
if (userInfo != null) {
await EmailCreateAccountRequest.db.deleteRow(session, request);
}
return userInfo;
}