public IActionResult AddSong(AddSongRequest data)
 {
     var result = (repository.AddSong(data));
     {
         if (result)
         {
             return(Ok(new { message = "Successfully Added" }));
         }
         return(Unauthorized("Authorization failed"));
     }
 }
        public async Task <IActionResult> AddRequest([FromBody] AddSongRequest requestModel)
        {
            var addRequestResult = await _playlistService
                                   .AddRequest(requestModel.Username, requestModel.CommandText, requestModel.IsVipRequest)
                                   .ConfigureAwait(false);

            return(new JsonResult(new AddRequestResponse
            {
                Result = addRequestResult.Item1,
                PlaylistPosition = addRequestResult.Item2
            }));
        }
        public async Task <IActionResult> AddMusic([FromBody] AddSongRequest request)
        {
            if (request == null)
            {
                Console.WriteLine(Request.Body);
                return(Ok(new { Success = false }));
            }


            var result = await _mediator.Send(request);

            return(Ok(result));
        }
        public async Task <AddRequestResponse> AddSong(AddSongRequest addSongRequest)
        {
            try
            {
                var result = await _playlistClient.PostAsync("AddRequest",
                                                             HttpClientHelper.GetJsonData(addSongRequest));

                return(JsonConvert.DeserializeObject <AddRequestResponse>(await result.Content.ReadAsStringAsync()));
            }
            catch (Exception e)
            {
                return(HttpClientHelper.LogError <AddRequestResponse>(_logger, e, new object[] { addSongRequest.Username, addSongRequest.CommandText, addSongRequest.IsVipRequest }));
            }
        }
Beispiel #5
0
        public bool AddSong(AddSongRequest request)
        {
            if (request != null)
            {
                SongList songList = new SongList();
                songList.SongName = request.Name;
                songList.Url      = request.Url;
                songList.Artist   = request.Artist;
                songList.Album    = request.Album;
                songList.image    = request.Image;


                _db.SongLists.Add(songList);
                _db.SaveChanges();
                return(true);
            }
            return(false);
        }
Beispiel #6
0
        public async Task <ApiResponse <AddSongResponse> > AddSong([FromBody] AddSongRequest request)
        {
            if (request == null || !this.ModelState.IsValid)
            {
                return(this.ModelStateErrors <AddSongResponse>());
            }

            var splitter = new SongNameSplitter(); // TODO: Move to constructor
            var artists  = splitter.SplitArtistName(request.Artists).ToList();
            var songId   = await this.songsService.CreateSongAsync(request.SongName, artists, SourcesNames.User, this.User.GetId());

            var song = new SongArtistsAndTitle(artists, request.SongName);

            await this.songsService.UpdateSongsSystemDataAsync(songId);

            return(new AddSongResponse {
                Id = songId, SongTitle = song.ToString()
            }.ToApiResponse());
        }
Beispiel #7
0
        public async Task <ApiResponse <AddSongResponse> > AddSong([FromBody] AddSongRequest request)
        {
            if (request == null || !this.ModelState.IsValid)
            {
                return(this.ModelStateErrors <AddSongResponse>());
            }

            var artists = this.songNameSplitter.SplitArtistName(request.Artists).ToList();
            var songId  = await this.songsService.CreateSongAsync(request.SongName, artists, SourcesNames.User, this.User.GetId());

            var song = new SongArtistsAndTitle(artists, request.SongName);

            // Find video if available
            var videoId = this.youTubeDataProvider.SearchVideo(string.Join(" ", song.Artists), song.Title);

            if (videoId != null)
            {
                await this.songMetadataService.AddMetadataInfoAsync(
                    songId,
                    new SongAttributes(SongMetadataType.YouTubeVideoId, videoId),
                    SourcesNames.YouTube,
                    null);
            }

            // Find lyrics if available
            var lyrics = this.lyricsPluginDataProvider.GetLyrics(song.Artist, song.Title);

            if (!string.IsNullOrWhiteSpace(lyrics))
            {
                await this.songMetadataService.AddMetadataInfoAsync(
                    songId,
                    new SongAttributes(SongMetadataType.Lyrics, lyrics),
                    SourcesNames.LyricsPlugin,
                    null);
            }

            await this.songsService.UpdateSongsSystemDataAsync(songId);

            return(new AddSongResponse {
                Id = songId, SongTitle = song.ToString()
            }.ToApiResponse());
        }
Beispiel #8
0
 public Task <ApiResponse <AddSongResponse> > AddSong(AddSongRequest request) =>
 this.PostJson <AddSongResponse>("api/Songs/AddSong", request);