@ -63,11 +63,24 @@ def load_assets():
try :
try :
with open ( ' assets_tw.json ' ) as f :
with open ( ' assets_tw.json ' ) as f :
data_tw = json . load ( f )
data_tw = json . load ( f )
logger . info ( f " Loaded assets_tw.json with { len ( data_tw ) } items " )
except FileNotFoundError as e :
logger . warning ( f " Assets file not found: { e } " )
data_tw = { }
except Exception as e :
logger . error ( f " Error loading assets_tw.json: { e } " )
data_tw = { }
if data_us is None :
try :
with open ( ' assets_us.json ' ) as f :
with open ( ' assets_us.json ' ) as f :
data_us = json . load ( f )
data_us = json . load ( f )
logger . info ( f " Loaded assets_us.json with { len ( data_us ) } items " )
except FileNotFoundError as e :
except FileNotFoundError as e :
print ( f " Warning: Assets file not found: { e } " )
logger . warning ( f " Assets file not found: { e } " )
data_tw = { }
data_us = { }
except Exception as e :
logger . error ( f " Error loading assets_us.json: { e } " )
data_us = { }
data_us = { }
def login_required ( ) :
def login_required ( ) :
@ -234,6 +247,7 @@ def strategy():
else :
else :
flash ( ' 使用投組功能請先登入。 ' , ' warning ' )
flash ( ' 使用投組功能請先登入。 ' , ' warning ' )
return redirect ( url_for ( ' login ' ) )
return redirect ( url_for ( ' login ' ) )
load_assets ( ) # Ensure assets are loaded
session [ ' tw ' ] = 0
session [ ' tw ' ] = 0
return render_template ( ' strategy_tw.html ' , data_us = data_us , data_tw = data_tw , stock = [ ' TSLA ' ] )
return render_template ( ' strategy_tw.html ' , data_us = data_us , data_tw = data_tw , stock = [ ' TSLA ' ] )
@ -248,6 +262,7 @@ def strategy_tw():
else :
else :
flash ( ' 使用投組功能請先登入。 ' , ' warning ' )
flash ( ' 使用投組功能請先登入。 ' , ' warning ' )
return redirect ( url_for ( ' login ' ) )
return redirect ( url_for ( ' login ' ) )
load_assets ( ) # Ensure assets are loaded
session [ ' tw ' ] = 1
session [ ' tw ' ] = 1
return render_template ( ' strategy_tw.html ' , data_tw = data_tw , stock = [ ' 2330.TW ' ] )
return render_template ( ' strategy_tw.html ' , data_tw = data_tw , stock = [ ' 2330.TW ' ] )
@ -625,6 +640,7 @@ def copy_portfolio():
return redirect ( url_for ( ' login ' ) )
return redirect ( url_for ( ' login ' ) )
if not ' tw ' in session :
if not ' tw ' in session :
return redirect ( url_for ( ' index ' ) )
return redirect ( url_for ( ' index ' ) )
load_assets ( ) # Ensure assets are loaded
session [ ' tw ' ] = 0
session [ ' tw ' ] = 0
return render_template ( ' strategy_tw.html ' , data_us = data_us , data_tw = data_tw , stock = session [ ' currStockList ' ] )
return render_template ( ' strategy_tw.html ' , data_us = data_us , data_tw = data_tw , stock = session [ ' currStockList ' ] )