Wajahat698 commited on
Commit
5aeaff0
·
verified ·
1 Parent(s): 9fb803d

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +32 -23
app.py CHANGED
@@ -165,29 +165,37 @@ def upload_to_firebase(user_id, content):
165
  st.error(f"Error uploading to Firebase: {e}")
166
  return None
167
 
 
168
  def fetch_trustbuilders(user_id, keyword=None, brand=None, bucket=None):
169
  try:
 
170
  trustbuilders = db.child("users").child(user_id).child("TrustBuilder").get().val()
171
- if trustbuilders:
172
- filtered_trustbuilders = {}
173
- for k, v in trustbuilders.items():
174
- message = v.get("message", "").lower()
175
- brand_field = v.get("brand", "").lower()
176
- bucket_field = v.get("bucket", "")
177
-
178
- if keyword and keyword.lower() not in message:
179
- continue
180
- if brand and brand.lower() not in brand_field:
181
- continue
182
- if bucket and bucket != bucket_field:
183
- continue
184
- filtered_trustbuilders[k] = v
185
- return filtered_trustbuilders
186
- return {}
 
 
 
 
187
  except Exception as e:
188
  st.error(f"Error fetching TrustBuilders: {e}")
189
  return {}
190
 
 
 
191
  def delete_trustbuilder(user_id, trustbuilder_id):
192
  try:
193
  db.child("users").child(user_id).child("TrustBuilder").child(trustbuilder_id).remove()
@@ -788,17 +796,20 @@ def side():
788
 
789
  # Show My TrustBuilders Section
790
  st.subheader("Show my TrustBuilders®")
791
- search_query = st.text_input("Search by keyword", key="keyword")
792
  brand_input = st.text_input("Brand/Product/Person", key="brand_input")
793
- bucket = st.session_state.get("selected_bucket")
 
 
 
 
794
 
795
  if st.button("Show TrustBuilders"):
796
- # Fetch TrustBuilders from Firebase
797
  search_results = fetch_trustbuilders(
798
  st.session_state["wix_user_id"],
799
  keyword=search_query,
800
  brand=brand_input,
801
- bucket=bucket
802
  )
803
  if search_results:
804
  for result_id, result_data in search_results.items():
@@ -806,11 +817,9 @@ def side():
806
  st.write(f"Brand: {result_data.get('brand', 'N/A')}")
807
  st.write(f"Bucket: {result_data.get('bucket', 'N/A')}")
808
  st.write(f"Message: {result_data.get('message', '')}")
809
- # Delete button
810
- if st.button(f"Delete TrustBuilder {result_id[:8]}", key=f"del_tb_{result_id}"):
811
- delete_trustbuilder(st.session_state["wix_user_id"], result_id)
812
  else:
813
  st.write("No TrustBuilders found.")
 
814
 
815
  # Trust Bucket Selection
816
  st.write("Choose the Trust Bucket®")
 
165
  st.error(f"Error uploading to Firebase: {e}")
166
  return None
167
 
168
+
169
  def fetch_trustbuilders(user_id, keyword=None, brand=None, bucket=None):
170
  try:
171
+ st.write(f"Fetching TrustBuilders with keyword='{keyword}', brand='{brand}', bucket='{bucket}'")
172
  trustbuilders = db.child("users").child(user_id).child("TrustBuilder").get().val()
173
+ if not trustbuilders:
174
+ st.write("No TrustBuilders found in the database.")
175
+ return {}
176
+
177
+ filtered_trustbuilders = {}
178
+ for k, v in trustbuilders.items():
179
+ message = v.get("message", "").lower()
180
+ brand_field = v.get("brand", "").lower()
181
+ bucket_field = v.get("bucket", "")
182
+
183
+ # Apply filters
184
+ if keyword and keyword.lower() not in message:
185
+ continue
186
+ if brand and brand.lower() not in brand_field:
187
+ continue
188
+ if bucket and bucket != "All" and bucket != bucket_field:
189
+ continue
190
+ filtered_trustbuilders[k] = v
191
+ st.write(f"Filtered TrustBuilders: {filtered_trustbuilders}")
192
+ return filtered_trustbuilders
193
  except Exception as e:
194
  st.error(f"Error fetching TrustBuilders: {e}")
195
  return {}
196
 
197
+
198
+
199
  def delete_trustbuilder(user_id, trustbuilder_id):
200
  try:
201
  db.child("users").child(user_id).child("TrustBuilder").child(trustbuilder_id).remove()
 
796
 
797
  # Show My TrustBuilders Section
798
  st.subheader("Show my TrustBuilders®")
799
+ search_query = st.text_input("Search by keyword", key="search_query")
800
  brand_input = st.text_input("Brand/Product/Person", key="brand_input")
801
+
802
+ # Trust Bucket Selection
803
+ st.write("Choose the Trust Bucket®")
804
+ bucket_options = ["All"] + bucket_labels
805
+ selected_bucket = st.selectbox("Select Trust Bucket", options=bucket_options, key="selected_bucket")
806
 
807
  if st.button("Show TrustBuilders"):
 
808
  search_results = fetch_trustbuilders(
809
  st.session_state["wix_user_id"],
810
  keyword=search_query,
811
  brand=brand_input,
812
+ bucket=selected_bucket
813
  )
814
  if search_results:
815
  for result_id, result_data in search_results.items():
 
817
  st.write(f"Brand: {result_data.get('brand', 'N/A')}")
818
  st.write(f"Bucket: {result_data.get('bucket', 'N/A')}")
819
  st.write(f"Message: {result_data.get('message', '')}")
 
 
 
820
  else:
821
  st.write("No TrustBuilders found.")
822
+
823
 
824
  # Trust Bucket Selection
825
  st.write("Choose the Trust Bucket®")