public static FantasyDate AddYears(this FantasyDate date, int y) { var outDate = new FantasyDate(date); outDate.IncrementYears(y); return(outDate); }
public static FantasyDate AddMonths(this FantasyDate date, int m) { var outDate = new FantasyDate(date); outDate.IncrementMonths(m); return(outDate); }
public static FantasyDate AddDays(this FantasyDate date, int d) { var outDate = new FantasyDate(date); outDate.IncrementDays(d); return(outDate); }
public static FantasyDate AddDate(this FantasyDate date, int years, int months, int days) { var outDate = new FantasyDate(date); outDate.IncrementYears(years); outDate.IncrementMonths(months); outDate.IncrementDays(days); return(outDate); }
public IActionResult CampaignLiveDisplay(int campaignId) { var context = PFDAL.GetContext(); var campaign = context.Campaign.Find(campaignId); if (campaign == null || campaign.CampaignId == 0) { return(NotFound()); } var model = new LiveDisplayModel() { ActivePlayer = Player, CampaignId = campaignId, CampaignName = campaign.CampaignName, FantasyDate = "{}", ChatRoom = new PFDBCommon.DBModels.ChatRoom { ChatRoomId = -1, ChatRoomName = "NONE" } }; var campaignData = context.CampaignData.Where(x => x.CampaignId == campaign.CampaignId); if (campaignData != null) { var campaignDate = campaignData.FirstOrDefault(x => x.Key == PFConfig.STR_FANTASYDATE); if (campaignDate != null) { var seasons = context.Season.ToList(); var months = context.Month.ToList(); var CurrentDate = new FantasyDate(campaignDate.Value); var CurrentMonth = months.FirstOrDefault(x => x.MonthOrder == CurrentDate.Month); var grandDate = $"YEAR {CurrentDate.Year} AA, Season of {seasons.FirstOrDefault(x => x.SeasonId == CurrentMonth.SeasonId)?.Name}, Month of {CurrentMonth?.Name}, Day {CurrentDate.Day}"; model.FantasyDate = JsonConvert.SerializeObject(new { grandDate, date = campaignDate.Value, monthName = CurrentMonth.Name, day = CurrentDate.Day, campaignId }); } var displayMap = campaignData.FirstOrDefault(x => x.Key == PFConfig.STR_LIVEDISPLAYMAP); if (displayMap != null) { model.MapPath = displayMap.Value; } var mapData = campaignData.FirstOrDefault(x => x.Key == PFConfig.STR_LIVEDISPLAYMAPDATA); if (mapData != null) { model.MapSaveData = mapData.Value; } } return(View("LiveDisplay", model)); }
public LiveEvent(TrackedEvent evt) { _dateNextOccurring = new FantasyDate(evt.DateOccurring); _dateLastOccurred = string.IsNullOrWhiteSpace(evt.DateLastOccurred) ? null : new FantasyDate(evt.DateLastOccurred); _name = evt.Name; _notes = evt.Notes; _reoccurFreq = evt.ReoccurFreq; _eventId = evt.TrackedEventId; _location = evt.Location; _campaignId = evt.CampaignId; _eventType = (TrackedEventType)evt.TrackedEventType; _data = evt.TrackedEventData; _activeEvent = false; _continentId = evt.ContinentId ?? 0; _eventFrequency = (TrackedEventFrequency)evt.TrackedEventFreq; }
public IActionResult UpdateDate(int campaignId) { var context = PFDAL.GetContext(); var data = context.CampaignData.Where(x => x.CampaignId == campaignId); var date = data.FirstOrDefault(x => x.Key.Equals(PFConfig.STR_FANTASYDATE))?.Value; if (!string.IsNullOrWhiteSpace(date)) { var seasons = context.Season.ToList(); var months = context.Month.ToList(); var CurrentDate = new FantasyDate(date); var CurrentMonth = months.FirstOrDefault(x => x.MonthOrder == CurrentDate.Month); var grandDate = $"YEAR {CurrentDate.Year} AA, Season of {seasons.FirstOrDefault(x => x.SeasonId == CurrentMonth.SeasonId)?.Name}, Month of {CurrentMonth?.Name}, Day {CurrentDate.Day}"; _hubContext.Clients.All.SendAsync("ReceiveDate", new { grandDate, date, monthName = CurrentMonth.Name, day = CurrentDate.Day, campaignId }); // TODO - only send update to clients connected to the campaignId return(Ok()); } return(BadRequest("No date found for campaign " + campaignId)); }
public int DaysUntil(FantasyDate evt) { return(DateNextOccurring.DaysSince(evt)); }
public int DaysSince(FantasyDate evt) { return(DateLastOccurred.DaysSince(evt)); }