+void load_language(char *tag, char *name) {
+ struct language *lang = get_language_by_tag(tag);
+ if(lang == get_default_language()) return;
+ if(lang) {
+ //remove all entrys
+ int cindex;
+ struct language_table *entry, *next;
+ for(cindex = 0; cindex < 27; cindex++) {
+ for(entry = lang->entrys[cindex]; entry; entry = next) {
+ next = entry->next;
+ free(entry->ident);
+ free(entry->text);
+ free(entry);
+ }
+ lang->entrys[cindex] = NULL;
+ }
+ } else
+ lang = add_language(tag, name);
+ if(!lang) return;
+ MYSQL_RES *res;
+ MYSQL_ROW row;
+ printf_mysql_query("SELECT `ident`, `text` FROM `language` WHERE `lang` = '%s' AND `ident` != 'name'", escape_string(tag));
+ res = mysql_use();
+ while((row = mysql_fetch_row(res)) != NULL) {
+ register_language_string(lang, row[0], row[1]);
+ }
+}
+