surplus-dev před 3 roky
rodič
revize
f8f9b8ea29

+ 1 - 0
app.py

@@ -495,6 +495,7 @@ app.route('/change/head', methods=['GET', 'POST'], defaults = { 'skin_name' : ''
 app.route('/change/head/<skin_name>', methods=['GET', 'POST'])(user_setting_head)
 app.route('/change/head_reset', methods=['GET', 'POST'])(user_setting_head_reset)
 app.route('/change/skin_set')(user_setting_skin_set)
+app.route('/change/top_menu', methods=['GET', 'POST'])(user_setting_top_menu)
 # 하위 호환용 S
 app.route('/skin_set')(user_setting_skin_set)
 # 하위 호환용 E

+ 6 - 0
route/tool/func.py

@@ -1109,6 +1109,7 @@ def cut_100(data):
 def wiki_set(num = 1):
     curs = conn.cursor()
 
+    ip = ip_check()
     skin_name = skin_check(1)
     data_list = []
 
@@ -1147,6 +1148,11 @@ def wiki_set(num = 1):
     db_data = curs.fetchall()
     db_data = db_data[0][0] if db_data else ''
     db_data = db_data.replace('\r', '')
+    
+    curs.execute(db_change("select data from user_set where name = '' and id = ?"), [ip])
+    db_data_2 = curs.fetchall()
+    db_data_2 = db_data_2[0][0] if db_data_2 else ''
+    db_data += db_data_2.replace('\r', '')
     if db_data != '':
         db_data = db_data.split('\n')
     

+ 6 - 1
route/tool/func_render_namumark.py

@@ -622,7 +622,12 @@ class class_do_render_namumark:
             elif match in ('목차', 'toc', 'tableofcontents'):
                 return '<toc_need_part>'
             elif match == 'pagecount':
-                return '0'
+                self.curs.execute(db_change('select data from other where name = "count_all_title"'))
+                db_data = self.curs.fetchall()
+                if db_data:
+                	return db_data[0][0]
+                else:
+                	return '0'
             else:
                 return '<macro>' + match_org.group(1) + '</macro>'
 

+ 0 - 2
route/user_info.py

@@ -38,8 +38,6 @@ def user_info(name = ''):
                     <li><a href="/login/find">''' + load_lang('password_search') + '''</a></li>
                 '''
                 
-            tool_menu += '<li><a href="/change/head">' + load_lang('user_head') + '</a></li>'
-                
             login_menu = '<h2>' + load_lang('login') + '</h2><ul class="opennamu_ul">' + login_menu + '</ul>'
             tool_menu = '<h2>' + load_lang('tool') + '</h2><ul class="opennamu_ul">' + tool_menu + '</ul>'
     

+ 2 - 0
route/user_setting.py

@@ -108,6 +108,8 @@ def user_setting():
                             <hr class="main_hr">
                             <span>''' + load_lang('password_instead_key') + ''' : ''' + ramdom_key + ''' <a href="/change/key">(''' + load_lang('key_change') + ''')</a> <a href="/change/key/delete">(''' + load_lang('key_delete') + ''')</a></span>
                             <h2>''' + load_lang('main') + '''</h2>
+                            <a href="/change/head">(''' + load_lang('user_head') + ''')</a> <a href="/change/top_menu">(''' + load_lang('user_top_menu') + ''')</a>
+                            <hr class="main_hr">
                             <span>''' + load_lang('skin') + '''</span>
                             <hr class="main_hr">
                             <select name="skin">''' + div2 + '''</select>

+ 50 - 0
route/user_setting_top_menu.py

@@ -0,0 +1,50 @@
+from .tool.func import *
+
+def user_setting_top_menu():
+    with get_db_connect() as conn:
+        curs = conn.cursor()
+
+        ip = ip_check()
+        if ban_check(ip) == 1:
+            return re_error('/ban')
+        
+        if flask.request.method == 'POST':
+            curs.execute(db_change("select name from other where name = 'top_menu'"))
+            if curs.fetchall():
+                curs.execute(db_change("update user_set set data = ? where name = 'top_menu' and id = ?"), [flask.request.form.get('content', ''), ip])
+            else:
+                curs.execute(db_change("insert into user_set (name, data, id) values ('top_menu', ?, ?)"), [flask.request.form.get('content', ''), ip])
+
+            conn.commit()
+
+            return redirect('/setting/top_menu')
+        else:
+            curs.execute(db_change("select data from user_set where name = 'top_menu' and id = ?"), [ip])
+            db_data = curs.fetchall()
+            db_data = db_data[0][0] if db_data else ''
+            
+            return easy_minify(flask.render_template(skin_check(),
+                imp = [load_lang('top_menu_setting'), wiki_set(), wiki_custom(), wiki_css([0, 0])],
+                data = '''
+                    <span>
+                        EX)
+                        <br>
+                        ONTS
+                        <br>
+                        https://2du.pythonanywhere.com/
+                        <br>
+                        FrontPage
+                        <br>
+                        /w/FrontPage
+                    </span>
+                    <hr class="main_hr">
+                    ''' + load_lang('not_support_skin_warning') + '''
+                    <hr class="main_hr">
+                    <form method="post">
+                        <textarea class="opennamu_textarea_500" placeholder="''' + load_lang('enter_top_menu_setting') + '''" name="content" id="content">''' + html.escape(db_data) + '''</textarea>
+                        <hr class="main_hr">
+                        <button id="opennamu_save_button" type="submit">''' + load_lang('save') + '''</button>
+                    </form>
+                ''',
+                menu = [['setting', load_lang('return')]]
+            ))

+ 1 - 1
version.json

@@ -1,6 +1,6 @@
 {
     "beta" : {
-        "r_ver" : "v3.4.6-RC2-dev121",
+        "r_ver" : "v3.4.6-RC2-dev122",
         "c_ver" : "3500355",
         "s_ver" : "3500111"
     }