c89b67a06d
- 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)
24 lines
512 B
Go
24 lines
512 B
Go
package ui
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
c "github.com/juanatsap/cv-site/internal/constants"
|
|
"github.com/juanatsap/cv-site/internal/fileutil"
|
|
)
|
|
|
|
// LoadUI loads UI translations from a JSON file for the specified language
|
|
func LoadUI(language string) (*UI, error) {
|
|
if err := c.ValidateLang(language); err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
var uiData UI
|
|
filename := fmt.Sprintf("%s/ui-%s.json", c.DirData, language)
|
|
if err := fileutil.LoadJSON(filename, &uiData); err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
return &uiData, nil
|
|
}
|