public ActionResult Edit(Guid id, FormCollection collection)
        {
            try
            {
                var userId = User.Identity.GetUserName();
                if (userRoleRepository.GetRoleByUserName(userId) != null && userRoleRepository.GetRoleByUserName(userId).IdUserType == "Admin")
                {
                    // TODO: Add update logic here

                    OfficeBuildingsModel officeBuildingModel = new OfficeBuildingsModel();

                    UpdateModel(officeBuildingModel);

                    officeRepository.UpdateOfficeBuilding(officeBuildingModel);

                    return(RedirectToAction("Index"));
                }
                else
                {
                    return(RedirectToAction("Contact", "Home"));
                }
            }
            catch
            {
                return(View("EditOfficeBuilding"));
            }
        }
        public ActionResult Create(FormCollection collection)
        {
            try
            {
                var userId = User.Identity.GetUserName();
                if (userRoleRepository.GetRoleByUserName(userId) != null && userRoleRepository.GetRoleByUserName(userId).IdUserType == "Admin")
                {
                    //instantiem modelul

                    OfficeBuildingsModel officeBuildingModel = new OfficeBuildingsModel();

                    UpdateModel(officeBuildingModel);

                    if (officeRepository.IsDuplicateOfficeBuilding(officeBuildingModel) == false)
                    {
                        officeRepository.InsertOfficeBuilding(officeBuildingModel);

                        return(RedirectToAction("Index"));
                    }
                    else
                    {
                        return(RedirectToAction("IndexError"));
                    }
                }
                else
                {
                    return(RedirectToAction("Contact", "Home"));
                }
            }
            catch
            {
                return(View("CreateOfficeBuilding"));
            }
        }
 public bool IsDuplicateOfficeBuilding(OfficeBuildingsModel building)
 {
     if (GetBuildingByName(building.Name) == null)
     {
         return(false);
     }
     else
     {
         return(true);
     }
 }
        public ActionResult Details(Guid id)
        {
            var userId = User.Identity.GetUserName();

            if (userRoleRepository.GetRoleByUserName(userId) != null)
            {
                OfficeBuildingsModel officeBuildingModel = officeRepository.GetBuildingById(id);
                return(View("OfficeBuildingsDetails", officeBuildingModel));
            }
            else
            {
                return(RedirectToAction("Contact", "Home"));
            }
        }
        public ActionResult Delete(Guid id)
        {
            var userId = User.Identity.GetUserName();

            if (userRoleRepository.GetRoleByUserName(userId) != null && userRoleRepository.GetRoleByUserName(userId).IdUserType == "Admin")
            {
                OfficeBuildingsModel officeBuildingModel = officeRepository.GetBuildingById(id);
                return(View("DeleteOfficeBuilding", officeBuildingModel));
            }
            else
            {
                return(RedirectToAction("Contact", "Home"));
            }
        }
        public void UpdateOfficeBuilding(OfficeBuildingsModel building)
        {
            OfficeBuilding buildingDb = dbContext.OfficeBuildings.FirstOrDefault(x => x.IdBuilding == building.IdBuilding);

            if (buildingDb != null)
            {
                buildingDb.IdBuilding          = building.IdBuilding;
                buildingDb.Name                = building.Name;
                buildingDb.StreetHouseNumber   = building.StreetHouseNumber;
                buildingDb.City                = building.City;
                buildingDb.PostalCode          = building.PostalCode;
                buildingDb.RentalContract      = building.RentalContract;
                buildingDb.BuildingDescription = building.BuildingDescription;
                dbContext.SubmitChanges();
            }
        }
        private OfficeBuildingsModel MapDbObjectToModel(OfficeBuilding dbBuilding)
        {
            OfficeBuildingsModel building = new OfficeBuildingsModel();

            if (dbBuilding != null)
            {
                building.BuildingDescription = dbBuilding.BuildingDescription;
                building.City              = dbBuilding.City;
                building.IdBuilding        = dbBuilding.IdBuilding;
                building.PostalCode        = dbBuilding.PostalCode;
                building.RentalContract    = dbBuilding.RentalContract;
                building.StreetHouseNumber = dbBuilding.StreetHouseNumber;
                building.Name              = dbBuilding.Name;
                return(building);
            }

            return(null);
        }
        private OfficeBuilding MapModelToDbObject(OfficeBuildingsModel building)
        {
            OfficeBuilding buildingDb = new OfficeBuilding();

            if (building != null)
            {
                buildingDb.IdBuilding          = building.IdBuilding;
                buildingDb.Name                = building.Name;
                buildingDb.StreetHouseNumber   = building.StreetHouseNumber;
                buildingDb.City                = building.City;
                buildingDb.PostalCode          = building.PostalCode;
                buildingDb.RentalContract      = building.RentalContract;
                buildingDb.BuildingDescription = building.BuildingDescription;

                return(buildingDb);
            }

            return(null);
        }
 public void InsertOfficeBuilding(OfficeBuildingsModel building)
 {
     building.IdBuilding = Guid.NewGuid();
     dbContext.OfficeBuildings.InsertOnSubmit(MapModelToDbObject(building));
     dbContext.SubmitChanges();
 }