register method

Future<void> register({
  1. UserLogin? login,
  2. UserPassword? password,
  3. UserName? name,
  4. UserEmail? email,
})

Creates a new one-time account right away.

Implementation

Future<void> register({
  UserLogin? login,
  UserPassword? password,
  UserName? name,
  UserEmail? email,
}) async {
  try {
    await _authService.register(
      password: password,
      login: login,
      force: true,
    );

    if (name != null) {
      await _myUserService.updateUserName(name);
    }

    if (email != null) {
      await _myUserService.addUserEmail(email);
    }
  } on SignUpException catch (e) {
    this.login.error.value = e.toMessage();
  } on ConnectionException {
    MessagePopup.error('err_data_transfer'.l10n);
  } catch (e) {
    MessagePopup.error(e);
    rethrow;
  }
}