Wajahat698 commited on
Commit
352f7d2
·
verified ·
1 Parent(s): 0e87e75

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +29 -11
app.py CHANGED
@@ -186,9 +186,12 @@ def fetch_trustbuilders(user_id):
186
  st.write(f"Debugging: Fetching TrustBuilders for user: {user_id}")
187
  trustbuilders = db.child("users").child(user_id).child("TrustBuilders").get().val()
188
  st.write(f"Debugging: Raw TrustBuilders fetched: {trustbuilders}")
 
189
  if trustbuilders:
 
190
  return [tb["content"] for tb in trustbuilders.values()]
191
  else:
 
192
  return []
193
  except Exception as e:
194
  st.error(f"Error fetching TrustBuilders: {e}")
@@ -495,15 +498,20 @@ def save_content(user_id, content):
495
  Save a TrustBuilder as plain text under the user's TrustBuilders node in Firebase.
496
  """
497
  try:
 
498
  trustbuilder_data = {
499
  "content": content
500
  }
501
- # Push to TrustBuilders node
 
502
  db.child("users").child(user_id).child("TrustBuilders").push(trustbuilder_data)
 
503
  st.success("TrustBuilder saved successfully!")
504
  st.write(f"Debugging: Saved TrustBuilder content: {trustbuilder_data}")
505
  except Exception as e:
506
  st.error(f"Error saving TrustBuilder: {e}")
 
 
507
  def ai_allocate_trust_bucket(trust_builder_text):
508
  # Implement your AI allocation logic here
509
  return "Stability"
@@ -1503,20 +1511,30 @@ if "used_messages" not in st.session_state:
1503
 
1504
  def initialize_user_session():
1505
  """
1506
- Initialize user data in Firebase and session state.
1507
  """
1508
  try:
1509
  user_id = st.session_state["wix_user_id"]
1510
  email = st.session_state["email"]
1511
- user_data = {
1512
- "user_name": user_id,
1513
- "email": email,
1514
- "message_limit": 1000,
1515
- "used_messages": 0,
1516
- "TrustBuilders": {}
1517
- }
1518
- db.child("users").child(user_id).update(user_data)
1519
- st.success("User session initialized successfully.")
 
 
 
 
 
 
 
 
 
 
1520
  except Exception as e:
1521
  st.error(f"Error initializing user session: {e}")
1522
 
 
186
  st.write(f"Debugging: Fetching TrustBuilders for user: {user_id}")
187
  trustbuilders = db.child("users").child(user_id).child("TrustBuilders").get().val()
188
  st.write(f"Debugging: Raw TrustBuilders fetched: {trustbuilders}")
189
+
190
  if trustbuilders:
191
+ # Extract content from TrustBuilders
192
  return [tb["content"] for tb in trustbuilders.values()]
193
  else:
194
+ st.warning("No TrustBuilders found in Firebase.")
195
  return []
196
  except Exception as e:
197
  st.error(f"Error fetching TrustBuilders: {e}")
 
498
  Save a TrustBuilder as plain text under the user's TrustBuilders node in Firebase.
499
  """
500
  try:
501
+ # Prepare the TrustBuilder data
502
  trustbuilder_data = {
503
  "content": content
504
  }
505
+
506
+ # Push to TrustBuilders node under the user's ID
507
  db.child("users").child(user_id).child("TrustBuilders").push(trustbuilder_data)
508
+
509
  st.success("TrustBuilder saved successfully!")
510
  st.write(f"Debugging: Saved TrustBuilder content: {trustbuilder_data}")
511
  except Exception as e:
512
  st.error(f"Error saving TrustBuilder: {e}")
513
+
514
+
515
  def ai_allocate_trust_bucket(trust_builder_text):
516
  # Implement your AI allocation logic here
517
  return "Stability"
 
1511
 
1512
  def initialize_user_session():
1513
  """
1514
+ Initialize user session and ensure user data exists in Firebase.
1515
  """
1516
  try:
1517
  user_id = st.session_state["wix_user_id"]
1518
  email = st.session_state["email"]
1519
+
1520
+ # Check if user already exists in Firebase
1521
+ user_data = db.child("users").child(user_id).get().val()
1522
+
1523
+ if not user_data:
1524
+ # Create user data in Firebase if it doesn't exist
1525
+ user_data = {
1526
+ "user_name": user_id,
1527
+ "email": email,
1528
+ "message_limit": 1000,
1529
+ "used_messages": 0
1530
+ }
1531
+ db.child("users").child(user_id).set(user_data)
1532
+ st.success("User session initialized and user data created in Firebase.")
1533
+ else:
1534
+ st.success("User data loaded from Firebase.")
1535
+
1536
+ # Update session state with user data
1537
+ st.session_state.update(user_data)
1538
  except Exception as e:
1539
  st.error(f"Error initializing user session: {e}")
1540