Esempio n. 1
0
        // GET: Play
        public ActionResult Index(int MediaId, string UserId)
        {
            UsuarioRepository     usuarioRepository     = new UsuarioRepository(context);
            MediaOnPlayRepository mediaonplayRepository = new MediaOnPlayRepository(context);
            Usuario              usuario     = usuarioRepository.Query(u => u.IdentityId == UserId).FirstOrDefault();
            MediaOnPlay          mediaOnPlay = mediaonplayRepository.Query(m => m.MediaId == MediaId && m.UsuarioId == usuario.Id).FirstOrDefault();
            MediaOnPlayViewModel model;

            // Si el usuario no existe.
            if (usuario == null)
            {
                ViewBag.Error = 1;
                return(View());
            }

            // Si el usuario nunca ha visto la pelicula o serie.
            if (mediaOnPlay == null)
            {
                MediaRepository mediaRepository = new MediaRepository(context);
                var             media           = mediaRepository.Query(m => m.id == MediaId && m.estado != EEstatusMedia.ELIMINADO && m.estado != EEstatusMedia.INVISIBLE).FirstOrDefault();
                // Si la pelicula o serie que desea ver no esta disponible.
                if (media == null)
                {
                    ViewBag.Error = 2;
                    return(View());
                }
                mediaOnPlay = new MediaOnPlay {
                    Milisegundo = 0,
                    Media       = media,
                    MediaId     = media.id,
                    Usuario     = usuario,
                    UsuarioId   = usuario.Id
                };
                mediaonplayRepository.Insert(mediaOnPlay);

                context.SaveChanges();

                model = MapHelper.Map <MediaOnPlayViewModel>(mediaOnPlay);
            }

            else
            {
                // Se recarga la entidad.
                context.Entry(mediaOnPlay).Reference(m => m.Usuario).Load();
                context.Entry(mediaOnPlay).Reference(m => m.Media).Load();

                model = MapHelper.Map <MediaOnPlayViewModel>(mediaOnPlay);
            }

            ViewBag.Title = "Reproduciendo: " + mediaOnPlay.Media.nombre;
            return(View(model));
        }
Esempio n. 2
0
        public ActionResult Update(MediaOnPlayViewModel model)
        {
            MediaOnPlayRepository mediaonplayRepository = new MediaOnPlayRepository(context);
            MediaOnPlay           mediaOnPlay           = mediaonplayRepository.Query(m => m.Id == model.Id).First();

            mediaOnPlay.Milisegundo = model.Milisegundo;
            mediaonplayRepository.Update(mediaOnPlay);

            context.SaveChanges();

            return(Json(new
            {
                Success = true
            }, JsonRequestBehavior.AllowGet));
        }