/// <summary> /// Handles the Click event of the btnDelete control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param> protected void btnDelete_Click(object sender, EventArgs e) { RockContext rockContext = new RockContext(); DefinedTypeService definedTypeService = new DefinedTypeService(rockContext); DefinedType definedType = definedTypeService.Get(int.Parse(hfDefinedTypeId.Value)); if (definedType != null) { if (!definedType.IsAuthorized(Authorization.EDIT, this.CurrentPerson)) { mdDeleteWarning.Show("Sorry, You are not authorized to delete this Defined Type.", ModalAlertType.Information); return; } string errorMessage; if (!definedTypeService.CanDelete(definedType, out errorMessage)) { mdDeleteWarning.Show(errorMessage, ModalAlertType.Information); return; } definedTypeService.Delete(definedType); rockContext.SaveChanges(); } NavigateToParentPage(); }
/// <summary> /// Handles the Delete event of the rGridType control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="RowEventArgs" /> instance containing the event data.</param> protected void rGridType_Delete(object sender, RowEventArgs e) { DefinedType type = new DefinedTypeService().Get((int)rGridType.DataKeys[e.RowIndex]["id"]); var valueService = new DefinedValueService(); var typeService = new DefinedTypeService(); if (type != null) { // if this DefinedType has DefinedValues, delete them var hasDefinedValues = valueService .GetByDefinedTypeId(type.Id) .ToList(); foreach (var value in hasDefinedValues) { valueService.Delete(value, CurrentPersonId); valueService.Save(value, CurrentPersonId); } typeService.Delete(type, CurrentPersonId); typeService.Save(type, CurrentPersonId); } rGridType_Bind(); }
/// <summary> /// Handles the Delete event of the gDefinedType control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="RowEventArgs" /> instance containing the event data.</param> protected void gDefinedType_Delete(object sender, RowEventArgs e) { var definedValueService = new DefinedValueService(); var definedTypeService = new DefinedTypeService(); DefinedType type = definedTypeService.Get(e.RowKeyId); if (type != null) { string errorMessage; if (!definedTypeService.CanDelete(type, out errorMessage)) { mdGridWarning.Show(errorMessage, ModalAlertType.Information); return; } // if this DefinedType has DefinedValues, see if they can be deleted var definedValues = definedValueService.GetByDefinedTypeId(type.Id).ToList(); foreach (var value in definedValues) { if (!definedValueService.CanDelete(value, out errorMessage)) { mdGridWarning.Show(errorMessage, ModalAlertType.Information); return; } } RockTransactionScope.WrapTransaction(() => { foreach (var value in definedValues) { definedValueService.Delete(value, CurrentPersonId); definedValueService.Save(value, CurrentPersonId); } definedTypeService.Delete(type, CurrentPersonId); definedTypeService.Save(type, CurrentPersonId); }); } gDefinedType_Bind(); }
/// <summary> /// Handles the Delete event of the gDefinedType control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="RowEventArgs" /> instance containing the event data.</param> protected void gDefinedType_Delete(object sender, RowEventArgs e) { var rockContext = new RockContext(); var definedValueService = new DefinedValueService(rockContext); var definedTypeService = new DefinedTypeService(rockContext); DefinedType type = definedTypeService.Get(e.RowKeyId); if (type != null) { string errorMessage; if (!definedTypeService.CanDelete(type, out errorMessage)) { mdGridWarning.Show(errorMessage, ModalAlertType.Information); return; } // if this DefinedType has DefinedValues, see if they can be deleted var definedValues = definedValueService.GetByDefinedTypeId(type.Id).ToList(); foreach (var value in definedValues) { if (!definedValueService.CanDelete(value, out errorMessage)) { mdGridWarning.Show(errorMessage, ModalAlertType.Information); return; } } foreach (var value in definedValues) { definedValueService.Delete(value); } definedTypeService.Delete(type); rockContext.SaveChanges(); } gDefinedType_Bind(); }