refactor: consolidate lang into constants, rename services to email

- Merge lang package into constants (add IsValidLang, ValidateLang, AllLangs)
- Rename internal/services to internal/email for consistency with pdf package
- Rename types to avoid redundancy: EmailService→Service, EmailConfig→Config
- Update all imports and references across codebase
- Delete internal/lang directory (functions moved to constants)
This commit is contained in:
juanatsap
2025-12-06 17:05:17 +00:00
parent 30ed21ff7a
commit c89b67a06d
28 changed files with 241 additions and 290 deletions
+3 -3
View File
@@ -5,18 +5,18 @@ import (
"strings"
"time"
c "github.com/juanatsap/cv-site/internal/constants"
"github.com/juanatsap/cv-site/internal/fileutil"
"github.com/juanatsap/cv-site/internal/lang"
)
// LoadCV loads CV data from a JSON file for the specified language
func LoadCV(language string) (*CV, error) {
if err := lang.Validate(language); err != nil {
if err := c.ValidateLang(language); err != nil {
return nil, err
}
var cvData CV
filename := fmt.Sprintf("data/cv-%s.json", language)
filename := fmt.Sprintf("%s/cv-%s.json", c.DirData, language)
if err := fileutil.LoadJSON(filename, &cvData); err != nil {
return nil, err
}