Esempio n. 1
0
 private static void Injuries(ref string s, NflTeam offensiveTeam, NflTeam defensiveTeam,
                              string offName, string defName)
 {
     if ((offensiveTeam == null) || (defensiveTeam == null))
     {
         Utility.Announce("Injuries:one or more teams are null");
     }
     else
     {
         s += "<br>\n";
         //  Table with one row which has 2 columns
         s += HtmlLib.TableOpen("BORDER='1' BORDERCOLOR='BLUE'");
         s += HtmlLib.TableRowOpen();
         s += HtmlLib.TableDataAttr("Injuries", "COLSPAN='2'");
         s += HtmlLib.TableRowClose();
         s += HtmlLib.TableRowOpen();
         s += HtmlLib.TableDataAttr("Offence " + offName, "WIDTH='400'");
         s += HtmlLib.TableDataAttr("Defence " + defName, "WIDTH='400'");
         s += HtmlLib.TableRowClose();
         s += HtmlLib.TableRowOpen();
         s += HtmlLib.TableDataAttr(offensiveTeam.InjuredList(true), "VALIGN='TOP'");
         s += HtmlLib.TableDataAttr(defensiveTeam.InjuredList(false), "VALIGN='TOP'");
         s += HtmlLib.TableRowClose() + HtmlLib.TableClose() + "<br>\n";
     }
 }
Esempio n. 2
0
 private static void FreeAgents(ref string s, string homeName, string awayName, NflTeam homeTeam, NflTeam awayTeam)
 {
     //RosterLib.Utility.Announce( "Doing FreeAgents");
     if ((homeTeam == null) || (awayTeam == null))
     {
         Utility.Announce("FreeAgents:one or more teams are null");
     }
     else
     {
         s += "<br>\n";
         //  Table with one row which has 2 columns Away and Home
         s += HtmlLib.TableOpen("BORDER='1' BORDERCOLOR='BLUE'");
         s += HtmlLib.TableRowOpen();
         s += HtmlLib.TableDataAttr("Free Agents/Backups", "COLSPAN='2'");
         s += HtmlLib.TableRowClose();
         s += HtmlLib.TableRowOpen();
         s += HtmlLib.TableDataAttr("Away " + awayName, "WIDTH='400'");
         s += HtmlLib.TableDataAttr("Home " + homeName, "WIDTH='400'");
         s += HtmlLib.TableRowClose();
         s += HtmlLib.TableRowOpen();
         s += HtmlLib.TableDataAttr(awayTeam.FreeAgents(true, true, false), "VALIGN='TOP'");
         s += HtmlLib.TableDataAttr(homeTeam.FreeAgents(true, true, false), "VALIGN='TOP'");
         s += HtmlLib.TableRowClose() + HtmlLib.TableClose() + "<br>\n";
     }
     //RosterLib.Utility.Announce( "Finished FreeAgents");
 }
Esempio n. 3
0
        public string CardOffence()
        {
            //  Force the stats to be tallied
            var theSeason = Utility.CurrentSeason();

            if (Utility.CurrentWeek() == "0")
            {
                theSeason = Utility.LastSeason();
            }
            Team.PpUnit(theSeason);
            Team.PoUnit(theSeason);
            Team.RoUnit(theSeason);

            var innerTable = HtmlLib.TableOpen("class='title' cellpadding='1' cellspacing='1' border='0' width='950'") +
                             "\n\t"

                             + Row1()
                             + Row2()
                             + Row3()

                             + HtmlLib.TableClose() + "\n";

            return(HtmlLib.TableOpen("cellpadding='1' cellspacing='1' border='1' bordercolor='BLUE'") + "\n\t" +
                   HtmlLib.TableRowOpen() + HtmlLib.TableDataAttr(Team.TeamCode, "ALIGN='LEFT'") +
                   HtmlLib.TableDataAttr("OFFENCE", "ALIGN='RIGHT'") + HtmlLib.TableRowClose() +
                   HtmlLib.TableRowOpen() + HtmlLib.TableDataAttr(innerTable, "COLSPAN='2'") + HtmlLib.TableRowClose() +
                   HtmlLib.TableClose());
        }
Esempio n. 4
0
        private static string FooterRow(string label, string fmt, double amt)
        {
            string row =
                HtmlLib.TableRowOpen() + HtmlLib.TableData(label) +
                HtmlLib.TableDataAttr(string.Format(fmt, amt), "ALIGN='RIGHT'")
                + HtmlLib.TableRowClose();

            return(row);
        }
Esempio n. 5
0
        public string SeasonProjection(string metricName, IPrognosticate predictor, DateTime projectionDate)
        {
            //  Start off with the division name
            var s = HtmlLib.TableRowOpen("BGCOLOR='LIGHTGREY'") +
                    HtmlLib.TableDataAttr(HtmlLib.Font("VERDANA", NameOut(), "-1"), "ALIGN='CENTER' COLSPAN='19'") +
                    HtmlLib.TableRowClose() + "\n";

            return(TeamList.Cast <NflTeam>()
                   .Aggregate(s, (current, t) => current + t.SeasonProjection(predictor, metricName, projectionDate)));
        }
Esempio n. 6
0
        private static string SummaryHeader()
        {
            var htmlOut =
                HtmlLib.TableRowOpen() + "\n\t\t"
                + HtmlLib.TableDataAttr(HtmlLib.Bold("AWAY"), "colspan='5' class='gponame'") + "\n\t"
                + HtmlLib.TableDataAttr(HtmlLib.Bold("---"), "colspan='1' class='gponame'") + "\n\t"
                + HtmlLib.TableDataAttr(HtmlLib.Bold("HOME"), "colspan='5' class='gponame'") + "\n\t"
                + HtmlLib.TableRowClose() + "\n";

            return(htmlOut);
        }
Esempio n. 7
0
        private string LinkedCellContent(SeasonOpposition opp, int k, string teamCode)
        {
            if (opp.Opponent.Equals("BYE"))
            {
                return(HtmlLib.TableDataAttr("   ", "ALIGN='CENTER' BGCOLOR='WHITE'"));
            }

            var rawdata    = ProjectionUrl(opp.Metric, opp.Opponent, opp.IsHome(), teamCode, k + 1);
            var formatting = $"ALIGN='CENTER' BGCOLOR='{MetricColour( opp.Metric )}'";

            return(HtmlLib.TableDataAttr(rawdata, formatting));
        }
Esempio n. 8
0
        public string Kickers()
        {
            //  Start off with the division name
            var s = HtmlLib.TableRowOpen("BGCOLOR='LIGHTGREY'") +
                    HtmlLib.TableDataAttr(HtmlLib.Font("VERDANA", NameOut(), "-1"), "ALIGN='CENTER' COLSPAN='19'") +
                    HtmlLib.TableRowClose() + "\n";

            foreach (NflTeam t in TeamList)
            {
                s          += t.KickerProjection();
                FieldGoals += t.FieldGoals;
            }
            return(s);
        }
Esempio n. 9
0
        private static string Header(string cHeading)
        {
            var htmlOut = HtmlLib.TableOpen("class='title' cellpadding='0' cellspacing='0' width='100%'") + "\n\t"
                          + HtmlLib.TableRowOpen(TopLine()) + "\n\t\t"
                          + HtmlLib.TableDataAttr(HtmlLib.Bold(cHeading), "colspan='2' class='gponame'") + "\n\t"
                          + HtmlLib.TableRowClose() + "\n\t"
                          + HtmlLib.TableRowOpen() + "\n\t\t"
                          + HtmlLib.TableDataAttr(TopLine(), "id='dtstamp'") + "\n\t\t"
                          + HtmlLib.TableData(HtmlLib.Div("objshowhide", "tabindex='0'")) + "\n\t"
                          + HtmlLib.TableRowClose() + "\n"
                          + HtmlLib.TableClose() + "\n";

            return(htmlOut);
        }
Esempio n. 10
0
        private static string Prediction(NflTeam team, IPrognosticate predictor)
        {
            var predictionStr = String.Empty;

            if (team != null)
            {
                predictionStr =
                    HtmlLib.TableOpen("BORDER='1' CELLSPACING='0' CELLPADDING='0'") +
                    HtmlLib.TableRowOpen() +
                    HtmlLib.TableDataAttr(team.Name, "COLSPAN='19'") +
                    HtmlLib.TableRowClose() +
                    team.SeasonProjection(predictor, "Spread", DateTime.Now);
            }
            return(predictionStr);
        }
Esempio n. 11
0
        private string Header(string cHeading)
        {
            var htmlOut = HtmlLib.TableOpen("class='title' cellpadding='0' cellspacing='0'") + "\n\t"
                          + HtmlLib.TableRowOpen() + "\n\t\t"
                          + HtmlLib.TableDataAttr(cHeading, "colspan='2' class='gponame'") + "\n\t"
                          + HtmlLib.TableRowClose() + "\n\t"
                          + HtmlLib.TableRowOpen() + "\n\t\t"
                          + HtmlLib.TableDataAttr("Report Date:" + DateTime.Now.ToString("dd MMM yy  HH:mm") +
                                                  "   elapsed:" + TimeTaken, "id='dtstamp'") + "\n\t\t"
                          + HtmlLib.TableData(HtmlLib.Div("objshowhide", "tabindex='0'")) + "\n\t"
                          + HtmlLib.TableRowClose() + "\n"
                          + HtmlLib.TableClose() + "\n";

            return(htmlOut);
        }
Esempio n. 12
0
        private void AwayOffUnits(ref string s)
        {
#if DEBUG
            Utility.Announce("AwayOffUnits");
#endif
            if (_game == null)
            {
                Utility.Announce("AwayOffUnits: null game");
            }
            else
            {
                if ((_game.HomeNflTeam == null) || (_game.AwayNflTeam == null))
                {
                    Utility.Announce("AwayOffUnits: null team");
                }
                else
                {
                    s += HtmlLib.TableOpen("BORDER='1'");

                    s += HtmlLib.TableRowOpen();
                    s += HtmlLib.TableDataAttr(_game.AwayNflTeam.RoList(), "VALIGN='TOP'");
                    s += HtmlLib.TableDataAttr(_game.HomeNflTeam.RdList(), "VALIGN='TOP'");
                    s += HtmlLib.TableRowClose();

                    s += HtmlLib.TableRowOpen();
                    s += HtmlLib.TableDataAttr(_game.AwayNflTeam.RoUnit(_game.Season), "VALIGN='TOP'");
                    s += HtmlLib.TableDataAttr(_game.HomeNflTeam.RdUnit(_game.Season), "VALIGN='TOP'");
                    s += HtmlLib.TableRowClose();

                    s += HtmlLib.TableRowOpen();
                    s += HtmlLib.TableDataAttr(_game.AwayNflTeam.PoList(), "VALIGN='TOP'");
                    s += HtmlLib.TableDataAttr(_game.HomeNflTeam.PdList(), "VALIGN='TOP'");
                    s += HtmlLib.TableRowClose();

                    s += HtmlLib.TableRowOpen();
                    s += HtmlLib.TableDataAttr(_game.AwayNflTeam.PoUnit(_game.Season), "VALIGN='TOP'");
                    s += HtmlLib.TableDataAttr(_game.HomeNflTeam.PdUnit(_game.Season), "VALIGN='TOP'");
                    s += HtmlLib.TableRowClose();

                    s += HtmlLib.TableRowOpen();
                    s += HtmlLib.TableDataAttr(_game.AwayNflTeam.PpUnit(_game.Season), "VALIGN='TOP'");
                    s += HtmlLib.TableDataAttr(_game.HomeNflTeam.PrUnit(_game.Season), "VALIGN='TOP'");
                    s += HtmlLib.TableRowClose();

                    s += HtmlLib.TableClose();
                }
            }
        }
Esempio n. 13
0
        private string Footer()
        {
            var htmlOut = HtmlLib.TableOpen("class='title' cellpadding='0' cellspacing='0'") + "\n\t"
                          + HtmlLib.TableRowOpen() + "\n\t\t"
                          + HtmlLib.TableDataAttr(_footer, "colspan='2' class='gponame'") + "\n\t"
                          + HtmlLib.TableRowClose() + "\n\t";

            if (ShowElapsedTime)
            {
                htmlOut += HtmlLib.TableRowOpen() + "\n\t\t"
                           + HtmlLib.TableDataAttr("elapsed time:" + TimeTaken, "id='dtstamp'") + "\n\t\t"
                           + HtmlLib.TableData(HtmlLib.Div("objshowhide", "tabindex='0'")) + "\n\t"
                           + HtmlLib.TableRowClose() + "\n";
            }
            htmlOut += HtmlLib.TableClose() + "\n";
            return(htmlOut);
        }
Esempio n. 14
0
        private string CellContent(SeasonOpposition opp)
        {
            if (string.IsNullOrEmpty(opp.Opponent.Trim()))
            {
                return(HtmlLib.TableDataAttr("BYE", "ALIGN='CENTER' BGCOLOR='WHITE'"));
            }

            if (opp.Metric == 0)
            {
                return(HtmlLib.TableDataAttr("tie", "ALIGN='CENTER' BGCOLOR='TOMATO'"));
            }

            var rawdata    = opp.Metric.ToString(CultureInfo.InvariantCulture);
            var formatting = $"ALIGN='CENTER' BGCOLOR='{MetricColour( opp.Metric )}'";

            return(HtmlLib.TableDataAttr(rawdata, formatting));
        }
Esempio n. 15
0
        private string AverageLine(int[] tot, int rowCount)
        {
            var tl = "";

            if (!Totals)
            {
                return("");
            }

            if (Body != null)
            {
                tl = HtmlLib.TableRowOpen();
                if (DoRowNumbers)
                {
                    tl += HtmlLib.TableDataAttr("Averages", "ALIGN='RIGHT' VALIGN='TOP'");
                }

                for (int i = 0; i < _columns.Count; i++)
                {
                    var col = ( ReportColumn )_columns[i];
                    if (col.CanAccumulate)
                    {
                        var dc    = Body.Columns[col.Source];
                        var sData = FormatData(dc, "{0:0.0}", string.Format("{0:0.0}", (( decimal )tot[i] / ( decimal )rowCount)));
                        tl       += HtmlLib.TableDataAttr(sData, AttrFor(dc, (ReportColumn.ColourDelegate)null, ""));
                        LastTotal = tot[i];
                    }
                    else if (col.ColumnTotalDelegate != null)
                    {
                        string output = col.ColumnTotalDelegate();
                        tl += HtmlLib.TableDataAttr(output, "ALIGN='CENTER' VALIGN='TOP'");
                    }
                    else
                    {
                        tl += HtmlLib.TableData(HtmlLib.HtmlPad("", 1));
                    }
                }
                tl += HtmlLib.TableRowClose();
            }
            return(tl);
        }
Esempio n. 16
0
        private string TotalLine(int[] tot)
        {
            var tl = "";

            if (!Totals)
            {
                return("");
            }

            if (Body != null)
            {
                tl = HtmlLib.TableRowOpen();
                if (DoRowNumbers)
                {
                    tl += HtmlLib.TableDataAttr("Totals", "ALIGN='RIGHT' VALIGN='TOP'");
                }

                for (int i = 0; i < _columns.Count; i++)
                {
                    var col = ( ReportColumn )_columns[i];
                    if (col.CanAccumulate)
                    {
                        var dc    = Body.Columns[col.Source];
                        var sData = FormatData(dc, col.Format, tot[i].ToString(CultureInfo.InvariantCulture));
                        tl       += HtmlLib.TableDataAttr(sData, AttrFor(dc, (ReportColumn.ColourDelegate)null, ""));
                        LastTotal = tot[i];
                    }
                    else if (col.ColumnTotalDelegate != null)
                    {
                        string output = col.ColumnTotalDelegate();
                        tl += HtmlLib.TableDataAttr(output, "ALIGN='CENTER' VALIGN='TOP'");
                    }
                    else
                    {
                        tl += HtmlLib.TableData(HtmlLib.HtmlPad("", 1));
                    }
                }
                tl += HtmlLib.TableRowClose();
            }
            return(tl);
        }
Esempio n. 17
0
        public string BodyOut()
        {
            var rowCount = 0;
            var bBlank   = false;
            var tot      = new int[_columns.Count];

            for (var i = 0; i < _columns.Count; i++)
            {
                tot[i] = 0;
            }

            var sLastData = "";
            var s         = "";

            if (Body != null)
            {
                s += HtmlLib.TableOpen("border=1 cellpadding='3' cellspacing='3'");
                s += ColHeaders();
                //  now just add a series of rows for each record
                for (var j = 0; j < Body.DefaultView.Count; j++)
                {
                    rowCount++;
                    if (IsEven(rowCount))
                    {
                        s += HtmlLib.TableRowOpen("BGCOLOR='MOCCASIN'");
                    }
                    else
                    {
                        s += HtmlLib.TableRowOpen();
                    }

                    if (DoRowNumbers)
                    {
                        s += HtmlLib.TableDataAttr(
                            rowCount.ToString(
                                CultureInfo.InvariantCulture),
                            "ALIGN='RIGHT' VALIGN='TOP'");
                    }

                    //  plug in the data for each column defined
                    for (var i = 0; i < _columns.Count; i++)
                    {
                        var col = ( ReportColumn )_columns[i];
                        var dc  = Body.Columns[col.Source];

                        var sVal  = Body.DefaultView[j][col.Source].ToString();
                        var sData = FormatData(dc, col.Format, sVal);

                        if (col.CanAccumulate)
                        {
                            Totals = true;
                            if (sVal.Length > 0)
                            {
                                tot[i] += QuantityOf(sVal);
                            }
                        }

                        if (i == 0)
                        {
                            if (sData == sLastData)
                            {
                                bBlank = true;
                            }
                            else
                            {
                                sLastData = sData;
                                bBlank    = false;
                            }
                        }
                        if (i > 5)
                        {
                            bBlank = false;
                        }
                        if (bBlank && !CarryRow)
                        {
                            sData = " ";
                        }

                        if (col.BackGroundColourDelegateFromRole != null)
                        {
                            s += HtmlLib.TableDataAttr(
                                sData, AttrFor(
                                    dc,
                                    col.BackGroundColourDelegateFromRole,
                                    sVal));
                        }
                        else
                        {
                            s += HtmlLib.TableDataAttr(
                                sData,
                                AttrFor(
                                    dc,
                                    col.BackGroundColourDelegate,
                                    sVal));
                        }
                    }
                    s += HtmlLib.TableRowClose();
                }
                s += TotalLine(tot);
                s += AverageLine(tot, rowCount);
                s += HtmlLib.TableClose();
            }
            return(s);
        }
Esempio n. 18
0
 private string AddFooterLine(string label, int amount)
 {
     return(HtmlLib.TableRowOpen() + HtmlLib.TableData(label) +
            HtmlLib.TableDataAttr(amount.ToString(), "ALIGN='RIGHT'") +
            HtmlLib.TableRowClose());
 }
Esempio n. 19
0
 private string AddFooterLine(string label, decimal amount)
 {
     return(HtmlLib.TableRowOpen() + HtmlLib.TableData(label) +
            HtmlLib.TableDataAttr(string.Format("{0:##0.0}", amount), "ALIGN='RIGHT'") +
            HtmlLib.TableRowClose());
 }
Esempio n. 20
0
        public string RenderAsHtml()
        {
            var    s = HtmlLib.TableRowOpen();
            string sOpp;

            //  three rows
            s += HtmlLib.TableData(_team.TeamUrl()) + HtmlLib.TableData("");
            for (var i = 1; i < 18; i++)
            {
                s += HtmlLib.TableDataAttr(HtmlLib.Font("ARIAL", i.ToString(), "-2"),
                                           "ALIGN='CENTER' BGCOLOR='MOCCASIN'"); //  week number row
            }
            s += HtmlLib.TableRowClose();

            //  Row 2  Schedule this year
            s += HtmlLib.TableRowOpen() +
                 HtmlLib.TableDataAttr(Label1Out(), Colour1Out() + " ALIGN='CENTER'");
            s += HtmlLib.TableData(_metricName);
            for (var j = 0; j < Constants.K_WEEKS_IN_REGULAR_SEASON; j++)
            {
                if ((_opps[j].Opponent == "BYE") || (_opps[j].Opponent.Trim().Length == 0))
                {
                    sOpp = _opps[j].Opponent;
                }
                else
                {
                    sOpp = (_opps[j].IsHome() ? "v" : "@") + TeamUrl(_opps[j].Opponent);
                }
                s += HtmlLib.TableDataAttr(sOpp, "ALIGN='CENTER'" + OpponentColour(_opps[j].Opponent));
            }
            s += HtmlLib.TableRowClose();

            if (AddBlankRow)
            {
                s += HtmlLib.TableRowOpen() + HtmlLib.TableDataAttr(HtmlLib.HtmlPad("", 2), "ALIGN='CENTER'");
                s += HtmlLib.TableDataAttr(HtmlLib.HtmlPad("", 2), "ALIGN='RIGHT' BGCOLOR='WHITE'");

                for (var k = 0; k < Constants.K_WEEKS_IN_REGULAR_SEASON; k++)
                {
                    s += HtmlLib.TableDataAttr(HtmlLib.HtmlPad("", 2), string.Format("ALIGN='CENTER' BGCOLOR='{0}'", "WHITE"));
                }
                s += HtmlLib.TableRowClose();
            }
            //  Row 3 Total  (W-L) tot spread
            s += HtmlLib.TableRowOpen() +
                 HtmlLib.TableDataAttr(Stats1Out(), "ALIGN='CENTER'");
            s += HtmlLib.TableDataAttr(
                HtmlLib.Bold(_total.ToString()),
                string.Format("ALIGN='RIGHT' BGCOLOR='{0}'", TotalColour()));

            for (var k = 0; k < Constants.K_WEEKS_IN_REGULAR_SEASON; k++)
            {
                var mBit = LinkedCellContent(_opps[k], k, _team.TeamCode);
                s += mBit;
            }
            if (_metricName == "Spread")
            {
                //  Additional Row 4 last year's spreads
                s += HtmlLib.TableRowOpen() + HtmlLib.TableDataAttr(Stats2Out(), "ALIGN='CENTER'");
                s += HtmlLib.TableData("prev");
                for (var l = 0; l < Constants.K_WEEKS_IN_REGULAR_SEASON; l++)
                {
                    if ((_prevOpp[l].Opponent == "BYE") || (_prevOpp[l].Opponent.Length == 0))
                    {
                        sOpp = _prevOpp[l].Opponent;
                    }
                    else
                    {
                        sOpp = (_prevOpp[l].IsHome() ? "v" : "@")
                               + MatchupUrl(l + 1, _team.TeamCode, _prevOpp[l].Opponent, _prevOpp[l].IsHome());
                    }
                    s += HtmlLib.TableDataAttr(sOpp, "ALIGN='CENTER'" +
                                               OpponentColour(_prevOpp[l].Opponent));
                }
                s += HtmlLib.TableRowClose();
                //  Row 5 last years results
                s += HtmlLib.TableRowOpen() + HtmlLib.TableDataAttr(Stats3Out(), "ALIGN='CENTER'");                    // W-L
                s += HtmlLib.TableDataAttr(TotalPrev().ToString(), "ALIGN='RIGHT'");
                for (var m = 0; m < Constants.K_WEEKS_IN_REGULAR_SEASON; m++)
                {
                    var mBit = CellContent(_prevOpp[m]);
                    s += mBit;
                }
                s += HtmlLib.TableRowClose();
            }

            return(s);
        }