summaryrefslogtreecommitdiffstats
path: root/src/smsutil.c
diff options
context:
space:
mode:
authorDenis Kenzior <denkenz@gmail.com>2009-07-02 12:46:01 -0500
committerDenis Kenzior <denkenz@gmail.com>2009-07-02 19:03:04 -0500
commitac56263a57a3e5a521d2cea83f3a542a22f5a768 (patch)
tree34af1bc3c4b7c94710cbed6f43c3208e87fe2f88 /src/smsutil.c
parent8d99a2a25fecc575245f4ab0a372dc7a924b5043 (diff)
downloadofono-ac56263a57a3e5a521d2cea83f3a542a22f5a768.tar.bz2
Add cbs lang to ISO 639 conversion utility
Diffstat (limited to 'src/smsutil.c')
-rw-r--r--src/smsutil.c111
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;
+}