22from src .models .user_card_settings import UserCardSettings
33from src .models .dashboard_netowrk import DashboardNetworkSettings
44from src .models .user_dashboard_settings import UserDashboardSettings
5- from src .models .feature_toggle_settings import PageToggleSettings
5+ from src .models .page_toggle_settings import PageToggleSettings
66from src .models .application_general_settings import ApplicationGeneralSettings
77from src .models .smtp_configuration import SMTPSettings
88from src .models .network_speed_test_result import NetworkSpeedTestResult
99from src .models .system_information import SystemInformation
1010from src .models .user_profile import UserProfile
11+ from src .models .experimental import DashboardCard
1112from flask_login import current_user
1213from werkzeug .security import generate_password_hash
1314import json
2627 db .session .add (UserDashboardSettings (user_id = user .id ))
2728 db .session .add (UserCardSettings (user_id = user .id ))
2829 db .session .add (PageToggleSettings (user_id = user .id ))
30+ # card setting
31+ card_json = os .path .join (ROOT_DIR , "src/assets/initial_card_settings.json" )
32+ with open (card_json , "r" ) as file :
33+ cards = json .load (file )
34+ for card in cards :
35+ new_card = DashboardCard (
36+ user_id = user .id ,
37+ card_name = card ["card_name" ],
38+ card_description = card ["card_description" ],
39+ card_color = card ["card_color" ],
40+ card_length = card ["card_length" ],
41+ card_position = card ["card_position" ],
42+ card_data = card ["card_data" ]
43+ )
44+ db .session .add (new_card )
45+
46+ db .session .commit ()
47+ print ("Initial card data added." )
2948 db .session .commit ()
3049
3150 pre_defined_users_json = os .path .join (ROOT_DIR , "src/assets/predefine_user.json" )
5776@app .context_processor
5877def inject_settings ():
5978 if current_user .is_anonymous :
60- return dict (user_dashboard_settings = None , card_settings = None , page_toggles_settings = None , general_settings = None )
79+ return dict (user_dashboard_settings = None , card_settings = None , page_toggles_settings = None , general_settings = None , card_settings_2 = None )
6180 general_settings = ApplicationGeneralSettings .query .first ()
6281 card_settings = UserCardSettings .query .filter_by (user_id = current_user .id ).first ()
6382 user_dashboard_settings = UserDashboardSettings .query .filter_by (
@@ -66,10 +85,12 @@ def inject_settings():
6685 page_toggles_settings = PageToggleSettings .query .filter_by (
6786 user_id = current_user .id
6887 ).first ()
88+ card_settings_2 = DashboardCard .query .filter_by (user_id = current_user .id ).all ()
6989 all_settings = dict (
7090 user_dashboard_settings = user_dashboard_settings ,
7191 general_settings = general_settings ,
7292 card_settings = card_settings ,
93+ card_settings_2 = card_settings_2 ,
7394 page_toggles_settings = page_toggles_settings ,
7495 )
7596 return all_settings
0 commit comments