diff --git a/src/backend/helpers/language.cpp b/src/backend/helpers/language.cpp index 41df0fe8..86cf159b 100644 --- a/src/backend/helpers/language.cpp +++ b/src/backend/helpers/language.cpp @@ -39,23 +39,7 @@ const std::vector Language::codes({ LanguageCode::korean }); -Language::Language(LanguageCode code) { - Construct(code); -} - -Language::Language(const std::string& locale) { - for (LanguageCode code : codes) { - if (locale == Language(code).GetLocale()) { - Construct(code); - return; - } - } - - Construct(LanguageCode::english); -} - -void Language::Construct(const LanguageCode code) { - code_ = code; +Language::Language(LanguageCode code) : code_(code) { if (code_ == LanguageCode::spanish) { name_ = "EspaƱol"; locale_ = "es"; @@ -93,6 +77,18 @@ void Language::Construct(const LanguageCode code) { } } +Language::Language(const std::string& locale) : Language(GetCode(locale)) {} + +LanguageCode Language::GetCode(const std::string& locale) { + for (LanguageCode code : codes) { + if (locale == Language(code).GetLocale()) { + return code; + } + } + + return LanguageCode::english; +} + LanguageCode Language::GetCode() const { return code_; } diff --git a/src/backend/helpers/language.h b/src/backend/helpers/language.h index e5f17c52..3e422f05 100644 --- a/src/backend/helpers/language.h +++ b/src/backend/helpers/language.h @@ -44,7 +44,7 @@ public: std::string GetName() const; std::string GetLocale() const; private: - void Construct(const LanguageCode code); + static LanguageCode GetCode(const std::string& locale); LanguageCode code_; std::string name_;