RajaThor commited on
Commit
f17e850
·
verified ·
1 Parent(s): 67f6735

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +48 -1
app.py CHANGED
@@ -265,6 +265,49 @@ def feedback_ui():
265
  send_feedback(feedback_data)
266
  st.success("Feedback submitted successfully! Thank you for your feedback.")
267
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
268
  def tour_guide_ui():
269
  st.title("Tour Guide")
270
  st.markdown("This tour will guide you through the application.")
@@ -381,7 +424,7 @@ def display_tour_steps(steps):
381
  # Update the main function to include the feedback option
382
  def main():
383
  st.sidebar.title("Options")
384
- option = st.sidebar.radio("Select Option", ["Add Person", "Recognize Face", "Delete Person", "Recognize Face (Optimal)", "Tour Guide", "Feedback"])
385
 
386
  if option == "Add Person":
387
  add_person_ui()
@@ -395,6 +438,10 @@ def main():
395
  tour_guide_ui()
396
  elif option == "Feedback":
397
  feedback_ui()
 
 
 
 
398
 
399
  # Run the tour guide
400
  if __name__ == "__main__":
 
265
  send_feedback(feedback_data)
266
  st.success("Feedback submitted successfully! Thank you for your feedback.")
267
 
268
+ #section for messaging
269
+ # Function to send a message
270
+ def send_message(sender_email, receiver_email, message_content):
271
+ try:
272
+ db_firestore.collection('messages').add({
273
+ 'sender_email': sender_email,
274
+ 'receiver_email': receiver_email,
275
+ 'message_content': message_content,
276
+ 'timestamp': firestore.SERVER_TIMESTAMP
277
+ })
278
+ return "Message sent successfully."
279
+ except Exception as e:
280
+ return f"Failed to send message: {str(e)}"
281
+
282
+ # Function to retrieve messages for a user
283
+ def get_messages(user_email):
284
+ try:
285
+ messages = db_firestore.collection('messages').where('receiver_email', '==', user_email).order_by('timestamp').get()
286
+ return messages
287
+ except Exception as e:
288
+ return f"Failed to retrieve messages: {str(e)}"
289
+
290
+ # Streamlit interface for sending messages
291
+ def send_message_ui():
292
+ st.title("Send Message")
293
+ sender_email = st.session_state.auth_state["user"]["email"]
294
+ receiver_email = st.selectbox("Receiver's Email", [user["email"] for user in get_all_users()])
295
+ message_content = st.text_area("Message Content")
296
+ if st.button("Send Message"):
297
+ result = send_message(sender_email, receiver_email, message_content)
298
+ st.write(result)
299
+
300
+ # Streamlit interface for viewing messages
301
+ def view_messages_ui():
302
+ st.title("Messages")
303
+ user_email = st.session_state.auth_state["user"]["email"]
304
+ messages = get_messages(user_email)
305
+ for message in messages:
306
+ st.write(f"From: {message['sender_email']}")
307
+ st.write(f"Message: {message['message_content']}")
308
+ st.write("---")
309
+ #end of messaging section
310
+
311
  def tour_guide_ui():
312
  st.title("Tour Guide")
313
  st.markdown("This tour will guide you through the application.")
 
424
  # Update the main function to include the feedback option
425
  def main():
426
  st.sidebar.title("Options")
427
+ option = st.sidebar.radio("Select Option", ["Add Person", "Recognize Face", "Delete Person", "Recognize Face (Optimal)", "Tour Guide", "Feedback", "Send Message","Messages"])
428
 
429
  if option == "Add Person":
430
  add_person_ui()
 
438
  tour_guide_ui()
439
  elif option == "Feedback":
440
  feedback_ui()
441
+ elif option == "Send Message":
442
+ send_message_ui()
443
+ elif option == "Messages":
444
+ view_messages_ui()
445
 
446
  # Run the tour guide
447
  if __name__ == "__main__":