You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

128 lines
6.0 KiB

5 years ago
  1. using System.Web.UI.WebControls;
  2. using SiteServer.Plugin;
  3. namespace SiteServer.Utils
  4. {
  5. public class InputParserUtils
  6. {
  7. private InputParserUtils()
  8. {
  9. }
  10. //private static string GetValidateCheckMethod(string attributeName, string displayName, InputValidateInfo validateInfo)
  11. //{
  12. // if (validateInfo != null)
  13. // {
  14. // return
  15. // $"checkAttributeValue('{attributeName}', '{displayName}', {validateInfo.IsRequire.ToString().ToLower()}, {validateInfo.MinNum}, {validateInfo.MaxNum}, '{validateInfo.RegExp}', '{validateInfo.ErrorMessage}');";
  16. // }
  17. // return string.Empty;
  18. //}
  19. public static string GetValidateAttributes(bool isValidate, string displayName, bool isRequire, int minNum, int maxNum, ValidateType validateType, string regExp, string errorMessage)
  20. {
  21. if (isValidate)
  22. {
  23. return
  24. $@"isValidate=""{true.ToString().ToLower()}"" displayName=""{displayName}"" isRequire=""{isRequire
  25. .ToString().ToLower()}"" minNum=""{minNum}"" maxNum=""{maxNum}"" validateType=""{validateType.Value}"" regExp=""{regExp}"" errorMessage=""{errorMessage}""";
  26. }
  27. return string.Empty;
  28. }
  29. public static void GetValidateAttributesForListItem(ListControl control, bool isValidate, string displayName, bool isRequire, int minNum, int maxNum, ValidateType validateType, string regExp, string errorMessage)
  30. {
  31. if (!isValidate) return;
  32. control.Attributes.Add("isValidate", true.ToString().ToLower());
  33. control.Attributes.Add("displayName", displayName);
  34. control.Attributes.Add("isRequire", isRequire.ToString().ToLower());
  35. control.Attributes.Add("minNum", minNum.ToString());
  36. control.Attributes.Add("maxNum", maxNum.ToString());
  37. control.Attributes.Add("validateType", validateType.Value);
  38. control.Attributes.Add("regExp", regExp);
  39. control.Attributes.Add("errorMessage", errorMessage);
  40. control.Attributes.Add("isListItem", true.ToString().ToLower());
  41. }
  42. public static string GetValidateSubmitOnClickScript(string formId)
  43. {
  44. return $"return checkFormValueById('{formId}');";
  45. }
  46. /// <summary>
  47. /// 带有提示的确认操作
  48. /// </summary>
  49. /// <param name="formId"></param>
  50. /// <param name="isConfirm"></param>
  51. /// <param name="confirmFunction"></param>
  52. /// <returns></returns>
  53. public static string GetValidateSubmitOnClickScript(string formId, bool isConfirm, string confirmFunction)
  54. {
  55. return !isConfirm ? GetValidateSubmitOnClickScript(formId) : $"return checkFormValueById('{formId}') && {confirmFunction};";
  56. }
  57. //public static string GetAdditionalAttributes(string whereUsed, InputType inputType)
  58. //{
  59. // var additionalAttributes = string.Empty;
  60. // if (string.IsNullOrEmpty(whereUsed))
  61. // {
  62. // //if (inputType == InputType.Text || inputType == InputType.Image || inputType == InputType.File)
  63. // //{
  64. // // additionalAttributes = @"class=""colorblur"" onfocus=""this.className='colorfocus';"" onblur=""this.className='colorblur';"" size=""60""";
  65. // //}
  66. // //else if (inputType == InputType.TextArea)
  67. // //{
  68. // // additionalAttributes = @"class=""colorblur"" onfocus=""this.className='colorfocus';"" onblur=""this.className='colorblur';"" cols=""60"" rows=""5""";
  69. // //}
  70. // //else if (inputType == InputType.Date || inputType == InputType.DateTime)
  71. // //{
  72. // // additionalAttributes = @"class=""colorblur Wdate"" size=""25""";
  73. // //}
  74. // }
  75. // else if (whereUsed == "usercenter")
  76. // {
  77. // if (inputType == InputType.Text || inputType == InputType.Image || inputType == InputType.Video || inputType == InputType.File)
  78. // {
  79. // additionalAttributes = @"class=""input-txt"" style=""width:320px""";
  80. // }
  81. // else if (inputType == InputType.TextArea)
  82. // {
  83. // additionalAttributes = @"class=""input-area area-s5"" cols=""60"" rows=""5""";
  84. // }
  85. // else if (inputType == InputType.Date || inputType == InputType.DateTime)
  86. // {
  87. // additionalAttributes = @"class=""input-txt Wdate"" style=""width:120px""";
  88. // }
  89. // }
  90. // return additionalAttributes;
  91. //}
  92. //public static string GetInnerAdditionalAttributes(InputType inputType, EAuxiliaryTableType tableType, string attributeName)
  93. //{
  94. // string additionalAttributes = string.Empty;
  95. // if (inputType == InputType.Default)
  96. // {
  97. // inputType = InputTypeUtils.GetDefaultInputType(tableType, attributeName);
  98. // }
  99. // if (inputType == InputType.Text)
  100. // {
  101. // additionalAttributes = @"class=""colorblur"" onfocus=""this.className='colorfocus';"" onblur=""this.className='colorblur';"" size=""60""";
  102. // }
  103. // else if (inputType == InputType.TextArea)
  104. // {
  105. // additionalAttributes = @"class=""colorblur"" onfocus=""this.className='colorfocus';"" onblur=""this.className='colorblur';"" cols=""60"" rows=""5""";
  106. // }
  107. // else if (inputType == InputType.Date || inputType == InputType.DateTime)
  108. // {
  109. // additionalAttributes = @"class=""colorblur"" size=""30""";
  110. // }
  111. // else if (inputType == InputType.Image || inputType == InputType.File)
  112. // {
  113. // additionalAttributes = @"size=""50""";
  114. // }
  115. // return additionalAttributes;
  116. //}
  117. }
  118. }