protected string GetRatioCapacity(Arena.Custom.SECC.Checkin.Entity.Occurrence o) { int ratioCapacity = 0; string capacityValue = string.Empty; if (o.AttendanceTypeRatio != null) { ratioCapacity = o.CurrentVolunteers * (int)o.AttendanceTypeRatio; capacityValue = "(" + ratioCapacity.ToString() + ")"; } else { capacityValue = "(N/A)"; } return(capacityValue); }
protected string RatiosText(Arena.Custom.SECC.Checkin.Entity.Occurrence o) { if (o.IsRoomClosed) { return("[room closed]"); } switch (o.RatioStatus) { case Arena.Custom.SECC.Checkin.Entity.RatioStatus.OverLimit: return(string.Format("[{0} over]", o.CurrentAttendees - o.PeoplePerLeader * o.CurrentVolunteers)); break; case Arena.Custom.SECC.Checkin.Entity.RatioStatus.CapReached: return("[cap reached]"); break; case Arena.Custom.SECC.Checkin.Entity.RatioStatus.RatioReached: return("[ratio reached]"); break; case Arena.Custom.SECC.Checkin.Entity.RatioStatus.NotEnoughLeaders: return("[too few leaders]"); break; default: if (o.Available.HasValue && o.Available.Value < 4) { return(string.Format("[{0} remaining]", o.Available.Value)); } else { return(string.Empty); } break; } }
protected bool RatiosTextBold(Arena.Custom.SECC.Checkin.Entity.Occurrence o) { return(!o.IsRoomClosed && (o.RatioStatus == Arena.Custom.SECC.Checkin.Entity.RatioStatus.OverLimit || (o.RatioStatus == Arena.Custom.SECC.Checkin.Entity.RatioStatus.Ok && o.Available.HasValue && o.Available.Value < 4))); }