잉여개발기 (SPDV) 3 лет назад
Родитель
Сommit
74d4ef548a
5 измененных файлов с 73 добавлено и 55 удалено
  1. 4 4
      app.py
  2. 3 3
      route/edit_delete_file.py
  3. 3 2
      route/list_admin_auth_use.py
  4. 59 46
      route/main_search_deep.py
  5. 4 0
      views/main_css/css/main.css

+ 4 - 4
app.py

@@ -614,10 +614,10 @@ app.route('/manager/<int:num>/<everything:add_2>', methods = ['POST', 'GET'])(ma
 # app.route('/guide/<doc_name>')(main_tool_guide)
 
 app.route('/search', methods=['POST'])(main_search)
-app.route('/search/<everything:name>')(main_search_deep)
-app.route('/search/<int:num>/<everything:name>')(main_search_deep)
-app.route('/search_data/<everything:name>', defaults = { 'search_type' : 'data' })(main_search_deep)
-app.route('/search_data/<int:num>/<everything:name>', defaults = { 'search_type' : 'data' })(main_search_deep)
+app.route('/search/<everything:name>', methods = ['POST', 'GET'])(main_search_deep)
+app.route('/search/<int:num>/<everything:name>', methods = ['POST', 'GET'])(main_search_deep)
+app.route('/search_data/<everything:name>', defaults = { 'search_type' : 'data' }, methods = ['POST', 'GET'])(main_search_deep)
+app.route('/search_data/<int:num>/<everything:name>', defaults = { 'search_type' : 'data' }, methods = ['POST', 'GET'])(main_search_deep)
 app.route('/goto', methods=['POST'])(main_search_goto)
 app.route('/goto/<everything:name>', methods=['POST'])(main_search_goto)
 

+ 3 - 3
route/edit_delete_file.py

@@ -23,14 +23,14 @@ def edit_delete_file(name : str = 'test.jpg') -> str:
         file_all_name : str = sha224_replace(file_name) + '.' + mime_type
         file_directory : str = os.path.join(load_image_url(), file_all_name)
 
-        if(not os.path.exists(file_directory)):
+        if not os.path.exists(file_directory):
             return redirect('/w/' + url_pas(name))
 
-        if(flask.request.method == 'POST'):
+        if flask.request.method == 'POST':
             admin_check(None, 'file del (' + name + ')')
             os.remove(file_directory)
 
-            if(flask.request.form.get('with_doc', '') != ''):
+            if flask.request.form.get('with_doc', '') != '':
                 edit_delete(name)
 
             return redirect('/w/' + url_pas(name))

+ 3 - 2
route/list_admin_auth_use.py

@@ -35,12 +35,13 @@ def list_admin_auth_use(arg_num = 1, arg_search = 'normal'):
             list_data += '</ul>'
             list_data += next_fix('/list/admin/auth_use/' + url_pas(arg_search) + '/', arg_num, get_list)
 
+            arg_search = html.escape(arg_search) if arg_search != 'normal' else ''
+
             return easy_minify(flask.render_template(skin_check(),
                 imp = [load_lang('authority_use_list'), wiki_set(), wiki_custom(), wiki_css([0, 0])],
                 data = '''
                     <form method="post">
-                        <input name="search">
-                        <hr class="main_hr">
+                        <input class="opennamu_width_200" name="search" value="''' + arg_search + '''">
                         <button type="submit">''' + load_lang('search') + '''</button>
                     </form>
                     <hr class="main_hr">

+ 59 - 46
route/main_search_deep.py

@@ -9,58 +9,71 @@ def main_search_deep(name = 'Test', search_type = 'title', num = 1):
 
         sql_num = (num * 50 - 50) if num * 50 > 0 else 0
 
-        div = ''
-        if search_type == 'title':
-            div += '<a href="/search_data/1/' + url_pas(name) + '">(' + load_lang('search_document_data') + ')</a>'
+        if flask.request.method == 'POST':
+            if search_type == 'title':
+                return redirect('/search/1/' + url_pas(flask.request.form.get('search', 'test')))
+            else:
+                return redirect('/search_data/1/' + url_pas(flask.request.form.get('search', 'test')))
         else:
-            div += '<a href="/search/1/' + url_pas(name) + '">(' + load_lang('search_document_name') + ')</a>'
+            div = '''
+                <form method="post">
+                    <input class="opennamu_width_200" name="search" value="''' + html.escape(name) + '''">
+                    <button type="submit">''' + load_lang('search') + '''</button>
+                </form>
+                <hr class="main_hr">
+            '''
 
-        name_new = ''
-        if re.search(r'^분류:', name):
-            name_new = re.sub(r"^분류:", 'category:', name)
-        elif re.search(r"^사용자:", name):
-            name_new = re.sub(r"^사용자:", 'user:', name)
-        elif re.search(r"^파일:", name):
-            name_new = re.sub(r"^파일:", 'file:', name)
+            if search_type == 'title':
+                div += '<a href="/search_data/1/' + url_pas(name) + '">(' + load_lang('search_document_data') + ')</a>'
+            else:
+                div += '<a href="/search/1/' + url_pas(name) + '">(' + load_lang('search_document_name') + ')</a>'
 
-        if name_new != '':
-            div += ' <a href="/search/1/' + url_pas(name_new) + '">(' + name_new + ')</a>'
+            name_new = ''
+            if re.search(r'^분류:', name):
+                name_new = re.sub(r"^분류:", 'category:', name)
+            elif re.search(r"^사용자:", name):
+                name_new = re.sub(r"^사용자:", 'user:', name)
+            elif re.search(r"^파일:", name):
+                name_new = re.sub(r"^파일:", 'file:', name)
 
-        curs.execute(db_change("select title from data where title = ? collate nocase"), [name])
-        link_id = '' if curs.fetchall() else 'class="opennamu_not_exist_link"'
+            if name_new != '':
+                div += ' <a href="/search/1/' + url_pas(name_new) + '">(' + name_new + ')</a>'
 
-        div += '''
-            <ul class="opennamu_ul">
-                <li>
-                    <a ''' + link_id + ' href="/w/' + url_pas(name) + '">' + html.escape(name) + '''</a>
-                </li>
-            </ul>
-            <hr class="main_hr">
-            <ul class="opennamu_ul">
-        '''
+            curs.execute(db_change("select title from data where title = ? collate nocase"), [name])
+            link_id = '' if curs.fetchall() else 'class="opennamu_not_exist_link"'
 
-        if search_type == 'title':
-            curs.execute(db_change("select title from data where title like ? collate nocase order by title limit ?, 50"),
-                ['%' + name + '%', sql_num]
-            )
-        else:
-            curs.execute(db_change("select title from data where data like ? collate nocase order by title limit ?, 50"),
-                ['%' + name + '%', sql_num]
-            )
+            div += '''
+                <ul class="opennamu_ul">
+                    <li>
+                        <a ''' + link_id + ' href="/w/' + url_pas(name) + '">' + html.escape(name) + '''</a>
+                    </li>
+                </ul>
+                <hr class="main_hr">
+                <ul class="opennamu_ul">
+            '''
 
-        all_list = curs.fetchall()
-        for data in all_list:
-            div += '<li><a href="/w/' + url_pas(data[0]) + '">' + data[0] + '</a></li>'
+            if search_type == 'title':
+                curs.execute(db_change("select title from data where title like ? collate nocase order by title limit ?, 50"),
+                    ['%' + name + '%', sql_num]
+                )
+            else:
+                curs.execute(db_change("select title from data where data like ? collate nocase order by title limit ?, 50"),
+                    ['%' + name + '%', sql_num]
+                )
 
-        div += '</ul>'
-        
-        if search_type == 'title':
-            div += get_next_page_bottom('/search/{}/' + url_pas(name), num, all_list)
-        else:
-            div += get_next_page_bottom('/search_data/{}/' + url_pas(name), num, all_list)
+            all_list = curs.fetchall()
+            for data in all_list:
+                div += '<li><a href="/w/' + url_pas(data[0]) + '">' + data[0] + '</a></li>'
+
+            div += '</ul>'
+            
+            if search_type == 'title':
+                div += get_next_page_bottom('/search/{}/' + url_pas(name), num, all_list)
+            else:
+                div += get_next_page_bottom('/search_data/{}/' + url_pas(name), num, all_list)
 
-        return easy_minify(flask.render_template(skin_check(),
-            imp = [name, wiki_set(), wiki_custom(), wiki_css(['(' + load_lang('search') + ')', 0])],
-            data = div,
-            menu = 0
-        ))
+            return easy_minify(flask.render_template(skin_check(),
+                imp = [name, wiki_set(), wiki_custom(), wiki_css(['(' + load_lang('search') + ')', 0])],
+                data = div,
+                menu = 0
+            ))

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

@@ -335,4 +335,8 @@ s:hover, strike:hover, del:hover {
 
     overflow-x: scroll;
     overflow-y: hidden;
+}
+
+.opennamu_width_200 {
+    width: 200px;
 }