예제 #1
0
        private void button1_Click(object sender, EventArgs e)
        {
            string pas1 = textBox1.Text;
            string pas2 = textBox2.Text;

            label5.Text = "";
            if (pas2 != pas1)
            {
                label5.Text   = "Пароли не совпадают";
                textBox1.Text = "";
                textBox2.Text = "";
            }
            else if (pas2 == pas1)
            {
                label5.Text = "";
                //-------------
                bool flagL = false, flagU = false, flagD = false, flagS = false, flag = false;
                for (int i = 0; i < textBox2.Text.Length; i++)
                {
                    if (Char.IsLower(textBox2.Text[i]))
                    {
                        flagL = true;
                    }
                    if (Char.IsUpper(textBox2.Text[i]))
                    {
                        flagU = true;
                    }
                    if (Char.IsDigit(textBox2.Text[i]))
                    {
                        flagD = true;
                    }
                    if (Char.IsSymbol(textBox2.Text[i]) || (textBox2.Text[i] == '-') || (textBox2.Text[i] == '*') || (textBox2.Text[i] == '/'))
                    {
                        flagS = true;
                    }
                }
                if (flagL && flagU && flagS && flagD)
                {
                    flag = true;
                }
                //---------------
                if (pas1.Length > 1)
                {
                    if (flag || !Global.limitK)
                    {
                        label5.Text = "";
                        if (Global.log == "admin")
                        {
                            AdminForm fadmin = new AdminForm();
                            Hide();
                            Global.pas = pas1;
                            Global.newPas(0, pas1);


                            fadmin.ShowDialog();
                            Close();
                        }
                        else
                        {
                            AdminForm fuser = new AdminForm();
                            Hide();
                            Global.userFlag = true;
                            Global.pas      = pas1;
                            Global.newPas(Global.k, pas1);
                            fuser.ShowDialog();
                            Close();
                        }
                    }
                    else
                    {
                        label5.Text = "Пароль не отвечает ограничениям";
                    }
                }
                else

                {
                    label5.Text = "Пароль не отвечает ограничениям";
                }
            }
        }
예제 #2
0
        private void button1_Click(object sender, EventArgs e)
        {
            int    n = File.ReadAllLines("Users.txt").Length;
            string str;

            string[] pasAll = new string[n];
            string[] name   = new string[n];
            string[] block  = new string[n];
            string[] limit  = new string[n];

            bool         logFlag = false;
            FileStream   file    = new FileStream("Users.txt", FileMode.Open);
            StreamReader fnew    = new StreamReader(file);

            for (int t = 0; t < n; t++)
            {
                int i = 0;
                int j = 0;
                str = fnew.ReadLine();
                while (str[j] != ' ')
                {
                    j++;
                }
                name[t] = str.Substring(0, j);
                j++;
                i = j;
                while (str[j] != ' ')
                {
                    j++;
                }
                pasAll[t] = str.Substring(i, j - i);
                block[t]  = str.Substring(j + 1, 1);
                limit[t]  = str.Substring(j + 3, 1);
            }
            fnew.Close();
            Global.names = name;
            Global.log   = textBox1.Text;
            Global.pas   = textBox2.Text;
            label3.Text  = "";

            int k = 0;

            for (int i = 0; i < n; i++)
            {
                if (Global.log == name[i])
                {
                    logFlag  = true;
                    Global.k = i;
                    k        = i;
                }
            }
            if (logFlag == false)
            {
                label3.Text = "Неверное имя пользователя";
            }
            else
            {
                label3.Text = "";

                if (block[k] == "1")
                {
                    label3.Text = "Пользователь заблокирован";
                }
                else
                {
                    if (pasAll[k] == "")
                    {
                        {
                            label3.Text = "";
                            NewFirstPas fpas = new NewFirstPas();
                            if (limit[k] == "1")
                            {
                                Global.limitK = true;
                            }
                            else
                            {
                                Global.limitK = false;
                            }
                            Hide();
                            fpas.ShowDialog();
                            Show();
                            textBox2.Text = "";
                        }
                    }
                    else if (Global.pas != pasAll[k])
                    {
                        err[k]--;
                        label3.Text   = "Осталось " + (err[k] + 3) + " попытки";
                        textBox2.Text = "";

                        if (err[k] == -3)
                        {
                            Close();
                        }
                    }
                    else if (Global.pas == pasAll[k])
                    {
                        if (name[k] == "admin")
                        {
                            Hide();
                            Global.userFlag = false;
                            AdminForm fadmin = new AdminForm();
                            fadmin.ShowDialog();
                            textBox2.Text = "";
                            Show();
                        }
                        else
                        {
                            if (limit[k] == "1")
                            {
                                Global.limitK = true;
                            }
                            else
                            {
                                Global.limitK = false;
                            }
                            Hide();
                            Global.userFlag = true;
                            AdminForm fuser = new AdminForm();
                            fuser.ShowDialog();
                            textBox2.Text = "";
                            Show();
                        }
                        err[k] = 0;
                    }
                }
            }
            if (Global.closeFlag)
            {
                Close();
            }
        }