Exemplo n.º 1
0
        public void Constructor()
        {

            // Tests the default values of the address constructor.

            vCardDeliveryAddress address = new vCardDeliveryAddress();

            Assert.IsEmpty(
                address.City,
                "The City property should default to String.Empty.");

            Assert.IsEmpty(
                address.Country,
                "The Country property should default to String.Empty.");

            Assert.IsEmpty(
                address.PostalCode,
                "The PostalCode property should default to String.Empty.");

            Assert.IsEmpty(
                address.Region,
                "The Region property should default to String.Empty.");

            Assert.IsEmpty(
                address.Street,
                "The Street property should default to String.Empty.");

        }
        public void Constructor()
        {
            // Tests the default values of the address constructor.

            vCardDeliveryAddress address = new vCardDeliveryAddress();

            Assert.IsEmpty(
                address.City,
                "The City property should default to String.Empty.");

            Assert.IsEmpty(
                address.Country,
                "The Country property should default to String.Empty.");

            Assert.IsEmpty(
                address.PostalCode,
                "The PostalCode property should default to String.Empty.");

            Assert.IsEmpty(
                address.Region,
                "The Region property should default to String.Empty.");

            Assert.IsEmpty(
                address.Street,
                "The Street property should default to String.Empty.");
        }
Exemplo n.º 3
0
        public void SaveTest()
        {
            Employee creator = new Employee();

            creator.EmailAddresses.Add(new vCardEmailAddress {
                Address = "*****@*****.**"
            });

            Customer agent = new Customer {
                GivenName = "John"
            };

            Customer customer = new Customer {
                GivenName = "Ah Hock"
            };
            vCardDeliveryAddress deliver = new vCardDeliveryAddress();

            deliver.Street     = "963 Jalan 6";
            deliver.Region     = "Machang Bubok";
            deliver.City       = "Bukit Mertajam";
            deliver.PostalCode = "05400";
            deliver.Country    = "Malaysia";
            customer.DeliveryAddresses.Add(deliver);

            Project target = new Project();

            target.CreatedBy = creator;
            target.DeliverTo = customer;//customer.DeliveryAddresses[0];
            target.OrderBy   = agent;
            target.Stage     = ProjectStage.Draft;
            //target.

            target.Save();
        }
        public void ReadWriteProperty_AddressType()
        {
            vCardDeliveryAddress address = new vCardDeliveryAddress();

            address.AddressType.Add(vCardDeliveryAddressTypes.Domestic);

            Assert.IsTrue(address.AddressType.Contains(vCardDeliveryAddressTypes.Domestic), "The AddressType property is not working.");
        }
        public void ReadWriteProperty_Country()
        {
            vCardDeliveryAddress address = new vCardDeliveryAddress();

            address.Country = "Jordan";
            Assert.AreEqual(
                "Jordan",
                address.Country,
                "The Country property is not working.");
        }
        public void ReadWriteProperty_PostalCode()
        {
            vCardDeliveryAddress address = new vCardDeliveryAddress();

            address.PostalCode = "55109";
            Assert.AreEqual(
                "55109",
                address.PostalCode,
                "The PostalCode property is not working.");
        }
Exemplo n.º 7
0
        public void ReadWriteProperty_AddressType()
        {
            vCardDeliveryAddress address = new vCardDeliveryAddress();

            address.AddressType = vCardDeliveryAddressTypes.Domestic;
            Assert.AreEqual(
                vCardDeliveryAddressTypes.Domestic,
                address.AddressType,
                "The AddressType property is not working.");
        }
        public void ReadWriteProperty_Region()
        {
            vCardDeliveryAddress address = new vCardDeliveryAddress();

            address.Region = "North Pole";
            Assert.AreEqual(
                "North Pole",
                address.Region,
                "The Region property is not working.");
        }
        public void ReadWriteProperty_Street()
        {
            vCardDeliveryAddress address = new vCardDeliveryAddress();

            address.Street = "1490 Lark Avenue";
            Assert.AreEqual(
                "1490 Lark Avenue",
                address.Street,
                "The Street property is not working.");
        }
        public void ReadWriteProperty_City()
        {
            vCardDeliveryAddress address = new vCardDeliveryAddress();

            address.City = "Warroad";
            Assert.AreEqual(
                "Warroad",
                address.City,
                "The City property is not working.");
        }
Exemplo n.º 11
0
        public void ReadWriteProperty_IsWork()
        {
            vCardDeliveryAddress address = new vCardDeliveryAddress();

            address.IsWork = true;
            Assert.IsTrue(
                address.IsWork,
                "IsWork should have been set to true.");

            address.IsWork = false;
            Assert.IsFalse(
                address.IsWork,
                "IsWork should have been set to false.");
        }
        public void EmptyString_Country()
        {
            vCardDeliveryAddress address = new vCardDeliveryAddress();

            Assert.IsEmpty(
                address.Country,
                "The Country property should default to String.Empty.");

            address.Country = null;

            Assert.IsEmpty(
                address.Country,
                "The Country property should return String.Empty instead of null.");
        }
        public void EmptyString_PostalCode()
        {
            vCardDeliveryAddress address = new vCardDeliveryAddress();

            Assert.IsEmpty(
                address.PostalCode,
                "The PostalCode property should default to String.Empty.");

            address.PostalCode = null;

            Assert.IsEmpty(
                address.PostalCode,
                "The PostalCode property should return String.Empty instead of null.");
        }
Exemplo n.º 14
0
        /// <summary>
        /// Utility method to convert address information from the vCard library to a
        /// WinRT ContactAddress instance.
        /// No 1:1 matching is possible between both classes, the method tries to
        /// keep the conversion as accurate as possible.
        /// </summary>
        /// <param name="address">Address information from the vCard library.</param>
        /// <returns>The address information from the vCard library converted to a
        /// WinRT ContactAddress instance.</returns>
        private ContactAddress ConvertVcardToAddress(vCardDeliveryAddress address)
        {
            var ca = new ContactAddress
            {
                Country       = address.Country,
                PostalCode    = address.PostalCode,
                Region        = address.Region,
                StreetAddress = address.Street,
                Locality      = address.City,
                Kind          = ConvertVcardToAddressType(address.AddressType)
            };

            return(ca);
        }
Exemplo n.º 15
0
        /// <summary>
        /// Utility method to convert address information from the WinRT ContactAddress
        /// instance to the representation in the vCard library.
        /// No 1:1 matching is possible between both classes, the method tries to
        /// keep the conversion as accurate as possible.
        /// </summary>
        /// <param name="address">Address information from WinRT.</param>
        /// <returns>The address information from WinRT library converted to a
        /// vCard library class instance.</returns>
        private vCardDeliveryAddress ConvertAddressToVcard(ContactAddress address)
        {
            var newAddress = new vCardDeliveryAddress
            {
                Country     = address.Country,
                PostalCode  = address.PostalCode,
                Region      = address.Region,
                Street      = address.StreetAddress,
                City        = address.Locality,
                AddressType = ConvertAddressTypeToVcard(address.Kind)
            };

            return(newAddress);
        }
        public void EmptyString_Region()
        {
            vCardDeliveryAddress address = new vCardDeliveryAddress();

            Assert.IsEmpty(
                address.Region,
                "The Region property should default to String.Empty.");

            address.Region = null;

            Assert.IsEmpty(
                address.Region,
                "The Region property should return String.Empty instead of null.");
        }
Exemplo n.º 17
0
        public void ReadWriteProperty_IsInternational()
        {
            vCardDeliveryAddress address = new vCardDeliveryAddress();

            address.IsInternational = true;
            Assert.IsTrue(
                address.IsInternational,
                "IsInternational should have been set to true.");

            address.IsInternational = false;
            Assert.IsFalse(
                address.IsInternational,
                "IsInternational should have been set to false.");
        }
        public void EmptyString_Street()
        {
            vCardDeliveryAddress address = new vCardDeliveryAddress();

            Assert.IsEmpty(
                address.Street,
                "The Street property should default to String.Empty.");

            address.Street = null;

            Assert.IsEmpty(
                address.Street,
                "The Street property should return String.Empty instead of null.");
        }
Exemplo n.º 19
0
        public void EmptyString_Country()
        {

            vCardDeliveryAddress address = new vCardDeliveryAddress();

            Assert.IsEmpty(
                address.Country,
                "The Country property should default to String.Empty.");

            address.Country = null;

            Assert.IsEmpty(
                address.Country,
                "The Country property should return String.Empty instead of null.");

        }
Exemplo n.º 20
0
        public void SaveToFileTest()
        {
            Warehouses target = new Warehouses();
            Warehouse  w1     = new Warehouse {
                Code = "WH01", Name1 = "Bukit Pinang"
            };

            vCardDeliveryAddress address = new vCardDeliveryAddress();

            address.Street = "563 Jalan 6";
            address.City   = "Bukit Pinang";
            address.Region = "Kedah";
            w1.Addresses.Add(address);

            target.Warehouse.Add(w1);
            target.SaveToFile();
        }
Exemplo n.º 21
0
        //
        //You can use the following additional attributes as you write your tests:
        //
        //Use ClassInitialize to run code before running the first test in the class
        //[ClassInitialize()]
        //public static void MyClassInitialize(TestContext testContext)
        //{
        //}
        //
        //Use ClassCleanup to run code after all tests in a class have run
        //[ClassCleanup()]
        //public static void MyClassCleanup()
        //{
        //}
        //
        //Use TestInitialize to run code before running each test
        //[TestInitialize()]
        //public void MyTestInitialize()
        //{
        //}
        //
        //Use TestCleanup to run code after each test has run
        //[TestCleanup()]
        //public void MyTestCleanup()
        //{
        //}
        //
        #endregion

        public static void CreateVCard(string name)
        {
            Customer target = new Customer();

            target.GivenName = name;
            //target.FamilyName = "Lee";
            target.DisplayName = target.GivenName;// +" " + target.FamilyName;

            vCardDeliveryAddress add1 = new vCardDeliveryAddress();

            add1.Street     = "963 Jalan 6";
            add1.City       = "Bukit Mertajam";
            add1.PostalCode = "14020";
            add1.Country    = "Malaysia";
            target.DeliveryAddresses.Add(add1);

            target.Phones.Add(new vCardPhone("012-4711134"));
            target.SaveToFile();
        }
Exemplo n.º 22
0
        static void Main(string[] args)
        {
            // Generate vCard
            vCard vCard = new vCard();

            vCard.GivenName    = "Forrest";
            vCard.FamilyName   = "Gump";
            vCard.Organization = "Bubba Gump Shrimp Co.";
            vCard.Title        = "Shrimp Man";
            vCard.Phones.Add(new vCardPhone("(111) 555-1212", vCardPhoneTypes.Home));
            vCard.EmailAddresses.Add(new vCardEmailAddress("*****@*****.**", vCardEmailAddressType.Internet));

            vCardDeliveryAddress address = new vCardDeliveryAddress();

            address.AddressType = vCardDeliveryAddressTypes.Home;
            address.Street      = "100 Waters Edge";
            address.City        = "Baytown";
            address.Region      = "LA";
            address.PostalCode  = "30314";
            address.Country     = "United States of America";
            vCard.DeliveryAddresses.Add(address);

            // Save vCard data to string
            vCardStandardWriter writer       = new vCardStandardWriter();
            StringWriter        stringWriter = new StringWriter();

            writer.Write(vCard, stringWriter);

            // Create Bytescout.Barcode instance
            using (Barcode barcode = new Barcode())
            {
                // Set barcode type
                barcode.Symbology = SymbologyType.QRCode;
                // Set barcode value
                barcode.Value = stringWriter.ToString();
                // Save barcode to image
                barcode.SaveImage("result.png", ImageFormat.Png);

                // Open generated barcode image in default associated application
                Process.Start("result.png");
            }
        }
Exemplo n.º 23
0
        public void EditAddressTest()
        {
            User target = new User();

            target.GivenName  = "Smith";
            target.FamilyName = "Lee";

            vCardDeliveryAddress add1 = new vCardDeliveryAddress();

            add1.Street     = "963 Jalan 6";
            add1.City       = "Bukit Mertajam";
            add1.PostalCode = "14020";
            add1.Country    = "Malaysia";
            target.DeliveryAddresses.Add(add1);

            target.Phones.Add(new vCardPhone("012-4711134"));

            target.DeliveryAddresses[0].Street = "1 Jalan 6";
            target.SaveToFile();
        }
Exemplo n.º 24
0
        public static Address ConvertAddress(vCardDeliveryAddress x)
        {
            var model = new Address
            {
                Type            = ConvertAddressType(x.AddressType),
                Street          = x.Street,
                Country         = x.Country,
                ExtendedAddress = string.Empty,
                Label           = string.Empty,
                Locality        = x.City,
                PoBox           = string.Empty,
                PostalCode      = x.PostalCode,
                Region          = x.Region,
                Latitude        = null,
                Longitude       = null,
                Preference      = 0,
                TimeZone        = TimeZoneInfo.Local
            };

            return(model);
        }
Exemplo n.º 25
0
        public void SaveToFileTest()
        {
            //Users users = new Users();
            Customer target = new Customer();

            target.GivenName   = "John" + new Random().Next(200);
            target.FamilyName  = "Lee";
            target.DisplayName = target.GivenName + " " + target.FamilyName;

            vCardDeliveryAddress add1 = new vCardDeliveryAddress();

            add1.Street     = "963 Jalan 6";
            add1.City       = "Bukit Mertajam";
            add1.PostalCode = "14020";
            add1.Country    = "Malaysia";
            target.DeliveryAddresses.Add(add1);

            target.Phones.Add(new vCardPhone("012-4711134"));
            target.SaveToFile();
            //(target as User).SaveToFile();

            //users.User.Add(target);
            //users.SaveToFile();
        }
Exemplo n.º 26
0
 /// <summary>
 /// Utility method to convert address information from the vCard library to a
 /// WinRT ContactAddress instance.
 /// No 1:1 matching is possible between both classes, the method tries to
 /// keep the conversion as accurate as possible.
 /// </summary>
 /// <param name="address">Address information from the vCard library.</param>
 /// <returns>The address information from the vCard library converted to a 
 /// WinRT ContactAddress instance.</returns>
 private ContactAddress ConvertVcardToAddress(vCardDeliveryAddress address)
 {
     var ca = new ContactAddress
     {
         Country = address.Country,
         PostalCode = address.PostalCode,
         Region = address.Region,
         StreetAddress = address.Street,
         Locality = address.City,
         Kind = ConvertVcardToAddressType(address.AddressType)
     };
     return ca;
 }
Exemplo n.º 27
0
 /// <summary>
 /// Utility method to convert address information from the WinRT ContactAddress 
 /// instance to the representation in the vCard library.
 /// No 1:1 matching is possible between both classes, the method tries to
 /// keep the conversion as accurate as possible.
 /// </summary>
 /// <param name="address">Address information from WinRT.</param>
 /// <returns>The address information from WinRT library converted to a 
 /// vCard library class instance.</returns>
 private vCardDeliveryAddress ConvertAddressToVcard(ContactAddress address)
 {
     var newAddress = new vCardDeliveryAddress
     {
         Country = address.Country,
         PostalCode = address.PostalCode,
         Region = address.Region,
         Street = address.StreetAddress,
         City = address.Locality,
         AddressType = ConvertAddressTypeToVcard(address.Kind)
     };
     return newAddress;
 }
Exemplo n.º 28
0
        /// <summary>
        /// Parses a vCard contact
        /// </summary>
        /// <param name="vCard"></param>
        /// <returns></returns>
        private static Contact ParseVCard(vCard vCard)
        {
            Contact contact = new Contact(false);

            contact.ID = vCard.UniqueId;

            if (contact.ID == string.Empty)
            {
                contact.ID = IDGenerator.GenerateID();
            }

            #region Name

            {
                Name name = Name.TryParse(vCard.FormattedName);

                if (name == null)
                {
                    name = new Name();
                }

                if (vCard.GivenName != string.Empty)
                {
                    name.FirstName = vCard.GivenName;
                }

                if (vCard.AdditionalNames != string.Empty)
                {
                    name.MiddleName = vCard.AdditionalNames;
                }

                if (vCard.FamilyName != string.Empty)
                {
                    name.LastName = vCard.FamilyName;
                }

                if (vCard.NamePrefix != string.Empty)
                {
                    name.Title = vCard.NamePrefix;
                }

                if (vCard.NameSuffix != string.Empty)
                {
                    name.Suffix = vCard.NameSuffix;
                }

                contact.Name = name;
            }

            #endregion

            #region Delivery Address

            {
                vCardDeliveryAddressCollection vAddresses = vCard.DeliveryAddresses;
                int       count     = vAddresses.Count;
                Address[] addresses = new Address[count];

                for (int i = 0; i < count; i++)
                {
                    vCardDeliveryAddress vAddress = vAddresses[i];
                    Address address = new Address();

                    address.City    = vAddress.City;
                    address.Country = vAddress.Country;
                    address.State   = vAddress.Region;
                    address.Street  = vAddress.Street.TrimEnd(',');
                    address.ZIP     = vAddress.PostalCode;
                    address.Type    = vAddress.AddressType.ToString();

                    addresses[i] = address;
                }

                contact.Addresses = addresses;
            }

            #endregion

            #region Email Address

            {
                vCardEmailAddressCollection vEmails = vCard.EmailAddresses;
                int     count  = vEmails.Count;
                Email[] emails = new Email[count];

                for (int i = 0; i < count; i++)
                {
                    vCardEmailAddress vEmail = vEmails[i];
                    Email             email  = new Email();

                    email.Address = vEmail.Address;
                    email.Type    = vEmail.EmailType.ToString();

                    emails[i] = email;
                }

                contact.Emails = emails;
            }

            #endregion

            #region Website

            {
                vCardWebsiteCollection vWebsites = vCard.Websites;
                int       count    = vWebsites.Count;
                Website[] websites = new Website[count];

                for (int i = 0; i < count; i++)
                {
                    vCardWebsite vWebsite = vWebsites[i];
                    Website      website  = new Website();

                    website.Url  = vWebsite.Url;
                    website.Type = vWebsite.WebsiteType.ToString();

                    websites[i] = website;
                }

                contact.Websites = websites;
            }

            #endregion

            #region Notes

            {
                FlowDocument notes = new FlowDocument();

                foreach (vCardNote each in vCard.Notes)
                {
                    Paragraph para = new Paragraph(new Run(each.Text));

                    if (each.Language != string.Empty)
                    {
                        try { para.Language = XmlLanguage.GetLanguage(each.Language); }
                        catch { }
                    }

                    notes.Blocks.Add(para);
                }

                contact.NotesDocument = notes;
            }

            #endregion

            #region Phone

            {
                vCardPhoneCollection vPhones = vCard.Phones;
                int           count          = vPhones.Count;
                PhoneNumber[] phones         = new PhoneNumber[count];

                for (int i = 0; i < count; i++)
                {
                    vCardPhone  vPhone = vPhones[i];
                    PhoneNumber phone  = new PhoneNumber();

                    phone.Number = vPhone.FullNumber;
                    phone.Type   = InsertSpaces(vPhone.PhoneType.ToString());

                    phones[i] = phone;
                }

                contact.PhoneNumbers = phones;
            }

            #endregion

            if (vCard.BirthDate.HasValue)
            {
                contact.SpecialDates = new SpecialDate[] { new SpecialDate("Birthday", vCard.BirthDate.Value) }
            }
            ;

            contact.Private = vCard.AccessClassification.HasFlag(vCardAccessClassification.Confidential) ||
                              vCard.AccessClassification.HasFlag(vCardAccessClassification.Private);
            contact.Work = new Work()
            {
                Company    = vCard.Organization,
                Department = vCard.Department,
                Office     = vCard.Office,
                Title      = vCard.Title
            };
            contact.Gender = (Gender)vCard.Gender;

            if (vCard.IMAddress != string.Empty)
            {
                contact.IM = new IM[] { new IM("IM", vCard.IMAddress) }
            }
            ;

            foreach (vCardPhoto photo in vCard.Photos)
            {
                if (photo.Url != null)
                {
                    try
                    {
                        photo.Fetch();
                        contact.encodeTile(photo.GetBytes());
                        //contact.Tile = Create96By96Tile(ConvertBytesToBitmapSource(photo.GetBytes()));
                        break;
                    }
                    catch { }
                }
                else
                {
                    contact.encodeTile(photo.GetBytes());
                    //contact.Tile = Create96By96Tile(ConvertBytesToBitmapSource(photo.GetBytes()));
                    break;
                }
            }

            return(contact);
        }
Exemplo n.º 29
0
        private byte[] GeneratevCard(Person person, string site)
        {
            // create the card
            var vCard = new vCard();

            // name information
            vCard.FamilyName = person.LastName;
            vCard.GivenName  = person.FirstName;
            vCard.NamePrefix = person.Salutation;

            // job information
            vCard.Organization = person.GetLatestRegistration(site).Firm.Name;
            vCard.Title        = person.GetLatestRegistration(site).Title;

            // picture
            if (person.MainProfilePicture != null)
            {
                vCard.Photos.Add(new vCardPhoto(person.MainProfilePicture));
            }

            // add contact information based on authorization
            if (person.ContactInformationRelease)
            {
                // contact information
                vCard.EmailAddresses.Add(new vCardEmailAddress(person.User.UserName));

                // business address only
                var busAddr = person.Addresses.Where(a => a.AddressType.Id.ToString() == StaticIndexes.Address_Business).FirstOrDefault();
                if (busAddr != null)
                {
                    var addr = new vCardDeliveryAddress()
                    {
                        AddressType = vCardDeliveryAddressTypes.Work,
                        City        = busAddr.City,
                        Country     = busAddr.Country.Name,
                        IsWork      = true,
                        PostalCode  = busAddr.Zip,
                        Street      = string.Format("{0} {1}", busAddr.Line1, busAddr.Line2 ?? string.Empty),
                        Region      = busAddr.State
                    };

                    vCard.DeliveryAddresses.Add(addr);
                }
            }

            // prepare the writer to write the vcard output
            var writer = new vCardStandardWriter();

            writer.EmbedInternetImages = false;
            writer.EmbedLocalImages    = true;
            writer.Options             = vCardStandardWriterOptions.IgnoreCommas;

            // put the data into a memory stream
            var stream       = new MemoryStream();
            var streamWriter = new StreamWriter(stream);

            // write the data to the stream
            writer.Write(vCard, streamWriter);

            // write to the memory stream
            streamWriter.Flush();
            streamWriter.Close();

            var bytes = stream.ToArray();

            return(bytes);
        }
Exemplo n.º 30
0
        public static void Equals(
            vCardDeliveryAddress da1,
            vCardDeliveryAddress da2)
        {

            Assert.AreEqual(
                da1.AddressType,
                da2.AddressType,
                "vCardDeliveryAddress.AddressType differs.");

            Assert.AreEqual(
                da1.City,
                da2.City,
                "vCardDeliveryAddress.City differs.");

            Assert.AreEqual(
                da1.Country,
                da2.Country,
                "vCardDeliveryAddress.Country differs.");

            Assert.AreEqual(
                da1.IsDomestic,
                da2.IsDomestic,
                "vCardDeliveryAddress.IsDomestic differs.");

            Assert.AreEqual(
                da1.IsHome,
                da2.IsHome,
                "vCardDeliveryAddress.IsHome differs.");

            Assert.AreEqual(
                da1.IsInternational,
                da2.IsInternational,
                "vCardDeliveryAddress.IsInternational differs.");

            Assert.AreEqual(
                da1.IsParcel,
                da2.IsParcel,
                "vCardDeliveryAddress.IsParcel differs.");

            Assert.AreEqual(
                da1.IsPostal,
                da2.IsPostal,
                "vCardDeliveryAddress.IsPostal differs.");

            Assert.AreEqual(
                da1.IsWork,
                da2.IsWork,
                "vCardDeliveryAddress.IsWork differs.");

            Assert.AreEqual(
                da1.PostalCode,
                da2.PostalCode,
                "vCardDeliveryAddress.PostalCode differs.");

            Assert.AreEqual(
                da1.Region,
                da2.Region,
                "vCardDeliveryAddress.Region differs.");

            Assert.AreEqual(
                da1.Street,
                da2.Street,
                "vCardDeliveryAddress.Street differs.");

            Assert.AreEqual(
                da1.ToString(),
                da2.ToString(),
                "vCardDeliveryAddress.ToString differs.");

        }
Exemplo n.º 31
0
        public static void Equals(
            vCardDeliveryAddress da1,
            vCardDeliveryAddress da2)
        {
            Assert.AreEqual(
                da1.AddressType,
                da2.AddressType,
                "vCardDeliveryAddress.AddressType differs.");

            Assert.AreEqual(
                da1.City,
                da2.City,
                "vCardDeliveryAddress.City differs.");

            Assert.AreEqual(
                da1.Country,
                da2.Country,
                "vCardDeliveryAddress.Country differs.");

            Assert.AreEqual(
                da1.IsDomestic,
                da2.IsDomestic,
                "vCardDeliveryAddress.IsDomestic differs.");

            Assert.AreEqual(
                da1.IsHome,
                da2.IsHome,
                "vCardDeliveryAddress.IsHome differs.");

            Assert.AreEqual(
                da1.IsInternational,
                da2.IsInternational,
                "vCardDeliveryAddress.IsInternational differs.");

            Assert.AreEqual(
                da1.IsParcel,
                da2.IsParcel,
                "vCardDeliveryAddress.IsParcel differs.");

            Assert.AreEqual(
                da1.IsPostal,
                da2.IsPostal,
                "vCardDeliveryAddress.IsPostal differs.");

            Assert.AreEqual(
                da1.IsWork,
                da2.IsWork,
                "vCardDeliveryAddress.IsWork differs.");

            Assert.AreEqual(
                da1.PostalCode,
                da2.PostalCode,
                "vCardDeliveryAddress.PostalCode differs.");

            Assert.AreEqual(
                da1.Region,
                da2.Region,
                "vCardDeliveryAddress.Region differs.");

            Assert.AreEqual(
                da1.Street,
                da2.Street,
                "vCardDeliveryAddress.Street differs.");

            Assert.AreEqual(
                da1.ToString(),
                da2.ToString(),
                "vCardDeliveryAddress.ToString differs.");
        }
Exemplo n.º 32
0
        // The following functions (ReadInfo_xxx) implement the logic
        // for each recognized vCard property.  A separate function
        // for each property is implemented for easier organization.
        //
        // Each function is a private function.  It is not necessary
        // for a function to double-check the name of a property, or
        // check for null parameters.

        #region [ ReadInto_ADR() ]

        /// <summary>
        ///     Reads an ADR property.
        /// </summary>
        private void ReadInto_ADR(vCard card, vCardProperty property)
        {

            // The ADR property defines a delivery address, such
            // as a home postal address.  The property contains
            // the following components separated by semicolons:
            //
            //   0. Post office box
            //   1. Extended address
            //   2. Street
            //   3. Locality (e.g. city)
            //   4. Region (e.g. state or province)
            //   5. Postal code
            //   6. Country name
            //
            // This version of the reader ignores any ADR properties
            // with a lesser number of components.  If more than 7
            // components exist, then the lower seven components are
            // assumed to still match the specification (e.g. the
            // additional components may be from a future specification).

            string[] addressParts =
                property.Value.ToString().Split(new char[] { ';' });

            vCardDeliveryAddress deliveryAddress = new vCardDeliveryAddress();

            if (addressParts.Length >= 7)
                deliveryAddress.Country = addressParts[6].Trim();

            if (addressParts.Length >= 6)
                deliveryAddress.PostalCode = addressParts[5].Trim();

            if (addressParts.Length >= 5)
                deliveryAddress.Region = addressParts[4].Trim();

            if (addressParts.Length >= 4)
                deliveryAddress.City = addressParts[3].Trim();

            if (addressParts.Length >= 3)
                deliveryAddress.Street = addressParts[2].Trim();

            if (
                (string.IsNullOrEmpty(deliveryAddress.City)) &&
                (string.IsNullOrEmpty(deliveryAddress.Country)) &&
                (string.IsNullOrEmpty(deliveryAddress.PostalCode)) &&
                (string.IsNullOrEmpty(deliveryAddress.Region)) &&
                (string.IsNullOrEmpty(deliveryAddress.Street)))
            {

                // No address appears to be defined.
                // Ignore.

                return;

            }

            // Handle the old 2.1 format in which the ADR type names (e.g.
            // DOM, HOME, etc) were written directly as subproperties.
            // For example, "ADR;HOME;POSTAL:...".

            deliveryAddress.AddressType =
                ParseDeliveryAddressType(property.Subproperties.GetNames(DeliveryAddressTypeNames));

            // Handle the new 3.0 format in which the delivery address
            // type is a comma-delimited list, e.g. "ADR;TYPE=HOME,POSTAL:".
            // It is possible for the TYPE subproperty to be listed multiple
            // times (this is allowed by the RFC, although irritating that
            // the authors allowed it).

            foreach (vCardSubproperty sub in property.Subproperties)
            {

                // If this subproperty is a TYPE subproperty and
                // has a non-null value, then parse it.

                if (
                    (!string.IsNullOrEmpty(sub.Value)) &&
                    (string.Compare("TYPE", sub.Name, StringComparison.OrdinalIgnoreCase) == 0))
                {

                    deliveryAddress.AddressType |=
                        ParseDeliveryAddressType(sub.Value.Split(new char[] { ',' }));

                }

            }

            card.DeliveryAddresses.Add(deliveryAddress);

        }
Exemplo n.º 33
0
        public void EmptyString_PostalCode()
        {

            vCardDeliveryAddress address = new vCardDeliveryAddress();

            Assert.IsEmpty(
                address.PostalCode,
                "The PostalCode property should default to String.Empty.");

            address.PostalCode = null;

            Assert.IsEmpty(
                address.PostalCode,
                "The PostalCode property should return String.Empty instead of null.");

        }
Exemplo n.º 34
0
        public void ReadWriteProperty_Country()
        {

            vCardDeliveryAddress address = new vCardDeliveryAddress();

            address.Country = "Jordan";
            Assert.AreEqual(
                "Jordan",
                address.Country,
                "The Country property is not working.");
        }
Exemplo n.º 35
0
        public void ReadWriteProperty_Street()
        {

            vCardDeliveryAddress address = new vCardDeliveryAddress();

            address.Street = "1490 Lark Avenue";
            Assert.AreEqual(
                "1490 Lark Avenue",
                address.Street,
                "The Street property is not working.");
        }
Exemplo n.º 36
0
        public void ReadWriteProperty_Region()
        {

            vCardDeliveryAddress address = new vCardDeliveryAddress();

            address.Region = "North Pole";
            Assert.AreEqual(
                "North Pole",
                address.Region,
                "The Region property is not working.");
        }
Exemplo n.º 37
0
        public void ReadWriteProperty_PostalCode()
        {

            vCardDeliveryAddress address = new vCardDeliveryAddress();

            address.PostalCode = "55109";
            Assert.AreEqual(
                "55109",
                address.PostalCode,
                "The PostalCode property is not working.");
        }
Exemplo n.º 38
0
        private Project CreateProject()
        {
            Employee creator = new Employee();

            creator.EmailAddresses.Add(new vCardEmailAddress {
                Address = "*****@*****.**"
            });

            Customer agent = new Customer {
                GivenName = "One Kitchen" + new Random().Next(20)
            };

            Customer customer = new Customer {
                GivenName = "Ah Shing"
            };

            customer.Phones.Add(new vCardPhone {
                FullNumber = "012-4711134"
            });
            vCardDeliveryAddress deliver = new vCardDeliveryAddress();

            deliver.Street     = "963 Jalan 6\nMachang Bubok";
            deliver.City       = "Bukit Mertajam";
            deliver.Region     = "Penang";
            deliver.PostalCode = "14020";
            deliver.Country    = "Malaysia";
            customer.DeliveryAddresses.Add(deliver);
            customer.Latitude  = 5.33398f;
            customer.Longitude = 100.50754f;

            Project target = new Project();

            target.CreatedBy = creator;
            target.DeliverTo = customer;//customer.DeliveryAddresses[0];
            target.OrderBy   = agent;
            target.Stage     = ProjectStage.Draft;

            int   size  = DatabaseObject.Stocks.Stock.Count;
            Stock stock = DatabaseObject.Stocks.Stock[new Random().Next(size)];

            LShapeItem w1 = new LShapeItem("LShapeItem04", stock, 48, 108);

            w1.Lengths[1].Type = new Bullnose("dep2");
            w1.Lengths[2].Type = new Bullnose("dep2");
            w1.Lengths[3].Type = new Bullnose("dep2");
            w1.Lengths[4].Type = new Bullnose("dep2");
            //w1.Elements.Add(new VerticalLine(string.Empty, 150));

            RectItem w2 = new RectItem("RectItem00", stock, 24, 6);

            w2.Top  = 400;
            w2.Left = 200;
            w2.AddElement();

            RectItem w3 = new RectItem("RectItem00", stock, 28, 13);

            w3.Top = 100;
            w3.AddElement();
            w3.AddElement();

            RectItem w4 = new RectItem("RectItem00", stock, 36, 4);

            w4.Top = 100;
            w4.AddElement();
            w4.AddElement();
            w4.AddElement();

            WorkOrder wo = new WorkOrder();

            wo.Items.Add(w1);
            wo.Items.Add(w2);
            wo.Items.Add(w3);
            wo.Items.Add(w4);
            target.WorkOrders.Add(wo);

            return(target);
        }
Exemplo n.º 39
0
        public void ReadWriteProperty_City()
        {

            vCardDeliveryAddress address = new vCardDeliveryAddress();

            address.City = "Warroad";
            Assert.AreEqual(
                "Warroad",
                address.City,
                "The City property is not working.");
        }
Exemplo n.º 40
0
        private Project CreateProject()
        {
            Employee creator = new Employee();

            creator.EmailAddresses.Add(new vCardEmailAddress {
                Address = "*****@*****.**"
            });

            Customer agent = new Customer {
                GivenName = "John" + new Random().Next(20)
            };

            Customer customer = new Customer {
                GivenName = "Ah Hock"
            };

            customer.Phones.Add(new vCardPhone {
                FullNumber = "012-4711134"
            });
            vCardDeliveryAddress deliver = new vCardDeliveryAddress();

            deliver.Street     = "963 Jalan 6";
            deliver.Region     = "Machang Bubok";
            deliver.City       = "Bukit Mertajam";
            deliver.PostalCode = "05400";
            deliver.Country    = "Malaysia";
            customer.DeliveryAddresses.Add(deliver);
            customer.Latitude  = 6.09105f;
            customer.Longitude = 100.44629f;

            Project target = new Project();

            target.CreatedBy = creator;
            target.DeliverTo = customer;//customer.DeliveryAddresses[0];
            target.OrderBy   = agent;
            target.Stage     = ProjectStage.Draft;

            int   size  = DatabaseObject.Stocks.Stock.Count;
            Stock stock = DatabaseObject.Stocks.Stock[new Random().Next(size)];

            LShapeItem w1 = new LShapeItem();//WorkItem w1 = new WorkItem();

            w1.Tags.Add("LShapeItem04");
            w1.Material = stock;
            w1.Lengths.Add(new LengthItem {
                Length = 108
            });
            w1.Lengths.Add(new LengthItem {
                Length = 24
            });
            w1.Lengths.Add(new LengthItem {
                Length = 84
            });
            w1.Lengths.Add(new LengthItem {
                Length = 24
            });
            w1.Lengths.Add(new LengthItem {
                Length = 24
            });
            w1.Lengths.Add(new LengthItem {
                Length = 48
            });
            w1.MaxHeight = 108;
            w1.MaxWidth  = 48;

            RectItem w2 = new RectItem();

            w2.Tags.Add("RectItem00");
            w2.Material = stock;
            w2.Height   = 6;
            w2.Width    = 24;
            w2.Top      = 400;
            w2.Left     = 200;

            RectItem w3 = new RectItem();

            w3.Tags.Add("RectItem00");
            w3.Material = stock;
            w3.Height   = 6;
            w3.Width    = 24;
            //w3.Top = 100;
            //w3.Left = 200;


            WorkOrder wo = new WorkOrder();

            wo.Items.Add(w1);
            wo.Items.Add(w2);
            wo.Items.Add(w3);
            target.WorkOrders.Add(wo);

            return(target);
        }
Exemplo n.º 41
0
        public void ReadWriteProperty_AddressType()
        {

            vCardDeliveryAddress address = new vCardDeliveryAddress();

            address.AddressType = vCardDeliveryAddressType.Domestic;
            Assert.AreEqual(
                vCardDeliveryAddressType.Domestic,
                address.AddressType,
                "The AddressType property is not working.");

        }
Exemplo n.º 42
0
        public void EmptyString_Street()
        {

            vCardDeliveryAddress address = new vCardDeliveryAddress();

            Assert.IsEmpty(
                address.Street,
                "The Street property should default to String.Empty.");

            address.Street = null;

            Assert.IsEmpty(
                address.Street,
                "The Street property should return String.Empty instead of null.");

        }
Exemplo n.º 43
0
        public void EmptyString_Region()
        {

            vCardDeliveryAddress address = new vCardDeliveryAddress();

            Assert.IsEmpty(
                address.Region,
                "The Region property should default to String.Empty.");

            address.Region = null;

            Assert.IsEmpty(
                address.Region,
                "The Region property should return String.Empty instead of null.");

        }
Exemplo n.º 44
0
        public void ReadWriteProperty_IsInternational()
        {

            vCardDeliveryAddress address = new vCardDeliveryAddress();
            address.IsInternational = true;
            Assert.IsTrue(
                address.IsInternational,
                "IsInternational should have been set to true.");

            address.IsInternational = false;
            Assert.IsFalse(
                address.IsInternational,
                "IsInternational should have been set to false.");
        }
        public Task <vCard> Map1To2(IContactItemWrapper source, vCard target, IEntitySynchronizationLogger logger, ICardDavRepositoryLogger context)
        {
            target.RevisionDate = source.Inner.LastModificationTime.ToUniversalTime();

            target.GivenName       = source.Inner.FirstName;
            target.FamilyName      = source.Inner.LastName;
            target.NamePrefix      = source.Inner.Title;
            target.NameSuffix      = source.Inner.Suffix;
            target.AdditionalNames = source.Inner.MiddleName;
            target.Gender          = MapGender2To1(source.Inner.Gender);

            target.Assistant = source.Inner.AssistantName;
            target.Spouse    = source.Inner.Spouse;
            target.Manager   = source.Inner.ManagerName;

            MapEmailAddresses1To2(source.Inner, target, logger);

            if (!string.IsNullOrEmpty(source.Inner.FileAs))
            {
                target.FormattedName = source.Inner.FileAs;
            }
            else if (!string.IsNullOrEmpty(source.Inner.CompanyAndFullName))
            {
                target.FormattedName = source.Inner.CompanyAndFullName;
            }
            else if (target.EmailAddresses.Count >= 1)
            {
                target.FormattedName = target.EmailAddresses[0].Address;
            }
            else
            {
                target.FormattedName = "<Empty>";
            }

            target.Nicknames.Clear();
            if (!string.IsNullOrEmpty(source.Inner.NickName))
            {
                Array.ForEach(
                    source.Inner.NickName.Split(new[] { CultureInfo.CurrentCulture.TextInfo.ListSeparator }, StringSplitOptions.RemoveEmptyEntries),
                    c => target.Nicknames.Add(c)
                    );
            }

            target.AccessClassification = CommonEntityMapper.MapPrivacy1To2(source.Inner.Sensitivity);

            target.Categories.Clear();
            if (!string.IsNullOrEmpty(source.Inner.Categories))
            {
                Array.ForEach(
                    source.Inner.Categories.Split(new[] { CultureInfo.CurrentCulture.TextInfo.ListSeparator }, StringSplitOptions.RemoveEmptyEntries),
                    c => target.Categories.Add(c.Trim())
                    );
            }

            target.IMs.Clear();
            if (!string.IsNullOrEmpty(source.Inner.IMAddress))
            {
                //IMAddress are expected to be in form of ([Protocol]: [Address]; [Protocol]: [Address])
                var imsRaw = source.Inner.IMAddress.Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
                foreach (var imRaw in imsRaw)
                {
                    var imDetails = imRaw.Trim().Split(new[] { ':' }, StringSplitOptions.RemoveEmptyEntries);
                    var im        = new vCardIMPP();
                    if (imDetails.Length == 1)
                    {
                        im.Handle = imDetails[0].Trim();
                        // Set default ServiceType to the configured DefaultImServiceType (defaults to AIM)
                        im.ServiceType = _configuration.DefaultImServicType;
                    }
                    else if (imDetails.Length > 1)
                    {
                        var serviceType = IMTypeUtils.GetIMServiceType(imDetails[0].Trim());
                        if (serviceType == null)
                        {
                            im.ServiceType = _configuration.DefaultImServicType;
                            s_logger.Warn($"Unknown IM ServiceType '{imDetails[0]}' not implemented, defaulting to '{_configuration.DefaultImServicType}'");
                            logger.LogWarning($"Unknown IM ServiceType '{imDetails[0]}' not implemented, defaulting to '{_configuration.DefaultImServicType}'");
                        }
                        else
                        {
                            im.ServiceType = serviceType.Value;
                        }

                        im.Handle = imRaw.Substring(imRaw.IndexOf(":") + 1).Trim();
                    }

                    //Only add the im Address if not empty
                    if (!string.IsNullOrEmpty(im.Handle))
                    {
                        im.IsPreferred = target.IMs.Count == 0;
                        im.ItemType    = ItemType.HOME;
                        target.IMs.Add(im);
                    }
                }
            }

            target.DeliveryAddresses.Clear();
            if (!string.IsNullOrEmpty(source.Inner.HomeAddress))
            {
                vCardDeliveryAddress homeAddress = new vCardDeliveryAddress();
                homeAddress.AddressType.Add(vCardDeliveryAddressTypes.Home);
                homeAddress.City       = source.Inner.HomeAddressCity;
                homeAddress.Country    = source.Inner.HomeAddressCountry;
                homeAddress.PostalCode = source.Inner.HomeAddressPostalCode;
                homeAddress.Region     = source.Inner.HomeAddressState;
                homeAddress.Street     = source.Inner.HomeAddressStreet;
                homeAddress.PoBox      = source.Inner.HomeAddressPostOfficeBox;
                if (source.Inner.SelectedMailingAddress == OlMailingAddress.olHome)
                {
                    homeAddress.AddressType.Add(vCardDeliveryAddressTypes.Preferred);
                }

                target.DeliveryAddresses.Add(homeAddress);
            }

            if (!string.IsNullOrEmpty(source.Inner.BusinessAddress) || !string.IsNullOrEmpty(source.Inner.OfficeLocation))
            {
                vCardDeliveryAddress businessAddress = new vCardDeliveryAddress();
                businessAddress.AddressType.Add(vCardDeliveryAddressTypes.Work);
                businessAddress.City       = source.Inner.BusinessAddressCity;
                businessAddress.Country    = source.Inner.BusinessAddressCountry;
                businessAddress.PostalCode = source.Inner.BusinessAddressPostalCode;
                businessAddress.Region     = source.Inner.BusinessAddressState;
                businessAddress.Street     = source.Inner.BusinessAddressStreet;
                businessAddress.PoBox      = source.Inner.BusinessAddressPostOfficeBox;
                if (!string.IsNullOrEmpty(source.Inner.OfficeLocation))
                {
                    businessAddress.ExtendedAddress = source.Inner.OfficeLocation;
                }

                if (source.Inner.SelectedMailingAddress == OlMailingAddress.olBusiness)
                {
                    businessAddress.AddressType.Add(vCardDeliveryAddressTypes.Preferred);
                }

                target.DeliveryAddresses.Add(businessAddress);
            }

            if (!string.IsNullOrEmpty(source.Inner.OtherAddress))
            {
                vCardDeliveryAddress otherAddress = new vCardDeliveryAddress();
                otherAddress.City       = source.Inner.OtherAddressCity;
                otherAddress.Country    = source.Inner.OtherAddressCountry;
                otherAddress.PostalCode = source.Inner.OtherAddressPostalCode;
                otherAddress.Region     = source.Inner.OtherAddressState;
                otherAddress.Street     = source.Inner.OtherAddressStreet;
                otherAddress.PoBox      = source.Inner.OtherAddressPostOfficeBox;
                if (source.Inner.SelectedMailingAddress == OlMailingAddress.olOther)
                {
                    otherAddress.AddressType.Add(vCardDeliveryAddressTypes.Preferred);
                }

                target.DeliveryAddresses.Add(otherAddress);
            }

            MapPhoneNumbers1To2(source.Inner, target);

            if (_configuration.MapAnniversary)
            {
                target.Anniversary = source.Inner.Anniversary.Equals(OutlookUtility.OUTLOOK_DATE_NONE) ? default(DateTime?) : source.Inner.Anniversary.Date;
            }

            if (_configuration.MapBirthday)
            {
                target.BirthDate = source.Inner.Birthday.Equals(OutlookUtility.OUTLOOK_DATE_NONE) ? default(DateTime?) : source.Inner.Birthday.Date;
            }

            target.Organization = source.Inner.CompanyName;
            target.Department   = source.Inner.Department;

            target.Title = source.Inner.JobTitle;
            target.Role  = source.Inner.Profession;

            target.Websites.Clear();
            if (!string.IsNullOrEmpty(source.Inner.PersonalHomePage))
            {
                target.Websites.Add(new vCardWebsite(source.Inner.PersonalHomePage, vCardWebsiteTypes.Personal));
            }

            if (!string.IsNullOrEmpty(source.Inner.BusinessHomePage))
            {
                target.Websites.Add(new vCardWebsite(source.Inner.BusinessHomePage, vCardWebsiteTypes.Work));
            }

            MapCertificate1To2(source.Inner, target, logger);

            if (_configuration.MapContactPhoto)
            {
                MapPhoto1To2(source.Inner, target, logger);
            }

            target.Notes.Clear();
            if (!string.IsNullOrEmpty(source.Inner.Body))
            {
                target.Notes.Add(new vCardNote(source.Inner.Body));
            }

            return(Task.FromResult(target));
        }
        public vCard Map1To2(ContactItemWrapper source, vCard target, IEntityMappingLogger logger)
        {
            target.GivenName       = source.Inner.FirstName;
            target.FamilyName      = source.Inner.LastName;
            target.NamePrefix      = source.Inner.Title;
            target.NameSuffix      = source.Inner.Suffix;
            target.AdditionalNames = source.Inner.MiddleName;
            target.Gender          = MapGender2To1(source.Inner.Gender);

            MapEmailAddresses1To2(source.Inner, target, logger);

            if (!string.IsNullOrEmpty(source.Inner.FileAs))
            {
                target.FormattedName = source.Inner.FileAs;
            }
            else if (!string.IsNullOrEmpty(source.Inner.CompanyAndFullName))
            {
                target.FormattedName = source.Inner.CompanyAndFullName;
            }
            else if (target.EmailAddresses.Count >= 1)
            {
                target.FormattedName = target.EmailAddresses[0].Address;
            }
            else
            {
                target.FormattedName = "<Empty>";
            }

            if (!string.IsNullOrEmpty(source.Inner.NickName))
            {
                Array.ForEach(
                    source.Inner.NickName.Split(new[] { CultureInfo.CurrentCulture.TextInfo.ListSeparator }, StringSplitOptions.RemoveEmptyEntries),
                    c => target.Nicknames.Add(c)
                    );
            }

            target.AccessClassification = MapPrivacy1To2(source.Inner.Sensitivity);

            if (!string.IsNullOrEmpty(source.Inner.Categories))
            {
                Array.ForEach(
                    source.Inner.Categories.Split(new[] { CultureInfo.CurrentCulture.TextInfo.ListSeparator }, StringSplitOptions.RemoveEmptyEntries),
                    c => target.Categories.Add(c.Trim())
                    );
            }

            if (!string.IsNullOrEmpty(source.Inner.IMAddress))
            {
                target.IMs.Add(new vCardIMPP(source.Inner.IMAddress, IMServiceType.AIM, ItemType.HOME));
            }

            if (!string.IsNullOrEmpty(source.Inner.HomeAddress))
            {
                vCardDeliveryAddress homeAddress = new vCardDeliveryAddress();
                homeAddress.AddressType.Add(vCardDeliveryAddressTypes.Home);
                homeAddress.City       = source.Inner.HomeAddressCity;
                homeAddress.Country    = source.Inner.HomeAddressCountry;
                homeAddress.PostalCode = source.Inner.HomeAddressPostalCode;
                homeAddress.Region     = source.Inner.HomeAddressState;
                homeAddress.Street     = source.Inner.HomeAddressStreet;
                if (source.Inner.SelectedMailingAddress == OlMailingAddress.olHome)
                {
                    homeAddress.AddressType.Add(vCardDeliveryAddressTypes.Preferred);
                }
                target.DeliveryAddresses.Add(homeAddress);
            }

            if (!string.IsNullOrEmpty(source.Inner.BusinessAddress))
            {
                vCardDeliveryAddress businessAddress = new vCardDeliveryAddress();
                businessAddress.AddressType.Add(vCardDeliveryAddressTypes.Work);
                businessAddress.City       = source.Inner.BusinessAddressCity;
                businessAddress.Country    = source.Inner.BusinessAddressCountry;
                businessAddress.PostalCode = source.Inner.BusinessAddressPostalCode;
                businessAddress.Region     = source.Inner.BusinessAddressState;
                businessAddress.Street     = source.Inner.BusinessAddressStreet;
                if (source.Inner.SelectedMailingAddress == OlMailingAddress.olBusiness)
                {
                    businessAddress.AddressType.Add(vCardDeliveryAddressTypes.Preferred);
                }
                target.DeliveryAddresses.Add(businessAddress);
            }

            if (!string.IsNullOrEmpty(source.Inner.OtherAddress))
            {
                vCardDeliveryAddress otherAddress = new vCardDeliveryAddress();
                otherAddress.City       = source.Inner.OtherAddressCity;
                otherAddress.Country    = source.Inner.OtherAddressCountry;
                otherAddress.PostalCode = source.Inner.OtherAddressPostalCode;
                otherAddress.Region     = source.Inner.OtherAddressState;
                otherAddress.Street     = source.Inner.OtherAddressStreet;
                if (source.Inner.SelectedMailingAddress == OlMailingAddress.olOther)
                {
                    otherAddress.AddressType.Add(vCardDeliveryAddressTypes.Preferred);
                }
                target.DeliveryAddresses.Add(otherAddress);
            }

            MapPhoneNumbers1To2(source.Inner, target);

            if (_configuration.MapBirthday && !source.Inner.Birthday.Equals(new DateTime(4501, 1, 1, 0, 0, 0)))
            {
                target.BirthDate = source.Inner.Birthday.Date;
            }

            target.Organization = source.Inner.CompanyName;
            target.Department   = source.Inner.Department;

            target.Title  = source.Inner.JobTitle;
            target.Office = source.Inner.OfficeLocation;

            if (!string.IsNullOrEmpty(source.Inner.PersonalHomePage))
            {
                target.Websites.Add(new vCardWebsite(source.Inner.PersonalHomePage, vCardWebsiteTypes.Personal));
            }
            if (!string.IsNullOrEmpty(source.Inner.BusinessHomePage))
            {
                target.Websites.Add(new vCardWebsite(source.Inner.BusinessHomePage, vCardWebsiteTypes.Work));
            }

            MapCertificate1To2(source.Inner, target, logger);

            if (_configuration.MapContactPhoto)
            {
                MapPhoto1To2(source.Inner, target, logger);
            }

            if (!string.IsNullOrEmpty(source.Inner.Body))
            {
                target.Notes.Add(new vCardNote(source.Inner.Body));
            }

            return(target);
        }
Exemplo n.º 47
0
        public void ReadWriteProperty_IsWork()
        {

            vCardDeliveryAddress address = new vCardDeliveryAddress();
            address.IsWork = true;
            Assert.IsTrue(
                address.IsWork,
                "IsWork should have been set to true.");

            address.IsWork = false;
            Assert.IsFalse(
                address.IsWork,
                "IsWork should have been set to false.");
        }