added language system
[NeonServV5.git] / UserNode.c
index 3b18cbd0e1c55d7ef254790b2576ce3a4257d166..b2e3c7aedcb82cceb1898b56d1473f51fcb2799d 100644 (file)
@@ -1,5 +1,7 @@
 #include "UserNode.h"
 #include "ChanUser.h"
+#include "mysqlConn.h"
+#include "lang.h"
 
 static struct UserNode **userList;
 
@@ -260,3 +262,22 @@ void clearTempUsers() {
             last_user = cuser;
     }
 }
+
+
+void load_user_settings(struct UserNode *user) {
+    if(!(user->flags & USERFLAG_ISAUTHED) || (user->flags & USERFLAG_LOADED_SETTINGS))
+        return;
+    check_mysql();
+    MYSQL_RES *res;
+    MYSQL_ROW row;
+    printf_mysql_query("SELECT `user_lang`, `user_reply_privmsg` FROM `users` WHERE `user_user` = '%s'", escape_string(user->auth));
+    res = mysql_use();
+    if ((row = mysql_fetch_row(res)) != NULL) {
+        user->language = get_language_by_tag(row[0]);
+        if(user->language == NULL) user->language = get_default_language();
+        if(strcmp(row[1], "0"))
+            user->flags |= USERFLAG_REPLY_PRIVMSG;
+    } else
+        user->language = lang_c;
+    user->flags |= USERFLAG_LOADED_SETTINGS
+}