public ActionResult Create(TrackAddViewModel newItem)
        {
            if (!ModelState.IsValid)
            {
                var form = m.mapper.Map <TrackAddViewModel, TrackAddFormViewModel>(newItem);
                form.AlbumList     = new SelectList(m.AlbumGetAll(), "AlbumId", "Title");
                form.MediaTypeList = new SelectList(m.MediaTypeGetAll(), "MediaTypeId", "Name");
                return(View(form));
            }

            try
            {
                var addedItem = m.TrackAdd(newItem);
                if (addedItem == null)
                {
                    var form = m.mapper.Map <TrackAddViewModel, TrackAddFormViewModel>(newItem);
                    form.AlbumList     = new SelectList(m.AlbumGetAll(), "AlbumId", "Title");
                    form.MediaTypeList = new SelectList(m.MediaTypeGetAll(), "MediaTypeId", "Name");
                    return(View(form));
                }
                else
                {
                    return(RedirectToAction("Details", new { id = addedItem.TrackId }));
                }
            }
            catch
            {
                var form = m.mapper.Map <TrackAddViewModel, TrackAddFormViewModel>(newItem);
                form.AlbumList     = new SelectList(m.AlbumGetAll(), "AlbumId", "Title");
                form.MediaTypeList = new SelectList(m.MediaTypeGetAll(), "MediaTypeId", "Name");
                return(View(form));
            }
        }
        public TrackWithAudioDetailsViewModel AddNewTrack(TrackAddViewModel newItem)
        {
            var u = HttpContext.Current.User.Identity.Name;
            var a = ds.Albums.Find(newItem.AlbumId);
            var g = ds.Genres.Find(newItem.GenreId);

            if (a == null || g == null || u == null)
            {
                return(null);
            }
            else
            {
                var addedItem = ds.Tracks.Add(mapper.Map <TrackAddViewModel, Track>(newItem));
                addedItem.Albums.Add(a);
                addedItem.Genre = g.Name;
                addedItem.Clerk = u;
                byte[] clipBytes = new byte[newItem.ClipUpload.ContentLength];
                newItem.ClipUpload.InputStream.Read(clipBytes, 0, newItem.ClipUpload.ContentLength);

                addedItem.SampleClip      = clipBytes;
                addedItem.ClipContentType = newItem.ClipUpload.ContentType;

                ds.SaveChanges();

                return((addedItem == null) ? null : mapper.Map <Track, TrackWithAudioDetailsViewModel>(addedItem));
            }
        }
Esempio n. 3
0
        public ActionResult Create(TrackAddViewModel newTrack)
        {
            // Validate the input
            if (!ModelState.IsValid)
            {
                return(View(newTrack));
            }

            try
            {
                // Process the input
                var addedItem = m.TrackAdd(newTrack);

                // If the item was not added, return the user to the Create page
                // otherwise redirect them to the Details page.
                if (addedItem == null)
                {
                    return(View(newTrack));
                }
                else
                {
                    //if successful, redirect to the Details View
                    return(RedirectToAction("Details", new { id = addedItem.TrackId }));
                }
                //The returned object will have the unique identifier that was assigned
            }
            catch
            {
                return(View(newTrack));
            }
        }
Esempio n. 4
0
        public ActionResult Create(TrackAddViewModel obj)
        {
            if (!ModelState.IsValid)
            {
                return(View(obj));
            }
            try
            {
                var addedItem = m.TrackAdd(obj);

                if (addedItem == null)
                {
                    return(View(obj));
                }
                else
                {
                    return(RedirectToAction("Details", new { id = addedItem.TrackId }));
                }



                // TODO: Add insert logic here
            }
            catch
            {
                return(View(obj));
            }
        }
        //10. Track - Add New

        public TrackWithDetailViewModel TrackAdd(TrackAddViewModel newItem)
        {
            var album = ds.Albums.Find(newItem.AlbumId);

            if (album == null)
            {
                return(null);
            }
            else
            {
                // Attempt to add the new item
                var addedTrack = ds.Tracks.Add(mapper.Map <TrackAddViewModel, Track>(newItem));

                addedTrack.AudioContentType = newItem.TrackUpload.ContentType;
                byte[] trackBytes = new byte[newItem.TrackUpload.ContentLength];
                newItem.TrackUpload.InputStream.Read(trackBytes, 0, newItem.TrackUpload.ContentLength);

                addedTrack.Audio = trackBytes;

                //configure the clerk
                addedTrack.Clerk = User.Name;
                addedTrack.Albums.Add(album);
                // Set the associated item property


                ds.SaveChanges();

                return((addedTrack == null) ? null : mapper.Map <Track, TrackWithDetailViewModel>(addedTrack));
            }
        }
Esempio n. 6
0
        public TrackBaseViewModel TrackAddNew(TrackAddViewModel newTrack)
        {
            var album      = ds.Albums.Find(newTrack.AlbumId);
            var addedTrack = ds.Tracks.Add(mapper.Map <TrackAddViewModel, Track>(newTrack));

            byte[] clipBytes = new byte[newTrack.ClipUpload.ContentLength];
            newTrack.ClipUpload.InputStream.Read(clipBytes, 0, newTrack.ClipUpload.ContentLength);

            addedTrack.Clip            = clipBytes;
            addedTrack.ClipContentType = newTrack.ClipUpload.ContentType;
            addedTrack.Albums.Add(album);
            album.Tracks.Add(addedTrack);

            ds.SaveChanges();

            return(addedTrack != null?mapper.Map <Track, TrackBaseViewModel>(addedTrack) : null);
        }
        public ActionResult AddTrack(TrackAddViewModel newItem)
        {
            if (!ModelState.IsValid)
            {
                return(View(newItem));
            }
            var addedItem = m.AddNewTrack(newItem);

            if (addedItem == null)
            {
                return(View(newItem));
            }
            else
            {
                return(RedirectToAction("details", "tracks", new { id = addedItem.Id }));
            }
        }
Esempio n. 8
0
        public TrackWithDetailViewModel TrackAdd(TrackAddViewModel newTrack)
        {
            var a = ds.Albums.Find(newTrack.AlbumId);
            var b = ds.MediaTypes.Find(newTrack.MediaTypeId);

            if (a == null || b == null)
            {
                return(null);
            }
            else
            {
                var addedItem = ds.Tracks.Add(mapper.Map <TrackAddViewModel, Track>(newTrack));
                addedItem.Album     = a;
                addedItem.MediaType = b;
                ds.SaveChanges();
                return(addedItem == null ? null : mapper.Map <Track, TrackWithDetailViewModel>(addedItem));
            }
        }
Esempio n. 9
0
        public ActionResult AddTrack(TrackAddViewModel newTrack)
        {
            if (!ModelState.IsValid)
            {
                return(View(newTrack));
            }

            var addedTrack = m.TrackAddNew(newTrack);

            if (addedTrack == null)
            {
                return(View(newTrack));
            }
            else
            {
                return(RedirectToAction("Details", "Track", new { id = addedTrack.Id }));
            }
        }
Esempio n. 10
0
        public TrackBaseViewModel TrackAdd(TrackAddViewModel obj)
        {
            var media = ds.MediaTypes.SingleOrDefault(p => p.MediaTypeId == obj.MediaTypeId);
            var album = ds.Albums.SingleOrDefault(p => p.AlbumId == obj.AlbumId);

            if (media == null || album == null)
            {
                return(null);
            }

            var newTrack = ds.Tracks.Add(mapper.Map <TrackAddViewModel, Track>(obj));

            newTrack.MediaType = media;
            newTrack.Album     = album;

            ds.SaveChanges();

            return((newTrack == null) ? null : mapper.Map <Track, TrackBaseViewModel>(newTrack));
        }
Esempio n. 11
0
        public ActionResult AddTrack(TrackAddViewModel newItem)
        {
            // Validate the input
            if (!ModelState.IsValid)
            {
                return(View(newItem));
            }

            // Process the input
            var addedItem = m.TrackAdd(newItem);

            if (addedItem == null)
            {
                return(View(newItem));
            }
            else
            {
                return(RedirectToAction("Details", "Track", new { id = addedItem.Id }));
            }
        }
Esempio n. 12
0
        //8 - TO BE IMPLEMENTED LATER (Track Add)

        public TrackWithDetailViewModel TrackAdd(TrackAddViewModel newItem)
        {
            var a = ds.Albums.Find(newItem.AlbumId);
            var b = ds.MediaTypes.Find(newItem.MediaTypeId);

            if (a == null || b == null)
            {
                return(null);
            }
            else
            {
                // Attempt to add the new item
                var addedItem = ds.Tracks.Add(mapper.Map <TrackAddViewModel, Track>(newItem));
                // Set the associated item property
                addedItem.Album     = a;
                addedItem.MediaType = b;
                ds.SaveChanges();

                return((addedItem == null) ? null : mapper.Map <Track, TrackWithDetailViewModel>(addedItem));
            }
        }
        //10. Track - Add New

        public TrackWithDetailViewModel TrackAdd(TrackAddViewModel newItem)
        {
            var album = ds.Albums.Find(newItem.AlbumId);

            if (album == null)
            {
                return(null);
            }
            else
            {
                // Attempt to add the new item
                var addedTrack = ds.Tracks.Add(mapper.Map <TrackAddViewModel, Track>(newItem));

                //configure the clerk
                addedTrack.Clerk = User.Name;

                // Set the associated item property
                addedTrack.Albums.Add(album);

                ds.SaveChanges();

                return((addedTrack == null) ? null : mapper.Map <Track, TrackWithDetailViewModel>(addedTrack));
            }
        }