private async Task ValidSubmit() { var loginCancelEventArgs = new LoginCancelEventArgs(); await OnLoggingIn.InvokeAsync(loginCancelEventArgs); if (loginCancelEventArgs.Cancel) { Model.Password = string.Empty; } else { var authenticateEventArgs = new AuthenticateEventArgs(); await OnAuthenticate.InvokeAsync(authenticateEventArgs); if (authenticateEventArgs.Authenticated) { await OnLoggedIn.InvokeAsync(EventArgs.Empty); if (!string.IsNullOrEmpty(DestinationPageUrl)) { NavigationManager.NavigateTo(DestinationPageUrl); } ShowFailureText = false; } else { await OnLoginError.InvokeAsync(EventArgs.Empty); Model.Password = string.Empty; ShowFailureText = true; } } }
private void RaiseOnResponse(string message) { var rawMessage = message.Split(':'); var type = rawMessage[0]; if (type.Contains("error")) { OnLoginError?.Invoke(rawMessage[2]); return; } if (type.Contains("shutdown")) { OnLoginError?.Invoke(rawMessage[2]); return; } if (type.Contains("login")) { OnLogin?.Invoke(); return; } if (type.Contains("logout")) { DestroyRunTask(); OnLogout?.Invoke(); return; } if (type.Contains("message")) { OnMessage?.Invoke(rawMessage[2]); return; } if (type.Contains("members")) { OnMembers?.Invoke(rawMessage[2]); return; } }
private void OnLoginHandler(LoginManagerLoginResult result, NSError error) { if (error != null || result == null || result.IsCancelled) { if (result != null && result.IsCancelled) { OnLoginError?.Invoke(new Exception("Login Canceled.")); } if (error != null) { OnLoginError?.Invoke(new Exception(error.LocalizedDescription)); } } else { var request = new GraphRequest("me", new NSDictionary("fields", "id, first_name, email, last_name, picture.width(500).height(500)")); request.Start(OnRequestHandler); } }
public void Logout() { OnLoginError?.Invoke(new NotImplementedException()); }
public void OnError(FacebookException error) { OnLoginError?.Invoke(new System.Exception(error.LocalizedMessage)); }
public void OnCancel() { OnLoginError?.Invoke(new System.Exception("Login Canceled.")); }
private void OnRequestHandler(GraphRequestConnection connection, NSObject result, NSError error) { if (error != null || result == null) { OnLoginError?.Invoke(new Exception(error.LocalizedDescription)); } else { var id = string.Empty; var first_name = string.Empty; var email = string.Empty; var last_name = string.Empty; var url = string.Empty; try { id = result.ValueForKey(new NSString("id"))?.ToString(); } catch (Exception e) { Debug.WriteLine(e.Message); } try { first_name = result.ValueForKey(new NSString("first_name"))?.ToString(); } catch (Exception e) { Debug.WriteLine(e.Message); } try { email = result.ValueForKey(new NSString("email"))?.ToString(); } catch (Exception e) { Debug.WriteLine(e.Message); } try { last_name = result.ValueForKey(new NSString("last_name"))?.ToString(); } catch (Exception e) { Debug.WriteLine(e.Message); } try { url = ((result.ValueForKey(new NSString("picture")) as NSDictionary).ValueForKey(new NSString("data")) as NSDictionary).ValueForKey(new NSString("url")).ToString(); } catch (Exception e) { Debug.WriteLine(e.Message); } //Grab the user and send the success event User = new FacebookUser(id, AccessToken.CurrentAccessToken.TokenString, first_name, last_name, email, url); OnLoginSuccess?.Invoke(User); } }