public IActionResult IndexAlbum()
        {
            AlbumIndexViewModel albumIndex   = new AlbumIndexViewModel();
            IEnumerable <Album> albumsFromDb = _applicationDbContext.Albums.ToList();

            foreach (var album in albumsFromDb)
            {
                albumIndex.AlbumList.Add(new AlbumListViewModel()
                {
                    Id    = album.Id,
                    Titel = album.Titel,
                    Cover = album.Cover
                });
            }


            var userName = User.FindFirstValue(ClaimTypes.NameIdentifier);

            List <SelectListItem> PlaylistToSelect = new List <SelectListItem>();

            foreach (var item in _applicationDbContext.MyMusicPlaylists.Where(x => x.UserId == userName).ToList())
            {
                PlaylistToSelect.Add(new SelectListItem {
                    Value = item.Id.ToString(), Text = item.PlaylistName
                });
            }
            albumIndex.MyMusicPlaylistToSelect = PlaylistToSelect;

            return(View(albumIndex));
        }
        public ActionResult Create(AlbumIndexViewModel album)
        {
            album.Author =
                _authorDtoToAuthorVm.Map <AuthorDTO, AuthorAlbumViewModel>(_service.AuthorService.Get(album.AuthorId));


            _service.AlbumService.Create(_indexVmToDTO.Map <AlbumIndexViewModel, AlbumDTO>(album));
            var albums = _dtoToIndexVm.Map <IEnumerable <AlbumDTO>, IEnumerable <AlbumIndexViewModel> >(_service.AlbumService.GetAll());

            return(View("Index", albums));
        }
        public ActionResult Edit(AlbumIndexViewModel album)
        {
            album.Author =
                _authorDtoToAuthorVm.Map <AuthorDTO, AuthorAlbumViewModel>(_service.AuthorService.Get(album.AuthorId));
            album.Songs = _songDtoToSongVm.Map <ICollection <SongDTO>, ICollection <SongDetailsViewModel> >(_service.AlbumService.Get(album.Id).Songs);


            _service.AlbumService.Update(_indexVmToDTO.Map <AlbumIndexViewModel, AlbumDTO>(album));

            var albums = _dtoToIndexVm.Map <IEnumerable <AlbumDTO>, IEnumerable <AlbumIndexViewModel> >(_service.AlbumService.GetAll());

            return(View("Index", albums));
        }
Exemple #4
0
        public ActionResult Index()
        {
            var albums  = _context.Album.ToList();
            var artists = _context.Artist.ToList();

            //creating a view model with all the artists and albums
            AlbumIndexViewModel viewModel = new AlbumIndexViewModel()
            {
                Artists = artists,
                Albums  = albums
            };

            return(View("Index", viewModel));
        }
        public async Task <ActionResult> Index()
        {
            string usrid = User.Identity.GetUserId();

            ViewBag.UserID = usrid;
            List <Album> la = await db.Albums.Where(u => u.User.Id == usrid).ToListAsync();

            AlbumIndexViewModel aivm = new AlbumIndexViewModel();

            aivm.UserID = usrid;
            var thisUser = await db.Users.Where(u => u.Id == usrid).SingleOrDefaultAsync();

            aivm.CanAddAlbum = thisUser.CanAddAlbum.GetValueOrDefault(false);
            aivm.CanAddPhoto = thisUser.CanAddPhoto.GetValueOrDefault(false);
            aivm.Albums      = la;
            return(View(aivm));
        }
Exemple #6
0
        // GET: Albums
        public ActionResult Index(string AlbumString)
        {
            var query = from a in db.Albums
                        select a;

            // Create a list of selected albums
            List <Album> SelectedAlbums = new List <Album>();

            //Create a view bag to store the number of selected albums
            ViewBag.TotalAlbumCount = db.Albums.Count();

            //Create selected count of customers
            ViewBag.SelectedAlbumCount = db.Albums.Count();

            if (AlbumString == null || AlbumString == "") // they didn't select anything
            {
                SelectedAlbums = query.ToList();
            }
            else //they picked something
            {
                //use linq to display searched names
                SelectedAlbums = query.Where(a => a.AlbumName.Contains(AlbumString) || a.AlbumArtist.Any(r => r.ArtistName == AlbumString)).ToList();

                //Create selected count of customers
                ViewBag.SelectedAlbumCount = SelectedAlbums.Count();

                //order the record to display sorted by lastname, first name, average sales
                SelectedAlbums.OrderBy(a => a.AlbumName).ThenBy(a => a.AlbumPrice);
            }

            List <AlbumIndexViewModel> AlbumsDisplay = new List <AlbumIndexViewModel>();

            foreach (Album a in SelectedAlbums)
            {
                AlbumIndexViewModel AVM = new AlbumIndexViewModel();

                AVM.Album = a;

                AVM.AlbumRating = getAverageRating(a.AlbumID).ToString("0.0");

                AlbumsDisplay.Add(AVM);
            }
            return(View(AlbumsDisplay));
        }
Exemple #7
0
        public ActionResult Index()
        {
            log.Info("Retriving albums");
            try
            {
                var genres = new List <tblAlbum>();

                // Create our view model
                var viewModel = new AlbumIndexViewModel
                {
                    NumberOfAlbums = imageDB.tblAlbums.Where(a => a.tblImages.Count() > 0).Count(),
                    Albums         = imageDB.tblAlbums.Where(a => a.tblImages.Count() > 0).OrderBy(a => a.ALB_Name).ToList()
                };

                return(this.View(viewModel));
            }
            catch (Exception ex)
            {
                log.Error("Error error logging", ex);
                return(this.View(ex.ToString()));
            }
        }
        public async Task <IActionResult> Index([FromQuery] int page = 0, PublishStatus?status = null)
        {
            AlbumIndexViewModel model = new AlbumIndexViewModel();

            page = Math.Max(page, 0);
            PublishStatus flags = PublishStatus.PUBLISHED | PublishStatus.UNPUBLISHED;

            if (status.HasValue)
            {
                flags = status.Value;
            }
            var result = await _albumRepo.ListAsync(page, _pageSize, flags);

            model.PageIndex  = result.PageIndex;
            model.PageSize   = result.PageSize;
            model.TotalPages = (int)Math.Ceiling(((double)result.TotalItems / (double)result.PageSize));

            AlbumViewModelMapper mapper = new AlbumViewModelMapper();

            model.Items.AddRange(result.Items.Select(i => mapper.Map(i)));

            return(View(model));
        }
Exemple #9
0
        public ActionResult Details(int id)
        {
            AlbumIndexViewModel model = adapter.GetDetails(id);

            return(View(model));
        }
Exemple #10
0
        public ActionResult AlbumSearchResults(string AlbumSearchString, string RatingString, SortOrder SelectedBounds, int[] SelectedGenre)
        {
            var query = from a in db.Albums
                        select a;



            if (AlbumSearchString == null || AlbumSearchString == "") //they didn't select anything
            {
                ViewBag.AlbumSearchString = "Search String was null";
            }
            else //they picked something up
            {
                ViewBag.AlbumSearchString = "The search string is" + AlbumSearchString;
                query = query.Where(a => a.AlbumName.Contains(AlbumSearchString) || a.AlbumArtist.Any(r => r.ArtistName == AlbumSearchString));
            }

            if (SelectedGenre == null) //nothing was selected
            {
                ViewBag.SelectedGenre = "No genres were selected";
            }
            else
            {
                String strSelectedGenre = "The selected genre(s) is/are: ";

                //get list of genres
                ViewBag.AllGenres = GetAllGenres();

                foreach (int GenreID in SelectedGenre)
                {
                    query = query.Where(s => s.AlbumGenre.Any(g => g.GenreID == GenreID));
                }
                ViewBag.SelectedGenre = strSelectedGenre;
            }


            if (RatingString != "")
            //make sure string is a valid number
            {
                Decimal decRating;
                try
                {
                    decRating = Convert.ToDecimal(RatingString);
                }
                catch // this code will disolay when something is wrong
                {
                    //Add a message for the viewbag
                    ViewBag.Message = RatingString + "is not valid number. Please try again";

                    //send user back to homepage
                    return(View("AlbumDetailedSearch"));
                }


                List <AlbumIndexViewModel> AlbumsDisplay_descend = new List <AlbumIndexViewModel>();
                List <AlbumIndexViewModel> AlbumsDisplay_ascend  = new List <AlbumIndexViewModel>();
                foreach (Album a in query)
                {
                    Decimal d = getAverageRating(a.AlbumID);
                    if (d >= decRating)
                    {
                        AlbumIndexViewModel ab = new AlbumIndexViewModel();
                        ab.Album       = a;
                        ab.AlbumRating = d.ToString();//Change to string
                        AlbumsDisplay_ascend.Add(ab);
                    }
                    else
                    {
                        AlbumIndexViewModel ab = new AlbumIndexViewModel();
                        ab.Album       = a;
                        ab.AlbumRating = d.ToString();//change to string
                        AlbumsDisplay_descend.Add(ab);
                    }
                }
                IEnumerable <AlbumIndexViewModel> new_list_albums    = AlbumsDisplay_ascend;
                IEnumerable <AlbumIndexViewModel> new_list_albums_lt = AlbumsDisplay_descend;



                if (SelectedBounds == SortOrder.ascending)
                {
                    ViewBag.SelectedSortOrder = "The records should be sorted in ascending order";
                    return(View("Index", new_list_albums));
                }
                else
                {
                    ViewBag.SelecredSortOrder = "The records should be sored in descending order";
                    return(View("Index", new_list_albums_lt));
                }
            }


            List <AlbumIndexViewModel> AlbumsList = new List <AlbumIndexViewModel>();

            foreach (Album a in query)
            {
                Decimal             d  = getAverageRating(a.AlbumID);
                AlbumIndexViewModel ab = new AlbumIndexViewModel();
                ab.Album       = a;
                ab.AlbumRating = d.ToString();// change to string
                AlbumsList.Add(ab);
            }

            return(View("Index", AlbumsList));
        }
        public ActionResult Index(int page = 1)
        {
            var vm = new AlbumIndexViewModel(this._musicRepository, page);

            return(View("Index", vm));
        }