From 944b87b6bcccb095cd73f13f4410fb20faf48f74 Mon Sep 17 00:00:00 2001
From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local>
Date: 星期三, 25 十二月 2019 11:21:06 +0800
Subject: [PATCH] 2019.12.25

---
 ZigbeeApp/Shared/Phone/Device/Account/AccountForgetPWD.cs |   75 ++++++++++++++++++++++++++++++-------
 1 files changed, 61 insertions(+), 14 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/Device/Account/AccountForgetPWD.cs b/ZigbeeApp/Shared/Phone/Device/Account/AccountForgetPWD.cs
old mode 100755
new mode 100644
index 60a77c2..c33eb4f
--- a/ZigbeeApp/Shared/Phone/Device/Account/AccountForgetPWD.cs
+++ b/ZigbeeApp/Shared/Phone/Device/Account/AccountForgetPWD.cs
@@ -61,6 +61,7 @@
         /// </summary>
         public AccountForgetPWD()
         {
+            CommonPage.Instance.IsDrawerLockMode = true;
             BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor;
             Tag = "Forgot";
         }
@@ -123,7 +124,7 @@
                 Width = Application.GetRealWidth(942),
                 Gravity = Gravity.CenterHorizontal,
                 BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor,
-                Radius = (uint)Application.GetRealHeight(30)
+                Radius = (uint)Application.GetRealHeight(17)
             };
             bodyFrameLayout.AddChidren(accountCodeFL);
 
@@ -171,6 +172,7 @@
         {
             phoneEmailForm.SelectedPhone.IsSelected = phoneEmailForm.SelectedEmail.IsSelected = false;
             resetBtn.Enable = resetBtn.IsSelected = false;
+            errorBtn.Text = string.Empty;
             (sender as Button).IsSelected = true;
             if ((sender as Button).Tag.ToString() == "Phone")
             {
@@ -190,7 +192,7 @@
         private void AddPhoneOrEmailFL(FrameLayout accountCodeFrameLayout, string phoneOrEmail)
         {
             accountCodeFrameLayout.RemoveAll();
-
+            account = string.Empty;
             if (phoneOrEmail == "Phone")
             {
                 phoneRow = new PhoneRowForm();
@@ -240,16 +242,17 @@
         /// <param name="mouseEventArgs">The ${ParameterType} instance containing the event data.</param>
         private void Account_TextChange(object sender, string mouseEventArgs)
         {
-            errorBtn.Text = "";
+            errorBtn.Text = string.Empty;
+            
             if ((sender as EditText).Text.Trim().Length > 0)
             {
                 codeRow.SendCodeBtn.Enable = codeRow.SendCodeBtn.IsSelected = true;
+                account = (sender as EditText).Text.Trim();
             }
             else
             {
                 codeRow.SendCodeBtn.Enable = codeRow.SendCodeBtn.IsSelected = false;
             }
-            account = (sender as EditText).Text.Trim();
         }
 
         /// <summary>
@@ -259,7 +262,7 @@
         /// <param name="mouseEventArgs">The ${ParameterType} instance containing the event data.</param>
         private void Code_TextChange(object sender, string mouseEventArgs)
         {
-            errorBtn.Text = "";
+            errorBtn.Text = string.Empty;
             if ((sender as EditText).Text.Trim().Length > 0)
             {
                 resetBtn.Enable = resetBtn.IsSelected = true;
@@ -280,6 +283,11 @@
         /// <param name="mouseEventArgs"></param>
         private async void SendCode_MouseUpEventAsync(object sender, MouseEventArgs mouseEventArgs)
         {
+            if (CheckAccount(account) == false)
+            {
+                return;
+            }
+
             (sender as Button).Enable = (sender as Button).IsSelected = false;
             CommonPage.Loading.Start();
             try
@@ -323,10 +331,10 @@
                     errorBtn.TextID = R.MyInternationalizationString.SENDFAIL;
                     (sender as Button).Enable = (sender as Button).IsSelected = true;
                 }
-                else if (stateCodeStr == "EXIST")
+                else if (stateCodeStr == "ACCOUNTNOEXISTS")
                 {
-                    //璐﹀彿瀛樺湪
-                    errorBtn.TextID = R.MyInternationalizationString.AccountHasBeenRegistered;
+                    //璐﹀彿涓嶅瓨鍦�
+                    errorBtn.TextID = R.MyInternationalizationString.ACCOUNTNOEXISTS;
                     (sender as Button).Enable = (sender as Button).IsSelected = true;
                 }
                 else
@@ -345,6 +353,35 @@
                 CommonPage.Loading.Hide();
             }
         }
+
+
+        /// <summary>
+        /// CheckAccount
+        /// </summary>
+        /// <param name="accountStr"></param>
+        /// <returns></returns>
+        private bool CheckAccount(string accountStr)
+        {
+            errorBtn.Text = string.Empty;
+            if (phoneEmailForm.SelectedEmail.IsSelected)
+            {
+                if (AccountLogic.Instance.CheckEmail(accountStr) == false)
+                {
+                    errorBtn.TextID = R.MyInternationalizationString.TheEmailError;
+                    return false;
+                }
+            }
+            else
+            {
+                if (AccountLogic.Instance.CheckPhoneWithZone(accountStr, CommonPage.PhoneZoneStr) == false)
+                {
+                    errorBtn.TextID = R.MyInternationalizationString.ThePhoneError;
+                    return false;
+                }
+            }
+            return true;
+        }
+
         #endregion
 
         #region 鈼� 纭淇敼__________________________
@@ -356,13 +393,23 @@
         /// <param name="mouseEventArgs"></param>
         private async void Reset(object sender,MouseEventArgs mouseEventArgs)
         {
+
+            if (CheckAccount(account) == false)
+            {
+                return;
+            }
             //鍏堝垽鏂�2娆″瘑鐮佽緭鍏ユ槸鍚︿竴鑷�
             if (pwdRow.PasswrodET.Text.Trim() != pwdComfireRow.PasswrodET.Text.Trim())
             {
-                var alert = new Alert(Language.StringByID(R.MyInternationalizationString.TIP), Language.StringByID(R.MyInternationalizationString.TwoPasswordInconsistency), Language.StringByID(R.MyInternationalizationString.Confrim));
-                alert.Show();
+                errorBtn.TextID = R.MyInternationalizationString.TwoPasswordInconsistency;
                 return;
             }
+            if (AccountLogic.Instance.CheckPwdLength(pwdRow.PasswrodET.Text.Trim()) == false)
+            {
+                errorBtn.TextID = R.MyInternationalizationString.ThePWDLengthError;
+                return;
+            }
+           
             CommonPage.Loading.Start();
             try
             {
@@ -406,24 +453,24 @@
                     }
                     else if (stateStr == "PARAMETEROREMPTY")
                     {
-                        //鎻愪緵鐨勫弬鏁伴敊璇�
                         errorBtn.TextID = R.MyInternationalizationString.PARAMETEROREMPTY;
                     }
                     else if (stateStr == "ACCOUNTNOEXISTS")
                     {
-                        //璐﹀彿涓嶅瓨鍦�
                         errorBtn.TextID = R.MyInternationalizationString.ACCOUNTNOEXISTS;
                     }
                     else if (stateStr == "FAIL")
                     {
-                        //鎿嶄綔澶辫触
                         errorBtn.TextID = R.MyInternationalizationString.FAIL;
+                    }
+                    else if(stateStr == "NEWPASSWORDANDOLDPASSWORDEQUAL")
+                    {
+                        errorBtn.TextID = R.MyInternationalizationString.NEWPASSWORDANDOLDPASSWORDEQUAL;
                     }
                     else
                     {
                         errorBtn.TextID = R.MyInternationalizationString.RequestServerFailed;
                     }
-
                 }
                 else if (stateCodeStr == "PARAMETEROREMPTY")
                 {

--
Gitblit v1.8.0