Exemple #1
0
 public static PlaylistList FromDataPlaylist(Data.Playlist playlist, User user, Image playlistThumbnail, Image userThumbnail)
 {
     return(new PlaylistList
     {
         Playlist = new DataToken
         {
             Text = playlist.Name,
             Value = playlist.RoadieId.ToString()
         },
         User = new DataToken
         {
             Text = user.UserName,
             Value = user.RoadieId.ToString()
         },
         PlaylistCount = playlist.TrackCount,
         IsPublic = playlist.IsPublic,
         Duration = playlist.Duration,
         TrackCount = playlist.TrackCount,
         CreatedDate = playlist.CreatedDate,
         LastUpdated = playlist.LastUpdated,
         UserThumbnail = userThumbnail,
         Id = playlist.RoadieId,
         Thumbnail = playlistThumbnail
     });
 }
Exemple #2
0
        public static string GetPlaylistId(Data.Playlist list)
        {
            var url    = new Uri(list.Location);
            var result = HttpUtility.ParseQueryString(url.Query).Get("list");

            return(result);
        }
Exemple #3
0
 public static List <Data.Lied> LesenFremdschluesselGleich(Data.Playlist suchschluessel)
 {
     using (var context = new Data.Context())
     {
         return((from record in context.Lied.Include(x => x.Playlist) where record.Playlist == suchschluessel select record).ToList());
     }
 }
Exemple #4
0
        public async Task <List <Data.Playlist> > GetPlaylists(string playlistId)
        {
            var result         = new List <Data.Playlist>();
            var youtubeService = await GetService().ConfigureAwait(false);

            var request = youtubeService.Playlists.List("snippet,contentDetails");

            request.Id = playlistId;

            var response = await request.ExecuteAsync().ConfigureAwait(false);

            foreach (var item in response.Items)
            {
                var nextPageToken = "";
                while (nextPageToken != null)
                {
                    var playlist = new Data.Playlist
                    {
                        Title         = item.Snippet.Title,
                        Location      = $"{_playListBaseUrl}{item.Id}",
                        PrivacyStatus = string.IsNullOrEmpty(item.Status?.PrivacyStatus) ? (int)PrivacyStatus.None : (int)PrivacyStatus.Restricted,
                    };

                    result.Add(playlist);

                    nextPageToken = response.NextPageToken;
                }
            }

            return(result);
        }
Exemple #5
0
        public UrlParseResult(ILoggingService log, Data.Playlist item, ParseResultType type)
            : this(log, type)
        {
            Playlists = new List <Data.Playlist>()
            {
                item
            };

            Log();
        }
Exemple #6
0
        public async Task DeletePlaylist(Data.Playlist playlist)
        {
            var youtubeService = await GetService().ConfigureAwait(false);

            var id = GetPlaylistId(playlist);

            await youtubeService.Playlists.Delete(id)
            .ExecuteAsync()
            .ConfigureAwait(false);
        }
Exemple #7
0
        public async Task CreatePlaylist(Data.Playlist playlist, bool publicPlaylist = true)
        {
            var youtubeService = await GetService().ConfigureAwait(false);

            var newPlaylist = new Playlist()
            {
                Snippet = new PlaylistSnippet()
                {
                    Title       = playlist.Title,
                    Description = playlist.Description
                },
                Status = new PlaylistStatus
                {
                    PrivacyStatus = publicPlaylist == true ? "public" : "private"
                }
            };

            newPlaylist = await youtubeService.Playlists.Insert(newPlaylist, "snippet,status")
                          .ExecuteAsync()
                          .ConfigureAwait(false);

            foreach (var item in playlist.MediaItems)
            {
                // Add a video to the newly created playlist.
                var newVideo = new PlaylistItem()
                {
                    Snippet = new PlaylistItemSnippet()
                    {
                        PlaylistId = newPlaylist.Id,
                        ResourceId = new ResourceId()
                    }
                };
                newVideo.Snippet.ResourceId.Kind    = "youtube#video";
                newVideo.Snippet.ResourceId.VideoId = GetVideoId(item);
                newVideo = await youtubeService.PlaylistItems.Insert(newVideo, "snippet")
                           .ExecuteAsync()
                           .ConfigureAwait(false);
            }
        }