public void SaveSettings(string serializeSettings) { if (Context.User != null && Context.User.Identity != null) { var userInfo = CoreContext.UserManager.GetUsers(((IUserAccount)Context.User.Identity).ID); if (userInfo != ASC.Core.Users.Constants.LostUser && userInfo.IsOwner()) { lock (_tasks.SynchRoot) { var task = _tasks.GetItems().OfType <SaveSettingTask>(). FirstOrDefault(t => (int)t.Id == TenantProvider.CurrentTenantID); if (task != null && task.IsCompleted) { _tasks.Remove(task); task = null; } if (task == null) { task = new SaveSettingTask(serializeSettings) { Id = TenantProvider.CurrentTenantID, Status = string.Empty }; _tasks.Add(task); } return; } } } _log.ErrorFormat("Insufficient Access Rights by saving ldap settings!"); throw new SecurityException(); }
private LDAPSupportSettingsResult ToResult(SaveSettingTask task) { lock (_tasks.SynchRoot) { if (task == null) { return(null); } return(new LDAPSupportSettingsResult { Id = task.Id.ToString(), Completed = task.IsCompleted, Percents = (int)task.Percentage, Status = (string)task.Status, Error = (string)task.Error }); } }
public void SaveSettings(string serializeSettings) { if (Context.User != null && Context.User.Identity != null) { var userInfo = CoreContext.UserManager.GetUsers(((IUserAccount)Context.User.Identity).ID); if (userInfo != ASC.Core.Users.Constants.LostUser && userInfo.IsOwner()) { lock (_tasks.SynchRoot) { var task = _tasks.GetItems().OfType<SaveSettingTask>(). FirstOrDefault(t => (int)t.Id == TenantProvider.CurrentTenantID); if (task != null && task.IsCompleted) { _tasks.Remove(task); task = null; } if (task == null) { task = new SaveSettingTask(serializeSettings) { Id = TenantProvider.CurrentTenantID, Status = string.Empty }; _tasks.Add(task); } return; } } } _log.ErrorFormat("Insufficient Access Rights by saving ldap settings!"); throw new SecurityException(); }
private LDAPSupportSettingsResult ToResult(SaveSettingTask task) { lock (_tasks.SynchRoot) { if (task == null) { return null; } return new LDAPSupportSettingsResult { Id = task.Id.ToString(), Completed = task.IsCompleted, Percents = (int)task.Percentage, Status = (string)task.Status, Error = (string)task.Error }; } }