private string GetHeadlineForCard(CardStats cardStat) { if (cardStat.CardData.Points > 0) return String.Format("<strong>{0}</strong> <span>({1}pts)</span>", cardStat.CardData.Card.Name, cardStat.CardData.Points); return String.Format("<strong>{0}</strong> (NE)", cardStat.CardData.Card.Name); }
private string GetCategory(CardStats cardStat) { var tags = _configuration.TimelineJsTags; foreach (var tag in tags) { if (cardStat.CardData.Card.Labels.Any(l => l.Name == tag)) return tag; } return _configuration.TimelineJsDefaultTag; }
public ListEntry GetCompletedCardEntry(CardStats cardStat, TimeSpan timeOffset) { var row = new ListEntry(); row.Elements.Add(new ListEntry.Custom() { LocalName = "startdate", Value = cardStat.DoneAction.DateInTimeZone(_configuration.TimeZone).Add(timeOffset).ToString() }); row.Elements.Add(new ListEntry.Custom() { LocalName = "enddate", Value = "" }); row.Elements.Add(new ListEntry.Custom() { LocalName = "headline", Value = GetHeadlineForCard(cardStat) }); row.Elements.Add(new ListEntry.Custom() { LocalName = "text", Value = String.Format("{0} Elapsed Day(s)", cardStat.BusinessDaysElapsed) }); row.Elements.Add(new ListEntry.Custom() { LocalName = "media", Value = cardStat.CardData.Card.Url }); row.Elements.Add(new ListEntry.Custom() { LocalName = "tag", Value = GetCategory(cardStat) }); return row; }
public void AddGoodCardStat(CardStats stat) { CardStats.Add(stat); }
public void AddBadCardStat(CardStats stat) { BadCardStats.Add(stat); }
private void BuildCardStats(TrelloData trelloData, BoardStats boardStats) { foreach (var listData in trelloData.ListDataCollection) { foreach (var cardData in listData.CardDataCollection) { var stat = new CardStats() { CardData = cardData, ListData = listData, ListNames = _configuration.ListNames, TimeZone = _configuration.TimeZone }; if (stat.IsComplete || stat.IsInProgress || stat.IsInTest) boardStats.AddGoodCardStat(stat); else boardStats.AddBadCardStat(stat); } } }