UPDATE: Entity, Geo, Wiki
Some checks failed
Build and Release / release (push) Failing after 1m7s

This commit is contained in:
2026-04-22 17:45:09 +07:00
parent f127e2f029
commit adb65d8292
50 changed files with 3354 additions and 119 deletions

View File

@@ -53,3 +53,24 @@ func PtrToText(s *string) pgtype.Text {
Valid: true,
}
}
func TextToPtr(v pgtype.Text) *string {
if !v.Valid {
return nil
}
return &v.String
}
func Int4ToPtr(v pgtype.Int4) *int32 {
if !v.Valid {
return nil
}
return &v.Int32
}
func Int4ToInt32(v pgtype.Int4) int32 {
if v.Valid {
return v.Int32
}
return 0
}

View File

@@ -32,6 +32,33 @@ func init() {
}
return isImageURL(val)
})
validate.RegisterValidation("optional_url", func(fl validator.FieldLevel) bool {
val := fl.Field().String()
if val == "" {
return true
}
return isValidURL(val)
})
}
func isValidURL(s string) bool {
u, err := url.ParseRequestURI(s)
if err != nil {
return false
}
if u.Scheme != "http" && u.Scheme != "https" {
return false
}
if u.Host == "" || !strings.Contains(u.Host, ".") {
return false
}
return true
}
func isImageURL(u string) bool {
@@ -116,4 +143,4 @@ func ValidateBodyDto(c fiber.Ctx, dto any) []*ErrorResponse {
}
return nil
}
}