잉여개발기 (SPDV) 3 lat temu
rodzic
commit
c7f38466ed
4 zmienionych plików z 116 dodań i 68 usunięć
  1. 1 1
      app.py
  2. 18 0
      route/api_func_lang.py
  3. 1 1
      version.json
  4. 96 66
      views/main_css/js/func/insert_user_info.js

+ 1 - 1
app.py

@@ -598,7 +598,7 @@ app.route('/api/recent_discuss/<get_type>/<int:num>')(api_recent_discuss)
 app.route('/api/recent_discuss/<int:num>')(api_recent_discuss)
 app.route('/api/recent_discuss')(api_recent_discuss)
 
-# app.route('/api/lang/<data>', methods = ['POST', 'GET'])(api_func_lang)
+app.route('/api/lang/<data>', methods = ['POST', 'GET'])(api_func_lang)
 app.route('/api/sha224/<everything:data>', methods = ['POST', 'GET'])(api_func_sha224)
 
 app.route('/api/title_index')(api_title_index)

+ 18 - 0
route/api_func_lang.py

@@ -0,0 +1,18 @@
+from .tool.func import *
+
+def api_func_lang(data = 'Test'):
+    with get_db_connect() as conn:
+        if flask.request.method == 'POST':
+            try:
+                title_list = json.loads(flask.request.form.get('title_list', ''))
+                title_list = list(set(title_list))
+            except:
+                title_list = []
+
+            data_list = {}
+            for i in title_list:
+                data_list[i] = load_lang(i)
+
+            return flask.jsonify(data_list)
+        else:
+            return flask.jsonify({ "data" : load_lang(data) })

+ 1 - 1
version.json

@@ -1,6 +1,6 @@
 {
     "beta" : {
-        "r_ver" : "v3.4.5 (stable2) (beta3) (dev38)",
+        "r_ver" : "v3.4.5 (stable2) (beta3) (dev39)",
         "c_ver" : "3500113",
         "s_ver" : "3500110"
     }

+ 96 - 66
views/main_css/js/func/insert_user_info.js

@@ -3,79 +3,109 @@
 function do_insert_user_info() {
     if(document.getElementById('opennamu_get_user_info')) {
         let name = document.getElementById('opennamu_get_user_info').innerHTML;
-        
+        let lang_data_list = [
+            'user_name',
+            'authority',
+            'state',
+            'member',
+            'normal',
+            'blocked',
+            'type',
+            'regex',
+            'period',
+            'limitless',
+            'login_able',
+            'why',
+            'band_blocked',
+            'ip',
+            'ban'
+        ];
+
+        let data_form = new FormData();
+        data_form.append('title_list', JSON.stringify(lang_data_list));
+
         let xhr = new XMLHttpRequest();
-        xhr.open("POST", "/api/user_info/" + opennamu_do_url_encode(name));
-        xhr.send();
+        xhr.open("POST", "/api/lang/Test");
+        xhr.send(data_form);
 
         xhr.onreadystatechange = function() {
             if(this.readyState === 4 && this.status === 200) {
-                let get_data = JSON.parse(this.responseText);
+                let lang_data = JSON.parse(this.responseText);
                 
-                // 한글 지원 필요
-                let get_data_auth = get_data[name]['auth'];
-                if(get_data_auth === '0') {
-                    get_data_auth = 'IP';
-                } else if(get_data_auth === '1') {
-                    get_data_auth = 'USER';
-                } else {
-                    get_data_auth = get_data[name]['auth'];
-                }
-                
-                let get_data_ban = get_data[name]['ban'];
-                if(get_data_ban === '0') {
-                    get_data_ban = 'NORMAL';
-                } else {
-                    get_data_ban = 'BAN';
-                    get_data_ban += '<br>';
-                    
-                    get_data_ban += 'TYPE : ';
-                    if(get_data[name]['ban']['type'] === 'normal') {
-                        get_data_ban += 'NORMAL'; 
-                    } else {
-                    	get_data_ban += 'REGEX';
-                    }
-                    get_data_ban += '<br>';
-                    
-                    get_data_ban += 'PERIOD : ';
-                    if(get_data[name]['ban']['period'] === '0') {
-                        get_data_ban += 'INF'; 
-                    } else {
-                    	get_data_ban += get_data[name]['ban']['period'];
-                    }
-                    get_data_ban += '<br>';
-                    
-                    get_data_ban += 'LOGIN ABLE : ';
-                    if(get_data[name]['ban']['login_able'] === '1') {
-                        get_data_ban += 'YES'; 
-                    } else {
-                    	get_data_ban += 'NO';
+                let xhr_2 = new XMLHttpRequest();
+                xhr_2.open("POST", "/api/user_info/" + opennamu_do_url_encode(name));
+                xhr_2.send();
+
+                xhr_2.onreadystatechange = function() {
+                    if(this.readyState === 4 && this.status === 200) {
+                        let get_data = JSON.parse(this.responseText);
+                        
+                        // 한글 지원 필요
+                        let get_data_auth = get_data[name]['auth'];
+                        if(get_data_auth === '0') {
+                            get_data_auth = lang_data['ip'];
+                        } else if(get_data_auth === '1') {
+                            get_data_auth = lang_data['member'];
+                        } else {
+                            get_data_auth = get_data[name]['auth'];
+                        }
+                        
+                        let get_data_ban = get_data[name]['ban'];
+                        if(get_data_ban === '0') {
+                            get_data_ban = lang_data['normal'];
+                        } else {
+                            get_data_ban = lang_data['ban'];
+                            get_data_ban += '<br>';
+                            
+                            get_data_ban += lang_data['type'] + ' : ';
+                            if(get_data[name]['ban']['type'] === 'normal') {
+                                get_data_ban += lang_data['normal']; 
+                            } else {
+                                get_data_ban += lang_data['regex'];
+                            }
+                            get_data_ban += '<br>';
+                            
+                            get_data_ban += lang_data['period'] + ' : ';
+                            if(get_data[name]['ban']['period'] === '0') {
+                                get_data_ban += lang_data['limitless']; 
+                            } else {
+                                get_data_ban += get_data[name]['ban']['period'];
+                            }
+                            get_data_ban += '<br>';
+                            
+                            get_data_ban += lang_data['login_able'] + ' : ';
+                            if(get_data[name]['ban']['login_able'] === '1') {
+                                get_data_ban += 'O'; 
+                            } else {
+                                get_data_ban += 'X';
+                            }
+                            get_data_ban += '<br>';
+                            
+                            get_data_ban += lang_data['why'] + ' : ' + get_data[name]['ban']['reason'];
+                        }
+                        
+                        let data = '' +
+                            '<table class="user_info_table">' +
+                                '<tr>' +
+                                    '<td>' + lang_data['user_name'] + '</td>' +
+                                    '<td>' + get_data[name]['render'] + '</td>' +
+                                '</tr>' +
+                                '<tr>' +
+                                    '<td>' + lang_data['authority'] + '</td>' +
+                                    '<td>' + get_data_auth + '</td>' +
+                                '</tr>' +
+                                '<tr>' +
+                                    '<td>' + lang_data['state'] + '</td>' +
+                                    '<td>' + get_data_ban + '</td>' +
+                                '</tr>' +
+                            '</table>' +
+                        '';
+                        
+                        document.getElementById('opennamu_get_user_info').innerHTML = data;
+                        
+                        opennamu_do_ip_parser();
                     }
-                    get_data_ban += '<br>';
-                    
-                    get_data_ban += 'REASON : ' + get_data[name]['ban']['reason'];
                 }
-                
-                let data = '' +
-                    '<table class="user_info_table">' +
-                        '<tr>' +
-                            '<td>NAME</td>' +
-                            '<td>' + get_data[name]['render'] + '</td>' +
-                        '</tr>' +
-                        '<tr>' +
-                            '<td>AUTH</td>' +
-                            '<td>' + get_data_auth + '</td>' +
-                        '</tr>' +
-                        '<tr>' +
-                            '<td>STATE</td>' +
-                            '<td>' + get_data_ban + '</td>' +
-                        '</tr>' +
-                    '</table>' +
-                '';
-                
-                document.getElementById('opennamu_get_user_info').innerHTML = data;
-                
-                opennamu_do_ip_parser();
             }
         }
     }