public ActionResult ChangePassword() { if (!string.IsNullOrEmpty(ConvertTo.String(ProjectSession.UserId))) { int userId = ProjectSession.UserId.ToInteger(); using (Services.ServiceContext changePasswordService = new Services.ServiceContext(true)) { var userModel = changePasswordService.Search(new SmartLibrary.Models.User() { Id = userId }).FirstOrDefault(); if (userModel != null && userModel.Id > 0) { SmartLibrary.Models.ChangePassword changePassword = new SmartLibrary.Models.ChangePassword(); changePassword.Id = userModel.Id; return(this.View(Views.ChangePassword, changePassword)); } } } return(this.View(Views.ChangePassword)); }
public ActionResult ChangePassword(SmartLibrary.Models.ChangePassword changePassword) { using (Services.ServiceContext changePasswordService = new Services.ServiceContext(true)) { if (changePassword == null || ConvertTo.ToInteger(changePassword.Id) <= 0) { this.ViewBag.ChangePasswordMessage = SmartLibrary.Resources.Account.UserNotExist; return(this.View(Views.ChangePassword, changePassword)); } var userModel = changePasswordService.Search(new SmartLibrary.Models.User() { Id = changePassword.Id, }).FirstOrDefault(); if (userModel != null && userModel.Id > 0) { ////if (ProjectConfiguration.IsActiveDirectory) ////{ //// ActiveDirectoryRegister activeDirectoryChangePassword = new ActiveDirectoryRegister() //// { //// Email = userModel.Email, //// Password = changePassword.CurrentPassword, //// NewPassword = changePassword.NewPassword, //// ConfirmPassword = changePassword.ConfirmPassword //// }; //// var changePasswordResponse = this.commonBL.ActiveDirectoryChangePasswordResponse(activeDirectoryChangePassword); //// if (changePasswordResponse == null || changePasswordResponse.Status != SystemEnumList.ApiStatus.Success.GetDescription()) //// { //// this.AddToastMessage(Resources.General.Error, changePasswordResponse?.Message ?? Messages.ErrorMessage.SetArguments(General.Member), Infrastructure.SystemEnumList.MessageBoxType.Error); //// return this.View(Views.ChangePassword, changePassword); //// } ////} if (userModel.Password == Infrastructure.EncryptionDecryption.EncryptByTripleDES(changePassword.CurrentPassword)) { if (changePassword.NewPassword == changePassword.ConfirmPassword) { userModel.Password = Infrastructure.EncryptionDecryption.EncryptByTripleDES(changePassword.NewPassword); bool response = this.commonBL.ChangePassword(userModel.Id, userModel.Password, Infrastructure.SystemEnumList.ChangePasswordFor.User.GetDescription()); if (response) { this.AddToastMessage(Resources.General.Success, Account.PasswordChangedSuccessfully, Infrastructure.SystemEnumList.MessageBoxType.Success); return(new RedirectResult(this.Url.Action(Views.BookGrid, Controllers.Book))); } else { this.AddToastMessage(Resources.General.Error, Messages.ChangePasswordError, Infrastructure.SystemEnumList.MessageBoxType.Error); return(this.View(Views.ChangePassword, changePassword)); } } else { this.AddToastMessage(Resources.General.Error, Account.NewPasswordAndConfirmPasswordNotMatch, SystemEnumList.MessageBoxType.Error); return(this.View(Views.ChangePassword, changePassword)); } } else { this.AddToastMessage(Resources.General.Error, Account.CurrentPasswordNotMatch, Infrastructure.SystemEnumList.MessageBoxType.Error); return(this.View(Views.ChangePassword, changePassword)); } } else { this.AddToastMessage(Resources.General.Error, Account.UserNotExist, Infrastructure.SystemEnumList.MessageBoxType.Error); return(this.View(Views.ChangePassword, changePassword)); } } }
public async Task RunBehaviorLogicAsync(string connectionId, string username, string payload, Services.ServiceContext context) { var behaviorContext = await CreateBehaviorContextAsync(connectionId, username, payload, context); var availableSteps = behaviorContext.Iterator.Current(); BehaviorStep currentStep = null; foreach (var step in availableSteps) { if (await CheckStepCondition(behaviorContext, step)) { currentStep = step; break; } } if (currentStep != null) { behaviorContext.Iterator.Next(currentStep?.Id); await RunStepAsync(behaviorContext, _outgoingServicePool.Resolve(context.TransportName), currentStep); } if (!behaviorContext.Iterator.Current().Any()) { behaviorContext.Iterator.Reset(); } }
private async Task <User> FindOrCreateUserAsync(string connectionId, string username, IPlatformDatabase database, Services.ServiceContext serviceContext) { var client = (await database.UserTransports .Include(x => x.User) .FirstOrDefaultAsync(x => x.Id == serviceContext.TransportId && x.TransportUserId.Equals(connectionId)))?.User; if (client is null) { client = new User { Username = username }; database.UserTransports.Add( new UserTransport { Transport = await database.Transports.FirstAsync(x => x.Id == serviceContext.TransportId), User = client, TransportUserId = connectionId }); _logger.LogInformation($"New user just created. Username: {username}. Transport: {serviceContext.TransportName}. BotId: {serviceContext.BotId}."); } client.LastActivity = DateTime.Now; await database.SaveChangesAsync(); _connectionsRepository.AddConnection(client.Id, serviceContext.TransportName, connectionId); return(client); }
private async Task <BehaviorContext> CreateBehaviorContextAsync(string connectionId, string username, string payload, Services.ServiceContext serviceContext) { try { await _executorSemaphore.WaitAsync(); if (!_runningDialogs.TryGetValue(connectionId, out var context)) { _logger.LogTrace($"Behavior context was created for dialog. BotId: {serviceContext.BotId}. ConnectionId: {connectionId}."); var database = _serviceProvider.GetRequiredService <IPlatformDatabase>(); var client = await FindOrCreateUserAsync(connectionId, username, database, serviceContext); context = new BehaviorContext { ConnectionId = connectionId, Iterator = _behavior.Iterator, ServiceContext = serviceContext, Database = database, Client = client }; _runningDialogs.Add(connectionId, context); } context.Dialog = await _dialogsRepository.CreateOrUpdateDialogAsync(context.Database, context.Client, payload, MessageDirection.In, serviceContext.BotId); context.LastUsedOn = DateTime.Now; return(context); } finally { _executorSemaphore.Release(); } }
/// <summary> /// GetListForDropdown /// </summary> /// <typeparam name="T">T</typeparam> /// <param name="pleaseSelectText">pleaseSelectText</param> /// <param name="selectedValue">selectedValue</param> /// <param name="selectedText">selectedText</param> /// <param name="textField">textField</param> /// <param name="valueField">valueField</param> /// <param name="searchCriteria">searchCriteria</param> /// <returns>List</returns> public static List <SelectListItem> GetListForDropdown <T>(string pleaseSelectText = "", string selectedValue = "", string selectedText = "", string textField = "Name", string valueField = "ID", T searchCriteria = default(T)) { List <SelectListItem> retList = new List <SelectListItem>(); if (searchCriteria == null) { searchCriteria = Activator.CreateInstance <T>(); } if (searchCriteria.GetType().GetProperty("Active") != null && searchCriteria.GetType().GetProperty("Active").GetValue(searchCriteria) == null) { searchCriteria.GetType().InvokeMember("Active", BindingFlags.Instance | BindingFlags.Public | BindingFlags.SetProperty, Type.DefaultBinder, searchCriteria, new object[] { true }); } List <T> listT; using (Services.ServiceContext service = new Services.ServiceContext()) { listT = service.Search <T>((T)searchCriteria).ToList(); } SelectListItem selectListItem; if (!string.IsNullOrEmpty(pleaseSelectText)) { selectListItem = new SelectListItem(); selectListItem.Text = pleaseSelectText; selectListItem.Value = string.Empty; retList.Add(selectListItem); } foreach (var item in listT) { selectListItem = new SelectListItem(); selectListItem.Text = item.GetType().GetProperty(textField).GetValue(item).String(); selectListItem.Value = item.GetType().GetProperty(valueField).GetValue(item).String(); selectListItem.Selected = !string.IsNullOrEmpty(selectedValue) && selectedValue == selectListItem.Value.String(); retList.Add(selectListItem); } if (!string.IsNullOrEmpty(selectedValue) && !retList.Any(i => i.Value == selectedValue)) { string inActiveText = string.Empty; if (string.IsNullOrEmpty(selectedText)) { if (searchCriteria.GetType().GetProperty("Active") != null) { searchCriteria.GetType().InvokeMember("Active", BindingFlags.Instance | BindingFlags.Public | BindingFlags.SetProperty, Type.DefaultBinder, searchCriteria, new object[] { false }); } if (searchCriteria.GetType().GetProperty("ID") != null) { searchCriteria.GetType().InvokeMember("ID", BindingFlags.Instance | BindingFlags.Public | BindingFlags.SetProperty, Type.DefaultBinder, searchCriteria, new object[] { selectedValue.ToInteger() }); } using (Services.ServiceContext service = new Services.ServiceContext()) { listT = service.Search <T>((T)searchCriteria).ToList(); } if (listT?.Count == 1) { var text = listT[0].GetType().InvokeMember(textField, BindingFlags.Instance | BindingFlags.Public | BindingFlags.GetProperty, Type.DefaultBinder, listT[0], new object[] { }); if (!string.IsNullOrEmpty(text.String())) { inActiveText = text.String() + " (In-Active)"; } } } else { inActiveText = selectedText + " (In-Active)"; } selectListItem = new SelectListItem(); selectListItem.Text = inActiveText; selectListItem.Value = selectedValue; retList.Add(selectListItem); } return(retList); }