import streamlit as st
import json
from datetime import datetime
# Edycja wyglądu formularza przy użyciu CSS i HTML
st.markdown("""
<style>
.title {
text-align: center;
color: #FF69B4;
font-size: 2em;
}
</style>
""", unsafe_allow_html=True)
# Tytuł
st.markdown("""
<h1 class="title">
KWESTIONARIUSZ OSOBOWY DLA PRACOWNIKA
</h1>
""", unsafe_allow_html=True)
# Opis
st.write("Proszę o uzupełnienie poniższego kwestionariusza.")
# Funkcja do zapisywania danych do pliku JSON
def save_to_json(kwestionariusz, imienny):
with open(imienny, 'w') as f:
json.dump(kwestionariusz, f, indent=4, default=str)
# Pola formularza
with st.form(key='my_form'):
imie = st.text_input("Imię")
nazwisko = st.text_input("Nazwisko")
numtel = st.text_input("Numer telefonu")
email = st.text_input("Adres e-mail")
dataur = st.date_input("Data urodzenia", min_value=datetime(1900, 1, 1))
pesel = st.text_input("PESEL")
miejuro = st.text_input("Miejsce urodzenia")
adres = st.text_input("Adres zamieszkania")
wyksz = st.selectbox("Wykształcenie", ["Podstawowe", "Średnie", "Wyższe"]) #Lista rozwijalna
# Przycisk wysyłania formularza
submit_button = st.form_submit_button("Wyślij")
# Obsługa wysłania formularza
if submit_button:
# Przygotowanie danych
kwestionariusz = {
'Imię': imie,
'Nazwisko': nazwisko,
'Numer telefonu': numtel,
'Adres e-mail': email,
'Data urodzenia': str(dataur), # Konwersja daty na string
'PESEL': pesel,
'Miejsce urodzenia': miejuro,
'Adres zamieszkania': adres,
'Wykształcenie': wyksz
}
# Dynamiczna nazwa pliku
imienny = f"kwestionariusz_{imie}_{nazwisko}.json"
# Baloniki w nagrodę za wypełnienie
st.balloons()
# Zapis danych do pliku JSON
save_to_json(kwestionariusz,imienny)
st.write("Dziękujemy za wypełnienie formularza!")
st.write(f"Imię: {imie}")
st.write(f"Nazwisko: {nazwisko}")