public static string ProposeValidItemName(string name) { if (ItemUtil.IsItemNameValid(name)) { return(name); } string aSCII = ItemUtil.ConvertToASCII(name.Trim()); char[] invalidItemNameChars = _invalidItemNameChars.ToCharArray(); for (int i = 0; i < (int)invalidItemNameChars.Length; i++) { char chr = invalidItemNameChars[i]; aSCII = aSCII.Replace(chr.ToString(), string.Empty); } aSCII = aSCII.Trim(); if (ItemUtil.IsItemNameValid(aSCII)) { return(aSCII); } StringBuilder stringBuilder = new StringBuilder(); for (int j = 0; j < aSCII.Length; j++) { char chr1 = aSCII[j]; if (char.IsLetterOrDigit(chr1)) { stringBuilder.Append(chr1); } else if (char.IsWhiteSpace(chr1)) { stringBuilder.Append(" "); } } aSCII = stringBuilder.ToString().Trim(); if (aSCII.Length > _maxItemNameLength) { aSCII = aSCII.Remove(_maxItemNameLength).Trim(); } if (ItemUtil.IsItemNameValid(aSCII)) { return(aSCII); } return(name); }
private static bool IsItemNameValid(string name) { return(ItemUtil.GetItemNameError(name).Length == 0); }