Esempio n. 1
0
        private List <BandMember> GetBandMembers(Artist artist)
        {
            var members       = new List <BandMember>();
            var membersOfBand = artist.Relations.Where(x => x.TypeId == RelationLinks.BandMember);

            foreach (var member in membersOfBand)
            {
                members.Add(new BandMember
                {
                    Name            = member.Artist?.Name,
                    Attributes      = member.Attributes,
                    IsCurrentMember = member.Ended == null,
                    End             = member.End,
                    Start           = member.Begin
                });
            }

            return(members);
        }
Esempio n. 2
0
        private ArtistLinks GetLinksForArtist(Artist artist)
        {
            var links = new ArtistLinks();

            foreach (var relation in artist.Relations)
            {
                switch (relation.TypeId)
                {
                case RelationLinks.AllMusic:
                    links.AllMusic = relation.Url?.Resource.ToHttpsUrl();
                    break;

                case RelationLinks.BbcMusic:
                    links.BbcMusic = relation.Url?.Resource.ToHttpsUrl();
                    break;

                case RelationLinks.Discogs:
                    links.Discogs = relation.Url?.Resource.ToHttpsUrl();
                    break;

                case RelationLinks.Homepage:
                    links.HomePage = relation.Url?.Resource.ToHttpsUrl();
                    break;

                case RelationLinks.Imdb:
                    links.Imdb = relation.Url?.Resource.ToHttpsUrl();
                    break;

                case RelationLinks.LastFm:
                    links.LastFm = relation.Url?.Resource.ToHttpsUrl();
                    break;

                case RelationLinks.MySpace:
                    links.MySpace = relation.Url?.Resource.ToHttpsUrl();
                    break;

                case RelationLinks.OnlineCommunity:
                    links.OnlineCommunity = relation.Url?.Resource.ToHttpsUrl();
                    break;

                case RelationLinks.SocialNetwork:
                    if ((relation.Url?.Resource ?? string.Empty).Contains("twitter", CompareOptions.IgnoreCase))
                    {
                        links.Twitter = relation.Url?.Resource.ToHttpsUrl();
                    }
                    if ((relation.Url?.Resource ?? string.Empty).Contains("facebook", CompareOptions.IgnoreCase))
                    {
                        links.Facebook = relation.Url?.Resource.ToHttpsUrl();
                    }
                    if ((relation.Url?.Resource ?? string.Empty).Contains("instagram", CompareOptions.IgnoreCase))
                    {
                        links.Instagram = relation.Url?.Resource.ToHttpsUrl();
                    }
                    if ((relation.Url?.Resource ?? string.Empty).Contains("vk", CompareOptions.IgnoreCase))
                    {
                        links.Vk = relation.Url?.Resource.ToHttpsUrl();
                    }
                    break;

                case RelationLinks.Streams:
                    if ((relation.Url?.Resource ?? string.Empty).Contains("spotify", CompareOptions.IgnoreCase))
                    {
                        links.Spotify = relation.Url?.Resource.ToHttpsUrl();
                    }
                    if ((relation.Url?.Resource ?? string.Empty).Contains("deezer", CompareOptions.IgnoreCase))
                    {
                        links.Deezer = relation.Url?.Resource.ToHttpsUrl();
                    }

                    break;

                case RelationLinks.YouTube:
                    links.YouTube = relation.Url?.Resource.ToHttpsUrl();
                    break;

                case RelationLinks.Download:
                    if ((relation.Url?.Resource ?? string.Empty).Contains("google", CompareOptions.IgnoreCase))
                    {
                        links.Google = relation.Url?.Resource.ToHttpsUrl();
                    }
                    if ((relation.Url?.Resource ?? string.Empty).Contains("apple", CompareOptions.IgnoreCase))
                    {
                        links.Apple = relation.Url?.Resource.ToHttpsUrl();
                    }

                    break;
                }
            }

            return(links);
        }