From f4c2c9e148374f462592c19e8ffd4db14672805d Mon Sep 17 00:00:00 2001 From: vnugent Date: Sat, 6 Jan 2024 13:09:27 -0500 Subject: initial migration to .net 8.0 --- .../src/Validators/AccountDataValidator.cs | 83 ---------------------- .../src/Validators/LoginMessageValidation.cs | 65 ----------------- 2 files changed, 148 deletions(-) delete mode 100644 plugins/VNLib.Plugins.Essentials.SocialOauth/src/Validators/AccountDataValidator.cs delete mode 100644 plugins/VNLib.Plugins.Essentials.SocialOauth/src/Validators/LoginMessageValidation.cs (limited to 'plugins/VNLib.Plugins.Essentials.SocialOauth/src/Validators') diff --git a/plugins/VNLib.Plugins.Essentials.SocialOauth/src/Validators/AccountDataValidator.cs b/plugins/VNLib.Plugins.Essentials.SocialOauth/src/Validators/AccountDataValidator.cs deleted file mode 100644 index 0ccda69..0000000 --- a/plugins/VNLib.Plugins.Essentials.SocialOauth/src/Validators/AccountDataValidator.cs +++ /dev/null @@ -1,83 +0,0 @@ -/* -* Copyright (c) 2023 Vaughn Nugent -* -* Library: VNLib -* Package: VNLib.Plugins.Essentials.SocialOauth -* File: AccountDataValidator.cs -* -* AccountDataValidator.cs is part of VNLib.Plugins.Essentials.SocialOauth which is part of the larger -* VNLib collection of libraries and utilities. -* -* VNLib.Plugins.Essentials.SocialOauth is free software: you can redistribute it and/or modify -* it under the terms of the GNU Affero General Public License as -* published by the Free Software Foundation, either version 3 of the -* License, or (at your option) any later version. -* -* VNLib.Plugins.Essentials.SocialOauth is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -* GNU Affero General Public License for more details. -* -* You should have received a copy of the GNU Affero General Public License -* along with this program. If not, see https://www.gnu.org/licenses/. -*/ - -using FluentValidation; - -using VNLib.Plugins.Essentials.Accounts; -using VNLib.Plugins.Extensions.Validation; - -namespace VNLib.Plugins.Essentials.SocialOauth.Validators -{ - internal class AccountDataValidator : AbstractValidator - { - public AccountDataValidator() : base() - { - RuleFor(t => t.EmailAddress) - .NotEmpty() - .WithMessage("Your account does not have an email address assigned to it"); - - RuleFor(t => t.City) - .MaximumLength(35) - .AlphaOnly() - .When(t => t.City?.Length > 0); - - RuleFor(t => t.Company) - .MaximumLength(50) - .SpecialCharacters() - .When(t => t.Company?.Length > 0); - - //Require a first and last names to be set together - When(t => t.First?.Length > 0 || t.Last?.Length > 0, () => - { - RuleFor(t => t.First) - .Length(1, 35) - .AlphaOnly(); - RuleFor(t => t.Last) - .Length(1, 35) - .AlphaOnly(); - }); - - RuleFor(t => t.PhoneNumber) - .PhoneNumber() - .When(t => t.PhoneNumber?.Length > 0) - .OverridePropertyName("Phone"); - - //State must be 2 characters for us states if set - RuleFor(t => t.State) - .Length(2) - .When(t => t.State?.Length > 0); - - RuleFor(t => t.Street) - .AlphaNumericOnly() - .MaximumLength(50) - .When(t => t.Street?.Length > 0); - - //Allow empty zip codes, but if one is defined, is must be less than 7 characters - RuleFor(t => t.Zip) - .NumericOnly() - .MaximumLength(7) - .When(t => t.Zip?.Length > 0); - } - } -} diff --git a/plugins/VNLib.Plugins.Essentials.SocialOauth/src/Validators/LoginMessageValidation.cs b/plugins/VNLib.Plugins.Essentials.SocialOauth/src/Validators/LoginMessageValidation.cs deleted file mode 100644 index 3cf4e70..0000000 --- a/plugins/VNLib.Plugins.Essentials.SocialOauth/src/Validators/LoginMessageValidation.cs +++ /dev/null @@ -1,65 +0,0 @@ -/* -* Copyright (c) 2023 Vaughn Nugent -* -* Library: VNLib -* Package: VNLib.Plugins.Essentials.SocialOauth -* File: LoginMessageValidation.cs -* -* LoginMessageValidation.cs is part of VNLib.Plugins.Essentials.SocialOauth which is part of the larger -* VNLib collection of libraries and utilities. -* -* VNLib.Plugins.Essentials.SocialOauth is free software: you can redistribute it and/or modify -* it under the terms of the GNU Affero General Public License as -* published by the Free Software Foundation, either version 3 of the -* License, or (at your option) any later version. -* -* VNLib.Plugins.Essentials.SocialOauth is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -* GNU Affero General Public License for more details. -* -* You should have received a copy of the GNU Affero General Public License -* along with this program. If not, see https://www.gnu.org/licenses/. -*/ - -using System; - -using FluentValidation; - -using VNLib.Plugins.Essentials.Accounts; -using VNLib.Plugins.Extensions.Validation; - -namespace VNLib.Plugins.Essentials.SocialOauth.Validators -{ - internal class LoginMessageValidation : AbstractValidator - { - /* - * A login message object is only used for common semantics within - * the user-system so validation operations are different than a - * normal login endpoint as named fields may be used differently - */ - public LoginMessageValidation() - { - RuleFor(t => t.ClientId) - .Length(10, 50) - .WithMessage("Your browser is not sending required security information") - .IllegalCharacters() - .WithMessage("Your browser is not sending required security information"); - - RuleFor(t => t.ClientPublicKey) - .Length (50, 1000) - .WithMessage("Your browser is not sending required security information") - .IllegalCharacters() - .WithMessage("Your browser is not sending required security information"); - - //Password is only used for nonce tokens - RuleFor(t => t.Password).NotEmpty(); - - RuleFor(t => t.LocalLanguage) - .NotEmpty() - .WithMessage("Your language is not supported") - .AlphaNumericOnly() - .WithMessage("Your language is not supported"); - } - } -} -- cgit