public ActionResult List(string eventName) { var slot = EventSlotManager.Instance.GetSlot(eventName); var availableActivities = _activityProvider.FindBindableTo(slot.EventType) .Select(x => new { x.Name, x.DisplayName }) .ToList(); ViewBag.EventName = slot.EventType.Name; ViewBag.EventTypeName = slot.EventType.AssemblyQualifiedNameWithoutVersion(); ViewBag.AvailableActivities = availableActivities; ViewBag.AvailableParameters = RuleParameterProviders.Providers.GetParameters(slot.EventType).ToList(); var manager = RuleManager.GetManager(CurrentInstance.Name); var rules = manager.GetRules(eventName); var models = new List <RuleModelBase>(); foreach (var rule in rules) { models.Add(RuleModelBase.FromRule(rule)); } return(View(models)); }
public ActionResult Index() { var slotManager = EventSlotManager.Instance; var ruleManager = RuleManager.GetManager(CurrentInstance.Name); var models = new List <EventSlotModel>(); foreach (var group in slotManager.GetGroups()) { var slots = slotManager.GetSlots(group); foreach (var slot in slots) { var rules = ruleManager.GetRules(slot.EventType.Name); if (rules.Any()) { var model = new EventSlotModel { EventName = slot.EventType.Name }; foreach (var rule in rules) { model.Rules.Add(RuleModelBase.FromRule(rule)); } models.Add(model); } } } return(View(models)); }