Просмотр исходного кода

최근 편집에 파일, 분류 추가

잉여개발기 (SPDV) 2 лет назад
Родитель
Сommit
890b3b3365

+ 1 - 4
route/n_list_recent_change.py

@@ -2,15 +2,12 @@ from .tool.func import *
 
 def list_recent_change(num = 1, set_type = 'normal'):
     with get_db_connect() as conn:
-        if not set_type in ('normal', 'edit', 'move', 'delete', 'revert', 'r1', 'edit_request', 'user'):
-            set_type = 'normal'
-
         return easy_minify(conn, flask.render_template(skin_check(conn),
             imp = [get_lang(conn, 'recent_change'), wiki_set(conn), wiki_custom(conn), wiki_css(['(' + get_lang(conn, set_type) + ')', 0])],
             data = '' + \
                 '<div id="opennamu_list_recent_change"></div>' + \
                 '<script src="/views/main_css/js/route/list_recent_change.js' + cache_v() + '"></script>' + \
-                '<script>opennamu_list_recent_change(' + str(num) + ', "' + set_type + '");</script>' + \
+                '<script>opennamu_list_recent_change();</script>' + \
             '',
             menu = [['other', get_lang(conn, 'return')], ['recent_edit_request', get_lang(conn, 'edit_request')]]
         ))

+ 3 - 1
route/recent_change.py

@@ -38,7 +38,9 @@ def recent_change(name = '', tool = '', num = 1, set_type = 'normal'):
             ['delete', get_lang(conn, 'delete')],
             ['revert', get_lang(conn, 'revert')],
             ['r1', get_lang(conn, 'new_doc')],
-            ['edit_request', get_lang(conn, 'edit_request')]
+            ['edit_request', get_lang(conn, 'edit_request')],
+            ['file', get_lang(conn, 'file')],
+            ['category', get_lang(conn, 'category')]
         ]
         if tool == 'history':
             option_list += [['setting', get_lang(conn, 'setting')]]

+ 20 - 6
route/tool/func.py

@@ -294,12 +294,14 @@ class class_check_json:
     def __init__(self):
         self.data_db_set = {}
             
-    def __new__(self):
-        self.data_db_set = self.do_check_set_json(self)
-        if self.data_db_set['type'] == 'mysql':
-            self.data_db_set = self.do_check_mysql_json(self, self.data_db_set)
+    def __new__(cls):
+        instance = super().__new__(cls)
+
+        cls.data_db_set = instance.do_check_set_json()
+        if cls.data_db_set['type'] == 'mysql':
+            cls.data_db_set = instance.do_check_mysql_json(cls.data_db_set)
         
-        return self.data_db_set
+        return cls.data_db_set
 
 def get_db_table_list():
     # DB table
@@ -2501,6 +2503,8 @@ def history_plus(conn, title, data, date, ip, send, leng, t_check = '', mode = '
         
         mode = 'r1' if id_data == '1' else mode
         mode = mode if not re.search('^user:', title) else 'user'
+        mode = mode if not re.search('^file:', title) else 'file'
+        mode = mode if not re.search('^category:', title) else 'category'
 
     send = re.sub(r'<|>', '', send)
     send = send[:512] if len(send) > 512 else send
@@ -2523,7 +2527,9 @@ def history_plus(conn, title, data, date, ip, send, leng, t_check = '', mode = '
 
         curs.execute(db_change("insert into rc (id, title, date, type) values (?, ?, ?, ?)"), [id_data, title, date, mode])
 
-        data_set_exist = '' if mode != 'delete' else 'not_exist'
+        data_set_exist = ''
+        if mode == 'delete':
+            data_set_exist = 'not_exist'
 
         curs.execute(db_change('delete from data_set where doc_name = ? and set_name = "edit_request_doing"'), [title])
 
@@ -2533,6 +2539,14 @@ def history_plus(conn, title, data, date, ip, send, leng, t_check = '', mode = '
         curs.execute(db_change('delete from data_set where doc_name = ? and set_name = "length"'), [title])
         curs.execute(db_change("insert into data_set (doc_name, doc_rev, set_name, set_data) values (?, '', 'length', ?)"), [title, len(data)])
 
+        if mode in ('file', 'user', 'category'):
+            doc_type = mode
+        else:
+            doc_type = ''
+        
+        curs.execute(db_change('delete from data_set where doc_name = ? and set_name = "doc_type"'), [title])
+        curs.execute(db_change("insert into data_set (doc_name, doc_rev, set_name, set_data) values (?, '', 'doc_type', ?)"), [title, doc_type])
+
         curs.execute(db_change("update data_set set doc_rev = ? where doc_name = ? and (doc_rev = '' or doc_rev = 'not_exist')"), [data_set_exist, title])
 
     curs.execute(db_change("insert into history (id, title, data, date, ip, send, leng, hide, type) values (?, ?, ?, ?, ?, ?, ?, '', ?)"), [id_data, title, data, date, ip, send, leng, mode])

BIN
route_go/bin/main.amd64.exe


+ 2 - 0
route_go/route/api_list_recent_change.go

@@ -158,6 +158,8 @@ func Api_list_recent_change(call_arg []string) {
 			"hide":           tool.Get_language(db, db_set, "hide", false),
 			"history_delete": tool.Get_language(db, db_set, "history_delete", false),
 			"send_edit":      tool.Get_language(db, db_set, "send_edit", false),
+			"file":           tool.Get_language(db, db_set, "file", false),
+			"category":       tool.Get_language(db, db_set, "category", false),
 		}
 		return_data["auth"] = auth_info
 

+ 1 - 1
version.json

@@ -1,6 +1,6 @@
 {
     "beta" : {
-        "r_ver" : "v3.5.0-dev81",
+        "r_ver" : "v3.5.0-dev82",
         "c_ver" : "3500377",
         "s_ver" : "3500113"
     }

+ 17 - 4
views/main_css/js/route/list_recent_change.js

@@ -1,7 +1,20 @@
 "use strict";
 
-function opennamu_list_recent_change(num, set_type) {
-    fetch('/api/v2/recent_change/50/' + set_type + '/' + String(num)).then(function(res) {
+function opennamu_list_recent_change() {
+    const url = window.location.pathname;
+    const url_split = url.split('/')
+    
+    let set_type = '';
+    let num = '';
+    if(url_split.length == 2) {
+        set_type = 'normal';
+        num = '1';
+    } else {
+        set_type = url_split[3];
+        num = url_split[2];
+    }
+
+    fetch('/api/v2/recent_change/50/' + set_type + '/' + num).then(function(res) {
         return res.json();
     }).then(function(data) {
         let lang = data["language"];
@@ -10,7 +23,7 @@ function opennamu_list_recent_change(num, set_type) {
 
         let data_html = '';
 
-        let option_list = ['normal', 'edit', 'move', 'delete', 'revert', 'r1', 'edit_request', 'user'];
+        let option_list = ['normal', 'edit', 'move', 'delete', 'revert', 'r1', 'edit_request', 'user', 'file', 'category'];
         for(let for_a = 0; for_a < option_list.length; for_a++) {
             let lang_in = option_list[for_a];
             if(lang_in === 'user') {
@@ -100,7 +113,7 @@ function opennamu_list_recent_change(num, set_type) {
             data_html += '<hr class="main_hr">';
         }
 
-        data_html += opennamu_page_control('/recent_change/{}/' + set_type, num, data.length);
+        data_html += opennamu_page_control('/recent_change/{}/' + set_type, Number(num), data.length);
 
         document.getElementById('opennamu_list_recent_change').innerHTML = data_html;