import streamlit as st
import sqlite3
import pandas as pd

# Connect to the database
conn = sqlite3.connect('users.db')
c = conn.cursor()

# Create a function to retrieve user prompts from the database
def get_user_prompts(username=None):
    if username:
        c.execute('SELECT * FROM user_prompts WHERE username=?', (username,))
    else:
        c.execute('SELECT * FROM user_prompts')
    user_prompts = c.fetchall()
    return user_prompts

# Create a function to convert user prompts to a Pandas DataFrame
def user_prompts_to_df(user_prompts):
    df = pd.DataFrame(user_prompts, columns=['id', 'username', 'prompt_time', 'prompt_type'])
    return df

# Create a Streamlit page
st.title("User Prompts Summary")

# Retrieve all usernames from the database
c.execute('SELECT username FROM userstable')
usernames = [row[0] for row in c.fetchall()]

# Add a selectbox to filter user prompts by username
username_filter = st.selectbox("Filter by username", ["All"] + usernames)

# Retrieve user prompts based on the selected username
if username_filter == "All":
    user_prompts = get_user_prompts()
else:
    user_prompts = get_user_prompts(username_filter)

# Convert user prompts to a Pandas DataFrame
df = user_prompts_to_df(user_prompts)

# Display the DataFrame
st.write(df)