Пример #1
0
 public void SaveRegData()
 {
     File.WriteAllText(regSaveFile, Sex.SelectedRowInComponent(0) + "\n" + Email.Text.Trim() + "\n" + Password.Text.Trim() + "\n" + ConfirmPassword.Text.Trim()
                       + "\n" + Username.Text.Trim() + "\n" + Name.Text.Trim()
                       + "\n" + string.Join("|", rc.uploadedImages) + "\n" + DescriptionText.Text.Trim().Replace("\n", "[newline]")
                       + "\n" + UseLocationSwitch.On + "\n" + rc.GetLocationShareLevel() + "\n" + rc.GetDistanceShareLevel());
 }
Пример #2
0
        private async void Register_Click(object sender, EventArgs e)
        {
            if (CheckFields())
            {
                View.EndEditing(true);

                Register.Enabled = false;
                Register.Alpha   = 0.5f;
                int locationShare = 0;
                int distanceShare = 0;

                if (UseLocationSwitch.On)
                {
                    locationShare = rc.GetLocationShareLevel();
                    distanceShare = rc.GetDistanceShareLevel();
                }

                string url = "action=register&Sex=" + (Sex.SelectedRowInComponent(0) - 1) + "&Email=" + CommonMethods.UrlEncode(Email.Text.Trim()) + "&Password="******"&Username="******"&Name=" + CommonMethods.UrlEncode(Name.Text.Trim())
                             + "&Pictures=" + CommonMethods.UrlEncode(string.Join("|", rc.uploadedImages)) + "&Description=" + CommonMethods.UrlEncode(DescriptionText.Text) + "&UseLocation=" + UseLocationSwitch.On
                             + "&LocationShare=" + locationShare + "&DistanceShare=" + distanceShare + "&regsessionid=" + regsessionid;

                string responseString = await c.MakeRequest(url);

                if (responseString.Substring(0, 2) == "OK")
                {
                    if (File.Exists(regSessionFile))
                    {
                        File.Delete(regSessionFile);
                    }
                    regsessionid = "";
                    if (File.Exists(regSaveFile))
                    {
                        File.Delete(regSaveFile);
                    }
                    registerCompleted = true; //to prevent OnPause from saving form data.

                    c.LoadCurrentUser(responseString);

                    Register.Enabled = true;
                    Register.Alpha   = 1;

                    CommonMethods.OpenPage("ListActivity", 1);
                }
                else if (responseString.Substring(0, 6) == "ERROR_")
                {
                    c.Snack(c.GetLang(responseString.Substring(6)));
                }
                else
                {
                    c.ReportError(responseString);
                }
                Register.Enabled = true;
                Register.Alpha   = 1;
            }
            else
            {
                c.Snack(checkFormMessage);
            }
        }
Пример #3
0
        private bool CheckFields() //need to resize window on keyboard appereance, otherwise Snackbar will be covered
        {
            if (Sex.SelectedRowInComponent(0) == 0)
            {
                checkFormMessage = LangEnglish.SexEmpty;
                Sex.BecomeFirstResponder();
                return(false);
            }
            if (Email.Text.Trim() == "")
            {
                checkFormMessage = LangEnglish.EmailEmpty;
                Email.BecomeFirstResponder();
                return(false);
            }
            int lastDotPos = Email.Text.LastIndexOf(".");

            if (lastDotPos < Email.Text.Length - 5)
            {
                checkFormMessage = LangEnglish.EmailWrong;
                Email.BecomeFirstResponder();
                return(false);
            }
            //If the extension is long, the regex will freeze the app.
            Regex regex = new Regex(Constants.EmailFormat);

            if (!regex.IsMatch(Email.Text))
            {
                checkFormMessage = LangEnglish.EmailWrong;
                Email.BecomeFirstResponder();
                return(false);
            }
            if (Password.Text.Trim().Length < 6)
            {
                checkFormMessage = LangEnglish.PasswordShort;
                Password.BecomeFirstResponder();
                return(false);
            }
            if (Password.Text.Trim() != ConfirmPassword.Text.Trim())
            {
                checkFormMessage = LangEnglish.ConfirmPasswordNoMatch;
                ConfirmPassword.BecomeFirstResponder();
                return(false);
            }
            if (Username.Text.Trim() == "")
            {
                checkFormMessage = LangEnglish.UsernameEmpty;
                Username.BecomeFirstResponder();
                return(false);
            }
            if (Username.Text.Trim().Substring(Username.Text.Trim().Length - 1) == "\\")
            {
                checkFormMessage = LangEnglish.UsernameBackslash;
                return(false);
            }
            if (Name.Text.Trim() == "")
            {
                checkFormMessage = LangEnglish.NameEmpty;
                Name.BecomeFirstResponder();
                return(false);
            }
            if (Name.Text.Trim().Substring(Name.Text.Trim().Length - 1) == "\\")
            {
                checkFormMessage = LangEnglish.NameBackslash;
                return(false);
            }
            if (rc.uploadedImages.Count == 0)
            {
                checkFormMessage = LangEnglish.ImagesEmpty;
                Images.BecomeFirstResponder();
                return(false);
            }
            if (DescriptionText.Text.Trim() == "")
            {
                checkFormMessage = LangEnglish.DescriptionEmpty;
                DescriptionText.BecomeFirstResponder();
                return(false);
            }
            if (DescriptionText.Text.Substring(DescriptionText.Text.Length - 1) == "\\")
            {
                checkFormMessage = LangEnglish.DescriptionBackslash;
                return(false);
            }
            return(true);
        }