Ejemplo n.º 1
0
        public override void HandleAuthResponse(RewrittenAccount account)
        {
            var result = account.LoginResult;
            var status = result.Success;

            if (status == "true")
            {
                account.LoggedIn = true;
                return;
            }

            if (status == "false")
            {
                return;
            }

            if (status == "partial")
            {
                result.AuthToken = result.Banner.Contains("ToonGuard") ? "ToonGuard" : "Two-Step Token";
                AccountsToTwoStepAuth.Add(account);
                return;
            }

            GetAuthResponseAfterPartial(account);
        }
Ejemplo n.º 2
0
 public override void HandleAuthResponse(ClashAccount account)
 {
     if (account.LoginResult.Status)
     {
         account.LoggedIn = true;
     }
     else if (account.LoginResult.Toonstep)
     {
         AccountsToTwoStepAuth.Add(account);
     }
     else if (account.LoginResult.BadToken)
     {
         account.Authorized = false;
         account.LoginToken = null;
     }
 }
Ejemplo n.º 3
0
        private async Task RequestLoginAfterTwoStep()
        {
            var tasks = new List <Task>();

            foreach (var account in AccountsToTwoStepAuth.ToArray())
            {
                string authToken = account.LoginResult.AuthToken;
                if (NoTwoStepTokenGiven(authToken))
                {
                    continue;
                }
                AccountsToTwoStepAuth.Remove(account);
                tasks.Add(Task.Run(() => GetAuthResponseAfterPartial(account)));
            }
            await Task.WhenAll(tasks);
        }
Ejemplo n.º 4
0
        #pragma warning disable 1998
        public override async Task HandleTwoStep()
        {
            var sb = new StringBuilder();

            if (AccountsToTwoStepAuth.Count == 0)
            {
                return;
            }

            foreach (var account in AccountsToTwoStepAuth)
            {
                sb.AppendLine(account.Toon);
            }

            MessageBox.Show("Some toons require Toonstep:\n\n" + sb, "Toonstep", MessageBoxButtons.OK, MessageBoxIcon.Information);
            AccountsToTwoStepAuth.Clear();
        }