private static int LoadByGuid2(Guid guid, RockContext rockContext) { var eventCalendarService = new EventCalendarService(rockContext); return(eventCalendarService .Queryable().AsNoTracking() .Where(c => c.Guid.Equals(guid)) .Select(c => c.Id) .FirstOrDefault()); }
private EventCalendar ResolveCalendarSettingOrThrow(RockContext rockContext, string calendarSettingValue) { var calendarService = new EventCalendarService(rockContext); EventCalendar calendar = null; // Verify that a calendar reference has been provided. if (string.IsNullOrWhiteSpace(calendarSettingValue)) { throw new Exception($"A calendar reference must be specified."); } // Get by ID. var calendarId = calendarSettingValue.AsIntegerOrNull(); if (calendarId != null) { calendar = calendarService.Get(calendarId.Value); } // Get by Guid. if (calendar == null) { var calendarGuid = calendarSettingValue.AsGuidOrNull(); if (calendarGuid != null) { calendar = calendarService.Get(calendarGuid.Value); } } // Get By Name. if (calendar == null) { var calendarName = calendarSettingValue.ToString(); if (!string.IsNullOrWhiteSpace(calendarName)) { calendar = calendarService.Queryable() .Where(x => x.Name != null && x.Name.Equals(calendarName, StringComparison.OrdinalIgnoreCase)) .FirstOrDefault(); } } if (calendar == null) { throw new Exception($"Cannot find a calendar matching the reference \"{ calendarSettingValue }\"."); } return(calendar); }
private static EventCalendarCache LoadById2(int id, RockContext rockContext) { var eventCalendarService = new EventCalendarService(rockContext); var eventCalendarModel = eventCalendarService .Queryable().AsNoTracking() .FirstOrDefault(c => c.Id == id); if (eventCalendarModel != null) { return(new EventCalendarCache(eventCalendarModel)); } return(null); }
public void EventItemService_GetActiveEventsByCalendar_ReturnsOnlyEventsInSpecifiedCalendar() { var rockContext = new RockContext(); var calendarService = new EventCalendarService(rockContext); var internalCalendar = calendarService.Queryable() .FirstOrDefault(x => x.Name == "Internal"); var eventItemService = new EventItemService(rockContext); var internalEvents = eventItemService.GetActiveItemsByCalendarId(internalCalendar.Id) .ToList(); // The Event "Staff Meeting" exists in the Internal calendar. // It should be returned in the list of active items. var staffEvent = internalEvents.FirstOrDefault(x => x.Name == "Staff Meeting"); Assert.That.IsNotNull(staffEvent, "Expected event not found in result set."); // The Event "Warrior Youth Event" only exists in the External calendar. // It should not be returned in the list of active items. var warriorEvent = internalEvents.FirstOrDefault(x => x.Name == "Warrior Youth Event"); Assert.That.IsNull(warriorEvent, "Unexpected event found in result set."); }