import streamlit as st from functions import send_segnalazione st.set_page_config(page_title="Segnala un problema", layout="centered") st.title("Segnala un problema") st.caption("Usa questo form per segnalare un errore, un dato mancante o qualsiasi problema riscontrato.") with st.form("ticket_form", clear_on_submit=True): page = st.selectbox( "Pagina *", options=["Cerca", "Ingrediente", "Nuovo PIF", "Ordini PIF", "Esposizione", "Impostazioni", "ECHA", "Altro"], ) cas = st.text_input( "CAS (opzionale)", value=st.session_state.get("selected_cas") or "", placeholder="es. 56-81-5", help="Inserire il CAS coinvolto nel problema, se applicabile.", ) description = st.text_area( "Descrizione *", placeholder="Descrivi il problema in modo chiaro e dettagliato.", height=120, ) error = st.text_area( "Messaggio di errore (opzionale)", placeholder="Incolla qui il messaggio di errore visualizzato, se presente.", height=80, ) priority = st.radio( "Priorità *", options=["bassa", "media", "alta"], index=1, horizontal=True, captions=["Problema minore", "Impatta l'utilizzo", "Blocca il lavoro"], ) submitted = st.form_submit_button("Invia segnalazione", type="primary", use_container_width=True) if submitted: if not description.strip(): st.error("La descrizione è obbligatoria.") else: ok = send_segnalazione( page=page, description=description.strip(), priority=priority, cas=cas.strip() or None, error=error.strip() or None, ) if ok: st.success("Segnalazione inviata. Grazie per il feedback!")