//*********The Following Method can be used if Authentication take place from custom users Table***********// public Boolean ValidateUser(string Username, string password, string UserLanguage, ref bool locked, ref string Msg) { Boolean status = false; using (BaseRepository baseRepo = new BaseRepository()) { // BizContext bc = new BizContext(); Business.BizTbl_User user = BizUser.GetUser(baseRepo.BizDB, string.Empty, Username, password); BizContext BizContext = new BizContext(); // BizContext bc = new BizContext(); UserContext uc = new UserContext(); // BizApplication.GetBizContext(Username, password, CultureCode,ref bc); if (user != null) { status = true; BizApplication.SetUserContext(baseRepo.BizDB, ref uc, Convert.ToInt64(user.ID), CultureCode); BizContext.UserContext = uc; //if (uc.IsHotelAdmin()) { // System.Linq.IQueryable<Business.TB_Hotel> userHotels = BizHotel.GetHotels(baseRepo.BizDB, null, uc.FirmID, null, user.ID.ToString()); // foreach (Business.TB_Hotel hotel in userHotels) // { // BizContext.Hotels.Add(hotel.ID, hotel.Name); // } // Business.TB_Hotel userHotel = userHotels.First(); // BizContext.HotelID = userHotel.ID; // BizContext.HotelCountryID = userHotel.CountryID; // BizContext.HotelRegionID = Convert.ToInt64(userHotel.RegionID); // BizContext.HotelCityID = Convert.ToInt64(userHotel.CityID); // BizContext.HotelCurrencyID = Convert.ToString(userHotel.CurrencyID); // // BizContext.HotelCurrencyName = dc.GetColumn(GetCurrencies(dc, CultureCode, bc.HotelCurrencyID)(0), "Name"); // BizContext.HotelAccommodationTypeID = userHotel.HotelAccommodationTypeID; // BizContext.HotelAvailabilityRateUpdate = Convert.ToBoolean(userHotel.AvailabilityRateUpdate); // BizContext.HotelRoutingName = userHotel.RoutingName; // BizContext.FirmID = Convert.ToString(userHotel.FirmID); // Session["SelectedHotelID"] = userHotel.ID; // Session["SelectedHotelName"] = userHotel.Name; //} if (BizContext.UserContext.IsHotelAdmin()) { // System.Linq.IQueryable<Business.TB_Hotel> userHotels = BizHotel.GetHotels(baseRepo.BizDB, null, uc.FirmID, null, user.ID.ToString()); int i = 0; baseRepo.SQLCon.Open(); DataTable dt = new DataTable(); SqlCommand cmd = new SqlCommand("B_Ex_GetUserHotelByUserID_TB_Hotel_SP", baseRepo.SQLCon); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@UserID", user.ID.ToString()); cmd.Parameters.AddWithValue("@FirmID", uc.FirmID); SqlDataAdapter sda = new SqlDataAdapter(cmd); sda.Fill(dt); baseRepo.SQLCon.Close(); foreach (DataRow hotel in dt.Rows) { BizContext.Hotels.Add(Convert.ToInt32(hotel["ID"]), (hotel["Name"].ToString())); if (i == 0) { BizContext.HotelID = Convert.ToInt32(hotel["ID"]); BizContext.FirmID = hotel["FirmID"].ToString(); BizContext.HotelAccommodationTypeID = Convert.ToInt32(hotel["HotelAccommodationTypeID"]); BizContext.HotelRoutingName = hotel["Name"].ToString(); Session["SelectedHotelID"] = Convert.ToInt32(hotel["ID"]); Session["SelectedHotelName"] = hotel["Name"].ToString(); } i++; } } int userCountryID = 0; //if (bc.UserContext.IPAddress == string.Empty) //{ if (Session["GBAdminBizContext"] != null) { BizContext = (BizContext)Session["GBAdminBizContext"]; } Session["GBAdminBizContext"] = BizContext; if (UserLanguage != "") { try { string[] words = UserLanguage.Split(','); BizContext.SystemCultureCode = words[1]; BizContext.CultureCode = words[0]; Session["CultureCode"] = words[0]; Session["GBAdminBizContext"] = BizContext; } catch { BizContext.SystemCultureCode = "en-GB"; BizContext.CultureCode = "en"; Session["GBAdminBizContext"] = BizContext; Session["CultureCode"] = "en"; } } else { BizContext.SystemCultureCode = "en-GB"; BizContext.CultureCode = "en"; Session["GBAdminBizContext"] = BizContext; Session["CultureCode"] = "en"; } string userIpAddress = GetUserIPAddress(); //GetCultureByIpaddress(userIpAddress); try { CountriesRepository countryRepo = new CountriesRepository(); Business.TB_Country userCountryInfo = BizApplication.GetCountryInfoFromIPAddress(baseRepo.BizDB, userIpAddress); userCountryID = userCountryInfo.ID; } catch { userCountryID = 0; } // bc.UserContext.IPAddress = userIpAddress; // } //if (bc.UserSessionID == string.Empty) //{ AuthenticationRepository authRepo = new AuthenticationRepository(); string countryID = (userCountryID == 0 ? String.Empty : userCountryID.ToString()); string UserSessionID = BizUser.SaveUserSession(baseRepo.BizDB, String.Empty, Guid.NewGuid().ToString(), user.ID.ToString(), countryID, userIpAddress, DateTime.Now.ToString()).ToString(); //} if (Session["GBAdminBizContext"] != null) { BizContext = (BizContext)Session["GBAdminBizContext"]; } BizContext.UserSessionID = UserSessionID; Session["GBAdminBizContext"] = BizContext; // Session[BizCommon.AdminBizContextName] = bc; BizUser.AddUserOperation(baseRepo.BizDB, user.ID.ToString(), DateTime.Now.ToString(), BizCommon.Operation.Login, "", "", GetUserIPAddress(), UserSessionID); Session["username"] = user.DisplayName; Session["UserID"] = user.ID; } else { Msg = Resources.Resources.CheckYourUserNameAndPasswordWarning; //BizMessage.GetMessage(baseRepo.BizDB, "CheckYourUserNameAndPasswordWarning", "en"); } } return status; }
public static SelectList GetCountries(long? CountryID) { CountriesRepository modelRepo = new CountriesRepository(); var countries = modelRepo.ReadAll(); List<SelectListItem> _ListCounties = new List<SelectListItem>(); foreach (var item in countries) { SelectListItem itr = new SelectListItem(); itr.Text = item.CountryName; itr.Value = item.CountryID.ToString(); itr.Selected = false; _ListCounties.Add(itr); } return new SelectList(_ListCounties, "Value", "Text", CountryID); }