Beispiel #1
0
        public override void Process(TagHelperContext context, TagHelperOutput output)
        {
            var field = For.Name;
            InputFieldConfiguration configuration;

            configuration = _inputFieldsConfiguration.GetConfigurationFor(field);

            // Ako nisam nasao konfiguraciju uzimam default - samo za display name uzimam ime propertija
            if (configuration == null)
            {
                configuration = new InputFieldConfiguration {
                    DisplayName = field
                };
            }

            var propertyName   = field.ToCamelCase();
            var labelHtml      = _labelHtmlGenerator.Generate(propertyName, configuration);
            var inputHtml      = _inputFieldHtmlGenerator.Generate(propertyName, configuration);
            var validationHtml = _inputFieldValidationGenerator.Generate(propertyName, configuration);

            var sb = new StringBuilder();

            sb.AppendLine($"<div class=\"form-group\">");
            sb.AppendLine(labelHtml);
            sb.AppendLine($"<div class=\"{configuration.InputClass}\">");
            sb.AppendLine(inputHtml);
            //sb.AppendLine(validationHtml);
            sb.AppendLine($"</div>");
            sb.AppendLine($"</div>");


            output.TagName = "";
            output.TagMode = TagMode.StartTagAndEndTag;
            output.Content.SetHtmlContent(sb.ToString());
        }
        internal static ResponseEnvelope CreateEntity(InputFieldConfigurationDataModel model)
        {
            InputFieldConfiguration entity = model.ConvertToEntity();

            entity.DateCreated      = DateTime.Now;
            entity.DateLastModified = DateTime.Now;
            return(InputFieldConfigurationManager.Create(entity));
        }
        /**
         * Helper za dodavanje konfiguracije
         */
        private void AddConfiguration(string field, InputFieldConfiguration configuration, InputFieldValidation validation = null)
        {
            if (validation != null)
            {
                configuration.Validation = validation;
            }

            Configuration.Add(new KeyValuePair <string, InputFieldConfiguration>(field, configuration));
        }
Beispiel #4
0
        public string Generate(string propertyName, InputFieldConfiguration configuration)
        {
            if (configuration.InputType == "hidden")
            {
                return("");
            }

            return($"<label for=\"{propertyName}\" class=\"control-label {configuration.LabelClass}\">{configuration.DisplayName}</label>");
        }
        internal static ResponseEnvelope DeleteEntity(InputFieldConfigurationDataModel model)
        {
            if (model == null)
            {
                return(new ResponseEnvelope(new Exception("Parameter 'model' is empty")));
            }
            InputFieldConfiguration entity = InputFieldConfigurationManager.GetEntityFromGuid(model.Id);

            return(InputFieldConfigurationManager.Delete(entity));
        }
        public string Generate(string propertyName, InputFieldConfiguration configuration)
        {
            var sb = new StringBuilder();

            sb.AppendLine($"        <input type = \"{configuration.InputType}\" class=\"form-control\" id=\"{propertyName}\" placeholder=\"{configuration.Placeholder}\"");
            sb.AppendLine($"                formControlName=\"{propertyName}\"");
            sb.AppendLine($"        />");

            return(sb.ToString());
        }
Beispiel #7
0
 internal static void UpdateFromModel(this InputFieldConfiguration entity, InputFieldConfigurationDataModel model)
 {
     entity.Id             = model.Id;
     entity.ControlType    = model.ControlType;
     entity.DataType       = model.DataType;
     entity.IsRequired     = model.IsRequired;
     entity.LabelName      = model.LabelName;
     entity.MaxLength      = model.MaxLength;
     entity.ToolTip        = model.ToolTip;
     entity.ValidationRule = model.ValidationRule;
 }
        internal static ResponseEnvelope UpdateEntity(InputFieldConfigurationDataModel model)
        {
            if (model == null)
            {
                return(new ResponseEnvelope(new Exception("Parameter 'model' is empty")));
            }
            InputFieldConfiguration entity = InputFieldConfigurationManager.GetEntityFromGuid(model.Id);

            entity.UpdateFromModel(model);
            entity.DateLastModified = DateTime.Now;
            return(InputFieldConfigurationManager.Update());
        }
Beispiel #9
0
 internal static InputFieldConfigurationDataModel ConvertToDataModel(this InputFieldConfiguration entity)
 {
     if (entity == null)
     {
         return(null);
     }
     return(new InputFieldConfigurationDataModel()
     {
         Id = entity.Id,
         ControlType = entity.ControlType,
         DataType = entity.DataType,
         IsRequired = entity.IsRequired,
         LabelName = entity.LabelName,
         MaxLength = entity.MaxLength,
         ToolTip = entity.ToolTip,
         ValidationRule = entity.ValidationRule
     });
 }
        public override void Process(TagHelperContext context, TagHelperOutput output)
        {
            var field = For.Name;
            InputFieldConfiguration configuration;

            configuration = _inputFieldsConfiguration.GetConfigurationFor(field);

            // Ako nisam nasao konfiguraciju uzimam default - samo za display name uzimam ime propertija
            if (configuration == null)
            {
                configuration = new InputFieldConfiguration {
                    DisplayName = field
                };
            }

            var propertyName = field.ToCamelCase();
            var inputHtml    = _inputFieldHtmlGenerator.Generate(propertyName, configuration);

            output.TagName = "";
            output.TagMode = TagMode.StartTagAndEndTag;
            output.Content.SetHtmlContent(inputHtml);
        }
Beispiel #11
0
        public string Generate(string propertyName, InputFieldConfiguration configuration)
        {
            var sb = new StringBuilder();

            if (configuration.Validation == null)
            {
                return("");
            }

            sb.AppendLine($"        <div *ngIf = \"{propertyName}.touched && {propertyName}.errors\" >");

            if (configuration.Validation.Required)
            {
                sb.AppendLine($"            <div *ngIf=\"{propertyName}.errors.required\" class=\"input-error\">");
                sb.AppendLine($"                {configuration.Validation.Required_ErrorMessage}");
                sb.AppendLine($"            </div>");
            }

            if (configuration.Validation.MinLength > 0)
            {
                var message = string.Format(configuration.Validation.MinLength_ErrorMessage, configuration.Validation.MinLength);
                sb.AppendLine($"            <div *ngIf=\"{propertyName}.errors.minlength\" class=\"input-error\">");
                sb.AppendLine($"                {message}");
                sb.AppendLine($"            </div>");
            }

            if (configuration.Validation.MaxLength > 0)
            {
                var message = string.Format(configuration.Validation.MaxLength_ErrorMessage, configuration.Validation.MaxLength);
                sb.AppendLine($"            <div *ngIf=\"{propertyName}.errors.maxlength\" class=\"input-error\">");
                sb.AppendLine($"                {message}");
                sb.AppendLine($"            </div>");
            }

            sb.AppendLine($"        </div>");
            return(sb.ToString());
        }
Beispiel #12
0
 internal static ResponseEnvelope Delete(InputFieldConfiguration entity)
 {
     return(DatabaseManager.DeleteEntity(entity));
 }