Esempio n. 1
0
        public ActionResult Quality()
        {
            var profiles = _qualityProvider.All();

            var defaultQualityQualityProfileId = Convert.ToInt32(_configProvider.DefaultQualityProfile);
            var qualityProfileSelectList       = new SelectList(profiles, "QualityProfileId", "Name");
            var qualityTypesFromDb             = _qualityTypeProvider.All();

            var model = new QualityModel
            {
                DefaultQualityProfileId  = defaultQualityQualityProfileId,
                QualityProfileSelectList = qualityProfileSelectList,
                SdtvMaxSize        = qualityTypesFromDb.Single(q => q.QualityTypeId == 1).MaxSize,
                DvdMaxSize         = qualityTypesFromDb.Single(q => q.QualityTypeId == 2).MaxSize,
                HdtvMaxSize        = qualityTypesFromDb.Single(q => q.QualityTypeId == 4).MaxSize,
                Webdl720pMaxSize   = qualityTypesFromDb.Single(q => q.QualityTypeId == 5).MaxSize,
                Webdl1080pMaxSize  = qualityTypesFromDb.Single(q => q.QualityTypeId == 3).MaxSize,
                Bluray720pMaxSize  = qualityTypesFromDb.Single(q => q.QualityTypeId == 6).MaxSize,
                Bluray1080pMaxSize = qualityTypesFromDb.Single(q => q.QualityTypeId == 7).MaxSize
            };

            ViewData["Profiles"] = profiles.Select(s => s.QualityProfileId).ToList();

            return(View(model));
        }
Esempio n. 2
0
        public JsonResult SaveQuality(QualityModel data)
        {
            if (ModelState.IsValid)
            {
                _configProvider.DefaultQualityProfile = data.DefaultQualityProfileId;

                //Saves only the Default Quality, skips User Profiles since none exist
                if (data.Profiles == null)
                    return GetSuccessResult();

                foreach (var profileModel in data.Profiles)
                {
                    Logger.Debug(String.Format("Updating Profile: {0}", profileModel));

                    var profile = new QualityProfile();
                    profile.QualityProfileId = profileModel.QualityProfileId;
                    profile.Name = profileModel.Name;
                    profile.Cutoff = (QualityTypes)profileModel.Cutoff;

                    profile.Allowed = new List<QualityTypes>();

                    if (profileModel.Sdtv)
                        profile.Allowed.Add(QualityTypes.SDTV);

                    if (profileModel.Dvd)
                        profile.Allowed.Add(QualityTypes.DVD);

                    if (profileModel.Hdtv)
                        profile.Allowed.Add(QualityTypes.HDTV);

                    if (profileModel.Webdl720p)
                        profile.Allowed.Add(QualityTypes.WEBDL720p);

                    if (profileModel.Webdl1080p)
                        profile.Allowed.Add(QualityTypes.WEBDL1080p);

                    if (profileModel.Bluray720p)
                        profile.Allowed.Add(QualityTypes.Bluray720p);

                    if (profileModel.Bluray1080p)
                        profile.Allowed.Add(QualityTypes.Bluray1080p);

                    //If the Cutoff value selected is not in the allowed list then return an error
                    if (!profile.Allowed.Contains(profile.Cutoff))
                        return GetInvalidModelResult();

                    _qualityProvider.Update(profile);
                }

                var qualityTypesFromDb = _qualityTypeProvider.All();

                qualityTypesFromDb.Single(q => q.QualityTypeId == 1).MaxSize = data.SdtvMaxSize;
                qualityTypesFromDb.Single(q => q.QualityTypeId == 2).MaxSize = data.DvdMaxSize;
                qualityTypesFromDb.Single(q => q.QualityTypeId == 4).MaxSize = data.HdtvMaxSize;
                qualityTypesFromDb.Single(q => q.QualityTypeId == 5).MaxSize = data.Webdl720pMaxSize;
                qualityTypesFromDb.Single(q => q.QualityTypeId == 3).MaxSize = data.Webdl1080pMaxSize;
                qualityTypesFromDb.Single(q => q.QualityTypeId == 6).MaxSize = data.Bluray720pMaxSize;
                qualityTypesFromDb.Single(q => q.QualityTypeId == 7).MaxSize = data.Bluray1080pMaxSize;

                _qualityTypeProvider.UpdateAll(qualityTypesFromDb);

                return GetSuccessResult();
            }

            return GetInvalidModelResult();
        }
Esempio n. 3
0
        public ActionResult Quality()
        {
            var profiles = _qualityProvider.All();

            var defaultQualityQualityProfileId = Convert.ToInt32(_configProvider.DefaultQualityProfile);
            var qualityProfileSelectList = new SelectList(profiles, "QualityProfileId", "Name");
            var qualityTypesFromDb = _qualityTypeProvider.All();

            var model = new QualityModel
                            {
                                DefaultQualityProfileId = defaultQualityQualityProfileId,
                                QualityProfileSelectList = qualityProfileSelectList,
                                SdtvMaxSize = qualityTypesFromDb.Single(q => q.QualityTypeId == 1).MaxSize,
                                DvdMaxSize = qualityTypesFromDb.Single(q => q.QualityTypeId == 2).MaxSize,
                                HdtvMaxSize = qualityTypesFromDb.Single(q => q.QualityTypeId == 4).MaxSize,
                                Webdl720pMaxSize = qualityTypesFromDb.Single(q => q.QualityTypeId == 5).MaxSize,
                                Webdl1080pMaxSize = qualityTypesFromDb.Single(q => q.QualityTypeId == 3).MaxSize,
                                Bluray720pMaxSize = qualityTypesFromDb.Single(q => q.QualityTypeId == 6).MaxSize,
                                Bluray1080pMaxSize = qualityTypesFromDb.Single(q => q.QualityTypeId == 7).MaxSize
                            };

            ViewData["Profiles"] = profiles;

            return View(model);
        }
Esempio n. 4
0
        public JsonResult SaveQuality(QualityModel data)
        {
            if (ModelState.IsValid)
            {
                _configProvider.DefaultQualityProfile = data.DefaultQualityProfileId;

                //Saves only the Default Quality, skips User Profiles since none exist
                if (data.Profiles == null)
                {
                    return(GetSuccessResult());
                }

                foreach (var profileModel in data.Profiles)
                {
                    Logger.Debug(String.Format("Updating Profile: {0}", profileModel));

                    var profile = new QualityProfile();
                    profile.QualityProfileId = profileModel.QualityProfileId;
                    profile.Name             = profileModel.Name;
                    profile.Cutoff           = (QualityTypes)profileModel.Cutoff;

                    profile.Allowed = new List <QualityTypes>();

                    if (profileModel.Sdtv)
                    {
                        profile.Allowed.Add(QualityTypes.SDTV);
                    }

                    if (profileModel.Dvd)
                    {
                        profile.Allowed.Add(QualityTypes.DVD);
                    }

                    if (profileModel.Hdtv)
                    {
                        profile.Allowed.Add(QualityTypes.HDTV720p);
                    }

                    if (profileModel.Webdl720p)
                    {
                        profile.Allowed.Add(QualityTypes.WEBDL720p);
                    }

                    if (profileModel.Webdl1080p)
                    {
                        profile.Allowed.Add(QualityTypes.WEBDL1080p);
                    }

                    if (profileModel.Bluray720p)
                    {
                        profile.Allowed.Add(QualityTypes.Bluray720p);
                    }

                    if (profileModel.Bluray1080p)
                    {
                        profile.Allowed.Add(QualityTypes.Bluray1080p);
                    }

                    //If the Cutoff value selected is not in the allowed list then return an error
                    if (!profile.Allowed.Contains(profile.Cutoff))
                    {
                        return(GetInvalidModelResult());
                    }

                    _qualityProvider.Update(profile);
                }

                var qualityTypesFromDb = _qualityTypeProvider.All();

                qualityTypesFromDb.Single(q => q.QualityTypeId == 1).MaxSize = data.SdtvMaxSize;
                qualityTypesFromDb.Single(q => q.QualityTypeId == 2).MaxSize = data.DvdMaxSize;
                qualityTypesFromDb.Single(q => q.QualityTypeId == 4).MaxSize = data.HdtvMaxSize;
                qualityTypesFromDb.Single(q => q.QualityTypeId == 5).MaxSize = data.Webdl720pMaxSize;
                qualityTypesFromDb.Single(q => q.QualityTypeId == 3).MaxSize = data.Webdl1080pMaxSize;
                qualityTypesFromDb.Single(q => q.QualityTypeId == 6).MaxSize = data.Bluray720pMaxSize;
                qualityTypesFromDb.Single(q => q.QualityTypeId == 7).MaxSize = data.Bluray1080pMaxSize;

                _qualityTypeProvider.UpdateAll(qualityTypesFromDb);

                return(GetSuccessResult());
            }

            return(GetInvalidModelResult());
        }