public override bool ValidateUser(string username, string password)
        {
            bool isValid = false;

            using (Database db = new MySqlDatabase())
            {
                UserState us = db.VerifyUser(username, password);
                if (us.State >= 0)
                {
                    UserInfo ui = db.GetUser(username, password);
                    if (ui != null && CheckPassword(md5(password), ui.Password))
                    {
                        if (ui.IsApproved > 0)
                        {
                            isValid = true;
                            HttpContext.Current.Session["access"] = password;
                            HttpContext.Current.Session["useruid"] = ui.UserUid;
                            HttpContext.Current.Session["userid"] = ui.UserId;

                            db.UpdateUserLogon(username, _applicationName);
                            string culture = "en-US";
                            ClientInfo ci = db.GetClientInfo(ui.UserId);
                            if (ci != null)
                            {
                                if (!string.IsNullOrEmpty(ci.Country) && !string.IsNullOrEmpty(ci.Language))
                                {
                                    string cultLang = Util.GetLanguageCodeByEnglishName(ci.Language);
                                    string cultCtry = Util.GetCountryIso2(ci.Country);
                                    culture = string.Format("{0}-{1}", cultLang, cultCtry);
                                }
                            }
                            if (string.IsNullOrEmpty(culture) || culture == "-")
                                culture = "en-US";

                            //HttpContext.Current.Session["culture"] = culture;
                        }
                    }
                }
            }

            return isValid;
        }