Exemplo n.º 1
0
        public ActionResult ResourceAdd(AdminResourceViewModel model)
        {
            if (!IsLoggedIn)
            {
                return(RedirectToAction("Index"));
            }

            // the new resource
            var r = new Resource
            {
                Name         = model.Name,
                GPSLong      = model.GPSLong,
                GPSLat       = model.GPSLat,
                Phone        = model.Phone,
                Email        = model.Email,
                Website      = model.Website,
                Image        = model.Image,
                Icon         = model.Icon,
                MainCategory = Db.Categories.Single(c => model.MainCategoryID == c.ID)
            };

            // associating it with a feature
            r.ResourceFeatures = Db.Features.ToList().Select(f => new ResourceFeature
            {
                Resource = r,
                Feature  = f
            }).ToList();

            Db.Resources.Add(r);
            Db.SaveChanges();
            return(RedirectToAction("Resource"));
        }
Exemplo n.º 2
0
        public ActionResult ResourceFeature(AdminResourceViewModel model)
        {
            if (!IsLoggedIn)
            {
                return(RedirectToAction("Index"));
            }

            var r = Db.ResourceFeatures.Single(rf => rf.Resource.ID == model.ID && rf.Feature.ID == model.FeatureID);

            r.Enabled = model.FeatureEnabled;
            Db.SaveChanges();
            return(RedirectToAction("Resource"));
        }
Exemplo n.º 3
0
        /// <summary>
        /// Displays the admin resource page
        /// </summary>
        /// <returns></returns>
        public ActionResult Resource()
        {
            if (!IsLoggedIn)
            {
                return(RedirectToAction("Index"));
            }

            var model = new AdminResourceViewModel
            {
                Resources  = Db.Resources.OrderBy(r => r.Name).ToList(),
                Categories = Db.Categories.ToList(),
                Features   = Db.Features.ToList(),
            };

            return(View(model));
        }
Exemplo n.º 4
0
        public ActionResult ResourceAssociateCategory(AdminResourceViewModel model)
        {
            if (!IsLoggedIn)
            {
                return(RedirectToAction("Index"));
            }

            var r        = Db.Resources.Single(s => s.ID == model.ID);
            var category = Db.Categories.Single(c => c.ID == model.MainCategoryID);

            if (model.FeatureEnabled)
            {
                r.Categories.Add(category);
            }
            else
            {
                r.Categories.Remove(category);
            }

            Db.SaveChanges();
            return(RedirectToAction("Resource"));
        }
Exemplo n.º 5
0
        public ActionResult ResourceEdit(AdminResourceViewModel model)
        {
            if (!IsLoggedIn)
            {
                return(RedirectToAction("Index"));
            }
            var r = new Resource
            {
                ID           = model.ID,
                Name         = model.Name,
                GPSLong      = model.GPSLong,
                GPSLat       = model.GPSLat,
                Phone        = model.Phone,
                Email        = model.Email,
                Website      = model.Website,
                Image        = model.Image,
                Icon         = model.Icon,
                MainCategory = Db.Categories.Single(c => model.MainCategoryID == c.ID)
            };

            Db.Entry(Db.Resources.First(ft => ft.ID == model.ID)).CurrentValues.SetValues(r);
            Db.SaveChanges();
            return(RedirectToAction("Resource"));
        }