Przeglądaj źródła

Merge branch 'master' of https://github.com/2du/openNAMU

hoparkgo9ma 7 lat temu
rodzic
commit
28ba3a1eda
10 zmienionych plików z 148 dodań i 96 usunięć
  1. 7 74
      app.py
  2. 13 0
      route/api_raw.py
  3. 21 0
      route/api_topic_sub.py
  4. 13 0
      route/api_w.py
  5. 6 2
      route/change_password.py
  6. 11 0
      route/goto.py
  7. 28 18
      route/login.py
  8. 6 2
      route/register.py
  9. 11 0
      route/title_random.py
  10. 32 0
      route/views.py

+ 7 - 74
app.py

@@ -8,7 +8,7 @@ for i_data in os.listdir("route"):
 
         exec("from route." + f_src + " import *")
 
-r_ver = 'v3.0.9-stable'
+r_ver = 'v3.1.0-master-01'
 c_ver = '400000'
 
 print('Version : ' + r_ver)
@@ -226,14 +226,12 @@ if not rep_data:
 else:
     rep_key = rep_data[0][0]
 
-
 curs.execute('select data from other where name = "adsense"')
 adsense_result = curs.fetchall()
 if not adsense_result:
     curs.execute('insert into other (name, data) values ("adsense", "False")')
     curs.execute('insert into other (name, data) values ("adsense_code", "")')
 
-
 curs.execute('delete from other where name = "ver"')
 curs.execute('insert into other (name, data) values ("ver", ?)', [c_ver])
 
@@ -370,12 +368,7 @@ def search():
 
 @app.route('/goto', methods=['POST'])
 def goto():
-    curs.execute("select title from data where title = ?", [flask.request.form.get('search', 'test')])
-    data = curs.fetchall()
-    if data:
-        return redirect('/w/' + url_pas(flask.request.form.get('search', 'test')))
-    else:
-        return redirect('/search/' + url_pas(flask.request.form.get('search', 'test')))
+    return goto_2(conn)
 
 @app.route('/search/<everything:name>')
 def deep_search(name = ''):
@@ -544,12 +537,7 @@ def count_edit(name = None):
         
 @app.route('/random')
 def title_random():
-    curs.execute("select title from data order by random() limit 1")
-    data = curs.fetchall()
-    if data:
-        return redirect('/w/' + url_pas(data[0][0]))
-    else:
-        return redirect()
+    return title_random_2(conn)
 
 @app.route('/skin_set')
 def skin_set():
@@ -557,74 +545,19 @@ def skin_set():
     
 @app.route('/api/w/<everything:name>')
 def api_w(name = ''):
-    curs.execute("select data from data where title = ?", [name])
-    data = curs.fetchall()
-    if data:
-        json_data = { "title" : name, "data" : render_set(title = name, data = data[0][0]) }
-    
-        return flask.jsonify(json_data)
-    else:
-        return flask.jsonify({})
+    return api_w_2(conn, name)
     
 @app.route('/api/raw/<everything:name>')
 def api_raw(name = ''):
-    curs.execute("select data from data where title = ?", [name])
-    data = curs.fetchall()
-    if data:
-        json_data = { "title" : name, "data" : render_set(title = name, data = data[0][0], s_data = 1) }
-    
-        return flask.jsonify(json_data)
-    else:
-        return flask.jsonify({})
+    return api_raw_2(conn, name)
 
 @app.route('/api/topic/<everything:name>/sub/<sub>')
 def api_topic_sub(name = '', sub = '', time = ''):
-    if flask.request.args.get('time', None):
-        curs.execute("select id, data, ip from topic where title = ? and sub = ? and date >= ? order by id + 0 asc", [name, sub, flask.request.args.get('time', None)])
-    else:
-        curs.execute("select id, data, ip from topic where title = ? and sub = ? order by id + 0 asc", [name, sub])
-    data = curs.fetchall()
-    if data:
-        json_data = {}
-        for i in data:
-            json_data[i[0]] =   {
-                "data" : i[1],
-                "id" : i[2]
-            }
-
-        return flask.jsonify(json_data)
-    else:
-        return flask.jsonify({})
+    return api_topic_sub_2(conn, name, sub, time)
     
 @app.route('/views/<everything:name>')
 def views(name = None):
-    if re.search('\/', name):
-        m = re.search('^(.*)\/(.*)$', name)
-        if m:
-            n = m.groups()
-            plus = '/' + n[0]
-            rename = n[1]
-        else:
-            plus = ''
-            rename = name
-    else:
-        plus = ''
-        rename = name
-
-    m = re.search('\.(.+)$', name)
-    if m:
-        g = m.groups()
-    else:
-        g = ['']
-
-    if g == 'css':
-        return easy_minify(flask.send_from_directory('./views' + plus, rename), 'css')   
-    elif g == 'js':
-        return easy_minify(flask.send_from_directory('./views' + plus, rename), 'js')
-    elif g == 'html':
-        return easy_minify(flask.send_from_directory('./views' + plus, rename))   
-    else:
-        return flask.send_from_directory('./views' + plus, rename)
+    return views_2(conn, name)
 
 @app.route('/<data>')
 def main_file(data = None):

+ 13 - 0
route/api_raw.py

@@ -0,0 +1,13 @@
+from .tool.func import *
+
+def api_raw_2(conn, name):
+    curs = conn.cursor()
+
+    curs.execute("select data from data where title = ?", [name])
+    data = curs.fetchall()
+    if data:
+        json_data = { "title" : name, "data" : render_set(title = name, data = data[0][0], s_data = 1) }
+    
+        return flask.jsonify(json_data)
+    else:
+        return flask.jsonify({})

+ 21 - 0
route/api_topic_sub.py

@@ -0,0 +1,21 @@
+from .tool.func import *
+
+def api_topic_sub_2(conn, name, sub, time):
+    curs = conn.cursor()
+
+    if flask.request.args.get('time', None):
+        curs.execute("select id, data, ip from topic where title = ? and sub = ? and date >= ? order by id + 0 asc", [name, sub, flask.request.args.get('time', None)])
+    else:
+        curs.execute("select id, data, ip from topic where title = ? and sub = ? order by id + 0 asc", [name, sub])
+    data = curs.fetchall()
+    if data:
+        json_data = {}
+        for i in data:
+            json_data[i[0]] =   {
+                "data" : i[1],
+                "id" : i[2]
+            }
+
+        return flask.jsonify(json_data)
+    else:
+        return flask.jsonify({})

+ 13 - 0
route/api_w.py

@@ -0,0 +1,13 @@
+from .tool.func import *
+
+def api_w_2(conn, name):
+    curs = conn.cursor()
+
+    curs.execute("select data from data where title = ?", [name])
+    data = curs.fetchall()
+    if data:
+        json_data = { "title" : name, "data" : render_set(title = name, data = data[0][0]) }
+    
+        return flask.jsonify(json_data)
+    else:
+        return flask.jsonify({})

+ 6 - 2
route/change_password.py

@@ -86,6 +86,11 @@ def change_password_2(conn, server_init):
             
             oauth_content += '</ul>'
 
+            if not re.search('^https:\/\/', flask.request.host_url):
+                http_warring = '<hr class=\"main_hr\"><span>' + load_lang('http_warring') + '</span>'
+            else:
+                http_warring = ''
+
             return easy_minify(flask.render_template(skin_check(),    
                 imp = [load_lang('user_setting'), wiki_set(), custom(), other2([0, 0])],
                 data =  '''
@@ -110,8 +115,7 @@ def change_password_2(conn, server_init):
                             ''' + oauth_content + '''
                             <hr class=\"main_hr\">
                             <button type="submit">''' + load_lang('save') + '''</button>
-                            <hr class=\"main_hr\">
-                            <span>''' + load_lang('http_warring') + '''</span>
+                            ''' + http_warring + '''
                         </form>
                         ''',
                 menu = [['user', load_lang('return')]]

+ 11 - 0
route/goto.py

@@ -0,0 +1,11 @@
+from .tool.func import *
+
+def goto_2(conn):
+    curs = conn.cursor()
+
+    curs.execute("select title from data where title = ?", [flask.request.form.get('search', 'test')])
+    data = curs.fetchall()
+    if data:
+        return redirect('/w/' + url_pas(flask.request.form.get('search', 'test')))
+    else:
+        return redirect('/search/' + url_pas(flask.request.form.get('search', 'test')))

+ 28 - 18
route/login.py

@@ -48,28 +48,39 @@ def login_2(conn):
         
         return redirect('/user')  
     else:
+        oauth_check = 0
         oauth_content = '<link rel="stylesheet" href="/views/main_css/oauth.css"><div class="oauth-wrapper"><ul class="oauth-list">'
         oauth_supported = load_oauth('_README')['support']
         for i in range(len(oauth_supported)):
             oauth_data = load_oauth(oauth_supported[i])
             if oauth_data['client_id'] != '' and oauth_data['client_secret'] != '':
-                oauth_content +=    '''
-                                    <li>
-                                        <a href="/oauth/{}/init">
-                                            <div class="oauth-btn oauth-btn-{}">
-                                                <div class="oauth-btn-logo oauth-btn-{}"></div>
-                                                {}
-                                            </div>
-                                        </a>
-                                    </li>
-                                    '''.format(
-                                        oauth_supported[i], 
-                                        oauth_supported[i], 
-                                        oauth_supported[i], 
-                                        load_lang('oauth_signin_' + oauth_supported[i])
-                                    )
+                oauth_content += '''
+                    <li>
+                        <a href="/oauth/{}/init">
+                            <div class="oauth-btn oauth-btn-{}">
+                                <div class="oauth-btn-logo oauth-btn-{}"></div>
+                                {}
+                            </div>
+                        </a>
+                    </li>
+                '''.format(
+                    oauth_supported[i], 
+                    oauth_supported[i], 
+                    oauth_supported[i], 
+                    load_lang('oauth_signin_' + oauth_supported[i])
+                )
+
+                oauth_check = 1
         
-        oauth_content += '</ul></div>'
+        oauth_content += '</ul></div><hr class=\"main_hr\">'
+
+        if oauth_check == 0:
+            oauth_content = ''
+
+        if not re.search('^https:\/\/', flask.request.host_url):
+            http_warring = '<hr class=\"main_hr\"><span>' + load_lang('http_warring') + '</span>'
+        else:
+            http_warring = ''
         
         return easy_minify(flask.render_template(skin_check(),    
             imp = [load_lang('login'), wiki_set(), custom(), other2([0, 0])],
@@ -83,8 +94,7 @@ def login_2(conn):
                         <button type="submit">''' + load_lang('login') + '''</button>
                         <hr class=\"main_hr\">
                         ''' + oauth_content + '''
-                        <hr class=\"main_hr\">
-                        <span>''' + load_lang('http_warring') + '''</span>
+                        ''' + http_warring + '''
                     </form>
                     ''',
             menu = [['user', load_lang('return')]]

+ 6 - 2
route/register.py

@@ -88,6 +88,11 @@ def register_2(conn):
         if data and data[0][0] != '':
             contract = data[0][0] + '<hr class=\"main_hr\">'
 
+        if not re.search('^https:\/\/', flask.request.host_url):
+            http_warring = '<hr class=\"main_hr\"><span>' + load_lang('http_warring') + '</span>'
+        else:
+            http_warring = ''
+
         return easy_minify(flask.render_template(skin_check(),    
             imp = [load_lang('register'), wiki_set(), custom(), other2([0, 0])],
             data =  '''
@@ -101,8 +106,7 @@ def register_2(conn):
                         <hr class=\"main_hr\">
                         ''' + captcha_get() + '''
                         <button type="submit">''' + load_lang('save') + '''</button>
-                        <hr class=\"main_hr\">
-                        <span>''' + load_lang('http_warring') + '''</span>
+                        ''' + http_warring + '''
                     </form>
                     ''',
             menu = [['user', load_lang('return')]]

+ 11 - 0
route/title_random.py

@@ -0,0 +1,11 @@
+from .tool.func import *
+
+def title_random_2(conn):
+    curs = conn.cursor()
+
+    curs.execute("select title from data order by random() limit 1")
+    data = curs.fetchall()
+    if data:
+        return redirect('/w/' + url_pas(data[0][0]))
+    else:
+        return redirect()

+ 32 - 0
route/views.py

@@ -0,0 +1,32 @@
+from .tool.func import *
+
+def views_2(conn, name):
+    curs = conn.cursor()
+
+    if re.search('\/', name):
+        m = re.search('^(.*)\/(.*)$', name)
+        if m:
+            n = m.groups()
+            plus = '/' + n[0]
+            rename = n[1]
+        else:
+            plus = ''
+            rename = name
+    else:
+        plus = ''
+        rename = name
+
+    m = re.search('\.(.+)$', name)
+    if m:
+        g = m.groups()
+    else:
+        g = ['']
+
+    if g == 'css':
+        return easy_minify(flask.send_from_directory('./views' + plus, rename), 'css')   
+    elif g == 'js':
+        return easy_minify(flask.send_from_directory('./views' + plus, rename), 'js')
+    elif g == 'html':
+        return easy_minify(flask.send_from_directory('./views' + plus, rename))   
+    else:
+        return flask.send_from_directory('./views' + plus, rename)