From c9bc5a622760e608c1a56a4dfd55ade4f424a00c Mon Sep 17 00:00:00 2001 From: John Cardinal Date: Wed, 16 Jan 2019 18:48:16 +0000 Subject: [PATCH] --- server/AyaNova/biz/WidgetBiz.cs | 11 ++++++++++- server/AyaNova/models/FormCustom.cs | 11 +++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/server/AyaNova/biz/WidgetBiz.cs b/server/AyaNova/biz/WidgetBiz.cs index 997a95c2..52f29d1c 100644 --- a/server/AyaNova/biz/WidgetBiz.cs +++ b/server/AyaNova/biz/WidgetBiz.cs @@ -399,8 +399,17 @@ namespace AyaNova.Biz AddError(ValidationErrorType.InvalidValue, "Roles"); } - CustomFieldsValidator.Validate(this, ct.FormCustom.SingleOrDefault(x => x.FormKey == FormAvailableFields.WIDGET_FORM_KEY), proposedObj.CustomFields); + //Any form customizations to validate? + var FormCustomization = ct.FormCustom.SingleOrDefault(x => x.FormKey == FormAvailableFields.WIDGET_FORM_KEY); + if (FormCustomization != null) + { + //Yeppers, do the validation, there are two, the custom fields and the regular fields that might be set to required + //validate users choices for required non custom fields + + //validate custom fields + CustomFieldsValidator.Validate(this, FormCustomization, proposedObj.CustomFields); + } return; } diff --git a/server/AyaNova/models/FormCustom.cs b/server/AyaNova/models/FormCustom.cs index 7f0d9868..41305f0a 100644 --- a/server/AyaNova/models/FormCustom.cs +++ b/server/AyaNova/models/FormCustom.cs @@ -7,6 +7,17 @@ using System.ComponentModel.DataAnnotations; namespace AyaNova.Models { +/* + + - Like DataFilter, holds a JSON fragment in one field and the form key in another field + - JSON FRAGMENT holds items that differ from stock, Hide not valid for non hideable core fields + - FieldKey "fld" + - Hide "hide" + - Required "required" + - Type One of values from AyDataType but not tags or enum (bool, date, date time, decimal, number, picklist(FUTURE), and text) + - e.g.: {template:[{fld:"ltkeyfieldname",hide:"true/false",required:"true/false", type:"bool"},{fld:"ltkeyfieldname",hide:"true/false",required:"true/false", type:"text"]} + + */ public partial class FormCustom { public long Id { get; set; }