Spaces:
Build error
Build error
Update app.py
Browse files
app.py
CHANGED
|
@@ -180,14 +180,16 @@ def upload_to_firebase(user_id, file):
|
|
| 180 |
|
| 181 |
def fetch_trustbuilders(user_id):
|
| 182 |
"""
|
| 183 |
-
Fetch all TrustBuilders from Firebase.
|
| 184 |
"""
|
| 185 |
try:
|
| 186 |
trustbuilders = db.child("users").child(user_id).child("TrustBuilders").get().val()
|
| 187 |
-
|
|
|
|
|
|
|
| 188 |
except Exception as e:
|
| 189 |
st.error(f"Error fetching TrustBuilders: {e}")
|
| 190 |
-
return
|
| 191 |
|
| 192 |
|
| 193 |
def delete_trustbuilder(user_id, trustbuilder_id):
|
|
@@ -487,16 +489,12 @@ def load_user_content(user_id):
|
|
| 487 |
st.info("not loaded ")
|
| 488 |
|
| 489 |
|
| 490 |
-
|
| 491 |
def save_content(user_id, content, bucket):
|
| 492 |
"""
|
| 493 |
-
Save TrustBuilder as
|
| 494 |
"""
|
| 495 |
try:
|
| 496 |
-
trustbuilder_text = {
|
| 497 |
-
"content": content,
|
| 498 |
-
"bucket": bucket
|
| 499 |
-
}
|
| 500 |
db.child("users").child(user_id).child("TrustBuilders").push(trustbuilder_text)
|
| 501 |
st.success("TrustBuilder saved successfully!")
|
| 502 |
except Exception as e:
|
|
@@ -768,22 +766,24 @@ def side():
|
|
| 768 |
# Show Trust Builders Section
|
| 769 |
st.subheader("Show My TrustBuilders®")
|
| 770 |
|
|
|
|
| 771 |
search_query = st.text_input("Search by keyword")
|
| 772 |
brand = st.text_input("Brand/Product/Person", key="brand_input_show")
|
| 773 |
trust_buckets = ["Stability", "Development", "Relationship", "Benefit", "Vision", "Competence"]
|
| 774 |
-
selected_bucket = st.selectbox("Select Trust Bucket", trust_buckets, key="selected_bucket_show")
|
| 775 |
|
| 776 |
if st.button("Show"):
|
| 777 |
try:
|
| 778 |
trustbuilders = fetch_trustbuilders(st.session_state["wix_user_id"])
|
| 779 |
results = []
|
| 780 |
-
for
|
| 781 |
-
content =
|
| 782 |
-
|
| 783 |
-
|
| 784 |
(not search_query or search_query.lower() in content.lower()) and
|
| 785 |
-
(not brand or brand.lower() in content.lower())
|
| 786 |
-
|
|
|
|
| 787 |
if results:
|
| 788 |
st.markdown("### Results:")
|
| 789 |
for result in results:
|
|
@@ -796,16 +796,21 @@ def side():
|
|
| 796 |
# Save TrustBuilders Section
|
| 797 |
st.subheader("Save TrustBuilders®")
|
| 798 |
|
|
|
|
| 799 |
brand_save = st.text_input("Brand/Product/Person", key="brand_input_save")
|
| 800 |
trust_builder_text = st.text_area("Type/paste Trust Builder®")
|
| 801 |
selected_save_bucket = st.selectbox("Choose Trust Bucket to Save", trust_buckets, key="save_bucket")
|
| 802 |
|
| 803 |
if st.button("Save"):
|
| 804 |
if trust_builder_text.strip() and selected_save_bucket:
|
| 805 |
-
save_content(
|
|
|
|
|
|
|
|
|
|
|
|
|
| 806 |
else:
|
| 807 |
st.warning("Please fill all fields before saving.")
|
| 808 |
-
|
| 809 |
|
| 810 |
|
| 811 |
|
|
|
|
| 180 |
|
| 181 |
def fetch_trustbuilders(user_id):
|
| 182 |
"""
|
| 183 |
+
Fetch all TrustBuilders from Firebase stored as plain text.
|
| 184 |
"""
|
| 185 |
try:
|
| 186 |
trustbuilders = db.child("users").child(user_id).child("TrustBuilders").get().val()
|
| 187 |
+
if trustbuilders:
|
| 188 |
+
return [entry for entry in trustbuilders.values() if isinstance(entry, str)]
|
| 189 |
+
return []
|
| 190 |
except Exception as e:
|
| 191 |
st.error(f"Error fetching TrustBuilders: {e}")
|
| 192 |
+
return []
|
| 193 |
|
| 194 |
|
| 195 |
def delete_trustbuilder(user_id, trustbuilder_id):
|
|
|
|
| 489 |
st.info("not loaded ")
|
| 490 |
|
| 491 |
|
|
|
|
| 492 |
def save_content(user_id, content, bucket):
|
| 493 |
"""
|
| 494 |
+
Save TrustBuilder as plain text in Firebase with the associated bucket.
|
| 495 |
"""
|
| 496 |
try:
|
| 497 |
+
trustbuilder_text = f"{bucket}: {content}"
|
|
|
|
|
|
|
|
|
|
| 498 |
db.child("users").child(user_id).child("TrustBuilders").push(trustbuilder_text)
|
| 499 |
st.success("TrustBuilder saved successfully!")
|
| 500 |
except Exception as e:
|
|
|
|
| 766 |
# Show Trust Builders Section
|
| 767 |
st.subheader("Show My TrustBuilders®")
|
| 768 |
|
| 769 |
+
# Inputs for searching TrustBuilders
|
| 770 |
search_query = st.text_input("Search by keyword")
|
| 771 |
brand = st.text_input("Brand/Product/Person", key="brand_input_show")
|
| 772 |
trust_buckets = ["Stability", "Development", "Relationship", "Benefit", "Vision", "Competence"]
|
| 773 |
+
selected_bucket = st.selectbox("Select Trust Bucket", ["All"] + trust_buckets, key="selected_bucket_show")
|
| 774 |
|
| 775 |
if st.button("Show"):
|
| 776 |
try:
|
| 777 |
trustbuilders = fetch_trustbuilders(st.session_state["wix_user_id"])
|
| 778 |
results = []
|
| 779 |
+
for entry in trustbuilders:
|
| 780 |
+
bucket, content = entry.split(": ", 1) if ": " in entry else ("", entry)
|
| 781 |
+
if (
|
| 782 |
+
(selected_bucket == "All" or selected_bucket == bucket) and
|
| 783 |
(not search_query or search_query.lower() in content.lower()) and
|
| 784 |
+
(not brand or brand.lower() in content.lower())
|
| 785 |
+
):
|
| 786 |
+
results.append(entry)
|
| 787 |
if results:
|
| 788 |
st.markdown("### Results:")
|
| 789 |
for result in results:
|
|
|
|
| 796 |
# Save TrustBuilders Section
|
| 797 |
st.subheader("Save TrustBuilders®")
|
| 798 |
|
| 799 |
+
# Inputs for saving TrustBuilders
|
| 800 |
brand_save = st.text_input("Brand/Product/Person", key="brand_input_save")
|
| 801 |
trust_builder_text = st.text_area("Type/paste Trust Builder®")
|
| 802 |
selected_save_bucket = st.selectbox("Choose Trust Bucket to Save", trust_buckets, key="save_bucket")
|
| 803 |
|
| 804 |
if st.button("Save"):
|
| 805 |
if trust_builder_text.strip() and selected_save_bucket:
|
| 806 |
+
save_content(
|
| 807 |
+
st.session_state["wix_user_id"],
|
| 808 |
+
f"Brand: {brand_save.strip()} | {trust_builder_text.strip()}",
|
| 809 |
+
selected_save_bucket
|
| 810 |
+
)
|
| 811 |
else:
|
| 812 |
st.warning("Please fill all fields before saving.")
|
| 813 |
+
|
| 814 |
|
| 815 |
|
| 816 |
|