//Check on this for Workgroup Dissapearing issue
 private void Workgroups_ConfigurationObjectsRemoved(object sender, ConfigurationWatchEventArgs <WorkgroupConfiguration> e)
 {
     _logging.LogNote("Workgroup Configuration Objects Removed..");
     try
     {
         var removeWorkgroups = e.ObjectsAffected;
         using (var repository = Repository)
         {
             var workgroups = repository.Workgroups;
             foreach (var workgroup in removeWorkgroups.Select(workgroupConfiguration => workgroups.FirstOrDefault(w => w.ConfigId == workgroupConfiguration.ConfigurationId.Id)).Where(workgroup => workgroup != null))
             {
                 _logging.LogNote("Removing: " + workgroup.DisplayName);
                 RemoveWorkgroup(workgroup, repository);
             }
             repository.SaveChanges();
             WorkgroupPeople.RefreshWatch       = true;
             WorkgroupInteractions.RefreshWatch = true;
         }
     }
     catch (Exception exception)
     {
         _logging.LogException(exception);
         _logging.TraceException(exception, "WorkgroupConfigurations Error");
     }
 }
Example #2
0
 private void Schedules_ConfigurationObjectsRemoved(object sender, ConfigurationWatchEventArgs <ScheduleConfiguration> e)
 {
     try
     {
         var removeSchedules = e.ObjectsAffected;
         using (var repository = Repository)
         {
             foreach (var schedule in removeSchedules.Select(scheduleConfiguration => repository.Schedules.FirstOrDefault(s => s.ConfigId == scheduleConfiguration.ConfigurationId.Id)).Where(schedule => schedule != null))
             {
                 _logging.TraceMessage(3, "Removing Schedule: " + schedule.DisplayName);
                 if (schedule.ScheduleRecurrence != null)
                 {
                     repository.ScheduleRecurrences.Remove(schedule.ScheduleRecurrence);
                 }
                 if (schedule.IsUsed)
                 {
                     schedule.MarkedForDeletion = true;
                 }
                 else
                 {
                     repository.Schedules.Remove(schedule);
                 }
                 repository.SaveChanges();
             }
         }
     }
     catch (Exception exception)
     {
         _logging.TraceException(exception, "ScheduleConfigurations Error");
     }
 }
Example #3
0
 void configurations_ConfigurationObjectsRemoved(object sender, ConfigurationWatchEventArgs <CampaignConfiguration> args)
 {
     try
     {
         lock (updating)
         {
             CampaignConfigurations = (new ReadOnlyCollectionBuilder <CampaignConfiguration>(CampaignConfigurations.ToList().RemoveAll(item => args.ObjectsAffected.Contains(item)))).ToReadOnlyCollection();
         }
     }
     catch (Exception e)
     {
         HttpContext.Current.Trace.Warn("Dialer", "Unable to retrieve campaigns", e);
     }
 }
 private void Skills_ConfigurationObjectsRemoved(object sender, ConfigurationWatchEventArgs <SkillConfiguration> e)
 {
     try
     {
         var removeSkills = e.ObjectsAffected;
         using (var repository = Repository)
         {
             var skills = repository.Skills;
             foreach (var skill in removeSkills.Select(skillConfiguration => skills.FirstOrDefault(s => s.ConfigId == skillConfiguration.ConfigurationId.Id)).Where(skill => skill != null))
             {
                 RemoveSkill(skill, repository);
             }
             repository.SaveChanges();
         }
     }
     catch (Exception exception)
     {
         _logging.TraceException(exception, "SkillConfigurations Error");
     }
 }
Example #5
0
 private void Users_ConfigurationObjectsRemoved(object sender, ConfigurationWatchEventArgs <UserConfiguration> e)
 {
     //_logging.LogNote("Users_ConfigurationObjectsRemoved");
     try
     {
         var removeUsers = e.ObjectsAffected;
         using (var repository = Repository)
         {
             foreach (var user in removeUsers.Select(userConfiguration => repository.Agents.FirstOrDefault(a => a.ConfigId == userConfiguration.ConfigurationId.Id)).Where(user => user != null))
             {
                 foreach (var utilization in user.Utilizations.ToList())
                 {
                     //user.Utilizations.Remove(utilization);
                     repository.Utilizations.Remove(utilization);
                 }
                 if (user.ActiveInWorkgroups != null)
                 {
                     foreach (var workgroup in user.ActiveInWorkgroups.ToList())
                     {
                         user.ActiveInWorkgroups.Remove(workgroup);
                     }
                 }
                 user.Skills.Clear();
                 user.Utilizations.Clear();
                 //foreach (var skill in user.Skills.ToList())
                 //{
                 //    user.Skills.Remove(skill);
                 //}
                 repository.Agents.Remove(user);
                 repository.SaveChanges();
             }
         }
     }
     catch (Exception exception)
     {
         _logging.LogException(exception);
         _logging.TraceException(exception, "AgentConfigurations Error");
     }
 }
Example #6
0
 void configurations_ConfigurationObjectsRemoved(object sender, ConfigurationWatchEventArgs<CampaignConfiguration> args)
 {
     try
     {
         lock (updating)
         {
             CampaignConfigurations = (new ReadOnlyCollectionBuilder<CampaignConfiguration>(CampaignConfigurations.ToList().RemoveAll(item => args.ObjectsAffected.Contains(item)))).ToReadOnlyCollection();
         }
     }
     catch(Exception e)
     {
         HttpContext.Current.Trace.Warn("Dialer", "Unable to retrieve campaigns", e);
     }
 }