示例#1
0
        public async Task <IActionResult> DeleteMusic(int musicId, int UserId, int RoleId)
        {
            Music music;

            if (RoleId == (int)UserRoleEnum.Admin)
            {
                music = await db.Musics.Where(m => m.MusicId == musicId).FirstOrDefaultAsync();
            }
            else
            {
                music = await db.Musics.Where(m => m.MusicId == musicId && m.UserId == UserId).FirstOrDefaultAsync();
            }
            if (music != null)
            {
                try
                {
                    await cloudService.DeleteFile("", music.MusicFileName);

                    if (music.MusicImageName != $"{options.Value.DefaultMusicImageFile}")
                    {
                        await cloudService.DeleteFile("", music.MusicImageName);
                    }
                    db.Musics.Remove(music);
                    await db.SaveChangesAsync();

                    return(new OkResult());
                }
                catch (Exception ex)
                {
                    return(new StatusCodeResult(500));
                }
            }
            return(new NotFoundResult());
        }
示例#2
0
        public async Task <IActionResult> DeletePlaylist(int playlistId, int UserId, int RoleId)
        {
            var playlist = await db.Playlists.FindAsync(playlistId);

            if (playlist == null)
            {
                return(new NotFoundResult());
            }
            if (RoleId != (int)UserRoleEnum.Admin)
            {
                if (playlist.UserId != UserId)
                {
                    return(new ForbidResult());
                }
            }
            try
            {
                if (playlist.PlaylistImageFile != $"{options.Value.DefaultPlaylistImageFile}")
                {
                    await cloudService.DeleteFile("", playlist.PlaylistImageFile);
                }
                db.Playlists.Remove(playlist);
                await db.SaveChangesAsync();

                return(new OkResult());
            }
            catch
            {
                return(new StatusCodeResult(500));
            }
        }
示例#3
0
        public async Task <IActionResult> Delete(int Id)
        {
            var article = await _articleService.Get(Id);

            // Usuwamy zdjęcie przypisane do artykułu
            if (article.Image != null)
            {
                _cloudService.DeleteFile(article.Image.Id);
            }

            // Usuwamy taxonomies artykułu
            if (article.Taxonomies.Count != 0)
            {
                await _taxonomyService.Delete(Id);
            }

            // Usuwamy artykuł
            await _articleService.Delete(Id);

            return(RedirectToAction("List"));
        }
示例#4
0
        public IActionResult Delete(string Id)
        {
            var status = _cloudinaryService.DeleteFile(Id);

            return(RedirectToAction("List"));
        }