feat: SEO backend data (1/4)

This commit is contained in:
Florian Sylvain committed 2026-10-15 19:30:29 +02:00
1 parent cb1410f0b0
commit 0eb46b0d74
90 files changed
+6094 -350

No files matched your search

+19 -11
View File
@@ -80,28 +80,36 @@ func (u *UpdateSiteUseCase) apply(before site.Site, patch site.Patch) (site.Site
}
after.DefaultSocialImageID = patch.DefaultSocialImageID.Value
}
if patch.SiteName != nil {
after.SiteName = *patch.SiteName
}
if patch.TitleTemplate != nil {
if err := site.ValidateTitleTemplate(*patch.TitleTemplate); err != nil {
return site.Site{}, err
}
after.TitleTemplate = *patch.TitleTemplate
}
if patch.DefaultDescription != nil {
after.DefaultDescription = *patch.DefaultDescription
}
return after, nil
}
func (u *UpdateSiteUseCase) changes(before site.Site, after site.Site) []audit.Change {
changes := []audit.Change{}
changes = appendTextChange(changes, audit.FieldName, before.Name, after.Name)
changes = appendTextChange(changes, audit.FieldBaseURL, before.BaseURL, after.BaseURL)
changes = appendTextChange(changes, audit.FieldDefaultRobots, before.DefaultRobots, after.DefaultRobots)
changes = appendTextChange(changes, audit.FieldLocale, localeLabel(before.Locale), localeLabel(after.Locale))
changes = audit.AppendTextChange(changes, audit.FieldName, before.Name, after.Name)
changes = audit.AppendTextChange(changes, audit.FieldBaseURL, before.BaseURL, after.BaseURL)
changes = audit.AppendTextChange(changes, audit.FieldDefaultRobots, before.DefaultRobots, after.DefaultRobots)
changes = audit.AppendTextChange(changes, audit.FieldLocale, localeLabel(before.Locale), localeLabel(after.Locale))
if !sameImage(before.DefaultSocialImageID, after.DefaultSocialImageID) {
changes = append(changes, audit.TextChange(audit.FieldSocialImage, imageLabel(u.imageRepository, before.DefaultSocialImageID), imageLabel(u.imageRepository, after.DefaultSocialImageID)))
}
changes = audit.AppendTextChange(changes, audit.FieldSiteName, before.SiteName, after.SiteName)
changes = audit.AppendTextChange(changes, audit.FieldTitleTemplate, before.TitleTemplate, after.TitleTemplate)
changes = audit.AppendTextChange(changes, audit.FieldDefaultDescription, before.DefaultDescription, after.DefaultDescription)
return changes
}
func appendTextChange(changes []audit.Change, field string, before string, after string) []audit.Change {
if before == after {
return changes
}
return append(changes, audit.TextChange(field, before, after))
}
func sameImage(a *uint32, b *uint32) bool {
if a == nil || b == nil {
return a == b