Beispiel #1
0
        private void ImportContacts(string userGuid, string accessToken)
        {
            var responseString = RequestHelper.PerformRequest(string.Format(YahooLoginProvider.YahooUrlContactsFormat, userGuid),
                                                              headers: new Dictionary <string, string> {
                { "Authorization", "Bearer " + accessToken }
            });

            const string xmlns = "http://social.yahooapis.com/v1/schema.rng";

            var contactsDocument = XDocument.Parse(responseString);
            var contacts         = from entry in contactsDocument.Root.Elements(XName.Get("contact", xmlns))
                                   select
                                   new
            {
                Name = from field in entry.Elements(XName.Get("fields", xmlns))
                       where field.Element(XName.Get("type", xmlns)).Value == "name"
                       select field.Element(XName.Get("value", xmlns)).Element(XName.Get("givenName", xmlns)).Value,
                LastName = from field in entry.Elements(XName.Get("fields", xmlns))
                               where field.Element(XName.Get("type", xmlns)).Value == "name"
                           select field.Element(XName.Get("value", xmlns)).Element(XName.Get("familyName", xmlns)).Value,
                Email = from field in entry.Elements(XName.Get("fields", xmlns))
                            where field.Element(XName.Get("type", xmlns)).Value == "email"
                        select field.Element(XName.Get("value", xmlns)).Value,
            };

            foreach (var contact in contacts)
            {
                Master.AddContactInfo(contact.Name.FirstOrDefault(), contact.LastName.FirstOrDefault(), contact.Email);
            }
        }
Beispiel #2
0
        private void ImportContacts(OAuth20Token token)
        {
            var response = RequestContacts(token);

            if (response != null && response.Connections != null)
            {
                foreach (var contact in response.Connections)
                {
                    string name = null;
                    if (contact.Names != null)
                    {
                        var first = contact.Names.FirstOrDefault(contactName => !string.IsNullOrEmpty(contactName.displayName));
                        if (first != null)
                        {
                            name = first.displayName;
                        }
                    }
                    string email = null;
                    if (contact.EmailAddresses != null)
                    {
                        var first = contact.EmailAddresses.FirstOrDefault(contactEmail => !string.IsNullOrEmpty(contactEmail.value));
                        if (first != null)
                        {
                            email = first.value;
                        }
                    }

                    Master.AddContactInfo(name, email);
                }
            }
        }
Beispiel #3
0
        private void ImportContacts(OAuth20Token token)
        {
            var doc = RequestContacts(token);

            //selecting from xdocument
            var contacts = from e in doc.Root.Elements("{http://www.w3.org/2005/Atom}entry")
                           select new
            {
                Name  = e.Element("{http://www.w3.org/2005/Atom}title").Value,
                Email = from a in e.Elements("{http://schemas.google.com/g/2005}email")
                        where a.Attribute("address") != null
                        select a.Attribute("address").Value
            };

            foreach (var contact in contacts)
            {
                Master.AddContactInfo(contact.Name, contact.Email);
            }
        }
        private void ImportContacts(OAuth20Token token)
        {
            var doc = RequestContacts(token);

            //selecting from xdocument
            var contacts = doc.Root.Elements("{http://www.w3.org/2005/Atom}entry")
                           .Select(e => new
            {
                Name  = e.Element("{http://www.w3.org/2005/Atom}title").Value,
                Email = e.Elements("{http://schemas.google.com/g/2005}email")
                        .Where(a => a.Attribute("address") != null)
                        .Select(a => a.Attribute("address").Value)
                        .FirstOrDefault()
            }).ToList();

            foreach (var contact in contacts)
            {
                Master.AddContactInfo(contact.Name, contact.Email);
            }
        }
Beispiel #5
0
        private void ImportContacts(string userGuid, string accessToken)
        {
            var responseString = RequestHelper.PerformRequest(string.Format(YahooLoginProvider.YahooUrlContactsFormat, userGuid),
                                                              headers: new Dictionary <string, string> {
                { "Authorization", "Bearer " + accessToken }
            });

            const string xmlns = "http://social.yahooapis.com/v1/schema.rng";

            var contactsDocument = XDocument.Parse(responseString);
            var contacts         = contactsDocument.Root.Elements(XName.Get("contact", xmlns))
                                   .Select(entry => new
            {
                Name = entry.Elements(XName.Get("fields", xmlns))
                       .Where(field => field.Element(XName.Get("type", xmlns)).Value == "name")
                       .Select(field => field.Element(XName.Get("value", xmlns)).Element(XName.Get("givenName", xmlns)).Value).FirstOrDefault(),
                LastName = entry.Elements(XName.Get("fields", xmlns))
                           .Where(field => field.Element(XName.Get("type", xmlns)).Value == "name")
                           .Select(field => field.Element(XName.Get("value", xmlns)).Element(XName.Get("familyName", xmlns)).Value).FirstOrDefault(),
                Email = entry.Elements(XName.Get("fields", xmlns))
                        .Where(field => field.Element(XName.Get("type", xmlns)).Value == "email")
                        .Select(field => field.Element(XName.Get("value", xmlns)).Value).FirstOrDefault(),
            }).ToList();

            foreach (var contact in contacts)
            {
                if (String.IsNullOrEmpty(contact.Email))
                {
                    Master.AddContactInfo(contact.Name, contact.LastName, "");
                }
                else
                {
                    Master.AddContactInfo(contact.Name, contact.LastName, contact.Email);
                }
            }
        }