using System;

namespace WK5.Core
{
    /// <summary>
    /// Die alte W4NamensKlasse aus ArtikelUpdateOpencart
    /// </summary>
    public class W4NamensKlasse
    {
        public string Name1 { get; set; }
        public string Name2 { get; set; } = String.Empty;
        public string Name3 { get; set; } = String.Empty;

        public W4NamensKlasse(string firma, string vorname, string nachname, int zeichenproZeile)
        {
            string hilfsString = "";
            bool istVerarbeitet = false;

            if (firma.Length > zeichenproZeile)
            {
                Name1 = firma.Substring(0, zeichenproZeile);
                hilfsString = firma.Substring(zeichenproZeile);
            }
            else
            {
                Name1 = firma;
                hilfsString = "";
                istVerarbeitet = true;
            }
            if (hilfsString.Length > zeichenproZeile && istVerarbeitet == false)
            {
                Name2 = hilfsString.Substring(0, zeichenproZeile);
                hilfsString = hilfsString.Substring(zeichenproZeile, hilfsString.Length);
            }
            else if (hilfsString.Length > 0 && istVerarbeitet == false)
            {
                Name2 = hilfsString;
                hilfsString = "";
                istVerarbeitet = true;
            }

            hilfsString = $"{vorname} {nachname}";
            istVerarbeitet = false;

            if (Name1.Trim().Length == 0)
            {
                if (hilfsString.Length > zeichenproZeile)
                {
                    Name1 = hilfsString.Substring(0, zeichenproZeile);

                    hilfsString = hilfsString.Substring(zeichenproZeile);
                }
                else if (hilfsString.Length > 0)
                {
                    Name1 = hilfsString;
                    istVerarbeitet = true;
                    hilfsString = "";
                }
            }
            if (Name2.Trim().Length == 0)
            {
                if (hilfsString.Length >= zeichenproZeile && istVerarbeitet == false)
                {
                    Name2 = hilfsString.Substring(0, zeichenproZeile);
                    hilfsString = hilfsString.Substring(zeichenproZeile);
                }
                else if (hilfsString.Length > 0)
                {
                    Name2 = hilfsString;
                    istVerarbeitet = true;
                    hilfsString = "";
                }
            }
            if (Name3.Trim().Length == 0)
            {
                if (hilfsString.Length >= zeichenproZeile && istVerarbeitet == false)
                {
                    Name3 = hilfsString.Substring(0, zeichenproZeile);
                    hilfsString = hilfsString.Substring(zeichenproZeile);
                }
                else if (hilfsString.Length > 0)
                {
                    Name3 = hilfsString;
                }
            }
        }
    }
}
