Explorar el Código

mod thread set sys

잉여개발기 (SPDV) hace 3 años
padre
commit
d4d9c1730c

+ 18 - 0
lang/en-US.json

@@ -227,6 +227,7 @@
         "user_title" : "User title",
         "multiple_ban" : "Multiple ban",
     	"dont_move" : "Don't move",
+        "file_delete" : "File delete",
         "_comment_" : "Render",
             "toc" : "TOC",
         "_comment_" : "Search",
@@ -379,6 +380,23 @@
             "topic_tool" : "Discussion management tools",
             "topic_state" : "Discussion status",
             "topic_delete" : "Delete this thread",
+            "topic_view_acl" : "Discussion View ACL",
+            "topic_normal" : "Normal",
+            "topic_stop" : "Stop",
+            "topic_close" : "Close",
+            "topic_agree" : "Discussion Agreed",
+            "_comment_" : "Topic set",
+                "topic_change_agree" : "Transition to a consensus discussion",
+                "topic_progress" : "Discussion progress",
+                "topic_associate" : "Associate discussion with other features",
+                "topic_link_vote" : "Link votes to discussion",
+                "topic_insert_vote_number" : "Number of the vote",
+                "_comment_" : "Topic state",
+                    "topic_state_change_normal" : "The admin normalized the discussion.",
+                    "topic_state_change_stop" : "The admin has stopped the discussion.",
+                    "topic_state_change_close" : "The admin has closed the discussion.",
+                    "topic_state_change_agree" : "The admin has approved the discussion agreement.",
+                    "topic_state_change_disagree" : "The admin has broken the agreement of the discussion.",
         "_comment_2.5_" : "Period",
             "1_day" : "1 day",
             "5_day" : "5 days",

+ 16 - 1
lang/ko-KR.json

@@ -467,5 +467,20 @@
     "document_delete_acl": "문서 삭제 ACL",
     "document_edit_acl": "문서 편집 ACL",
     "phrase_old_page_warring": "이전 리비전 문서 방문시 경고문",
-    "toc": "목차"
+    "toc": "목차",
+    "topic_view_acl" : "토론 보기 ACL",
+    "file_delete" : "파일 삭제",
+    "topic_change_agree" : "합의가 완료된 토론으로 전환",
+    "topic_progress" : "토론 진행",
+    "topic_associate" : "다른 기능과 토론 연계",
+    "topic_link_vote" : "토론과 투표 연계",
+    "topic_insert_vote_number" : "투표의 번호",
+    "topic_state_change_normal" : "관리자가 토론을 정상화 했습니다.",
+    "topic_state_change_stop" : "관리자가 토론을 중지 했습니다.",
+    "topic_state_change_close" : "관리자가 토론을 닫았습니다.",
+    "topic_state_change_agree" : "관리자가 토론의 합의를 승인했습니다.",
+    "topic_state_change_disagree" : "관리자가 토론의 합의를 파기했습니다.",
+    "topic_normal" : "일반",
+    "topic_stop" : "중지",
+    "topic_close" : "닫힘"
 }

+ 1 - 1
route/tool/func.py

@@ -1040,7 +1040,7 @@ def wiki_css(data):
     data += ['' for _ in range(0, 3 - len(data))]
     
     data_css = ''
-    data_css_ver = '154'
+    data_css_ver = '155'
     
     # Func JS + Defer
     data_css += '<script src="/views/main_css/js/func/func.js?ver=' + data_css_ver + '"></script>'

+ 3 - 3
route/tool/func_render_namumark.py

@@ -599,7 +599,7 @@ class class_do_render_namumark:
                         link_main = self.get_tool_data_restore(link_main, do_type = 'slash')
                         link_main = html.unescape(link_main)
 
-                        self.curs.execute(db_change("select title from data where title = ?"), [link_main])
+                        self.curs.execute(db_change("select title from data where title = ?"), ['file:' + link_main])
                         db_data = self.curs.fetchall()
                         if db_data:
                             link_exist = ''
@@ -653,7 +653,7 @@ class class_do_render_namumark:
                     link_main = self.get_tool_data_restore(link_main, do_type = 'slash')
                     link_main = html.unescape(link_main)
 
-                    self.curs.execute(db_change("select title from data where title = ?"), [link_main])
+                    self.curs.execute(db_change("select title from data where title = ?"), ['category:' + link_main])
                     db_data = self.curs.fetchall()
                     if db_data:
                         link_exist = ''
@@ -662,7 +662,7 @@ class class_do_render_namumark:
 
                     link_main = url_pas(link_main)
 
-                    self.data_category += '<a class="' + category_blur + ' ' + link_exist + '" href="/w/' + link_main + '">' + link_sub + '</a>'
+                    self.data_category += '<a class="' + category_blur + ' ' + link_exist + '" href="/w/category:' + link_main + '">' + link_sub + '</a>'
 
                     self.render_data = re.sub(link_regex, '', self.render_data, 1)
                 # out link

+ 9 - 9
route/topic_tool.py

@@ -11,36 +11,36 @@ def topic_tool(topic_num = 1):
         close_data = curs.fetchall()
         if close_data:
             if close_data[0][0] == 'S':
-                t_state = 'Stop'
+                t_state = load_lang('topic_stop')
             elif close_data[0][0] == 'O':
-                t_state = 'Close'
+                t_state = load_lang('topic_close')
             else:
-                t_state = 'Normal'
+                t_state = load_lang('topic_normal')
                 
             if close_data[0][1] == 'O':
-                t_state += ' (Agree)'
+                t_state += ' (' + load_lang('topic_agree') + ')'
         else:
-            t_state = 'Normal'
+            t_state = load_lang('topic_normal')
 
         curs.execute(db_change("select acl from rd where code = ?"), [topic_num])
         db_data = curs.fetchall()
         if db_data:
             if db_data[0][0] == '':
-                acl_state = 'Normal'
+                acl_state = 'normal'
             else:
                 acl_state = db_data[0][0]
         else:
-            acl_state = 'Normal'
+            acl_state = 'normal'
         
         curs.execute(db_change("select set_data from topic_set where thread_code = ? and set_name = 'thread_view_acl'"), [topic_num])
         db_data = curs.fetchall()
         if db_data:
             if db_data[0][0] == '':
-                acl_view_state = 'Normal'
+                acl_view_state = 'normal'
             else:
                 acl_view_state = db_data[0][0]
         else:
-            acl_view_state = 'Normal'
+            acl_view_state = 'normal'
 
         if admin_check(3) == 1:
             data = '''

+ 53 - 23
route/topic_tool_setting.py

@@ -19,44 +19,66 @@ def topic_tool_setting(topic_num = 1):
         if flask.request.method == 'POST':
             admin_check(3, 'change_topic_set (code ' + topic_num + ')')
 
-            curs.execute(db_change("select id from topic where code = ? order by id + 0 desc limit 1"), [topic_num])
-            topic_check = curs.fetchall()
-            if topic_check:
-                stop_d = flask.request.form.get('stop_d', '')
-                why_d = flask.request.form.get('why', '')
-                agree_d = flask.request.form.get('agree', '')
-
-                curs.execute(db_change("update rd set stop = ?, agree = ? where code = ?"), [
+            stop_d = flask.request.form.get('stop_d', '')
+            why_d = flask.request.form.get('why', '')
+            agree_d = flask.request.form.get('agree', '')
+
+            if stop_d != rd_d[0][0]:
+                curs.execute(db_change("update rd set stop = ? where code = ?"), [
                     stop_d,
-                    agree_d,
                     topic_num
                 ])
 
                 if stop_d == 'S':
-                    t_state = 'Stop'
+                    t_state = 'topic_state_change_stop'
                 elif stop_d == 'O':
-                    t_state = 'Close'
+                    t_state = 'topic_state_change_close'
+                else:
+                    t_state = 'topic_state_change_normal'
+
+                do_add_thread(
+                    topic_num,
+                    load_lang(t_state),
+                    '1'
+                )
+
+            if agree_d != rd_d[0][1]:
+                curs.execute(db_change("update rd set agree = ? where code = ?"), [
+                    agree_d,
+                    topic_num
+                ])
+
+                if agree_d == 'O':
+                    t_state = 'topic_state_change_agree'
                 else:
-                    t_state = 'Normal'
+                    t_state = 'topic_state_change_disagree'
 
                 do_add_thread(
                     topic_num,
-                    t_state + (' (Agree)' if agree_d != '' else '') + (('[br][br]Why : ' + why_d) if why_d else ''),
+                    load_lang(t_state),
                     '1'
                 )
-                do_reload_recent_thread(
-                    topic_num, 
-                    time
+
+            if why_d != '':
+                do_add_thread(
+                    topic_num,
+                    load_lang('why') + ' : ' + why_d,
+                    '1'
                 )
+            
+            do_reload_recent_thread(
+                topic_num, 
+                time
+            )
 
             return redirect('/thread/' + topic_num)
         else:
             stop_d_list = ''
             agree_check = ''
             for_list = [
-                ['O', 'Close'],
-                ['S', 'Stop'],
-                ['', 'Normal']
+                ['O', load_lang('topic_close')],
+                ['S', load_lang('topic_stop')],
+                ['', load_lang('topic_normal')]
             ]
 
             for i in for_list:
@@ -71,14 +93,22 @@ def topic_tool_setting(topic_num = 1):
                 imp = [load_lang('topic_setting'), wiki_set(), wiki_custom(), wiki_css([0, 0])],
                 data = '''
                     <form method="post">
+                        <h2>1. ''' + load_lang('topic_progress') + '''</h2>
                         <select name="stop_d">
                             ''' + stop_d_list + '''
                         </select>
-                        <hr class=\"main_hr\">
-                        <input type="checkbox" name="agree" value="O" ''' + agree_check + '''> Agree
-                        <hr class=\"main_hr\">
+                        <hr class="main_hr">
+                        <input type="checkbox" name="agree" value="O" ''' + agree_check + '''> ''' + load_lang('topic_change_agree') + '''
+
+                        <h2>2. ''' + load_lang('topic_associate') + '''</h2>
+                        ''' + load_lang('topic_link_vote') + ''' (''' + load_lang('not_working') + ''')
+                        <hr class="main_hr">
+                        <input placeholder="''' + load_lang('topic_insert_vote_number') + '''" name="vote_number" type="number">
+
+                        <h2>3. ''' + load_lang('why') + '''</h2>
                         <input placeholder="''' + load_lang('why') + ''' (''' + load_lang('markup_enabled') + ''')" name="why" type="text">
-                        <hr class=\"main_hr\">
+                        <hr class="main_hr">
+
                         <button type="submit">''' + load_lang('save') + '''</button>
                     </form>
                 ''',

+ 9 - 8
route/vote_end.py

@@ -10,6 +10,13 @@ def vote_end(num = 1):
         data_list = curs.fetchall()
         if not data_list:
             return redirect('/vote')
+
+        data = ''
+        if admin_check() == 1:
+            if data_list[0][3] == 'open' or data_list[0][3] == 'n_open':
+                data += '<a href="/vote/close/' + num + '">(' + load_lang('close_vote') + ')</a>'
+            else:
+                data += '<a href="/vote/close/' + num + '">(' + load_lang('re_open_vote') + ')</a>'
         
         curs.execute(db_change('select data from vote where id = ? and name = "end_date" and type = "option"'), [num])
         db_data = curs.fetchall()
@@ -17,16 +24,10 @@ def vote_end(num = 1):
         if db_data:
             time_limit = db_data[0][0]
 
-        data = '<h2>' + data_list[0][0] + '</h2>'
+        data += '<h2>' + data_list[0][0] + '</h2>'
         data += '<b>' + data_list[0][1] + '</b><hr class="main_hr">' if data_list[0][1] != '' else ''
         data += '<span>~ ' + time_limit + '</span><hr class="main_hr">' if time_limit != '' else ''
 
-        if admin_check() == 1:
-            if data_list[0][3] == 'open' or data_list[0][3] == 'n_open':
-                data += '<a href="/vote/close/' + num + '">(' + load_lang('close_vote') + ')</a>'
-            else:
-                data += '<a href="/vote/close/' + num + '">(' + load_lang('re_open_vote') + ')</a>'
-
         vote_data = re.findall(r'([^\n]+)', data_list[0][2].replace('\r\n', '\n'))
         for i in range(0, len(vote_data)):
             data += '<h2>' + vote_data[i] + '</h2>'
@@ -43,7 +44,7 @@ def vote_end(num = 1):
             data += '</ul>'
 
         return easy_minify(flask.render_template(skin_check(),
-            imp = [load_lang('result_vote'), wiki_set(), wiki_custom(), wiki_css([0, 0])],
+            imp = [load_lang('result_vote'), wiki_set(), wiki_custom(), wiki_css(['(' + num + ')', 0])],
             data = data,
             menu = [['vote', load_lang('return')]]
         ))

+ 1 - 1
route/vote_list.py

@@ -25,7 +25,7 @@ def vote_list(list_type = 'normal', num = 1):
             else:
                 open_select = load_lang('open_vote') if i[2] == 'close' else load_lang('not_open_vote')
 
-            data += '<li><a href="/vote/' + i[1] + '">' + html.escape(i[0]) + '</a> (' + open_select + ')</li>'
+            data += '<li><a href="/vote/' + i[1] + '">' + i[1] + '. ' + html.escape(i[0]) + '</a> (' + open_select + ')</li>'
 
         data += '</ul>'
         if list_type == 'normal':

+ 1 - 1
route/vote_select.py

@@ -73,7 +73,7 @@ def vote_select(num = 1):
             ''
 
             return easy_minify(flask.render_template(skin_check(),
-                imp = [load_lang('vote'), wiki_set(), wiki_custom(), wiki_css([0, 0])],
+                imp = [load_lang('vote'), wiki_set(), wiki_custom(), wiki_css(['(' + num + ')', 0])],
                 data = data,
                 menu = [['vote', load_lang('return')], ['vote/end/' + num, load_lang('result')]]
             ))

+ 1 - 1
version.json

@@ -1,6 +1,6 @@
 {
     "beta" : {
-        "r_ver" : "v3.4.5 (stable2) (beta3) (dev56)",
+        "r_ver" : "v3.4.5 (stable2) (beta3) (dev57)",
         "c_ver" : "3500354",
         "s_ver" : "3500110"
     }

+ 1 - 1
views/main_css/css/main.css

@@ -55,7 +55,7 @@ td {
 }
 
 .opennamu_comment_color_red {
-    background: palevioletred;
+    background: pink;
 }
 
 .opennamu_comment_color_default {

+ 4 - 0
views/ringo/css/main.css

@@ -101,6 +101,10 @@ header a#logo:hover {
     padding-bottom: 10px;
 }
 
+.top_cel_in a:hover {
+    background-color: #e3baf1;
+}
+
 div#menu {
     margin-top: 10px;
 

+ 6 - 1
views/ringo/index.html

@@ -158,7 +158,12 @@
         <section>
             <header id="section">
                 <article class="main" id="title">
-                    <h1 class="blank"><span class="change_space">{{imp[0]}}</span></h1>
+                    <h1 class="blank">
+                        <span class="change_space">{{imp[0]}}</span>
+                        {% if imp[3][0] != 0 %}
+                            <sub>{{imp[3][0]}}</sub>
+                        {% endif %}
+                    </h1>
                     {% if menu != 0 %}
                         <div id="menu">
                             {% for menu_data in menu %}

+ 1 - 1
views/ringo/info.json

@@ -1,5 +1,5 @@
 {
     "name" : "Ringo",
-    "skin_ver" : "v0.1.1",
+    "skin_ver" : "v0.1.2",
     "require_ver" : "3500110"
 }