load login page after registration completed

This commit is contained in:
Kyle Spearrin 2016-08-06 11:57:05 -04:00
parent 2d6407f9a0
commit 7de33d1c60
3 changed files with 22 additions and 8 deletions

View file

@ -89,7 +89,14 @@ namespace Bit.App.Pages
public async Task RegisterAsync()
{
await Navigation.PushModalAsync(new ExtendedNavigationPage(new RegisterPage()));
await Navigation.PushModalAsync(new ExtendedNavigationPage(new RegisterPage(this)));
}
public async Task DismissRegisterAndLoginAsync(string email)
{
await Navigation.PopModalAsync();
await Navigation.PushModalAsync(new ExtendedNavigationPage(new LoginPage(email)));
_userDialogs.Toast("Your new account has been created! You may now log in.");
}
}
}

View file

@ -23,9 +23,11 @@ namespace Bit.App.Pages
private ISyncService _syncService;
private ISettings _settings;
private IGoogleAnalyticsService _googleAnalyticsService;
private readonly string _email;
public LoginPage()
public LoginPage(string email = null)
{
_email = email;
_cryptoService = Resolver.Resolve<ICryptoService>();
_authService = Resolver.Resolve<IAuthService>();
_deviceInfo = Resolver.Resolve<IDeviceInfo>();
@ -54,7 +56,11 @@ namespace Bit.App.Pages
containerPadding: padding);
var lastLoginEmail = _settings.GetValueOrDefault<string>(Constants.LastLoginEmail);
if(!string.IsNullOrWhiteSpace(lastLoginEmail))
if(!string.IsNullOrWhiteSpace(_email))
{
EmailCell.Entry.Text = _email;
}
else if(!string.IsNullOrWhiteSpace(lastLoginEmail))
{
EmailCell.Entry.Text = lastLoginEmail;
}

View file

@ -17,9 +17,11 @@ namespace Bit.App.Pages
private IUserDialogs _userDialogs;
private IAccountsApiRepository _accountsApiRepository;
private IGoogleAnalyticsService _googleAnalyticsService;
private HomePage _homePage;
public RegisterPage()
public RegisterPage(HomePage homePage)
{
_homePage = homePage;
_cryptoService = Resolver.Resolve<ICryptoService>();
_userDialogs = Resolver.Resolve<IUserDialogs>();
_accountsApiRepository = Resolver.Resolve<IAccountsApiRepository>();
@ -148,14 +150,14 @@ namespace Bit.App.Pages
{
if(string.IsNullOrWhiteSpace(EmailCell.Entry.Text))
{
await DisplayAlert(AppResources.AnErrorHasOccurred,
await DisplayAlert(AppResources.AnErrorHasOccurred,
string.Format(AppResources.ValidationFieldRequired, AppResources.EmailAddress), AppResources.Ok);
return;
}
if(string.IsNullOrWhiteSpace(PasswordCell.Entry.Text))
{
await DisplayAlert(AppResources.AnErrorHasOccurred,
await DisplayAlert(AppResources.AnErrorHasOccurred,
string.Format(AppResources.ValidationFieldRequired, "Your Name"), AppResources.Ok);
return;
}
@ -184,9 +186,8 @@ namespace Bit.App.Pages
return;
}
_userDialogs.Toast("Your new account has been created! You may now log in.");
_googleAnalyticsService.TrackAppEvent("Registered");
await Navigation.PopModalAsync();
await _homePage.DismissRegisterAndLoginAsync(EmailCell.Entry.Text);
}
private class FormTableView : ExtendedTableView