diff options
author | Denis Kenzior <denkenz@gmail.com> | 2009-07-02 12:46:01 -0500 |
---|---|---|
committer | Denis Kenzior <denkenz@gmail.com> | 2009-07-02 19:03:04 -0500 |
commit | ac56263a57a3e5a521d2cea83f3a542a22f5a768 (patch) | |
tree | 34af1bc3c4b7c94710cbed6f43c3208e87fe2f88 /src/smsutil.c | |
parent | 8d99a2a25fecc575245f4ab0a372dc7a924b5043 (diff) | |
download | ofono-ac56263a57a3e5a521d2cea83f3a542a22f5a768.tar.bz2 |
Add cbs lang to ISO 639 conversion utility
Diffstat (limited to 'src/smsutil.c')
-rw-r--r-- | src/smsutil.c | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/src/smsutil.c b/src/smsutil.c index 8c18ce0d..743232e5 100644 --- a/src/smsutil.c +++ b/src/smsutil.c @@ -2585,3 +2585,114 @@ gboolean cbs_extract_app_port(const struct cbs *cbs, int *dst, int *src, return extract_app_port_common(&iter, dst, src, is_8bit); } + +static gboolean iso639_2_from_language(enum cbs_language lang, char *iso639) +{ + switch (lang) { + case CBS_LANGUAGE_GERMAN: + iso639[0] = 'd'; + iso639[1] = 'e'; + iso639[2] = '\0'; + return TRUE; + case CBS_LANGUAGE_ENGLISH: + iso639[0] = 'e'; + iso639[1] = 'n'; + iso639[2] = '\0'; + return TRUE; + case CBS_LANGUAGE_ITALIAN: + iso639[0] = 'i'; + iso639[1] = 't'; + iso639[2] = '\0'; + return TRUE; + case CBS_LANGUAGE_FRENCH: + iso639[0] = 'f'; + iso639[1] = 'r'; + iso639[2] = '\0'; + return TRUE; + case CBS_LANGUAGE_SPANISH: + iso639[0] = 'e'; + iso639[1] = 's'; + iso639[2] = '\0'; + return TRUE; + case CBS_LANGUAGE_DUTCH: + iso639[0] = 'n'; + iso639[1] = 'l'; + iso639[2] = '\0'; + return TRUE; + case CBS_LANGUAGE_SWEDISH: + iso639[0] = 's'; + iso639[1] = 'v'; + iso639[2] = '\0'; + return TRUE; + case CBS_LANGUAGE_DANISH: + iso639[0] = 'd'; + iso639[1] = 'a'; + iso639[2] = '\0'; + return TRUE; + case CBS_LANGUAGE_PORTUGESE: + iso639[0] = 'p'; + iso639[1] = 't'; + iso639[2] = '\0'; + return TRUE; + case CBS_LANGUAGE_FINNISH: + iso639[0] = 'f'; + iso639[1] = 'i'; + iso639[2] = '\0'; + return TRUE; + case CBS_LANGUAGE_NORWEGIAN: + iso639[0] = 'n'; + iso639[1] = 'o'; + iso639[2] = '\0'; + return TRUE; + case CBS_LANGUAGE_GREEK: + iso639[0] = 'e'; + iso639[1] = 'l'; + iso639[2] = '\0'; + return TRUE; + case CBS_LANGUAGE_TURKISH: + iso639[0] = 't'; + iso639[1] = 'r'; + iso639[2] = '\0'; + return TRUE; + case CBS_LANGUAGE_HUNGARIAN: + iso639[0] = 'h'; + iso639[1] = 'u'; + iso639[2] = '\0'; + return TRUE; + case CBS_LANGUAGE_POLISH: + iso639[0] = 'p'; + iso639[1] = 'l'; + iso639[2] = '\0'; + return TRUE; + case CBS_LANGUAGE_CZECH: + iso639[0] = 'c'; + iso639[1] = 's'; + iso639[2] = '\0'; + return TRUE; + case CBS_LANGUAGE_HEBREW: + iso639[0] = 'h'; + iso639[1] = 'e'; + iso639[2] = '\0'; + return TRUE; + case CBS_LANGUAGE_ARABIC: + iso639[0] = 'a'; + iso639[1] = 'r'; + iso639[2] = '\0'; + return TRUE; + case CBS_LANGUAGE_RUSSIAN: + iso639[0] = 'r'; + iso639[1] = 'u'; + iso639[2] = '\0'; + return TRUE; + case CBS_LANGUAGE_ICELANDIC: + iso639[0] = 'i'; + iso639[1] = 's'; + iso639[2] = '\0'; + return TRUE; + default: + iso639[0] = '\0'; + break; + } + + return FALSE; +} |