feat: editor write path

This commit is contained in:
Florian Sylvain committed 2026-11-02 03:24:30 +01:00
1 parent d9158025d4
commit a0b3c58c52
88 files changed
+5738 -263

No files matched your search

+7
View File
@@ -7,6 +7,7 @@ import (
"RenewCMS/internal/domain/site"
"reflect"
"regexp"
"slices"
"github.com/go-playground/validator/v10"
)
@@ -19,6 +20,7 @@ const AuthorNameTag = "authorname"
const AuthorSlugTag = "authorslug"
const SocialTypeTag = "socialtype"
const ArticleSlugTag = "articleslug"
const SEODismissedTag = "seodismissed"
var inviteEmailPattern = regexp.MustCompile(`^[^\s@]+@[^\s@.]+(\.[^\s@.]+)+$`)
@@ -34,6 +36,7 @@ func InitValidator() {
_ = Validate.RegisterValidation(AuthorSlugTag, isAuthorSlug, true)
_ = Validate.RegisterValidation(SocialTypeTag, isSocialType, true)
_ = Validate.RegisterValidation(ArticleSlugTag, isArticleSlug, true)
_ = Validate.RegisterValidation(SEODismissedTag, isSEODismissed)
}
func isArticleSlug(field validator.FieldLevel) bool {
@@ -44,6 +47,10 @@ func isArticleSlug(field validator.FieldLevel) bool {
return value == "" || article.IsValidSlug(value)
}
func isSEODismissed(field validator.FieldLevel) bool {
return slices.Contains(article.DismissCodes(), field.Field().String())
}
func isAbsent(field validator.FieldLevel) bool {
return field.Field().Kind() == reflect.Ptr && field.Field().IsNil()
}