import streamlit as st import os from dotenv import load_dotenv from views.continue_survey import continue_survey_screen from db.crud import read load_dotenv() VALIDATION_CODE = os.getenv("VALIDATION_CODE") def validate_username(username: str) -> bool: return bool(username.strip()) def validate_code(input_code: str) -> bool: """Validate the entered code against the hardcoded validation code""" return input_code.strip() == VALIDATION_CODE def welcome_screen(): """Display the welcome screen and direct users accordingly.""" with st.container(): st.markdown("""""", unsafe_allow_html=True) st.title("Welcome to the Feedback Survey") username_input = st.text_input("Enter your first name and press TAB. Usernames are case-sensitive.") validation_code_input = st.text_input("Enter the validation code to proceed and press ENTER:") next_button = st.button("Next") footer_html = """

⚠️ Note: This is still a work in progress.
If you encounter bugs or issues please create a Pull Request and we will look into it.
For best results, please use a desktop browser.

""" st.markdown(footer_html, unsafe_allow_html=True) if (username_input and validation_code_input) or next_button: if validate_username(username_input) and validate_code(validation_code_input): st.session_state.username = username_input else: if not validate_username(username_input): st.warning("Invalid username. Please check and try again.") if not validate_code(validation_code_input): st.warning("Invalid validation code. Please check and try again.")