Spaces:
Running
Running
File size: 3,731 Bytes
c412b90 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 |
import streamlit as st
def experience_section():
st.write("## Experience")
with st.container(border= True):
if st.session_state.candidate_data.get("jobs"):
for i, item in enumerate(st.session_state.candidate_data["jobs"]):
col1, col2 = st.columns(2)
col1.markdown("##### Work Experience " + str(i + 1))
current_job = col2.checkbox("**Current Job**", key="current_job" + str(i), value=item.get("current_job", False))
col1, col2 = st.columns(2)
started_at = col1.date_input("**From**", key="started_at" + str(i), value=item.get("started_at", None))
if not st.session_state["current_job" + str(i)]:
ended_at = col2.date_input("**To**", key="ended_at" + str(i), value=item.get("ended_at", None))
else:
ended_at = None
col1, col2 = st.columns(2)
job_title = col1.text_input("**Job Title**", key="job_title" + str(i), value=item.get("job_title", ""))
description = col2.text_area("**Job Description**", key="description" + str(i), value=item.get("job_description", ""))
#col1, col2 = st.columns(2)
remove_experience_button = st.button(f"Remove Experience {i + 1}", key=f"remove_experience_{i}")
st.session_state.candidate_data["jobs"][i] = {
"job_title": job_title,
"job_description": description,
"started_at": started_at,
"ended_at": ended_at,
"current_job": current_job
}
if remove_experience_button:
st.session_state.candidate_data["jobs"].pop(i)
st.rerun()
if "new_experience" not in st.session_state:
st.session_state.new_experience = {}
if "new_experience_clicked" not in st.session_state:
st.session_state.new_experience_clicked = False
if st.session_state.new_experience_clicked:
st.write("#### Update New Experience")
col1, col2 = st.columns(2)
st.session_state.new_experience["started_at"] = col1.date_input("**From**", key="from", value= st.session_state.new_experience.get("started_at",None))
st.session_state.new_experience["ended_at"] = col2.date_input("**To**", key="to", value= st.session_state.new_experience.get("ended_at",None))
col1, col2 = st.columns(2)
st.session_state.new_experience["job_title"] = col1.text_input("**Job Title**", key="job_title", value= st.session_state.new_experience.get("job_title",""))
st.session_state.new_experience["job_description"] = col2.text_area("**Job Description**", key="job_description", value= st.session_state.new_experience.get("job_description",""))
new_experience_button = st.button("Add New Experience" if not st.session_state.new_experience_clicked else "Save")
if new_experience_button:
if st.session_state.new_experience_clicked:
if "jobs" not in st.session_state.candidate_data:
st.session_state.candidate_data["jobs"] = []
st.session_state.candidate_data["jobs"].append(st.session_state.new_experience.copy())
st.session_state.new_experience = {}
st.session_state.new_experience_clicked = False
else:
st.session_state.new_experience_clicked = True
st.rerun() |