Ejemplo n.º 1
0
        public PersonAuth GetPerson(string key, string value)
        {
            PersonAuth res = null;

            if (connection == null)
            {
                connection = new MySqlConnection(connectionString);
            }
            MySqlCommand    iniQuery    = null;
            MySqlDataReader dataReader  = null;
            string          selectQuery = string.Format(
                "SELECT `username`, `email`, `password`, `status`, `banTill` FROM  `Persons` WHERE `{0}`='{1}'", key, value);

            try
            {
                connection.Open();
                iniQuery   = new MySqlCommand(selectQuery, connection);
                dataReader = iniQuery.ExecuteReader();
            }
            catch (MySqlException ex)
            {
                return(null);
            }

            if (dataReader.Read())
            {
                res = new PersonAuth(
                    dataReader.GetString("username"),
                    dataReader.GetString("email"),
                    dataReader.GetString("password"),
                    dataReader.GetInt32("status"),
                    dataReader.GetString("banTill"));
            }

            dataReader.Close();
            dataReader.Dispose();
            iniQuery.Dispose();
            connection.Close();

            return(res);
        }
Ejemplo n.º 2
0
 public LoginStatus TryLogIn(string login, string password, out PersonAuth p)
 {
     p = GetPerson("username", login);
     if (p == null)
     {
         return(LoginStatus.WrongLogin);
     }
     else if (p.password != password)
     {
         return(LoginStatus.WrongPassword);
     }
     else
     {
         if (p.status == AuthStatus.Banned && p.banTill < DateTime.Now)
         {
             SetStatus(login, 0, null);
             p.status  = 0;
             p.banTill = null;
         }
         return(LoginStatus.OK);
     }
 }
Ejemplo n.º 3
0
        public void ProcessRequest(HttpContext context)
        {
            RequestObject robj = null;

            using (StreamReader sr = new StreamReader(context.Request.InputStream))
            {
                string body = sr.ReadLine();
                robj = JsonConvert.DeserializeObject <RequestObject>(body);
            }

            string email    = (string)robj.Args;
            string username = email.Split('@')[0];
            string password = Membership.GeneratePassword(10, 0);

            PersonDAO check = new PersonDAO();

            PersonDAO.RegistrationStatus res = check.TryRegister(username, password, email);

            switch (res)
            {
            case PersonDAO.RegistrationStatus.EmailExists:

                break;

            case PersonDAO.RegistrationStatus.LoginExists:
                PersonAuth            pers        = null;
                PersonDAO.LoginStatus loginStatus = check.TryLogIn(username, password, out pers);

                break;

            case PersonDAO.RegistrationStatus.OK:

                break;
            }

            // context.Response.Write(r);
        }