Esempio n. 1
0
 public SongRatingFromPartyTable VoteSong(SongRatingFromPartyTable updateSongRating)
 {
     try
     {
         return(ratingObj.VoteSong(updateSongRating));
     }
     catch
     {
         throw new FaultException("Something went wrong");
     }
 }
Esempio n. 2
0
        //Service methods for SongRating
        public bool AddRating(SongRatingFromPartyTable rating)
        {
            try
            {
                return(ratingObj.AddSongRating(rating));
            }

            catch (Exception ex)
            {
                throw new FaultException <Exception>(ex, ex.Message);
            }
        }
Esempio n. 3
0
        /// <summary>
        /// Upvoting a song on the current playlist
        /// </summary>
        /// <param name="rowIndex"></param>
        private void Upvote(int rowIndex)
        {
            var upVoteForASong = new SongRatingFromPartyTable
            {
                partyID  = _dataStorage.CurrentSelectedPartyId,
                songURL  = _currentPlaylist[rowIndex],
                voteType = 1,
                userID   = _dataStorage.UserId
            };

            _service.AddRating(upVoteForASong);
            GetPlaylist();

            this._service.NotifyServer(
                new WCFService.EventDataType()
            {
                ClientId     = _dataStorage.UserId,
                EventMessage = playlist.ToArray()
            });
        }
Esempio n. 4
0
        private void getSongsResultLB_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (getSongsResultLB.SelectedIndex == -1)
            {
                return;
            }

            DeselectListIterator(2);

            var found = false;

            VoteSongNameLbl.Text = getSongsResultLB.Items[getSongsResultLB.SelectedIndex].ToString();
            foreach (var aux in _collectionOfVotes.ToList())
            {
                if (aux.songURL.Equals(_existingFullTrackPlaylist[getSongsResultLB.SelectedIndex]))
                {
                    _usersRatingForASong = new SongRatingFromPartyTable
                    {
                        partyID  = aux.partyID,
                        songURL  = aux.songURL,
                        voteType = aux.voteType,
                        userID   = aux.userID
                    };
                    found = true;
                    break;
                }
            }
            if (!found)
            {
                _usersRatingForASong = new SongRatingFromPartyTable
                {
                    partyID  = _dataStorage.CurrentSelectedPartyId,
                    songURL  = _existingFullTrackPlaylist[getSongsResultLB.SelectedIndex],
                    voteType = 0,
                    userID   = _dataStorage.UserId
                };
                _collectionOfVotes.Add(_usersRatingForASong);
            }
            OverallRatingLbl.Text = @"Overall Rating of this song is: " + _service.GetSongFromPartyPlaylist
                                        (_usersRatingForASong.partyID, _usersRatingForASong.songURL).rating;
        }
 public bool AddSongRating(SongRatingFromPartyTable rating)
 {
     try { return(SRR.AddSongRating(rating)); }
     catch (Exception ex) { throw ex; }
 }
        public SongRatingFromPartyTable VoteSong(SongRatingFromPartyTable Updatedrating)
        {
            int voteType = Updatedrating.voteType;

            return(SRR.VoteSong(Updatedrating));
        }
Esempio n. 7
0
        private void getSongsBtn_Click(object sender, EventArgs e)
        {
            var playlist  = _service.GetAllSongs(_dataStorage.CurrentSelectedPartyId).OrderByDescending(aux => aux.rating).ToList();
            var userVotes = _service.GetAllRatings(_dataStorage.CurrentSelectedPartyId, _dataStorage.UserId).ToList();

            RefreshSpotifyPlaylist(playlist);

            if (getSongsResultLB.InvokeRequired)
            {
                getSongsResultLB.Invoke(new MethodInvoker(delegate { getSongsResultLB.Items.Clear(); }));
            }
            else
            {
                getSongsResultLB.Items.Clear();
            }


            _existingPlaylist          = new List <string>();
            _existingFullTrackPlaylist = new List <string>();
            _collectionOfVotes         = new List <SongRatingFromPartyTable>();
            // _existingFullList = new List<WCFService.SongsForPartyTable>();

            userVotes.ForEach(vote =>
            {
                SongRatingFromPartyTable songRating = new SongRatingFromPartyTable
                {
                    partyID  = vote.partyID,
                    songURL  = vote.songURL,
                    voteType = vote.voteType,
                    userID   = vote.userID
                };
                _collectionOfVotes.Add(songRating);
            }
                              );

            playlist.ForEach(song =>
            {
                //addTrack(newPlaylist,song.songURL);

                string myArtists      = null;
                SongsForPartyTable sp = new SongsForPartyTable
                {
                    partyID = song.partyID,
                    songURL = song.songURL,
                    rating  = song.rating
                };
                _existingFullTrackPlaylist.Add(sp.songURL);
                // _existingFullList.Add(sp);
                var fullTrack = _spotify.GetTrack(song.songURL.Substring(14, song.songURL.Length - 14));

                var list = fullTrack.Artists;
                list.ForEach(artist => {
                    if (myArtists == null)
                    {
                        myArtists = artist.Name;
                    }
                    else
                    {
                        myArtists += ", " + artist.Name;
                    }
                });
                _existingPlaylist.Add(fullTrack.Uri);
                if (getSongsResultLB.InvokeRequired)
                {
                    getSongsResultLB.Invoke(new MethodInvoker(delegate { getSongsResultLB.Items.Add($"{fullTrack.Name } : { myArtists}"); }));
                }
                else
                {
                    getSongsResultLB.Items.Add($"{fullTrack.Name } : { myArtists}");
                }
            });
        }