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

@@ -106,11 +106,18 @@ func (s *SiteRepository) Create(site domain.Site) (domain.Site, error) {
return tx.Create(&model).Error
})
if err != nil {
return domain.Site{}, err
return domain.Site{}, s.explainKeyFailure(model.Key, err)
}
return mappers.SiteToDomain(model, 0), nil
}
func (s *SiteRepository) explainKeyFailure(key string, cause error) error {
if _, err := s.GetByKey(key); err == nil {
return domain.ErrSiteKeyTaken
}
return cause
}
func lockAllSites(tx *gorm.DB) error {
var locked []entity.Site
return tx.Clauses(clause.Locking{Strength: "UPDATE"}).Order("id ASC").Find(&locked).Error
@@ -135,6 +142,9 @@ func (s *SiteRepository) Update(site domain.Site) (domain.Site, error) {
"default_social_image_id": site.DefaultSocialImageID,
"default_robots": site.DefaultRobots,
"locale": site.Locale,
"site_name": site.SiteName,
"title_template": site.TitleTemplate,
"default_description": site.DefaultDescription,
}
if _, err := s.Get(site.ID); err != nil {
return domain.Site{}, err