Esempio n. 1
0
        private Season AddVorberichtToSeason(Season actualSeason)
        {
            Vorbericht actualVorbericht = new Vorbericht();


            for (int i = 1; i <= 4; i++)
            {
                VorberichtMitspieler mitspieler = new VorberichtMitspieler
                {
                    Name = "Spieler" + i,
                    Liga = "Liga" + 1 + i,
                    SaisonzielManager  = "Ziel" + i * 100,
                    SaisonzielVorstand = "Ziel" + i * 1000,
                    Stadion            = (i * 10000).ToString(),
                    Stärke             = i.ToString(),
                    Verein             = "Team" + i
                };
                actualVorbericht.Mitspieler.Add(mitspieler);
            }
            actualVorbericht.Header     = "Das ist Saison " + actualSeason.Number;
            actualVorbericht.Kommentare = GetKommentare();
            actualSeason.Vorbericht     = actualVorbericht;


            return(actualSeason);
        }
Esempio n. 2
0
        private Season AddVorberichtToSeason(Season actualSeason)
        {
            string vorberichtFilePath = this._filePathesBuilder.GetStatistikTextFilePath(actualSeason.Number,
                                                                                         "Vorbericht");

            string[]             vorberichtFileContent      = File.ReadAllLines(vorberichtFilePath, Encoding.Default);
            Vorbericht           actualVorbericht           = new Vorbericht();
            VorberichtMitspieler actualVorberichtMitspieler = new VorberichtMitspieler();
            bool isMitspieler = false;
            bool isKommentar  = false;

            for (int i = 0; i < vorberichtFileContent.Length; i++)
            {
                string line = vorberichtFileContent[i].Trim();
                if (line.Equals("-Header:"))
                {
                    actualVorbericht.Header = LineOperations.GetValue(vorberichtFileContent[i + 1]);
                }
                if (isMitspieler)
                {
                    if (string.IsNullOrEmpty(line))
                    {
                        isMitspieler = false;
                        actualVorbericht.Mitspieler.Add(actualVorberichtMitspieler);
                        actualVorberichtMitspieler = new VorberichtMitspieler();
                        continue;
                    }

                    string keyWord  = LineOperations.GetKeyWord(line).Replace(" ", string.Empty);
                    var    property = typeof(VorberichtMitspieler).GetProperty(keyWord);
                    property.SetValue(actualVorberichtMitspieler, LineOperations.GetValue(line), null);
                }
                else if (isKommentar)
                {
                    if (string.IsNullOrEmpty(line))
                    {
                        isKommentar = false;
                        continue;
                    }
                    string keyWord  = LineOperations.GetKeyWord(line).Replace(" ", string.Empty);
                    var    property = typeof(Kommentar).GetProperty(keyWord);
                    property.SetValue(actualVorbericht.Kommentare[0], LineOperations.GetValue(line), null);
                }
                if (!line.StartsWith("-"))
                {
                    continue;
                }

                if (this._kickerConstants.AllMitspielerNames.Any(mitspielerName => line.Contains(mitspielerName)))
                {
                    isMitspieler = true;
                    string name = LineOperations.GetKeyWord(line).Replace("-", string.Empty);
                    actualVorberichtMitspieler.Name = name;
                }
                if (line.Contains("Kommentar"))
                {
                    isKommentar = true;
                }
            }
            actualSeason.Vorbericht = actualVorbericht;
            actualSeason.Vorbericht.Kommentare[0].Text =
                SetLineBreaksForKommentarText(actualSeason.Vorbericht.Kommentare[0].Text);
            return(actualSeason);
        }