From 9f326f4000847e6167d8166fa2f6a66f53cb3734 Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期四, 17 十二月 2020 09:07:13 +0800 Subject: [PATCH] 新云端Ver1.3 --- ZigbeeApp/Shared/Phone/Login/AccountForgotPasswordForm.cs | 696 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 696 insertions(+), 0 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/Login/AccountForgotPasswordForm.cs b/ZigbeeApp/Shared/Phone/Login/AccountForgotPasswordForm.cs new file mode 100644 index 0000000..1ec99eb --- /dev/null +++ b/ZigbeeApp/Shared/Phone/Login/AccountForgotPasswordForm.cs @@ -0,0 +1,696 @@ +锘縰sing System; +using System.Collections.Generic; +using Shared.Common; + +namespace Shared.Phone.Login +{ + /// <summary> + /// 蹇樿瀵嗙爜鐣岄潰(娉�:姝ょ晫闈㈢壒娈�,闇�瑕侀伩寮�搴曞眰鐨勫鐞�) + /// </summary> + public class AccountForgotPasswordForm : EditorCommonForm + { + #region 鈻� 鍙橀噺澹版槑___________________________ + + /// <summary> + /// 1锛氭墜鏈哄彿 2:閭 + /// </summary> + private int SelectIndex = 1; + /// <summary> + /// 杈撳叆鐨勬墜鏈哄彿(闃叉浜屾鏇存敼) + /// </summary> + private string strInputPhone = string.Empty; + /// <summary> + /// 杈撳叆鐨勯偖绠�(闃叉浜屾鏇存敼) + /// </summary> + private string strInputEmail = string.Empty; + /// <summary> + /// 褰撳墠鐨勮緭鍏ユ帶浠� 0:鎵嬫満鍙锋垨鑰呴偖绠� 1:楠岃瘉鐮� 2:绗竴娆″瘑鐮� 3:绗簩娆″瘑鐮� + /// </summary> + private List<TextInputControl> ListNowInputControl = new List<TextInputControl> { null, null, null, null }; + /// <summary> + /// 閿欒鎻愮ず鎺т欢 + /// </summary> + private NormalViewControl btnErrorMsg = null; + /// <summary> + /// 閲嶇疆鎸夐挳 + /// </summary> + private BottomClickButton btnReset = null; + + #endregion + + #region 鈻� 鍒濆鍖朹____________________________ + + /// <summary> + /// 鐣岄潰鏄剧ず + /// </summary> + public void ShowForm() + { + CommonPage.Instance.IsDrawerLockMode = true; + this.Tag = "Forgot"; + + //鍒濆鍖栧ご閮ㄦ帶浠� + base.InitTopFrameLayout(); + //鍒濆鍖栦腑閮ㄦ帶浠� + base.InitBodyFrameLayout(); + base.SetTitleText(Language.StringByID(R.MyInternationalizationString.ForgotPWD)); + + //閲嶇疆鎸夐挳 + this.btnReset = new BottomClickButton(688); + btnReset.Y = Application.GetRealHeight(1290); + btnReset.TextID = R.MyInternationalizationString.ComfirmReset; + btnReset.oldBackgroundColor = UserCenterColor.Current.ClickButtonDefultColor; + bodyFrameLayout.AddChidren(btnReset); + btnReset.CanClick = false; + btnReset.ButtonClickEvent += (sender, e) => + { + //娉ㄥ唽鐢ㄦ埛 + this.ResetPassword(); + }; + + //鍑犱釜杈撳叆鎺т欢鐨勯泦鍚� + var listControl = new List<TextInputControl>(); + //鍒濆鍖栨墜鏈哄彿杈撳叆鎺т欢 + var framePhone = this.InitPhoneInputView(ref listControl); + //鍒濆鍖栭偖绠辫緭鍏ユ帶浠� + var frameEmail = this.InitEmailInputView(ref listControl); + + //閿欒鎻愮ずBtn + this.btnErrorMsg = new NormalViewControl(700, 58, true); + btnErrorMsg.X = Application.GetRealWidth(127); + btnErrorMsg.Y = Application.GetRealHeight(1060); + btnErrorMsg.TextColor = ZigbeeColor.Current.GXCTextRed; + btnErrorMsg.IsBold = true; + bodyFrameLayout.AddChidren(btnErrorMsg); + + //閭,鎵嬫満鍙风殑鍒囨崲鎺т欢 + var sitchControl = new Controls.PhoneEmailSelectControl(); + sitchControl.Y = Application.GetRealHeight(127); + bodyFrameLayout.AddChidren(sitchControl); + + sitchControl.SelectMenuEvent += (selectMenu) => + { + this.SelectIndex = selectMenu; + //鎵嬫満鍙� + if (this.SelectIndex == 1) + { + framePhone.Visible = true; + frameEmail.Visible = false; + //褰撳墠鐨勮緭鍏ユ帶浠� + ListNowInputControl[0] = listControl[0]; + ListNowInputControl[1] = listControl[1]; + ListNowInputControl[2] = listControl[2]; + ListNowInputControl[3] = listControl[3]; + } + //閭 + else if (this.SelectIndex == 2) + { + framePhone.Visible = false; + frameEmail.Visible = true; + //褰撳墠鐨勮緭鍏ユ帶浠� + ListNowInputControl[0] = listControl[4]; + ListNowInputControl[1] = listControl[5]; + ListNowInputControl[2] = listControl[6]; + ListNowInputControl[3] = listControl[7]; + } + //妫�娴嬫敞鍐屾寜閽殑鐘舵�� + this.CheckResetButtonStatu(); + }; + //鎵ц鍒濆鍖� + sitchControl.InitControl(ZigbeeColor.Current.GXCButtonBlackSelectedColor, 1); + } + + /// <summary> + /// 鍒濆鍖栨墜鏈哄彿杈撳叆鐨勭晫闈� + /// </summary> + /// <param name="listControl">鍑犱釜杈撳叆鎺т欢鐨勯泦鍚�</param> + /// <returns></returns> + private FrameLayout InitPhoneInputView(ref List<TextInputControl> listControl) + { + //鑳屾櫙妗� + var frameBack = new FrameLayout(); + frameBack.Y = Application.GetRealHeight(334); + frameBack.Height = Application.GetRealHeight(852); + frameBack.Width = Application.GetRealWidth(942); + frameBack.Gravity = Gravity.CenterHorizontal; + frameBack.BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor; + frameBack.Radius = (uint)Application.GetRealHeight(17); + bodyFrameLayout.AddChidren(frameBack); + + //鎵嬫満鍙疯鐨勫鍣� + var framePhone = new FrameLayout(); + framePhone.X = Application.GetRealWidth(29); + framePhone.Y = Application.GetRealHeight(29); + framePhone.Width = Application.GetRealWidth(884); + framePhone.Height = Application.GetRealHeight(138); + frameBack.AddChidren(framePhone); + //鍦板尯鐮� + var btnAreaCode = new NormalViewControl(160, 92, true); + btnAreaCode.Gravity = Gravity.CenterVertical; + btnAreaCode.TextColor = ZigbeeColor.Current.GXCPlaceHolderTextColor; + btnAreaCode.Text = $"+{CommonPage.PhoneZoneStr}"; + btnAreaCode.TextAlignment = TextAlignment.Center; + framePhone.AddChidren(btnAreaCode); + //鎵嬫満鍙疯緭鍏ユ + var txtPhone = new TextInputControl(600, 92, true); + txtPhone.X = Application.GetRealWidth(222); + txtPhone.Gravity = Gravity.CenterVertical; + txtPhone.PlaceholderText = Language.StringByID(R.MyInternationalizationString.PleaseInputPhoneNum); + txtPhone.PlaceholderTextColor = ZigbeeColor.Current.GXCPlaceHolderTextColor; + txtPhone.IsNumberKeyboardType = true; + framePhone.AddChidren(txtPhone); + listControl.Add(txtPhone); + //鎵嬫満鍙疯緭鍏ユ鐨勫簳绾� + var btnPhoneLine = new NormalViewControl(framePhone.Width, HdlControlResourse.BottomLineHeight, false); + btnPhoneLine.BackgroundColor = UserCenterColor.Current.ButtomLine; + btnPhoneLine.Y = framePhone.Height - HdlControlResourse.BottomLineHeight; + framePhone.AddChidren(btnPhoneLine); + //鑱斿姩搴曠嚎 + txtPhone.btnLine = btnPhoneLine; + + //楠岃瘉鐮佺殑瀹瑰櫒 + var frameCode = new FrameLayout(); + frameCode.X = Application.GetRealWidth(29); + frameCode.Y = Application.GetRealHeight(196); + frameCode.Width = framePhone.Width; + frameCode.Height = framePhone.Height; + frameBack.AddChidren(frameCode); + //楠岃瘉鐮佽緭鍏ユ + var txtCode = new TextInputControl(536, 92, true); + txtCode.X = Application.GetRealWidth(29); + txtCode.Gravity = Gravity.CenterVertical; + txtCode.PlaceholderText = Language.StringByID(R.MyInternationalizationString.PleaseInputVerificationCode); + txtCode.PlaceholderTextColor = ZigbeeColor.Current.GXCPlaceHolderTextColor; + frameCode.AddChidren(txtCode); + listControl.Add(txtCode); + //鑾峰彇楠岃瘉鐮� + var btnSendCode = new NormalViewControl(300, 127, true); + btnSendCode.X = frameCode.Width - Application.GetRealWidth(300); + btnSendCode.Gravity = Gravity.CenterVertical; + btnSendCode.TextID = R.MyInternationalizationString.SendVerificationCode; + btnSendCode.TextColor = ZigbeeColor.Current.GXCTextWhiteColor; + btnSendCode.TextAlignment = TextAlignment.Center; + btnSendCode.BackgroundColor = 0xFFFEBCA9; + btnSendCode.CanClick = false; + btnSendCode.Radius = (uint)Application.GetRealHeight(12); + btnSendCode.IsBold = true; + frameCode.AddChidren(btnSendCode); + btnSendCode.ButtonClickEvent += (sender, e) => + { + //鍙戦�侀獙璇佺爜 + this.SendVerificationCode(btnSendCode); + }; + //鑾峰彇楠岃瘉鐮佺殑搴曠嚎 + var btnCodeLine = new NormalViewControl(Application.GetRealWidth(536), HdlControlResourse.BottomLineHeight, false); + btnCodeLine.BackgroundColor = UserCenterColor.Current.ButtomLine; + btnCodeLine.Y = frameCode.Height - HdlControlResourse.BottomLineHeight; + frameCode.AddChidren(btnCodeLine); + //鑱斿姩搴曠嚎 + txtCode.btnLine = btnCodeLine; + + //绗竴娆″瘑鐮佺殑瀹瑰櫒 + var framePswOne = new FrameLayout(); + framePswOne.X = Application.GetRealWidth(29); + framePswOne.Y = Application.GetRealHeight(363); + framePswOne.Width = framePhone.Width; + framePswOne.Height = framePhone.Height; + frameBack.AddChidren(framePswOne); + //绗竴娆″瘑鐮佺殑杈撳叆妗� + var txtPswOne = new TextInputControl(700, 92, true); + txtPswOne.X = Application.GetRealWidth(29); + txtPswOne.Gravity = Gravity.CenterVertical; + txtPswOne.PlaceholderText = Language.StringByID(R.MyInternationalizationString.PleaseInputPWD); + txtPswOne.PlaceholderTextColor = ZigbeeColor.Current.GXCPlaceHolderTextColor; + txtPswOne.SecureTextEntry = true; + framePswOne.AddChidren(txtPswOne); + listControl.Add(txtPswOne); + //绗竴娆″瘑鐮佸彲瑙嗗浘鏍� + var btnPswOneHiden = new IconViewControl(92); + btnPswOneHiden.X = Application.GetRealWidth(775); + btnPswOneHiden.Gravity = Gravity.CenterVertical; + btnPswOneHiden.SelectedImagePath = "Account/HidePwd.png"; + btnPswOneHiden.UnSelectedImagePath = "Account/UnhidePwd.png"; + btnPswOneHiden.IsSelected = true; + framePswOne.AddChidren(btnPswOneHiden); + btnPswOneHiden.ButtonClickEvent += (sender, e) => + { + btnPswOneHiden.IsSelected = !btnPswOneHiden.IsSelected; + txtPswOne.SecureTextEntry = btnPswOneHiden.IsSelected; + }; + //绗竴娆″瘑鐮佽緭鍏ユ鐨勫簳绾� + var btnPswOneLine = new NormalViewControl(framePswOne.Width, HdlControlResourse.BottomLineHeight, false); + btnPswOneLine.BackgroundColor = UserCenterColor.Current.ButtomLine; + btnPswOneLine.Y = framePswOne.Height - HdlControlResourse.BottomLineHeight; + framePswOne.AddChidren(btnPswOneLine); + //鑱斿姩搴曠嚎 + txtPswOne.btnLine = btnPswOneLine; + + //绗簩娆″瘑鐮佺殑瀹瑰櫒 + var framePswTwo = new FrameLayout(); + framePswTwo.X = Application.GetRealWidth(29); + framePswTwo.Y = Application.GetRealHeight(530); + framePswTwo.Width = framePhone.Width; + framePswTwo.Height = framePhone.Height; + frameBack.AddChidren(framePswTwo); + //绗簩娆″瘑鐮佺殑杈撳叆妗� + var txtPswTwo = new TextInputControl(700, 92, true); + txtPswTwo.X = Application.GetRealWidth(29); + txtPswTwo.Gravity = Gravity.CenterVertical; + txtPswTwo.PlaceholderText = Language.StringByID(R.MyInternationalizationString.PleaseInputPWD); + txtPswTwo.PlaceholderTextColor = ZigbeeColor.Current.GXCPlaceHolderTextColor; + txtPswTwo.SecureTextEntry = true; + framePswTwo.AddChidren(txtPswTwo); + listControl.Add(txtPswTwo); + //绗簩娆″瘑鐮佸彲瑙嗗浘鏍� + var btnPswTwoHiden = new IconViewControl(92); + btnPswTwoHiden.X = Application.GetRealWidth(775); + btnPswTwoHiden.Gravity = Gravity.CenterVertical; + btnPswTwoHiden.SelectedImagePath = "Account/HidePwd.png"; + btnPswTwoHiden.UnSelectedImagePath = "Account/UnhidePwd.png"; + btnPswTwoHiden.IsSelected = true; + framePswTwo.AddChidren(btnPswTwoHiden); + btnPswTwoHiden.ButtonClickEvent += (sender, e) => + { + btnPswTwoHiden.IsSelected = !btnPswTwoHiden.IsSelected; + txtPswTwo.SecureTextEntry = btnPswTwoHiden.IsSelected; + }; + //绗簩娆″瘑鐮佽緭鍏ユ鐨勫簳绾� + var btnPswTwoLine = new NormalViewControl(framePswTwo.Width, HdlControlResourse.BottomLineHeight, false); + btnPswTwoLine.BackgroundColor = UserCenterColor.Current.ButtomLine; + btnPswTwoLine.Y = framePswTwo.Height - HdlControlResourse.BottomLineHeight; + framePswTwo.AddChidren(btnPswTwoLine); + //鑱斿姩搴曠嚎 + txtPswTwo.btnLine = btnPswTwoLine; + + //楠岃瘉鐮佽緭鍏ュ彉鏇存椂 + txtCode.TextChangeEventHandler += (sender, value) => + { + //妫�娴嬫敞鍐屾寜閽殑鐘舵�� + this.CheckResetButtonStatu(); + }; + //瀵嗙爜杈撳叆鍙樻洿鏃� + txtPswOne.TextChangeEventHandler += (sender, value) => + { + //妫�娴嬫敞鍐屾寜閽殑鐘舵�� + this.CheckResetButtonStatu(); + }; + txtPswTwo.TextChangeEventHandler += (sender, value) => + { + //妫�娴嬫敞鍐屾寜閽殑鐘舵�� + this.CheckResetButtonStatu(); + }; + //鎵嬫満鍙疯緭鍏ュ彉鏇存椂 + txtPhone.TextChangeEventHandler += (sender, value) => + { + this.btnErrorMsg.Text = string.Empty; + if (txtPhone.Text.Trim() != string.Empty) + { + if (btnSendCode.CanClick == false) + { + btnSendCode.CanClick = true; + btnSendCode.BackgroundColor = 0xFFFC744B; + } + } + else + { + btnSendCode.CanClick = false; + btnSendCode.BackgroundColor = 0xFFFEBCA9; + } + }; + + return frameBack; + } + + /// <summary> + /// 鍒濆鍖栭偖绠辫緭鍏ョ殑鐣岄潰 + /// </summary> + /// <param name="listControl">鍑犱釜杈撳叆鎺т欢鐨勯泦鍚�</param> + /// <returns></returns> + private FrameLayout InitEmailInputView(ref List<TextInputControl> listControl) + { + //鑳屾櫙妗� + var frameBack = new FrameLayout(); + frameBack.Y = Application.GetRealHeight(334); + frameBack.Height = Application.GetRealHeight(852); + frameBack.Width = Application.GetRealWidth(942); + frameBack.Gravity = Gravity.CenterHorizontal; + frameBack.BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor; + frameBack.Radius = (uint)Application.GetRealHeight(17); + bodyFrameLayout.AddChidren(frameBack); + + //閭琛岀殑瀹瑰櫒 + var frameEmail = new FrameLayout(); + frameEmail.X = Application.GetRealWidth(29); + frameEmail.Y = Application.GetRealHeight(29); + frameEmail.Width = Application.GetRealWidth(884); + frameEmail.Height = Application.GetRealHeight(138); + frameBack.AddChidren(frameEmail); + //閭杈撳叆妗� + var txtEmail = new TextInputControl(700, 92, true); + txtEmail.X = Application.GetRealWidth(29); + txtEmail.Gravity = Gravity.CenterVertical; + txtEmail.PlaceholderText = Language.StringByID(R.MyInternationalizationString.PleaseInputEmail); + txtEmail.PlaceholderTextColor = ZigbeeColor.Current.GXCPlaceHolderTextColor; + frameEmail.AddChidren(txtEmail); + listControl.Add(txtEmail); + //閭杈撳叆妗嗙殑搴曠嚎 + var btnEmailLine = new NormalViewControl(frameEmail.Width, HdlControlResourse.BottomLineHeight, false); + btnEmailLine.BackgroundColor = UserCenterColor.Current.ButtomLine; + btnEmailLine.Y = frameEmail.Height - HdlControlResourse.BottomLineHeight; + frameEmail.AddChidren(btnEmailLine); + //鑱斿姩搴曠嚎 + txtEmail.btnLine = btnEmailLine; + + //楠岃瘉鐮佺殑瀹瑰櫒 + var frameCode = new FrameLayout(); + frameCode.X = Application.GetRealWidth(29); + frameCode.Y = Application.GetRealHeight(196); + frameCode.Width = frameEmail.Width; + frameCode.Height = frameEmail.Height; + frameBack.AddChidren(frameCode); + //楠岃瘉鐮佽緭鍏ユ + var txtCode = new TextInputControl(536, 92, true); + txtCode.X = Application.GetRealWidth(29); + txtCode.Gravity = Gravity.CenterVertical; + txtCode.PlaceholderText = Language.StringByID(R.MyInternationalizationString.PleaseInputVerificationCode); + txtCode.PlaceholderTextColor = ZigbeeColor.Current.GXCPlaceHolderTextColor; + frameCode.AddChidren(txtCode); + listControl.Add(txtCode); + //鑾峰彇楠岃瘉鐮� + var btnSendCode = new NormalViewControl(300, 127, true); + btnSendCode.X = frameCode.Width - Application.GetRealWidth(300); + btnSendCode.Gravity = Gravity.CenterVertical; + btnSendCode.TextID = R.MyInternationalizationString.SendVerificationCode; + btnSendCode.TextColor = ZigbeeColor.Current.GXCTextWhiteColor; + btnSendCode.TextAlignment = TextAlignment.Center; + btnSendCode.BackgroundColor = 0xFFFEBCA9; + btnSendCode.CanClick = false; + btnSendCode.Radius = (uint)Application.GetRealHeight(12); + btnSendCode.IsBold = true; + frameCode.AddChidren(btnSendCode); + btnSendCode.ButtonClickEvent += (sender, e) => + { + //鍙戦�侀獙璇佺爜 + this.SendVerificationCode(btnSendCode); + }; + //鑾峰彇楠岃瘉鐮佺殑搴曠嚎 + var btnCodeLine = new NormalViewControl(Application.GetRealWidth(536), HdlControlResourse.BottomLineHeight, false); + btnCodeLine.BackgroundColor = UserCenterColor.Current.ButtomLine; + btnCodeLine.Y = frameCode.Height - HdlControlResourse.BottomLineHeight; + frameCode.AddChidren(btnCodeLine); + //鑱斿姩搴曠嚎 + txtCode.btnLine = btnCodeLine; + + //绗竴娆″瘑鐮佺殑瀹瑰櫒 + var framePswOne = new FrameLayout(); + framePswOne.X = Application.GetRealWidth(29); + framePswOne.Y = Application.GetRealHeight(363); + framePswOne.Width = frameEmail.Width; + framePswOne.Height = frameEmail.Height; + frameBack.AddChidren(framePswOne); + //绗竴娆″瘑鐮佺殑杈撳叆妗� + var txtPswOne = new TextInputControl(700, 92, true); + txtPswOne.X = Application.GetRealWidth(29); + txtPswOne.Gravity = Gravity.CenterVertical; + txtPswOne.PlaceholderText = Language.StringByID(R.MyInternationalizationString.PleaseInputPWD); + txtPswOne.PlaceholderTextColor = ZigbeeColor.Current.GXCPlaceHolderTextColor; + txtPswOne.SecureTextEntry = true; + framePswOne.AddChidren(txtPswOne); + listControl.Add(txtPswOne); + //绗竴娆″瘑鐮佸彲瑙嗗浘鏍� + var btnPswOneHiden = new IconViewControl(92); + btnPswOneHiden.X = Application.GetRealWidth(775); + btnPswOneHiden.Gravity = Gravity.CenterVertical; + btnPswOneHiden.SelectedImagePath = "Account/HidePwd.png"; + btnPswOneHiden.UnSelectedImagePath = "Account/UnhidePwd.png"; + btnPswOneHiden.IsSelected = true; + framePswOne.AddChidren(btnPswOneHiden); + btnPswOneHiden.ButtonClickEvent += (sender, e) => + { + btnPswOneHiden.IsSelected = !btnPswOneHiden.IsSelected; + txtPswOne.SecureTextEntry = btnPswOneHiden.IsSelected; + }; + //绗竴娆″瘑鐮佽緭鍏ユ鐨勫簳绾� + var btnPswOneLine = new NormalViewControl(framePswOne.Width, HdlControlResourse.BottomLineHeight, false); + btnPswOneLine.BackgroundColor = UserCenterColor.Current.ButtomLine; + btnPswOneLine.Y = framePswOne.Height - HdlControlResourse.BottomLineHeight; + framePswOne.AddChidren(btnPswOneLine); + //鑱斿姩搴曠嚎 + txtPswOne.btnLine = btnPswOneLine; + + //绗簩娆″瘑鐮佺殑瀹瑰櫒 + var framePswTwo = new FrameLayout(); + framePswTwo.X = Application.GetRealWidth(29); + framePswTwo.Y = Application.GetRealHeight(530); + framePswTwo.Width = frameEmail.Width; + framePswTwo.Height = frameEmail.Height; + frameBack.AddChidren(framePswTwo); + //绗簩娆″瘑鐮佺殑杈撳叆妗� + var txtPswTwo = new TextInputControl(700, 92, true); + txtPswTwo.X = Application.GetRealWidth(29); + txtPswTwo.Gravity = Gravity.CenterVertical; + txtPswTwo.PlaceholderText = Language.StringByID(R.MyInternationalizationString.PleaseInputPWD); + txtPswTwo.PlaceholderTextColor = ZigbeeColor.Current.GXCPlaceHolderTextColor; + txtPswTwo.SecureTextEntry = true; + framePswTwo.AddChidren(txtPswTwo); + listControl.Add(txtPswTwo); + //绗簩娆″瘑鐮佸彲瑙嗗浘鏍� + var btnPswTwoHiden = new IconViewControl(92); + btnPswTwoHiden.X = Application.GetRealWidth(775); + btnPswTwoHiden.Gravity = Gravity.CenterVertical; + btnPswTwoHiden.SelectedImagePath = "Account/HidePwd.png"; + btnPswTwoHiden.UnSelectedImagePath = "Account/UnhidePwd.png"; + btnPswTwoHiden.IsSelected = true; + framePswTwo.AddChidren(btnPswTwoHiden); + btnPswTwoHiden.ButtonClickEvent += (sender, e) => + { + btnPswTwoHiden.IsSelected = !btnPswTwoHiden.IsSelected; + txtPswTwo.SecureTextEntry = btnPswTwoHiden.IsSelected; + }; + //绗簩娆″瘑鐮佽緭鍏ユ鐨勫簳绾� + var btnPswTwoLine = new NormalViewControl(framePswTwo.Width, HdlControlResourse.BottomLineHeight, false); + btnPswTwoLine.BackgroundColor = UserCenterColor.Current.ButtomLine; + btnPswTwoLine.Y = framePswTwo.Height - HdlControlResourse.BottomLineHeight; + framePswTwo.AddChidren(btnPswTwoLine); + //鑱斿姩搴曠嚎 + txtPswTwo.btnLine = btnPswTwoLine; + + //楠岃瘉鐮佽緭鍏ュ彉鏇存椂 + txtCode.TextChangeEventHandler += (sender, value) => + { + //妫�娴嬫敞鍐屾寜閽殑鐘舵�� + this.CheckResetButtonStatu(); + }; + //瀵嗙爜杈撳叆鍙樻洿鏃� + txtPswOne.TextChangeEventHandler += (sender, value) => + { + //妫�娴嬫敞鍐屾寜閽殑鐘舵�� + this.CheckResetButtonStatu(); + }; + txtPswTwo.TextChangeEventHandler += (sender, value) => + { + //妫�娴嬫敞鍐屾寜閽殑鐘舵�� + this.CheckResetButtonStatu(); + }; + //鎵嬫満鍙疯緭鍏ュ彉鏇存椂 + txtEmail.TextChangeEventHandler += (sender, value) => + { + this.btnErrorMsg.Text = string.Empty; + if (txtEmail.Text.Trim() != string.Empty) + { + if (btnSendCode.CanClick == false) + { + btnSendCode.CanClick = true; + btnSendCode.BackgroundColor = 0xFFFC744B; + } + } + else + { + btnSendCode.CanClick = false; + btnSendCode.BackgroundColor = 0xFFFEBCA9; + } + }; + + return frameBack; + } + + #endregion + + #region 鈻� 鍙戦�侀獙璇佺爜_________________________ + + /// <summary> + /// 鍙戦�侀獙璇佺爜 + /// </summary> + /// <param name="control"></param> + private void SendVerificationCode(NormalViewControl control) + { + //妫�娴嬭緭鍏ョ殑璐﹀彿 + if (this.CheckInputAccount(1) == false) + { + return; + } + //涓嶈兘鍐嶇偣鍑� + control.CanClick = false; + + var errorMsg = string.Empty; + //鎵嬫満 + if (this.SelectIndex == 1) + { + this.strInputPhone = ListNowInputControl[0].Text.Trim(); + errorMsg = HdlAccountLogic.Current.SendVeriCodeToPhone("86", this.strInputPhone, VerCodeType.A鎵惧洖瀵嗙爜); + } + //閭 + else + { + this.strInputEmail = ListNowInputControl[0].Text.Trim(); + errorMsg = HdlAccountLogic.Current.SendVeriCodeToEmail(this.strInputEmail, VerCodeType.A鎵惧洖瀵嗙爜); + } + if (errorMsg == null) + { + //鍙戦�侀獙璇佺爜鎴愬姛锛岃娉ㄦ剰鏌ユ敹 + this.ShowMassage(ShowMsgType.Tip, Language.StringByID(R.MyInternationalizationString.SendVerificationCodeSuccess)); + + control.BackgroundColor = UserCenterColor.Current.White; + control.TextColor = ZigbeeColor.Current.GXCTextBlackColor; + + //鍚姩鍊掕鏃� + HdlThreadLogic.Current.RunThread(() => + { + //鍚庨噸鍙� + string txtValue = Language.StringByID(R.MyInternationalizationString.SendVerificationCodeAgain); + int timeOut = 60; + while (timeOut > 0 && control.Parent != null) + { + HdlThreadLogic.Current.RunMain(() => + { + control.Text = timeOut + "s" + txtValue; + }); + timeOut--; + System.Threading.Thread.Sleep(1000); + } + HdlThreadLogic.Current.RunMain(() => + { + control.TextID = R.MyInternationalizationString.SendVerificationCode; + control.BackgroundColor = 0xFFFC744B; + control.TextColor = ZigbeeColor.Current.GXCTextWhiteColor; + control.CanClick = true; + }); + }); + return; + } + + this.btnErrorMsg.Text = errorMsg; + control.CanClick = true; + } + + #endregion + + #region 鈻� 閲嶇疆瀵嗙爜___________________________ + + /// <summary> + /// 閲嶇疆瀵嗙爜 + /// </summary> + private void ResetPassword() + { + //妫�娴嬭緭鍏ョ殑璐﹀彿 + if (this.CheckInputAccount(2) == false) + { + return; + } + //涓嶈兘鍐嶇偣鍑� + this.btnReset.CanClick = false; + + var errorMsg = string.Empty; + //鎵嬫満 + if (this.SelectIndex == 1) + { + errorMsg = HdlAccountLogic.Current.ResetPassword(this.strInputPhone, ListNowInputControl[2].Text.Trim(), ListNowInputControl[1].Text.Trim()); + } + //閭 + else + { + errorMsg = HdlAccountLogic.Current.ResetPassword(this.strInputEmail, ListNowInputControl[2].Text.Trim(), ListNowInputControl[1].Text.Trim()); + } + if (errorMsg == null) + { + var form = new AccountResetPswResultForm(); + CommonPage.Instance.AddChidren(form); + form.Show(); + return; + } + this.btnErrorMsg.Text = errorMsg; + //鍙互鍐嶆鐐瑰嚮 + this.btnReset.CanClick = true; + } + + #endregion + + #region 鈻� 涓�鑸柟娉昣__________________________ + + /// <summary> + /// 妫�娴嬮噸缃寜閽殑鐘舵�� + /// </summary> + private void CheckResetButtonStatu() + { + this.btnErrorMsg.Text = string.Empty; + //鍙鏈変竴涓负绌�,鍒欓噸缃寜閽笉鍙敤 + if (this.ListNowInputControl[0].Text.Trim() == string.Empty + || this.ListNowInputControl[1].Text.Trim() == string.Empty + || this.ListNowInputControl[2].Text.Trim() == string.Empty + || this.ListNowInputControl[3].Text.Trim() == string.Empty) + { + this.btnReset.CanClick = false; + return; + } + + this.btnReset.CanClick = true; + } + + /// <summary> + /// 妫�娴嬭緭鍏ョ殑璐﹀彿 + /// </summary> + /// <returns></returns> + private bool CheckInputAccount(int div) + { + this.btnErrorMsg.Text = string.Empty; + //鎵嬫満 + if (this.SelectIndex == 1) + { + if (HdlCheckLogic.Current.CheckPhoneNumber(ListNowInputControl[0].Text.Trim(), CommonPage.PhoneZoneStr) == false) + { + this.btnErrorMsg.TextID = R.MyInternationalizationString.ThePhoneError; + return false; + } + } + //閭 + else + { + if (HdlCheckLogic.Current.CheckEmail(ListNowInputControl[0].Text.Trim()) == false) + { + this.btnErrorMsg.TextID = R.MyInternationalizationString.TheEmailError; + return false; + } + } + if (div == 1) + { + //濡傛灉鏄彂閫侀獙璇佺爜,鍒欎笉闇�瑕佹娴嬪瘑鐮� + return true; + } + + //鍏堝垽鏂�2娆″瘑鐮佽緭鍏ユ槸鍚︿竴鑷� + if (ListNowInputControl[2].Text != ListNowInputControl[3].Text) + { + this.btnErrorMsg.TextID = R.MyInternationalizationString.TwoPasswordInconsistency; + return false; + } + if (HdlCheckLogic.Current.CheckPwdLength(ListNowInputControl[2].Text.Trim()) == false) + { + this.btnErrorMsg.TextID = R.MyInternationalizationString.ThePWDLengthError; + return false; + } + + return true; + } + + #endregion + } +} -- Gitblit v1.8.0