void OnPlaylistNameChanged(AbstractProperty prop, object oldVal)
        {
            string trimmedName = PlaylistName.Trim();

            IsPlaylistNameValid = !string.IsNullOrEmpty(trimmedName);
            if (_playlist != null)
            {
                _playlist.Name = trimmedName;
            }
        }
Beispiel #2
0
        public async Task <bool> CreatePlaylistAndAddTracks(string userID, string playlistName, List <string> trackURIs)
        {
            string token = await GetAccessToken();

            string url = string.Format(playlistURL, userID);

            TrackUris trackUris = new TrackUris();

            trackUris.uris = trackURIs;
            string jsonUrls = JsonConvert.SerializeObject(trackUris);

            using (HttpRequestMessage message = new HttpRequestMessage(HttpMethod.Post, url))
            {
                message.Headers.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Bearer", token);
                //string playListName = string.Format("{\"name\":\"{0}\"}", playlistName);
                PlaylistName pListName = new PlaylistName();
                pListName.name = playlistName;
                HttpContent content = new StringContent(JsonConvert.SerializeObject(pListName));

                message.Content = content;

                var response = await client.SendAsync(message);

                if (response.IsSuccessStatusCode)
                {
                    var responseContentString = await response.Content.ReadAsStringAsync();

                    Playlist_Simplified newPlayList = JsonConvert.DeserializeObject <Playlist_Simplified>(responseContentString);

                    string urlTracks = string.Format(postPlaylistTracksURL, newPlayList.id);
                    //string jsonUrls = JsonConvert.SerializeObject(trackURIs);

                    message.RequestUri = new Uri(urlTracks);
                    content            = new StringContent(jsonUrls);

                    return(true);
                }
                else
                {
                    MessageBox.Show(response.ReasonPhrase);
                    return(false);
                }
            }
        }
        public Playlist CreatePlaylist(string name, Song song)
        {
            //ContentValues contentValues = new ContentValues();
            //contentValues.Put(MediaStore.Audio.Playlists.InterfaceConsts.Name, name);
            //contentValues.Put(MediaStore.Audio.Playlists.InterfaceConsts.DateAdded, Java.Lang.JavaSystem.CurrentTimeMillis());
            //contentValues.Put(MediaStore.Audio.Playlists.InterfaceConsts.DateModified, Java.Lang.JavaSystem.CurrentTimeMillis());

            //Android.Net.Uri uri = Android.App.Application.Context.ContentResolver.Insert(
            //    MediaStore.Audio.Playlists.ExternalContentUri, contentValues);
            //if (uri != null)
            //{
            //    ICursor playlistCursor = Android.App.Application.Context.ContentResolver.Query(uri, _playlistProjections, null, null, null);
            //    if (playlistCursor.MoveToFirst())
            //    {
            //        ulong id = ulong.Parse(playlistCursor.GetString(playlistCursor.GetColumnIndex(MediaStore.Audio.Playlists.InterfaceConsts.Id)));
            //        return new Playlist { Id = id, Title = name, Songs = new List<Song>(), IsDynamic = true, DateModified = DateTime.Now };
            //    }
            //    playlistCursor?.Close();

            //}
            //return null;
            var db       = new DataService();
            var playlist = new PlaylistName
            {
                Title        = name,
                DateModified = DateTime.Now
            };

            db.Insert(playlist);
            var inserted = db.GetInsertedPlaylst(name);

            if (inserted != null)
            {
                var playlistModel = new PlaylistModel
                {
                    playlistNameId = inserted.PlaylistNameId,
                    SongId         = song.Id
                };
                db.Insert(playlistModel);
            }
            return(null);
        }
Beispiel #4
0
 /// <summary>
 /// Rename the playlist to the given name
 /// </summary>
 /// <param name="newName">The new playlist name</param>
 public static void RenamePlaylist(string newName)
 {
     PlaylistName.Click();
     Driver.Instance.FillIn("Playlist Name").With(newName);
     Driver.Instance.ClickButton("Save");
 }