public async Task <IActionResult> Create(CreateBuildingViewModel createBuildingVM)
        {
            if (ModelState.IsValid)
            {
                Building newBuilding = new Building
                {
                    Name        = createBuildingVM.Name,
                    Address     = createBuildingVM.Address,
                    PhoneNumber = createBuildingVM.PhoneNumber
                };

                _context.Add(newBuilding);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Details)));
            }
            return(View(createBuildingVM));
        }
        // GET: Buildings/Create
        public IActionResult Create()
        {
            //Check if user logged in:
            if (HttpContext.Session.GetString("Username") == null)
            {
                return(Redirect("/Home/Login"));
            }

            //Deny non-admins:
            FileMember user = _context.FileMembers.Single(u => u.Email == HttpContext.Session.GetString("Username"));

            if (user.Role != Role.Admin)
            {
                return(Redirect("/Buildings/Index"));
            }

            CreateBuildingViewModel createBuildingVM = new CreateBuildingViewModel();

            return(View(createBuildingVM));
        }
Example #3
0
 public async Task <IActionResult> Create(CreateBuildingViewModel model)
 {
     if (ModelState.IsValid)
     {
         string fileName = null;
         if (model.Image != null)
         {
             fileName = await UploadFile(model.Image);
         }
         Building building = new Building();
         building.Name                = model.Name;
         building.Image               = fileName;
         building.ShortDesc           = model.ShortDesc;
         building.Location            = model.Location;
         building.Desc                = model.Desc;
         building.RenovationCompanies = new List <RenovationCompany>();
         _manager.BuildingRepository.Save(building);
         return(Redirect("/admin/building"));
     }
     return(View(model));
 }