Example #1
0
        public static Person AddDescription(this Person gedcomXPerson, Domain.Trees.People.Person person)
        {
            var note = new Note()
                       .SetText(person.Description)
                       .SetSubject("Description");

            return((Person)gedcomXPerson.SetNote(note));
        }
Example #2
0
        public static Person AddBiography(this Person gedcomXPerson, Domain.Trees.People.Person person)
        {
            var biography = new Note()
                            .SetText(person.Biography)
                            .SetSubject("Biography");

            return((Person)gedcomXPerson.SetNote(biography));
        }
Example #3
0
        public static Person AddGender(this Person gedcomXPerson, Domain.Trees.People.Person person)
        {
            var genderType = person.Gender switch
            {
                Domain.Trees.People.Gender.Other => GenderType.OTHER,
                Domain.Trees.People.Gender.Male => GenderType.Male,
                Domain.Trees.People.Gender.Female => GenderType.Female,
                _ => GenderType.Unknown
            };

            return(gedcomXPerson.SetGender(genderType));
        }
Example #4
0
        public static Person AddFiles(this Person gedcomXPerson, Domain.Trees.People.Person person)
        {
            foreach (var file in person.Files)
            {
                var doc = new SourceReference();
                doc.AddQualifier(new Qualifier("Name", file.Name));
                doc.AddQualifier(new Qualifier("Uri", file.FileUri.ToString()));
                doc.AddQualifier(new Qualifier("MimeType", file.FileUri.ToString()));
                doc.AddQualifier(new Qualifier("MainPhoto", false.ToString()));
                gedcomXPerson.AddSource(doc);
            }

            if (person.MainPhoto is { })
Example #5
0
        public static Person AddNameLastname(this Person gedcomXPerson, Domain.Trees.People.Person person)
        {
            Name name;

            if (string.IsNullOrEmpty(person.Name))
            {
                var lastName = new NamePart(NamePartType.Surname, person.LastName);
                name = new Name(person.LastName, lastName);
            }
            else if (string.IsNullOrEmpty(person.LastName))
            {
                var firstName = new NamePart(NamePartType.Given, person.Name);
                name = new Name(person.Name, firstName);
            }
            else
            {
                var lastName  = new NamePart(NamePartType.Surname, person.LastName);
                var firstName = new NamePart(NamePartType.Given, person.Name);
                name = new Name(person.Name + " " + person.LastName, firstName, lastName);
            }

            return(gedcomXPerson.SetName(name));
        }
Example #6
0
 public static Person AddDeathDate(this Person gedcomXPerson, Domain.Trees.People.Person person)
 {
     return(gedcomXPerson.AddDate(person.DeathDate, FactType.Death));
 }