public static bool ValidateSave(this ModelContext ctx, Page p, ValidateHandler vh, object obj, NoticeLabelAdapter msg, string noticeText, string cssInputWarning, Action callback) { ctx.ResetInputCss(p, cssInputWarning); vh.ValidateObject(obj); if (vh.IsValid) { callback(); if (msg != null) { msg.AddMessage(noticeText); msg.ShowNotice(); } } else { vh.ErrorMessages.Keys .Map(key => GetWebControl(p, ctx.Info, key)) .Filter(c => c != null) .Each(c => SetCtrlClass(c, cssInputWarning)); if (msg != null) { vh.ErrorMessages.Keys.Each(key => msg.AddMessage(vh.ErrorMessages[key])); msg.ShowWarning(); } } return(vh.IsValid); }
public static bool ValidateSave(this ModelContext ctx, Page p, ValidateHandler vh, IDbObject obj, NoticeLabelAdapter msg, string noticeText, string cssInputWarning) { return(ValidateSave(ctx, p, vh, obj, msg, noticeText, cssInputWarning, () => DbEntry.Save(obj))); }