|
|
@ -1,7 +1,6 @@ |
|
|
|
|
|
|
|
#coding=utf-8 |
|
|
|
from flask import Flask, render_template, request, redirect, url_for, g, session, flash, jsonify |
|
|
|
from flask import Flask, render_template, request, redirect, url_for, g, session, flash, jsonify |
|
|
|
# from flask_login import LoginManager, UserMixin, login_user, logout_user, login_required, current_user |
|
|
|
|
|
|
|
from markupsafe import escape |
|
|
|
from markupsafe import escape |
|
|
|
|
|
|
|
|
|
|
|
from werkzeug.security import generate_password_hash, check_password_hash |
|
|
|
from werkzeug.security import generate_password_hash, check_password_hash |
|
|
|
from datetime import datetime, date, timedelta |
|
|
|
from datetime import datetime, date, timedelta |
|
|
|
|
|
|
|
|
|
|
@ -26,25 +25,30 @@ CONFIGS = { |
|
|
|
"SECRET_KEY": os.urandom(30), # Set the secret key for session authentication |
|
|
|
"SECRET_KEY": os.urandom(30), # Set the secret key for session authentication |
|
|
|
"PERMANENT_SESSION_LIFETIME": timedelta(minutes=60) |
|
|
|
"PERMANENT_SESSION_LIFETIME": timedelta(minutes=60) |
|
|
|
} |
|
|
|
} |
|
|
|
SQL_CONFIG = { |
|
|
|
SQL_CONFIG = dict( |
|
|
|
'database': "tpm", |
|
|
|
database="railway", |
|
|
|
'user': "hsienchen", |
|
|
|
user="postgres", |
|
|
|
'host': "127.0.0.1", |
|
|
|
host="containers-us-west-103.railway.app", |
|
|
|
'port': "5432" |
|
|
|
port="5913", |
|
|
|
} |
|
|
|
password="gv5Mh7cPjCm9YTjAmsYD" |
|
|
|
|
|
|
|
) |
|
|
|
|
|
|
|
# SQL_CONFIG = { |
|
|
|
|
|
|
|
# 'database': "tpm", |
|
|
|
|
|
|
|
# 'user': "hsienchen", |
|
|
|
|
|
|
|
# 'host': "127.0.0.1", |
|
|
|
|
|
|
|
# 'port': "5432" |
|
|
|
|
|
|
|
# } |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app = Flask(__name__) |
|
|
|
|
|
|
|
app.config.from_mapping(CONFIGS) |
|
|
|
|
|
|
|
|
|
|
|
# Load Assets |
|
|
|
# Load Assets |
|
|
|
with open('assets_tw.json') as f: |
|
|
|
with open('assets_tw.json') as f: |
|
|
|
data_tw = json.load(f) |
|
|
|
data_tw = json.load(f) |
|
|
|
|
|
|
|
|
|
|
|
with open('assets_us.json') as f: |
|
|
|
with open('assets_us.json') as f: |
|
|
|
data_us = json.load(f) |
|
|
|
data_us = json.load(f) |
|
|
|
|
|
|
|
|
|
|
|
app = Flask(__name__) |
|
|
|
|
|
|
|
app.config.from_mapping(CONFIGS) |
|
|
|
|
|
|
|
# Login Manager, Flask_Login Stuff |
|
|
|
|
|
|
|
# login_manager = LoginManager() |
|
|
|
|
|
|
|
# login_manager.init_app(app) |
|
|
|
|
|
|
|
# login_manager.login_view = 'login' |
|
|
|
|
|
|
|
def login_required(): |
|
|
|
def login_required(): |
|
|
|
if not 'username' in session: |
|
|
|
if not 'username' in session: |
|
|
|
return False |
|
|
|
return False |
|
|
@ -184,11 +188,7 @@ def strategy(): |
|
|
|
flash('使用投組功能請先登入。', 'warning') |
|
|
|
flash('使用投組功能請先登入。', 'warning') |
|
|
|
return redirect(url_for('login')) |
|
|
|
return redirect(url_for('login')) |
|
|
|
session['tw'] = 0 |
|
|
|
session['tw'] = 0 |
|
|
|
# Load Assets |
|
|
|
return render_template('strategy_tw.html', data_us = data_us, data_tw=data_tw) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
print(request.args.get('data'), 666) |
|
|
|
|
|
|
|
return render_template('strategy_tw.html', stockOpts={**data_us, **data_tw}) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -201,9 +201,7 @@ def strategy_tw(): |
|
|
|
flash('使用投組功能請先登入。', 'warning') |
|
|
|
flash('使用投組功能請先登入。', 'warning') |
|
|
|
return redirect(url_for('login')) |
|
|
|
return redirect(url_for('login')) |
|
|
|
session['tw'] = 1 |
|
|
|
session['tw'] = 1 |
|
|
|
|
|
|
|
return render_template('strategy_tw.html', data_tw=data_tw) |
|
|
|
print(request.args.get('data'), 666) |
|
|
|
|
|
|
|
return render_template('strategy_tw.html', stockOpts=data_tw) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|