Example #1
0
 public async Task DeleteAsync()
 {
     try
     {
         await _user.DeleteAsync().ConfigureAwait(false);
     }
     catch (FirebaseException e)
     {
         throw ExceptionMapper.Map(e);
     }
 }
Example #2
0
    /// <summary>
    /// Deletes the logged in user from the firebase user list
    /// </summary>
    /// <returns><c>true</c>, if firebase user was deleted, <c>false</c> otherwise.</returns>
    public static void FirebaseDeleteUser(FirebaseUser requestedUser = null)
    {
        if (requestedUser == null)
        {
            requestedUser = activeUser;
        }

        if (requestedUser != null)
        {
            ProjectManager.Log("[Firebase User Delete] " + requestedUser.DisplayName);

            requestedUser.DeleteAsync().ContinueWith(task => {
                if (task.IsCanceled)
                {
                    Analytics.LogError("Firebase User Delete", "Delete user canceled!");
                    return;
                }

                if (task.IsFaulted)
                {
                    // Firebase for Unity is pretty undocumented for doing more than simply adding the plugins into projects..
                    // Error handling doesn't seem great either, as of building this there's no error enum or error codes
                    // So we just have strings to work with if we want to do actions on specific errors happening
                    foreach (Exception e in task.Exception.InnerExceptions)
                    {
                        Analytics.LogError("Firebase User Delete", e.Message);                                 // This string only includes the firebase error, no information about the exception type

                        OnUserDeleteFailed(ConvertToAuthError(e.Message));
                    }
                    return;
                }

                if (task.IsCompleted)
                {
                    // Firebase account successfully deleted
                    staticRef.OnLogout();

                    OnUserDeleteSuccessful();
                }
            });
        }
        else
        {
            Analytics.LogError("Firebase User Delete", "User was null!");
        }
    }
Example #3
0
 public void LogOut()
 {
     //firebase shit
     SignOut();
     user.DeleteAsync();
     if (isStudent)
     {
         studentPage.DOAnchorPos(new Vector2(0, -720), 0.25f);
         loginPage.DOAnchorPos(new Vector2(0, 0), 0.25f);
     }
     else if (!isStudent)
     {
         instructorsPage.DOAnchorPos(new Vector2(0, -720), 0.25f);
         loginPage.DOAnchorPos(new Vector2(0, 0), 0.25f);
         classKeyHolder.enabled = false;
         classKey.text          = "";
         classKey.enabled       = false;
     }
 }
Example #4
0
    void OnDestroy()
    {
        if (user != null)
        {
            user.DeleteAsync().ContinueWith(task =>
            {
                if (task.IsCanceled)
                {
                    Debug.LogError("DeleteAsync was canceled.");
                    return;
                }
                if (task.IsFaulted)
                {
                    Debug.LogError("DeleteAsync encountered an error: " + task.Exception);
                    return;
                }

                Debug.Log("User deleted successfully.");
            });
        }
    }
 public Task DeleteAsync()
 {
     return(_wrapped.DeleteAsync());
 }
Example #6
0
 public static void deleteProfile(string id)
 {
     FirebaseDatabase.DefaultInstance.RootReference.Child("users").Child(id).RemoveValueAsync();
     user.DeleteAsync();
 }