From dc64b04f1ba8c6e4c1d9605fbb4971b2d8eb3d89 Mon Sep 17 00:00:00 2001 From: crupest Date: Sat, 8 Aug 2020 16:12:34 +0800 Subject: Add unique id test in name validator. --- Timeline/Models/Validation/NameValidator.cs | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'Timeline/Models/Validation/NameValidator.cs') diff --git a/Timeline/Models/Validation/NameValidator.cs b/Timeline/Models/Validation/NameValidator.cs index dec2b872..b74c40b7 100644 --- a/Timeline/Models/Validation/NameValidator.cs +++ b/Timeline/Models/Validation/NameValidator.cs @@ -1,10 +1,13 @@ using System.Linq; +using System.Text.RegularExpressions; using static Timeline.Resources.Models.Validation.NameValidator; namespace Timeline.Models.Validation { public class NameValidator : Validator { + private static Regex UniqueIdRegex { get; } = new Regex(@"^[a-zA-Z0-9]{32}$"); + public const int MaxLength = 26; protected override (bool, string) DoValidate(string value) @@ -27,6 +30,12 @@ namespace Timeline.Models.Validation } } + // Currently name can't be longer than 26. So this is not needed. But reserve it for future use. + if (UniqueIdRegex.IsMatch(value)) + { + return (false, MessageUnqiueId); + } + return (true, GetSuccessMessage()); } } -- cgit v1.2.3