using System.Linq; using Kreta.BusinessLogic.Classes; using Kreta.BusinessLogic.HelperClasses; using Kreta.Core; namespace Kreta.BusinessLogic.Utils { public static class NevUtils { public static NevCo GetNevCo(string nev) { if (nev.IndexOf(' ') < 0) { nev += ' '; } NevCo result; string nevElsoReszCompare = nev?.Split(' ')[0].ToComparableString(); if (Constants.ElotagList.Any(x => x.ToComparableString() == nevElsoReszCompare)) { result = new NevCo { Elotag = nev?.Split(' ')[0], Vezeteknev = nev?.Split(' ')[1] }; //NOTE: A keresztneveket úgy kapjuk vissza, hogy levágjuk a teljes névből az elejét(Előtag + Vezetéknév + a 2 szóköz, ami ezeket követi)! if ((result.Elotag.Length + result.Vezeteknev.Length + 2) <= (nev?.Length ?? 0)) { result.Keresztnev = nev?.Substring(result.Elotag.Length + result.Vezeteknev.Length + 2); } } else { result = new NevCo { Elotag = null, Vezeteknev = nev?.Split(' ')[0] }; //NOTE: A keresztneveket úgy kapjuk vissza, hogy levágjuk a teljes névből az elejét(Vezetéknév + a szóköz, ami ezt követi)! if ((result.Vezeteknev.Length + 1) <= (nev?.Length ?? 0)) { result.Keresztnev = nev?.Substring(result.Vezeteknev.Length + 1); } } return result; } } }