public ActionResult Delete(int id) { //AccessRights RolesRepository rolesRepository = new RolesRepository(); if (!hierarchyRepository.AdminHasDomainWriteAccess(groupName)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } ApprovalGroupApprovalTypeVM approvalGroupApprovalTypeVM = new ApprovalGroupApprovalTypeVM(); approvalGroupApprovalTypeVM.AllowDelete = true; ApprovalGroupApprovalType approvalGroupApprovalType = new ApprovalGroupApprovalType(); approvalGroupApprovalType = approvalGroupApprovalTypeRepository.GetApprovalGroupApprovalType(id); approvalGroupApprovalTypeVM.ApprovalGroupApprovalType = approvalGroupApprovalType; //Attached Items List <ApprovalGroupApprovalTypeReference> approvalGroupApprovalTypeReferences = approvalGroupApprovalTypeRepository.GetApprovalGroupApprovalTypeReferences(approvalGroupApprovalType.ApprovalGroupApprovalTypeId); if (approvalGroupApprovalTypeReferences.Count > 0) { approvalGroupApprovalTypeVM.AllowDelete = false; approvalGroupApprovalTypeVM.ApprovalGroupApprovalTypeReferences = approvalGroupApprovalTypeReferences; } return(View(approvalGroupApprovalTypeVM)); }
public ActionResult Delete(ApprovalGroupApprovalTypeVM approvalGroupApprovalTypeVM, FormCollection collection) { //Get Item From Database ApprovalGroupApprovalType approvalGroupApprovalType = new ApprovalGroupApprovalType(); approvalGroupApprovalType = approvalGroupApprovalTypeRepository.GetApprovalGroupApprovalType(approvalGroupApprovalTypeVM.ApprovalGroupApprovalType.ApprovalGroupApprovalTypeId); //Check Exists if (approvalGroupApprovalType == null) { ViewData["ActionMethod"] = "DeletePost"; return(View("RecordDoesNotExistError")); } //AccessRights RolesRepository rolesRepository = new RolesRepository(); if (!hierarchyRepository.AdminHasDomainWriteAccess(groupName)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } //Delete Item try { approvalGroupApprovalType.VersionNumber = Int32.Parse(collection["ApprovalGroupApprovalType.VersionNumber"]); approvalGroupApprovalTypeRepository.Delete(approvalGroupApprovalType); } catch (SqlException ex) { //Versioning Error - go to standard versionError page if (ex.Message == "SQLVersioningError") { ViewData["ReturnURL"] = "/ApprovalGroupApprovalType.mvc/Delete/" + approvalGroupApprovalTypeVM.ApprovalGroupApprovalType.ApprovalGroupApprovalTypeId.ToString(); return(View("VersionError")); } if (ex.Message == "SQLDeleteError") { ViewData["ReturnURL"] = "/ApprovalGroupApprovalType.mvc/Delete/" + approvalGroupApprovalTypeVM.ApprovalGroupApprovalType.ApprovalGroupApprovalTypeId.ToString(); return(View("DeleteError")); } //Generic Error ViewData["Message"] = "There was a problem with your request, please see the log file or contact an administrator for details"; return(View("Error")); } //Return return(RedirectToAction("List")); }