/// <summary> /// Add new email address to the collection. /// </summary> /// <param name="type">Email address type. Note: This value can be flagged value !</param> /// <param name="email">Email address.</param> public EmailAddress Add(EmailAddressType_enum type,string email) { Item item = m_pOwner.Items.Add("EMAIL",EmailAddress.EmailTypeToString(type),""); item.SetDecodedValue(email); EmailAddress emailAddress = new EmailAddress(item,type,email); m_pCollection.Add(emailAddress); return emailAddress; }
/// <summary> /// Add new email address to the collection. /// </summary> /// <param name="type">Email address type. Note: This value can be flagged value !</param> /// <param name="email">Email address.</param> public EmailAddress Add(EmailAddressType_enum type, string email) { Item item = m_pOwner.Items.Add("EMAIL", EmailAddress.EmailTypeToString(type), ""); item.SetDecodedValue(email); EmailAddress emailAddress = new EmailAddress(item, type, email); m_pCollection.Add(emailAddress); return(emailAddress); }
/// <summary> /// Parses email address from vCard EMAIL structure string. /// </summary> /// <param name="item">vCard EMAIL item.</param> internal static EmailAddress Parse(Item item) { EmailAddressType_enum type = EmailAddressType_enum.NotSpecified; if(item.ParametersString.ToUpper().IndexOf("PREF") != -1){ type |= EmailAddressType_enum.Preferred; } if(item.ParametersString.ToUpper().IndexOf("INTERNET") != -1){ type |= EmailAddressType_enum.Internet; } if(item.ParametersString.ToUpper().IndexOf("X400") != -1){ type |= EmailAddressType_enum.X400; } return new EmailAddress(item,type,item.DecodedValue); }
/// <summary> /// Converts EmailAddressType_enum to vCard item parameters string. /// </summary> /// <param name="type">Value to convert.</param> /// <returns></returns> internal static string EmailTypeToString(EmailAddressType_enum type) { string retVal = ""; if((type & EmailAddressType_enum.Internet) != 0){ retVal += "INTERNET,"; } if((type & EmailAddressType_enum.Preferred) != 0){ retVal += "PREF,"; } if((type & EmailAddressType_enum.X400) != 0){ retVal += "X400,"; } if(retVal.EndsWith(",")){ retVal = retVal.Substring(0,retVal.Length - 1); } return retVal; }
/// <summary> /// Default constructor. /// </summary> /// <param name="item">Owner vCard item.</param> /// <param name="type">Email type. Note: This value can be flagged value !</param> /// <param name="emailAddress">Email address.</param> internal EmailAddress(Item item, EmailAddressType_enum type, string emailAddress) { m_pItem = item; m_Type = type; m_EmailAddress = emailAddress; }