2025-11-20 16:17:56 +00:00
|
|
|
package ui
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"fmt"
|
2025-11-20 16:41:13 +00:00
|
|
|
|
|
|
|
|
"github.com/juanatsap/cv-site/internal/fileutil"
|
|
|
|
|
"github.com/juanatsap/cv-site/internal/lang"
|
2025-11-20 16:17:56 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
|
|
// LoadUI loads UI translations from a JSON file for the specified language
|
2025-11-20 16:41:13 +00:00
|
|
|
func LoadUI(language string) (*UI, error) {
|
|
|
|
|
if err := lang.Validate(language); err != nil {
|
2025-11-20 16:17:56 +00:00
|
|
|
return nil, err
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var uiData UI
|
2025-11-20 16:41:13 +00:00
|
|
|
filename := fmt.Sprintf("data/ui-%s.json", language)
|
|
|
|
|
if err := fileutil.LoadJSON(filename, &uiData); err != nil {
|
|
|
|
|
return nil, err
|
2025-11-20 16:17:56 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return &uiData, nil
|
|
|
|
|
}
|