瀏覽代碼

v2.6.0 alpha

ect (or 2du) 8 年之前
父節點
當前提交
27bbf82afb
共有 5 個文件被更改,包括 212 次插入221 次删除
  1. 181 176
      app.py
  2. 13 16
      func.py
  3. 7 6
      requirements.txt
  4. 7 22
      set_mark/macro.py
  5. 4 1
      version.md

文件差異過大導致無法顯示
+ 181 - 176
app.py


+ 13 - 16
func.py

@@ -1,5 +1,7 @@
-from bottle import request, app, template
-from bottle.ext import beaker
+from bottle import template
+
+from flask import session
+
 import json
 import sqlite3
 import hashlib
@@ -16,12 +18,8 @@ from set_mark.macro import ip_check
 from set_mark.mark import *
 from set_mark.link import url_pas
 from set_mark.link import sha224
-    
-session_opts = { 'session.type' : 'dbm', 'session.data_dir' : './app_session/', 'session.auto' : 1 }
-app = beaker.middleware.SessionMiddleware(app(), session_opts)
 
 def captcha_get(conn):
-    session = request.environ.get('beaker.session')
     curs = conn.cursor()
 
     data = ''
@@ -36,16 +34,17 @@ def captcha_get(conn):
 
     return(data)
 
-def captcha_post(response, conn, num = 1):
-    session = request.environ.get('beaker.session')
+def captcha_post(test, conn, num = 1):
     curs = conn.cursor()
 
+    print('TEST')
+
     if(num == 1):
         if(custom(conn)[2] == 0 and captcha_get(conn) != ''):
             curs.execute('select data from other where name = "sec_re"')
             sec_re = curs.fetchall()
             if(sec_re and sec_re[0][0] != ''):
-                data = requests.get('https://www.google.com/recaptcha/api/siteverify', params = { 'secret' : sec_re, 'response' : response })
+                data = requests.get('https://www.google.com/recaptcha/api/siteverify', params = { 'secret' : sec_re, 'response' : test })
 
                 if(not data):
                     return(0)
@@ -106,9 +105,8 @@ def next_fix(link, num, page, end = 50):
 
 def other2(origin):
     div = ''
-    session = request.environ.get('beaker.session')
-    if(session.get('View_List')):
-        match = re.findall('(?:(?:([^\n]+)\n))', session.get('View_List'))
+    if('View_List' in session):
+        match = re.findall('(?:(?:([^\n]+)\n))', session['View_List'])
         if(match):
             div = ''
             for data in match[-6:-1]:
@@ -252,13 +250,12 @@ def ip_pas(conn, raw_ip):
 
 def custom(conn):
     curs = conn.cursor()
-    session = request.environ.get('beaker.session')
-    try:
+    if('MyMaiToNight' in session):
         user_head = session['MyMaiToNight']
-    except:
+    else:
         user_head = ''
 
-    if(session.get('Now') == 1):
+    if('Now' in session and session['Now'] == 1):
         curs.execute('select name from alarm where name = ? limit 1', [ip_check()])
         if(curs.fetchall()):
             user_icon = 2

+ 7 - 6
requirements.txt

@@ -1,6 +1,7 @@
-bottle>=0.12.13
-bottle-beaker>=0.1.3
-css-html-js-minify>=2.2.2
-tornado>=4.5.2
-bcrypt>=3.1.3
-requests>=2.13.0
+bottle >= 0.12.13
+css-html-js-minify >= 2.2.2
+tornado >= 4.5.2
+bcrypt >= 3.1.3
+requests >= 2.13.0
+flask >= 0.12.2
+Flask-Reggie >= 0.0.2

+ 7 - 22
set_mark/macro.py

@@ -1,19 +1,11 @@
-from bottle import request, app
-from bottle.ext import beaker
+from flask import session, request
+
 from urllib import parse
 import time
 import datetime
 import re
 import json
 
-session_opts = {
-    'session.type': 'dbm',
-    'session.data_dir': './app_session/',
-    'session.auto': 1
-}
-
-app = beaker.middleware.SessionMiddleware(app(), session_opts)
-
 def get_time():
     now = time.localtime()
     date = "%04d-%02d-%02d %02d:%02d:%02d" % (now.tm_year, now.tm_mon, now.tm_mday, now.tm_hour, now.tm_min, now.tm_sec)
@@ -21,19 +13,12 @@ def get_time():
     return(date)
     
 def ip_check():
-    session = request.environ.get('beaker.session')
-    try:
-        if(session.get('Now') == 1):
-            ip = format(session['DREAMER'])
-        else:
-            if(request.environ.get('HTTP_X_FORWARDED_FOR')):
-                ip = request.environ.get('HTTP_X_FORWARDED_FOR')
-            else:
-                ip = request.environ.get('REMOTE_ADDR')
-    except:
-        ip = 'None'
+    if(('Now' and 'DREAMER') in session and session['Now'] == 1):
+        ip = session['DREAMER']
+    else:
+        ip = request.environ.get('HTTP_X_REAL_IP', request.remote_addr)
 
-    return(ip)
+    return(str(ip))
 
 def savemark(data):
     data = re.sub("\[date\(now\)\]", get_time(), data)

+ 4 - 1
version.md

@@ -132,6 +132,9 @@
  * 파일 시스템 개선
  * 잡 패치
 
+## 2.6 (Flask + Bottle)
+ * 기반 구조 개편
+
 ----
 ## 오픈나무 라이선스
  * BSD 3-Clause License
@@ -147,7 +150,7 @@
 
 ----
 ## 기타
- * 현재 버전 - v2.5.6 Beta
+ * 현재 버전 - v2.6.0 alpha
 
 ----
 ## 개발 이념

部分文件因文件數量過多而無法顯示