/// <summary> /// Defines a League. /// </summary> /// <param name="wfscore">The Worldfootball definition.</param> /// <param name="parameters"></param> /// <returns></returns> private static List <BaseScore> DefineLeague(WorldFootballScore wfscore, ScoreParameter[] parameters) { int index = 0; List <BaseScore> scores = new List <BaseScore>(); string fullname = wfscore.FullLeagueName + "-" + wfscore.Season; ScoreDetails details = GetScoreDetails(wfscore, parameters); int round = details.Round; // add results details.AddResults(scores, round, IMG_RESULTS, fullname, index++); // Standings string element = "0"; string nbLeague = wfscore.Details.Split(',').FirstOrDefault(x => x.Contains(";")); if (!String.IsNullOrEmpty(nbLeague)) { element = nbLeague; } GenericScore sc = CreateNewScore(wfscore.Id, "table", "Standings", IMG_STANDINGS, element, index++); sc.BetweenElts = BetweenElements.RepeatHeader; sc.Url = String.Format("{0}spielplan/{1}-spieltag/{2}/tabelle/", WF_URL, fullname, round); sc.Skip = 1; sc.Sizes = ScoreCenter.GetParameter(parameters, "WF.LeagueStandings", SIZES_STANDINGS); sc.Dictionary = "WF.table"; sc.Headers = ScoreCenter.GetParameter(parameters, "WF.HeaderStandings", HEADERS_STANDINGS); sc.AddLevelsRule(wfscore.Levels); sc.AddHighlightRule(wfscore.Highlights, 3, RuleAction.FormatLine); scores.Add(sc); details.AddTopScorerScore(scores, fullname, index++); details.AddAssistsScore(scores, fullname, index++); details.AddStadiumScore(scores, fullname, index++); details.AddRefereeScore(scores, fullname, index++); details.AddHistoryScore(scores, index++); details.AddTopScorerHistScore(scores, index++); return(scores); }
public static IList <BaseScore> GetRealScores(FussballdeScore score, ScoreParameter[] parameters) { List <BaseScore> scores = new List <BaseScore>(); GenericScore sc = null; int index = 0; var details = score.Details.Split(',').ToList(); sc = GenericScore.CreateNewScore(score.Id, C_KEY_RESULTS, "Results", XPATH_RESULTS, IMG_RESULTS, "", index++); sc.Url = GetUrl(score.Url, C_KEY_RESULTS); SetRound(sc); sc.Skip = 1; sc.Dictionary = "Fussballde"; sc.Sizes = ScoreCenter.GetParameter(parameters, "Fde.SizesResults", SIZES_RESULTS); sc.Headers = ScoreCenter.GetParameter(parameters, "Fde.HeaderResults", HEADER_RESULTS); sc.AddRule(3, Operation.Contains, CUT_BEFORE, RuleAction.CutBefore, ""); sc.AddRule(5, Operation.Contains, CUT_BEFORE, RuleAction.CutBefore, ""); sc.AddRule(1, Operation.Contains, "vorheriger Spieltag", RuleAction.SkipLine, ""); sc.AddRule(1, Operation.Contains, "Verlegte Spiele", RuleAction.MergeCells, ""); sc.AddHighlightRule(score.Highlights, 0, RuleAction.FormatCell); scores.Add(sc); sc = GenericScore.CreateNewScore(score.Id, C_KEY_TABELLE, "Standings", XPATH_TABELLE, IMG_TABELLE, "", index++); sc.Url = GetUrl(score.Url, C_KEY_TABELLE); sc.Skip = 1; sc.Dictionary = "Fussballde"; sc.Sizes = ScoreCenter.GetParameter(parameters, "Fde.SizesTabelle", SIZES_TABELLE); sc.Headers = ScoreCenter.GetParameter(parameters, "Fde.HeaderTabelle", HEADER_TABELLE); sc.AddRule(2, Operation.Contains, CUT_BEFORE, RuleAction.CutBefore, ""); sc.AddLevelsRule(score.Levels); sc.AddHighlightRule(score.Highlights, 2, RuleAction.FormatLine); scores.Add(sc); if (details.Contains("runde")) { sc = GenericScore.CreateNewScore(score.Id, "hinrunde", "1st Round", XPATH_TABELLE, IMG_TABELLE_ROUND1, "0", index++); sc.Url = GetUrl(score.Url, C_KEY_RUNDE); sc.Skip = 1; sc.Dictionary = "Fussballde"; sc.Sizes = ScoreCenter.GetParameter(parameters, "Fde.SizesTabelle", SIZES_TABELLE); sc.Headers = ScoreCenter.GetParameter(parameters, "Fde.HeaderTabelle", HEADER_TABELLE); sc.AddRule(2, Operation.Contains, CUT_BEFORE, RuleAction.CutBefore, ""); sc.AddHighlightRule(score.Highlights, 2, RuleAction.FormatLine); scores.Add(sc); sc = GenericScore.CreateNewScore(score.Id, "rueckrunde", "2nd Round", XPATH_TABELLE, IMG_TABELLE_ROUND2, "1", index++); sc.Url = GetUrl(score.Url, C_KEY_RUNDE); sc.Skip = 1; sc.Dictionary = "Fussballde"; sc.Sizes = ScoreCenter.GetParameter(parameters, "Fde.SizesTabelle", SIZES_TABELLE); sc.Headers = ScoreCenter.GetParameter(parameters, "Fde.HeaderTabelle", HEADER_TABELLE); sc.AddRule(2, Operation.Contains, CUT_BEFORE, RuleAction.CutBefore, ""); sc.AddHighlightRule(score.Highlights, 2, RuleAction.FormatLine); scores.Add(sc); } sc = GenericScore.CreateNewScore(score.Id, "heim", "Home", XPATH_TABELLE, IMG_TABELLE_HOME, "0", index++); sc.Url = GetUrl(score.Url, C_KEY_HEIMAUS); sc.Skip = 1; sc.Dictionary = "Fussballde"; sc.Sizes = ScoreCenter.GetParameter(parameters, "Fde.SizesTabelle", SIZES_TABELLE); sc.Headers = ScoreCenter.GetParameter(parameters, "Fde.HeaderTabelle", HEADER_TABELLE); sc.AddRule(2, Operation.Contains, CUT_BEFORE, RuleAction.CutBefore, ""); sc.AddHighlightRule(score.Highlights, 2, RuleAction.FormatLine); scores.Add(sc); sc = GenericScore.CreateNewScore(score.Id, "auswaerts", "Away", XPATH_TABELLE, IMG_TABELLE_AWAY, "1", index++); sc.Url = GetUrl(score.Url, C_KEY_HEIMAUS); sc.Skip = 1; sc.Dictionary = "Fussballde"; sc.Sizes = ScoreCenter.GetParameter(parameters, "Fde.SizesTabelle", SIZES_TABELLE); sc.Headers = ScoreCenter.GetParameter(parameters, "Fde.HeaderTabelle", HEADER_TABELLE); sc.AddRule(2, Operation.Contains, CUT_BEFORE, RuleAction.CutBefore, ""); sc.AddHighlightRule(score.Highlights, 2, RuleAction.FormatLine); scores.Add(sc); if (details.Contains("fairness")) { sc = GenericScore.CreateNewScore(score.Id, C_KEY_FAIRNESS, "Fair Play", XPATH_FAIRPLAY, IMG_REFEREE, "", index++); sc.Url = GetUrl(score.Url, C_KEY_FAIRNESS); sc.Skip = 1; sc.Dictionary = "Fussballde"; sc.Sizes = ScoreCenter.GetParameter(parameters, "Fde.SizesFairplay", SIZES_FAIRPLAY); sc.Headers = ScoreCenter.GetParameter(parameters, "Fde.HeaderFairplay", HEADER_FAIRPLAY); sc.AddRule(2, Operation.Contains, CUT_BEFORE, RuleAction.CutBefore, ""); sc.AddHighlightRule(score.Highlights, 2, RuleAction.FormatLine); scores.Add(sc); } if (details.Contains("torjaeger")) { sc = GenericScore.CreateNewScore(score.Id, C_KEY_SCORER, "Top Scorers", XPATH_SCORER, IMG_TOPSCORER, "", index++); sc.Url = GetUrl(score.Url, C_KEY_SCORER); sc.Skip = 1; sc.Dictionary = "Fussballde"; sc.Sizes = ScoreCenter.GetParameter(parameters, "Fde.SizesScorer", SIZES_SCORER); sc.Headers = ScoreCenter.GetParameter(parameters, "Fde.HeaderScorer", HEADER_SCORER); sc.AddRule(3, Operation.Contains, CUT_BEFORE, RuleAction.CutBefore, ""); sc.AddHighlightRule(score.Highlights, 3, RuleAction.FormatLine); scores.Add(sc); } return(scores); }