Spaces:
Build error
Build error
Update app.py
Browse files
app.py
CHANGED
|
@@ -180,16 +180,11 @@ 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 |
-
if isinstance(trustbuilders, dict)
|
| 188 |
-
return trustbuilders
|
| 189 |
-
elif isinstance(trustbuilders, list): # If it's a list
|
| 190 |
-
return {str(idx): item for idx, item in enumerate(trustbuilders) if item} # Convert list to dict
|
| 191 |
-
else:
|
| 192 |
-
return {} # Return an empty dict if no data found
|
| 193 |
except Exception as e:
|
| 194 |
st.error(f"Error fetching TrustBuilders: {e}")
|
| 195 |
return {}
|
|
@@ -495,18 +490,19 @@ def load_user_content(user_id):
|
|
| 495 |
|
| 496 |
def save_content(user_id, content, bucket):
|
| 497 |
"""
|
| 498 |
-
Save TrustBuilder as
|
| 499 |
"""
|
| 500 |
try:
|
| 501 |
-
trustbuilder_text =
|
|
|
|
|
|
|
|
|
|
| 502 |
db.child("users").child(user_id).child("TrustBuilders").push(trustbuilder_text)
|
| 503 |
st.success("TrustBuilder saved successfully!")
|
| 504 |
except Exception as e:
|
| 505 |
st.error(f"Error saving TrustBuilder: {e}")
|
| 506 |
|
| 507 |
|
| 508 |
-
|
| 509 |
-
|
| 510 |
|
| 511 |
def ai_allocate_trust_bucket(trust_builder_text):
|
| 512 |
# Implement your AI allocation logic here
|
|
@@ -772,33 +768,24 @@ def side():
|
|
| 772 |
# Show Trust Builders Section
|
| 773 |
st.subheader("Show My TrustBuilders®")
|
| 774 |
|
| 775 |
-
# Arrange text inputs and Show button
|
| 776 |
-
col1, col2, col3 = st.columns([1, 1, 0.5])
|
| 777 |
-
|
| 778 |
search_query = st.text_input("Search by keyword")
|
| 779 |
-
st.write("or")
|
| 780 |
brand = st.text_input("Brand/Product/Person", key="brand_input_show")
|
| 781 |
-
|
| 782 |
-
# Trust Buckets selectbox (define it before referencing)
|
| 783 |
trust_buckets = ["Stability", "Development", "Relationship", "Benefit", "Vision", "Competence"]
|
| 784 |
-
selected_bucket = st.selectbox("Select Trust Bucket", trust_buckets, key="
|
| 785 |
|
| 786 |
if st.button("Show"):
|
| 787 |
-
st.write(f"Filtering TrustBuilders for keyword='{search_query}', brand='{brand}', and bucket='{selected_bucket}'")
|
| 788 |
try:
|
| 789 |
trustbuilders = fetch_trustbuilders(st.session_state["wix_user_id"])
|
| 790 |
results = []
|
| 791 |
for trustbuilder_id, data in trustbuilders.items():
|
| 792 |
-
|
| 793 |
-
|
| 794 |
-
|
| 795 |
-
|
| 796 |
-
|
| 797 |
-
|
| 798 |
-
(not search_query or search_query.lower() in content.lower()) and
|
| 799 |
-
(not brand or brand.lower() in tb_brand.lower())):
|
| 800 |
-
results.append(f"{bucket}: {content}")
|
| 801 |
if results:
|
|
|
|
| 802 |
for result in results:
|
| 803 |
st.markdown(f"- {result}")
|
| 804 |
else:
|
|
@@ -806,23 +793,41 @@ def side():
|
|
| 806 |
except Exception as e:
|
| 807 |
st.error(f"Error fetching TrustBuilders: {e}")
|
| 808 |
|
| 809 |
-
# Save
|
| 810 |
st.subheader("Save TrustBuilders®")
|
|
|
|
| 811 |
brand_save = st.text_input("Brand/Product/Person", key="brand_input_save")
|
| 812 |
trust_builder_text = st.text_area("Type/paste Trust Builder®")
|
| 813 |
selected_save_bucket = st.selectbox("Choose Trust Bucket to Save", trust_buckets, key="save_bucket")
|
| 814 |
|
| 815 |
if st.button("Save"):
|
| 816 |
if trust_builder_text.strip() and selected_save_bucket:
|
| 817 |
-
|
| 818 |
-
content_to_save = f"Brand: {brand_save.strip()} | {trust_builder_text.strip()}"
|
| 819 |
-
save_content(
|
| 820 |
-
st.session_state["wix_user_id"],
|
| 821 |
-
content_to_save,
|
| 822 |
-
selected_save_bucket
|
| 823 |
-
)
|
| 824 |
else:
|
| 825 |
st.warning("Please fill all fields before saving.")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 826 |
|
| 827 |
|
| 828 |
|
|
|
|
| 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 |
+
return trustbuilders if isinstance(trustbuilders, dict) else {}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 188 |
except Exception as e:
|
| 189 |
st.error(f"Error fetching TrustBuilders: {e}")
|
| 190 |
return {}
|
|
|
|
| 490 |
|
| 491 |
def save_content(user_id, content, bucket):
|
| 492 |
"""
|
| 493 |
+
Save TrustBuilder as normal text in Firebase with the associated bucket.
|
| 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:
|
| 503 |
st.error(f"Error saving TrustBuilder: {e}")
|
| 504 |
|
| 505 |
|
|
|
|
|
|
|
| 506 |
|
| 507 |
def ai_allocate_trust_bucket(trust_builder_text):
|
| 508 |
# Implement your AI allocation logic here
|
|
|
|
| 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 trustbuilder_id, data in trustbuilders.items():
|
| 781 |
+
content = data.get("content", "")
|
| 782 |
+
bucket = data.get("bucket", "")
|
| 783 |
+
if ((selected_bucket == bucket or not selected_bucket) and
|
| 784 |
+
(not search_query or search_query.lower() in content.lower()) and
|
| 785 |
+
(not brand or brand.lower() in content.lower())):
|
| 786 |
+
results.append(f"{bucket}: {content}")
|
|
|
|
|
|
|
|
|
|
| 787 |
if results:
|
| 788 |
+
st.markdown("### Results:")
|
| 789 |
for result in results:
|
| 790 |
st.markdown(f"- {result}")
|
| 791 |
else:
|
|
|
|
| 793 |
except Exception as e:
|
| 794 |
st.error(f"Error fetching TrustBuilders: {e}")
|
| 795 |
|
| 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(st.session_state["wix_user_id"], trust_builder_text.strip(), selected_save_bucket)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 806 |
else:
|
| 807 |
st.warning("Please fill all fields before saving.")
|
| 808 |
+
|
| 809 |
+
|
| 810 |
+
|
| 811 |
+
|
| 812 |
+
|
| 813 |
+
|
| 814 |
+
|
| 815 |
+
|
| 816 |
+
|
| 817 |
+
|
| 818 |
+
|
| 819 |
+
|
| 820 |
+
|
| 821 |
+
|
| 822 |
+
|
| 823 |
+
|
| 824 |
+
|
| 825 |
+
|
| 826 |
+
|
| 827 |
+
|
| 828 |
+
|
| 829 |
+
|
| 830 |
+
|
| 831 |
|
| 832 |
|
| 833 |
|