Exemple #1
0
        private async Task <StackLayout> GetArtistAlbums()
        {
            var ArtistAlbums = await GetAlbumDetails.ByArtistId(ArtistId);

            var NumberOfAlbums = ArtistAlbums.Number_Of_Albums;
            var Artist         = ConvertJuxString.Decode(ArtistAlbums.Artist);
            var Albums         = ArtistAlbums.Albums;


            var stack = new StackLayout();
            await Task.Run(() =>
            {
                foreach (var Album in Albums)
                {
                    var albumView      = new AlbumView();
                    albumView.Artist   = Artist;
                    albumView.Album    = ConvertJuxString.Decode(Album.Title);
                    albumView.ImageUrl = Album.Album_Picture;
                    albumView.AlbumId  = Album.Id;
                    albumView.Year     = Album.Date;
                    stack.Children.Add(albumView);
                }
            });

            return(stack);
        }
Exemple #2
0
        private async Task <StackLayout> GetArtistSongs()
        {
            var ArtistSongs = await GetSongDetails.ByArtistId(ArtistId);

            var Artist = ConvertJuxString.Decode(ArtistSongs.Artist);
            var Songs  = ArtistSongs.Songs;

            var stack = new StackLayout();

            await Task.Run(() =>
            {
                foreach (var Song in Songs)
                {
                    var songView      = new SongView();
                    songView.Album    = ConvertJuxString.Decode(Song.Album);
                    songView.Artist   = Artist;
                    songView.Title    = ConvertJuxString.Decode(Song.Title);
                    songView.Duration = Duration(Song.Duration);
                    songView.SongId   = Song.SongId;
                    songView.ImageUrl = "Song.png";

                    stack.Children.Add(songView);
                }
            });

            return(stack);
        }
Exemple #3
0
        private async Task <StackLayout> AlbumStackAsync()
        {
            StackLayout albumStack = new StackLayout();
            var         JuxResults = await ArtistOrAlbumSearchAsync();

            if (JuxResults != null)
            {
                var ResultCount = JuxResults.Results.Count;
                var CountMatch  = 0;

                string Artist = "";
                string Album  = "";
                string Url    = "";
                int    Id     = 0;

                await Task.Run(() =>
                {
                    for (int i = 0; i <= ResultCount - 1; i++)
                    {
                        albumView = new AlbumView();

                        Artist = ConvertJuxString.Decode(JuxResults.Results[i].Artist);
                        Album  = ConvertJuxString.Decode(JuxResults.Results[i].Album);
                        Url    = JuxResults.Results[i].Album_Picture;
                        Id     = JuxResults.Results[i].Id;

                        albumView.Artist        = Artist;
                        albumView.Album         = Album;
                        albumView.AlbumId       = Id;
                        albumView.ImageUrl      = Url;
                        albumView.DownloadCount = $" ";

                        if (Album.ToLower().Contains(SearchText.ToLower()))
                        {
                            CountMatch += 1;
                            albumStack.Children.Add(albumView);
                        }
                    }
                    if (CountMatch < 1)
                    {
                        albumStack.Children.Add(new Label
                        {
                            Text                    = $"Nothing was found for {SearchText}, try with another Title.",
                            FontSize                = 15,
                            TextColor               = Color.White,
                            LineBreakMode           = LineBreakMode.WordWrap,
                            HorizontalTextAlignment = TextAlignment.Center
                        });
                    }
                });
            }
            return(albumStack);
        }
Exemple #4
0
        private async Task <StackLayout> GetAlbum()
        {
            var Results = await GetAlbumDetails.ById(AlbumId);

            var    Album  = Results.AlbumInformation;
            var    Title  = ConvertJuxString.Decode(Album.Album);
            var    Artist = ConvertJuxString.Decode(Album.Artist);
            string Year   = Convert.ToDateTime(ConvertJuxString.Decode(Album.Date)).Year.ToString();


            var stack = new StackLayout();
            await Task.Run(() =>
            {
                var albumView      = new AlbumView();
                albumView.Artist   = Artist;
                albumView.Album    = Title;
                albumView.ImageUrl = Album.High_Quality_Picture;
                albumView.AlbumId  = AlbumId;
                albumView.Year     = Year;
                stack.Children.Add(albumView);
            });

            return(stack);
        }