public static IActivity GetActivity(this ICache c, int activityId) { var result = c.Activities().FirstOrDefault(x => x.ActivityID == activityId); if (result == null) { throw new CacheItemNotFoundException <IActivity>(x => x.ActivityID, activityId); } return(result); }
public static IEnumerable <IActivity> AuthorizedActivities(this ICache c, ClientAuthLevel authLevel) { //procActivitySelect @Action = 'SelectAuthorizedActivities' //SELECT ActivityID, ActivityName, ListOrder, Chargeable, Editable, AccountType, UserAuth, InviteeType, InviteeAuth, // StartEndAuth, NoReservFenceAuth, NoMaxSchedAuth, [Description], IsActive, IsFacilityDownTime //FROM Activity //WHERE UserAuth &@UserAuth > 0 // AND Editable = 1 AND IsActive = 1 // AND IsFacilityDownTime = 0--This keeps the Facility Down Time activity out of the select when making reservations. Staff should use the link at the top of the page instead. //ORDER BY ListOrder var result = c.Activities().Where(x => x.IsActive && (x.UserAuth & authLevel) > 0 && x.Editable && !x.IsFacilityDownTime).OrderBy(x => x.ListOrder).ToList(); return(result); }