2du 4 лет назад
Родитель
Сommit
1cabf60495

+ 137 - 80
app.py

@@ -206,7 +206,7 @@ set_init_always(version_list['beta']['c_ver'])
 # Init-Route
 class EverythingConverter(werkzeug.routing.PathConverter):
     regex = '.*?'
-
+    
 class RegexConverter(werkzeug.routing.BaseConverter):
     def __init__(self, url_map, *items):
         super(RegexConverter, self).__init__(url_map)
@@ -315,20 +315,28 @@ if os.path.exists('custom.py'):
 
     custom_run(conn, app)
 
-# alarm과 watch_list의 user 편입
-
 # Func
 # Func-inter_wiki
-
-# 개편 필요
+# 개편 필요(각각 분리 예정)
 @app.route('/<regex("inter_wiki"):tools>')
 @app.route('/<regex("edit_top"):tools>')
 @app.route('/<regex("image_license"):tools>')
-@app.route('/<regex("(?:edit|email|file|name|extension)_filter"):tools>')
+@app.route('/<regex("edit_filter"):tools>')
+@app.route('/<regex("email_filter"):tools>')
+@app.route('/<regex("file_filter"):tools>')
+@app.route('/<regex("name_filter"):tools>')
+@app.route('/<regex("extension_filter"):tools>')
 def inter_wiki(tools = None):
     return inter_wiki_2(conn, tools)
 
-@app.route('/<regex("del_(?:inter_wiki|edit_top|image_license|(?:edit|email|file|name|extension)_filter)"):tools>/<name>')
+@app.route('/<regex("del_inter_wiki"):tools>')
+@app.route('/<regex("del_edit_top"):tools>')
+@app.route('/<regex("del_image_license"):tools>')
+@app.route('/<regex("del_edit_filter"):tools>')
+@app.route('/<regex("del_email_filter"):tools>')
+@app.route('/<regex("del_file_filter"):tools>')
+@app.route('/<regex("del_name_filter"):tools>')
+@app.route('/<regex("del_extension_filter"):tools>')
 def inter_wiki_del(tools = None, name = None):
     return inter_wiki_del_2(conn, tools, name)
 
@@ -338,81 +346,113 @@ def inter_wiki_plus(tools = None, name = None):
     return inter_wiki_plus_2(conn, tools, name)
 
 # Func-list
+# /list/topic/open
 @app.route('/not_close_topic')
 def list_not_close_topic():
     return list_not_close_topic_2(conn)
 
+# /list/document/old
 @app.route('/old_page')
 def list_old_page():
     return list_old_page_2(conn)
 
+# /list/document/acl
 @app.route('/acl_list')
 def list_acl():
     return list_acl_2(conn)
 
+# /list/document/acl/add
+@app.route('/acl/<everything:name>', methods = ['POST', 'GET'])
+def give_acl(name = None):
+    return give_acl_2(conn, name)
+
+# /list/document/need
+@app.route('/please')
+def list_please():
+    return list_please_2(conn)
+
+# /list/document/all
+@app.route('/title_index')
+def list_title_index():
+    return list_title_index_2(conn)
+
+# /list/document/long
+@app.route('/long_page')
+def list_long_page():
+    return list_long_page_2(conn, 'long_page')
+
+# /list/document/short
+@app.route('/short_page')
+def list_short_page():
+    return list_long_page_2(conn, 'short_page')
+
+# /list/file
 @app.route('/image_file_list')
 def list_image_file():
     return list_image_file_2(conn)
 
+# /list/admin
+# /list/admin/list
 @app.route('/admin_list')
 def list_admin():
     return list_admin_2(conn)
 
-@app.route('/user_log')
-def list_user():
-    return list_user_2(conn)
-
+# /list/admin/auth_use
 @app.route('/admin_log', methods = ['POST', 'GET'])
 def list_admin_use():
     return list_admin_use_2(conn)
 
-@app.route('/admin_group')
-def list_admin_group():
-    return list_admin_group_2(conn)
-
-@app.route('/please')
-def list_please():
-    return list_please_2(conn)
-
-@app.route('/title_index')
-def list_title_index():
-    return list_title_index_2(conn)
-
-@app.route('/<regex("long_page"):tool>')
-@app.route('/<regex("short_page"):tool>')
-def list_long_page(tool = 'long_page'):
-    return list_long_page_2(conn, tool)
-
-# Func-give
-@app.route('/admin_plus/<name>', methods = ['POST', 'GET'])
-def give_admin_groups(name = None):
-    return give_admin_groups_2(conn, name)
-
-# 다듬어야할 듯
-@app.route('/delete_admin_group/<name>', methods = ['POST', 'GET'])
-def give_delete_admin_group(name = None):
-    return give_delete_admin_group_2(conn, name)
+# /list/user
+@app.route('/user_log')
+def list_user():
+    return list_user_2(conn)
 
+# /list/user/check
 @app.route('/check/<name>')
 def give_user_check(name = None):
     return give_user_check_2(conn, name)
     
+# /list/user/check/delete
 @app.route('/check_delete', methods = ['POST', 'GET'])
 def give_user_check_delete():
     return give_user_check_delete_2(conn)
 
+# Func-auth
+# /auth/give
+# /auth/give/<name>
+@app.route('/admin/<name>', methods = ['POST', 'GET'])
+def give_admin(name = None):
+    return give_admin_2(conn, name)
+
+# /auth/give
+# /auth/give/<name>
 @app.route('/ban', methods = ['POST', 'GET'])
 @app.route('/ban/<name>', methods = ['POST', 'GET'])
 def give_user_ban(name = None):
     return give_user_ban_2(conn, name)
 
-@app.route('/acl/<everything:name>', methods = ['POST', 'GET'])
-def give_acl(name = None):
-    return give_acl_2(conn, name)
+# /auth/list
+@app.route('/admin_group')
+def list_admin_group():
+    return list_admin_group_2(conn)
 
-@app.route('/admin/<name>', methods = ['POST', 'GET'])
-def give_admin(name = None):
-    return give_admin_2(conn, name)
+# /auth/list/add/<name>
+@app.route('/admin_plus/<name>', methods = ['POST', 'GET'])
+def give_admin_groups(name = None):
+    return give_admin_groups_2(conn, name)
+
+# /auth/list/delete/<name>
+@app.route('/delete_admin_group/<name>', methods = ['POST', 'GET'])
+def give_delete_admin_group(name = None):
+    return give_delete_admin_group_2(conn, name)
+
+# /auth/history
+# ongoing 반영 필요
+@app.route('/block_log')
+@app.route('/block_log/<regex("user"):tool>/<name>')
+@app.route('/block_log/<regex("admin"):tool>/<name>')
+def recent_block(name = 'Test', tool = 'all'):
+    return recent_block_2(conn, name, tool)
 
 # Func-view
 @app.route('/xref/<everything:name>')
@@ -436,19 +476,7 @@ def view_down(name = None):
 def view_read(name = None):
     return view_read_2(conn, name)
 
-# Func-recent
-@app.route('/recent_discuss')
-def recent_discuss():
-    return recent_discuss_2(conn)
-
-# ongoing 반영 필요
-@app.route('/block_log')
-@app.route('/block_log/<regex("user"):tool>/<name>')
-@app.route('/block_log/<regex("admin"):tool>/<name>')
-def recent_block(name = 'Test', tool = 'all'):
-    return recent_block_2(conn, name, tool)
-
-# 이 쪽 분리 필요
+# Func-history
 @app.route('/recent_change')
 @app.route('/recent_changes')
 def recent_change(name = None):
@@ -494,6 +522,7 @@ def recent_record_reset(name = 'Test'):
 def recent_record_topic(name = 'Test'):
     return recent_record_topic_2(conn, name)
 
+# 거처를 고심중
 @app.route('/app_submit', methods = ['POST', 'GET'])
 def recent_app_submit():
     return recent_app_submit_2(conn)
@@ -539,6 +568,10 @@ def edit_move(name = None):
     return edit_move_2(conn, name)
 
 # Func-topic
+@app.route('/recent_discuss')
+def recent_discuss():
+    return recent_discuss_2(conn)
+
 @app.route('/thread/<int:topic_num>/b/<int:num>')
 def topic_block(topic_num = 1, num = 1):
     return topic_block_2(conn, topic_num, num)
@@ -614,20 +647,28 @@ def user_count_edit(name = None):
     return user_count_edit_2(conn, name)
     
 @app.route('/alarm')
-def alarm():
-    return alarm_2(conn)
+def user_alarm():
+    return user_alarm_2(conn)
 
 @app.route('/alarm/delete')
-def alarm_del():
-    return alarm_del_2(conn)
+def user_alarm_del():
+    return user_alarm_del_2(conn)
     
-@app.route('/<regex("watch_list|star_doc"):tool>')
-def watch_list(tool = 'star_doc'):
-    return watch_list_2(conn, tool)
+@app.route('/watch_list')
+def user_watch_list():
+    return user_watch_list_2(conn, 'watch_list')
+
+@app.route('/watch_list/<everything:name>')
+def user_watch_list_name(name = 'Test'):
+    return user_watch_list_name_2(conn, 'watch_list', name)
 
-@app.route('/<regex("watch_list|star_doc"):tool>/<everything:name>')
-def watch_list_name(tool = 'star_doc', name = 'Test'):
-    return watch_list_name_2(conn, tool, name)
+@app.route('/star_doc')
+def user_star_doc():
+    return user_watch_list_2(conn, 'star_doc')
+
+@app.route('/star_doc/<everything:name>')
+def user_star_doc_name(name = 'Test'):
+    return user_watch_list_name_2(conn, 'star_doc', name)
 
 # Func-login
 # 개편 예정
@@ -681,23 +722,30 @@ def login_logout():
     return login_logout_2(conn)
 
 # Func-vote
-@app.route('/vote/<num>', methods = ['POST', 'GET'])
-def vote_select(num = '1'):
-    return vote_select_2(conn, num)
+@app.route('/vote/<int:num>', methods = ['POST', 'GET'])
+def vote_select(num = 1):
+    return vote_select_2(conn, str(num))
 
-@app.route('/end_vote/<num>')
-def vote_end(num = '1'):
-    return vote_end_2(conn, num)
+@app.route('/vote/end/<int:num>')
+def vote_end(num = 1):
+    return vote_end_2(conn, str(num))
 
-@app.route('/close_vote/<num>')
-def vote_close(num = '1'):
-    return vote_close_2(conn, num)
+@app.route('/vote/close/<int:num>')
+def vote_close(num = 1):
+    return vote_close_2(conn, str(num))
 
 @app.route('/vote')
-def vote():
-    return vote_2(conn)
+@app.route('/vote/list')
+@app.route('/vote/list/<int:num>')
+def vote_list(num = 1):
+    return vote_list_2(conn, 'normal', num)
+
+@app.route('/vote/list/close')
+@app.route('/vote/list/close/<int:num>')
+def vote_list_close(num = 1):
+    return vote_list_2(conn, 'close', num)
 
-@app.route('/add_vote', methods = ['POST', 'GET'])
+@app.route('/vote/add', methods = ['POST', 'GET'])
 def vote_add():
     return vote_add_2(conn)
 
@@ -712,7 +760,11 @@ def api_raw(name = ''):
 
 @app.route('/api/version')
 def api_version():
-    return api_version_2(conn, version_list['beta']['r_ver'], version_list['beta']['c_ver'])
+    return api_version_2(
+        conn, 
+        version_list['beta']['r_ver'], 
+        version_list['beta']['c_ver']
+    )
 
 @app.route('/api/skin_info')
 @app.route('/api/skin_info/<name>')
@@ -756,6 +808,7 @@ def api_sitemap():
     return api_sitemap_2(conn)
 
 # Func-main
+# 여기도 전반적인 조정 시행 예정
 @app.route('/restart', methods = ['POST', 'GET'])
 def main_restart():
     return main_restart_2(conn)
@@ -784,7 +837,11 @@ def main_other():
 @app.route('/manager', methods = ['POST', 'GET'])
 @app.route('/manager/<int:num>', methods = ['POST', 'GET'])
 def main_manager(num = 1):
-    return main_manager_2(conn, num, version_list['beta']['r_ver'])
+    return main_manager_2(
+        conn, 
+        num, 
+        version_list['beta']['r_ver']
+    )
 
 @app.route('/image/<everything:name>')
 def main_image_view(name = None):

+ 0 - 3
route/main_manager.py

@@ -34,7 +34,6 @@ def main_manager_2(conn, num, r_ver):
                     <li><a href="/manager/17">''' + load_lang('release') + '''</a></li>
                     <li><a href="/manager/5">''' + load_lang('authorize') + '''</a></li>
                 </ul>
-                <br>
                 <h2>''' + load_lang('owner') + '''</h2>
                 <ul class="inside_ul">
                     <li><a href="/admin_group">''' + load_lang('admin_group_list') + '''</a></li>
@@ -55,14 +54,12 @@ def main_manager_2(conn, num, r_ver):
                     <li><a href="/file_filter">''' + load_lang('file_filter_list') + '''</a></li>
                     <li><a href="/extension_filter">''' + load_lang('extension_filter_list') + '''</a></li>
                 </ul>
-                <br>
                 <h2>''' + load_lang('server') + '''</h2>
                 <ul class="inside_ul">
                     <li><a href="/restart">''' + load_lang('wiki_restart') + '''</a></li>
                     <li><a href="/shutdown">''' + load_lang('wiki_shutdown') + '''</a></li>
                     <li><a href="/update">''' + load_lang('update') + '''</a></li>
                 </ul>
-                <br>
                 <h2>''' + load_lang('version') + '''</h2>
                 <ul class="inside_ul">
                     <li>

+ 48 - 35
route/main_other.py

@@ -6,41 +6,54 @@ def main_other_2(conn):
     return easy_minify(flask.render_template(skin_check(),
         imp = [load_lang('other_tool'), wiki_set(), wiki_custom(), wiki_css([0, 0])],
         data = '''
-            <h2>''' + load_lang('record') + '''</h2>
-            <ul class="inside_ul">
-                <li><a href="/manager/6">''' + load_lang('edit_record') + '''</a></li>
-                <li><a href="/manager/7">''' + load_lang('discussion_record') + '''</a></li>
-            </ul>
-            <br>
-            <h2>''' + load_lang('list') + '''</h2>
-            <ul class="inside_ul">
-                <li><a href="/recent_changes">''' + load_lang('recent_change') + '''</a></li>
-                <li><a href="/recent_discuss">''' + load_lang('recent_discussion') + '''</a></li>
-                <li><a href="/admin_list">''' + load_lang('admin_list') + '''</a></li>
-                <li><a href="/not_close_topic">''' + load_lang('open_discussion_list') + '''</a></li>
-                <li><a href="/title_index">''' + load_lang('all_document_list') + '''</a></li>
-                <li><a href="/acl_list">''' + load_lang('acl_document_list') + '''</a></li>
-                <li><a href="/please">''' + load_lang('need_document') + '''</a></li>
-                <li><a href="/block_log">''' + load_lang('recent_ban') + '''</a></li>
-                <li><a href="/user_log">''' + load_lang('member_list') + '''</a></li>
-                <li><a href="/admin_log">''' + load_lang('authority_use_list') + '''</a></li>
-                <li><a href="/old_page">''' + load_lang('old_page') + '''</a></li>
-                <li><a href="/image_file_list">''' + load_lang('image_file_list') + '''</a></li>
-                <li><a href="/vote">''' + load_lang('vote_list') + '''</a></li>
-                <li><a href="/long_page">''' + load_lang('long_page') + '''</a></li>
-                <li><a href="/short_page">''' + load_lang('short_page') + '''</a></li>
-            </ul>
-            <br>
-            <h2>''' + load_lang('other') + '''</h2>
-            <ul class="inside_ul">
-                <li><a href="/upload">''' + load_lang('upload') + '''</a></li>
-                <li><a href="/manager/10">''' + load_lang('search') + '''</a></li>
-            </ul>
-            <br>
-            <h2>''' + load_lang('admin') + '''</h2>
-            <ul class="inside_ul">
-                <li><a href="/manager/1">''' + load_lang('admin_tool') + '''</a></li>
-            </ul>
+            <div id="other_simple_render">
+                <h2>1. ''' + load_lang('record') + '''</h2>
+                <ul class="inside_ul">
+                    <li><a href="/manager/6">''' + load_lang('edit_record') + '''</a></li>
+                    <li><a href="/manager/7">''' + load_lang('discussion_record') + '''</a></li>
+                </ul>
+                <h2>2. ''' + load_lang('list') + '''</h2>
+                <h3>2.1. ''' + load_lang('admin') + '''</h3>
+                <ul class="inside_ul">               
+                    <li><a href="/admin_list">''' + load_lang('admin_list') + '''</a></li>
+                    <li><a href="/admin_log">''' + load_lang('authority_use_list') + '''</a></li>
+                </ul>
+                <h3>2.2. ''' + load_lang('discussion') + '''</h3>
+                <ul class="inside_ul">
+                    <li><a href="/recent_discuss">''' + load_lang('recent_discussion') + '''</a></li>
+                    <li><a href="/not_close_topic">''' + load_lang('open_discussion_list') + '''</a></li>
+                </ul>
+                <h3>2.3. ''' + load_lang('document') + '''</h3>
+                <ul class="inside_ul">
+                    <li><a href="/recent_changes">''' + load_lang('recent_change') + '''</a></li>
+                    <li><a href="/title_index">''' + load_lang('all_document_list') + '''</a></li>
+                    <li><a href="/acl_list">''' + load_lang('acl_document_list') + '''</a></li>
+                    <li><a href="/please">''' + load_lang('need_document') + '''</a></li>
+                    <li><a href="/long_page">''' + load_lang('long_page') + '''</a></li>
+                    <li><a href="/short_page">''' + load_lang('short_page') + '''</a></li>
+                    <li><a href="/old_page">''' + load_lang('old_page') + '''</a></li>
+                </ul>
+                <h3>2.4. ''' + load_lang('user') + '''</h3>
+                <ul class="inside_ul">
+                    <li><a href="/block_log">''' + load_lang('recent_ban') + '''</a></li>
+                    <li><a href="/user_log">''' + load_lang('member_list') + '''</a></li>
+                </ul>
+                <h3>2.5. ''' + load_lang('other') + '''</h3>
+                <ul class="inside_ul">
+                    <li><a href="/image_file_list">''' + load_lang('image_file_list') + '''</a></li>
+                    <li><a href="/vote">''' + load_lang('vote_list') + '''</a></li>
+                </ul>
+                <h2>3. ''' + load_lang('other') + '''</h2>
+                <ul class="inside_ul">
+                    <li><a href="/upload">''' + load_lang('upload') + '''</a></li>
+                    <li><a href="/manager/10">''' + load_lang('search') + '''</a></li>
+                </ul>
+                <h2>4. ''' + load_lang('admin') + '''</h2>
+                <ul class="inside_ul">
+                    <li><a href="/manager/1">''' + load_lang('admin_tool') + '''</a></li>
+                </ul>
+            </div>
+            <script>simple_render('other_simple_render');</script>
         ''',
         menu = 0
     ))

+ 1 - 1
route/user_alarm.py

@@ -1,6 +1,6 @@
 from .tool.func import *
 
-def alarm_2(conn):
+def user_alarm_2(conn):
     curs = conn.cursor()
 
     num = int(number_check(flask.request.args.get('num', '1')))

+ 1 - 1
route/user_alarm_del.py

@@ -1,6 +1,6 @@
 from .tool.func import *
 
-def alarm_del_2(conn):
+def user_alarm_del_2(conn):
     curs = conn.cursor()
 
     curs.execute(db_change("delete from alarm where name = ?"), [ip_check()])

+ 1 - 1
route/user_watch_list.py

@@ -1,6 +1,6 @@
 from .tool.func import *
 
-def watch_list_2(conn, tool):
+def user_watch_list_2(conn, tool):
     curs = conn.cursor()
 
     if tool == 'watch_list':

+ 1 - 1
route/user_watch_list_name.py

@@ -1,6 +1,6 @@
 from .tool.func import *
 
-def watch_list_name_2(conn, tool, name):
+def user_watch_list_name_2(conn, tool, name):
     curs = conn.cursor()
 
     ip = ip_check()

+ 2 - 2
route/vote_end.py

@@ -17,12 +17,12 @@ def vote_end_2(conn, num):
         if data_list[0][3] == 'open' or data_list[0][3] == 'n_open':
             data += '' + \
                 '<hr class="main_hr">' + \
-                '<a href="/close_vote/' + num + '">(' + load_lang('close_vote') + ')</a>' + \
+                '<a href="/vote/close/' + num + '">(' + load_lang('close_vote') + ')</a>' + \
             ''
         else:
             data += '' + \
                 '<hr class="main_hr">' + \
-                '<a href="/close_vote/' + num + '">(' + load_lang('re_open_vote') + ')</a>' + \
+                '<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'))

+ 10 - 11
route/vote.py → route/vote_list.py

@@ -1,14 +1,13 @@
 from .tool.func import *
 
-def vote_2(conn):
+def vote_list_2(conn, list_type, num):
     curs = conn.cursor()
 
-    sql_num_1 = int(number_check(flask.request.args.get('num', '1')))
-    sql_num = (sql_num_1 * 50 - 50) if sql_num_1 * 50 > 0 else 0
+    sql_num = (num * 50 - 50) if num * 50 > 0 else 0
 
     data = ''
-    if flask.request.args.get('close', 'n') == 'n':
-        data += '<a href="/vote?close=y">(' + load_lang('close_vote_list') + ')</a>'
+    if list_type == 'normal':
+        data += '<a href="/vote/list/close">(' + load_lang('close_vote_list') + ')</a>'
         sub = 0
         curs.execute(db_change('select name, id, type from vote where type = "open" or type = "n_open" limit ?, 50'), [sql_num])
     else:
@@ -20,19 +19,19 @@ def vote_2(conn):
 
     data_list = curs.fetchall()
     for i in data_list:
-        if flask.request.args.get('close', 'n') == 'n':
+        if list_type == 'normal':
             open_select = load_lang('open_vote') if i[2] == 'open' else load_lang('not_open_vote')
         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]) + ' (' + open_select + ')</a></li>'
+        data += '<li><a href="/vote/' + i[1] + '">' + html.escape(i[0]) + '</a> (' + open_select + ')</li>'
 
     data += '</ul>'
-    if flask.request.args.get('close', 'n') == 'n':
-        data += ('<a href="/add_vote">(' + load_lang('add_vote') + ')</a>') if admin_check() == 1 else ''
-        data += next_fix('/vote?num=', sql_num_1, data_list)
+    if list_type == 'normal':
+        data += ('<a href="/vote/add">(' + load_lang('add_vote') + ')</a>') if admin_check() == 1 else ''
+        data += next_fix('/vote/list/', num, data_list)
     else:
-        data += next_fix('/vote?close=y&num=', sql_num_1, data_list)
+        data += next_fix('/vote/list/close/', num, data_list)
 
     return easy_minify(flask.render_template(skin_check(),
         imp = [load_lang('vote_list'), wiki_set(), wiki_custom(), wiki_css([sub, 0])],

+ 4 - 4
route/vote_select.py

@@ -9,14 +9,14 @@ def vote_select_2(conn, num):
         return redirect('/vote')
 
     if data_list[0][3] == 'close' or data_list[0][3] == 'n_close':
-        return redirect('/end_vote/' + num)
+        return redirect('/vote/end/' + num)
 
     if acl_check('', 'vote', num) == 1:
-        return redirect('/end_vote/' + num)
+        return redirect('/vote/end/' + num)
 
     curs.execute(db_change('select user from vote where id = ? and user = ?'), [num, ip_check()])
     if curs.fetchall():
-        return redirect('/end_vote/' + num)
+        return redirect('/vote/end/' + num)
 
     vote_data = re.findall(r'([^\n]+)', data_list[0][2].replace('\r\n', '\n'))
 
@@ -36,7 +36,7 @@ def vote_select_2(conn, num):
         ])
         conn.commit()
 
-        return redirect('/end_vote/' + num)
+        return redirect('/vote/end/' + num)
     else:
         data = '' + \
             '<h2>' + data_list[0][0] + '</h2>' + \