public override void onRequestFinish(MegaSDK api, MRequest request, MError e) { base.onRequestFinish(api, request, e); if (Tcs.Task.IsFaulted) { return; } if (request.getType() == MRequestType.TYPE_QUERY_RECOVERY_LINK) { switch (e.getErrorCode()) { case MErrorType.API_OK: // Successfull change email link query this.Email = request.getEmail(); Tcs?.TrySetResult(QueryChangeEmailLinkResult.Success); return; case MErrorType.API_ENOENT: // Invalid link Tcs?.TrySetResult(QueryChangeEmailLinkResult.InvalidLink); return; case MErrorType.API_EACCESS: // No user is logged in Tcs?.TrySetResult(QueryChangeEmailLinkResult.UserNotLoggedIn); return; default: // Unknown result, but not successful Tcs?.TrySetResult(QueryChangeEmailLinkResult.Unknown); return; } } }
protected override void OnSuccesAction(MegaSDK api, MRequest request) { if (Convert.ToBoolean(api.isLoggedIn())) { api.logout(new LogOutRequestListener(false)); } App.AppInformation.IsNewlyActivatedAccount = true; api.login(request.getEmail(), request.getPassword(), new LoginRequestListener(new LoginViewModel(api))); }
public override void onRequestFinish(MegaSDK api, MRequest request, MError e) { base.onRequestFinish(api, request, e); if (Tcs.Task.IsFaulted) { return; } if (request.getType() == MRequestType.TYPE_QUERY_SIGNUP_LINK) { switch (e.getErrorCode()) { case MErrorType.API_OK: // Valid and operative confirmation link. this.EmailAddress = request.getEmail(); Tcs?.TrySetResult(request.getFlag() ? SignUpLinkType.AutoConfirmed : SignUpLinkType.Valid); break; case MErrorType.API_EEXPIRED: // Expired confirmation link. Tcs?.TrySetResult(SignUpLinkType.Expired); break; case MErrorType.API_ENOENT: // Already confirmed account Tcs?.TrySetResult(SignUpLinkType.AlreadyConfirmed); break; case MErrorType.API_EINCOMPLETE: // Incomplete confirmation link Tcs?.TrySetResult(SignUpLinkType.Invalid); break; default: // Default error processing Tcs?.TrySetResult(SignUpLinkType.Unknown); break; } } }
public override void onRequestFinish(MegaSDK api, MRequest request, MError e) { base.onRequestFinish(api, request, e); if (Tcs.Task.IsFaulted) { return; } if (request.getType() == MRequestType.TYPE_CONFIRM_RECOVERY_LINK) { switch (e.getErrorCode()) { case MErrorType.API_OK: // Successful reset this.EmailAddress = request.getEmail(); Tcs?.TrySetResult(true); return; default: // failed reset Tcs?.TrySetResult(false); return; } } }
public override void onRequestFinish(MegaSDK api, MRequest request, MError e) { Deployment.Current.Dispatcher.BeginInvoke(() => { ProgressService.ChangeProgressBarBackgroundColor((Color)Application.Current.Resources["PhoneChromeColor"]); ProgressService.SetProgressIndicator(false); this._confirmAccountViewModel.ControlState = true; if (request.getType() == MRequestType.TYPE_QUERY_SIGNUP_LINK) { switch (e.getErrorCode()) { case MErrorType.API_OK: // Valid and operative confirmation link if (request.getFlag()) // Auto confirmed account. { ShowErrorMesageAndNavigate(AppMessages.AlreadyConfirmedAccount_Title, AppMessages.AlreadyConfirmedAccount); break; } this._confirmAccountViewModel.Email = request.getEmail(); break; case MErrorType.API_ENOENT: // Already confirmed account ShowErrorMesageAndNavigate(AppMessages.AlreadyConfirmedAccount_Title, AppMessages.AlreadyConfirmedAccount); break; case MErrorType.API_EINCOMPLETE: // Incomplete confirmation link ShowErrorMesageAndNavigate(AppMessages.ConfirmAccountFailed_Title, AppMessages.AM_IncompleteConfirmationLink); break; case MErrorType.API_EGOINGOVERQUOTA: // Not enough quota case MErrorType.API_EOVERQUOTA: // Storage overquota error base.onRequestFinish(api, request, e); break; default: // Other error ShowDefaultErrorMessage(e); break; } } else if (request.getType() == MRequestType.TYPE_CONFIRM_ACCOUNT) { switch (e.getErrorCode()) { case MErrorType.API_OK: // Successfull confirmation process var customMessageDialog = new CustomMessageDialog( SuccessMessageTitle, SuccessMessage, App.AppInformation, MessageDialogButtons.Ok); customMessageDialog.OkOrYesButtonTapped += (sender, args) => OnSuccesAction(api, request); customMessageDialog.ShowDialog(); break; case MErrorType.API_ENOENT: // Wrong password case MErrorType.API_EKEY: // Wrong password new CustomMessageDialog( AppMessages.WrongPassword_Title, AppMessages.WrongPassword, App.AppInformation, MessageDialogButtons.Ok).ShowDialog(); break; case MErrorType.API_EGOINGOVERQUOTA: // Not enough quota case MErrorType.API_EOVERQUOTA: // Storage overquota error base.onRequestFinish(api, request, e); break; default: // Other error ShowDefaultErrorMessage(e); break; } } }); }
public override void onRequestFinish(MegaSDK api, MRequest request, MError e) { Deployment.Current.Dispatcher.BeginInvoke(() => { ProgressService.ChangeProgressBarBackgroundColor((Color)Application.Current.Resources["PhoneChromeColor"]); ProgressService.SetProgressIndicator(false); _createAccountViewModel.ControlState = true; _loginPage.SetApplicationBar(true); }); if (request.getType() == MRequestType.TYPE_QUERY_SIGNUP_LINK) { switch (e.getErrorCode()) { case MErrorType.API_OK: // Valid and operative #newsignup link Deployment.Current.Dispatcher.BeginInvoke(() => { _createAccountViewModel.Email = request.getEmail(); if (!String.IsNullOrWhiteSpace(_createAccountViewModel.Email)) { this._loginPage.txtEmail_CreateAccount.IsReadOnly = true; } }); break; case MErrorType.API_EARGS: // Invalid #newsignup link Deployment.Current.Dispatcher.BeginInvoke(() => { new CustomMessageDialog( AppMessages.AM_InvalidLink, AppMessages.AM_NewSignUpInvalidLink, App.AppInformation, MessageDialogButtons.Ok).ShowDialog(); }); break; default: // Default error processing base.onRequestFinish(api, request, e); break; } } if (request.getType() == MRequestType.TYPE_CREATE_ACCOUNT) { switch (e.getErrorCode()) { case MErrorType.API_OK: // Successfull create account process base.onRequestFinish(api, request, e); break; case MErrorType.API_EEXIST: // Email already registered Deployment.Current.Dispatcher.BeginInvoke(() => { new CustomMessageDialog( ErrorMessageTitle, AppMessages.AM_EmailAlreadyRegistered, App.AppInformation, MessageDialogButtons.Ok).ShowDialog(); }); break; default: // Default error processing base.onRequestFinish(api, request, e); break; } } }
public override void onRequestStart(MegaSDK api, MRequest request) { inviteActionType = (MContactRequestInviteActionType)request.getNumber(); contactEmail = request.getEmail(); base.onRequestStart(api, request); }