Spaces:
Sleeping
Sleeping
| """Session state initialization and management""" | |
| import streamlit as st | |
| def initialize_session_state(): | |
| """Initialize all session state variables""" | |
| if 'results' not in st.session_state: | |
| st.session_state.results = [] | |
| if 'scheduled_interviews' not in st.session_state: | |
| st.session_state.scheduled_interviews = [] | |
| if 'interview_data' not in st.session_state: | |
| st.session_state.interview_data = {} | |
| if 'search_query' not in st.session_state: | |
| st.session_state.search_query = "" | |
| if 'bulk_uploaded_files' not in st.session_state: | |
| st.session_state.bulk_uploaded_files = [] | |
| if 'bulk_file_data' not in st.session_state: | |
| st.session_state.bulk_file_data = [] | |
| if 'selected_folder_path' not in st.session_state: | |
| st.session_state.selected_folder_path = None | |
| if 'email_subject' not in st.session_state: | |
| st.session_state.email_subject = "Congratulations! You've been shortlisted for {job_title}" | |
| if 'email_body' not in st.session_state: | |
| st.session_state.email_body = """<p>Dear {name},</p> | |
| <p>We are excited to inform you that your application for the <strong>{job_title}</strong> position has progressed to the next stage!</p> | |
| <div style="background-color: #f8f9fa; padding: 15px; border-radius: 5px; margin: 20px 0;"> | |
| <h3 style="color: #2c3e50; margin-top: 0;">Your Application Status</h3> | |
| <p><strong>Position:</strong> {job_title}</p> | |
| <p><strong>Status:</strong> Your application is under review</p> | |
| <p>Our hiring team will be in touch shortly with the next steps in our selection process.</p> | |
| </div> | |
| <p>We were particularly impressed with your qualifications and experience. While we review all applications, we wanted to let you know that your profile has stood out to us.</p> | |
| <p>If you have any questions in the meantime, please don't hesitate to reply to this email.</p> | |
| <p style="margin-top: 30px;"> | |
| Best regards,<br> | |
| <strong>ResumeIQ Hiring Team</strong> | |
| </p>""" | |
| if 'selected_candidates' not in st.session_state: | |
| st.session_state.selected_candidates = {} | |
| if 'interview_reminder_subject' not in st.session_state: | |
| st.session_state.interview_reminder_subject = "Reminder: Upcoming Interview for {job_title}" | |
| if 'interview_reminder_body' not in st.session_state: | |
| st.session_state.interview_reminder_body = """<p>Dear {name},</p> | |
| <p>This is a friendly reminder about your upcoming interview for the position of <strong>{job_title}</strong>.</p> | |
| <div style="background-color: #f8f9fa; padding: 15px; border-radius: 5px; margin: 20px 0;"> | |
| <h3 style="color: #2c3e50; margin-top: 0;">Interview Details</h3> | |
| <p><strong>Date & Time:</strong> {interview_date} at {interview_time}</p> | |
| <p><strong>Interviewer:</strong> {interviewer}</p> | |
| {meeting_link} | |
| </div> | |
| <p>Please ensure you have the following ready for the interview:</p> | |
| <ul> | |
| <li>A copy of your resume</li> | |
| <li>Any relevant work samples or portfolio items</li> | |
| <li>Questions you may have about the role</li> | |
| </ul> | |
| <p>If you need to reschedule or have any questions, please reply to this email at your earliest convenience.</p> | |
| <p style="margin-top: 30px;"> | |
| Best regards,<br> | |
| <strong>ResumeIQ Hiring Team</strong> | |
| </p>""" | |
| if 'interview_followup_subject' not in st.session_state: | |
| st.session_state.interview_followup_subject = "Thank You for Your Time - Next Steps" | |
| if 'interview_followup_body' not in st.session_state: | |
| st.session_state.interview_followup_body = """<p>Dear {name},</p> | |
| <p>Thank you for taking the time to interview for the <strong>{job_title}</strong> position. We enjoyed learning more about your experience and how you could contribute to our team.</p> | |
| <div style="background-color: #f8f9fa; padding: 15px; border-radius: 5px; margin: 20px 0;"> | |
| <h3 style="color: #2c3e50; margin-top: 0;">Our Next Steps</h3> | |
| <p>Our team is currently reviewing all candidates and will be making decisions in the coming days. We appreciate your patience during this process.</p> | |
| <p>If you have any additional questions or materials you'd like to share, please don't hesitate to reach out.</p> | |
| </div> | |
| <p>Thank you again for your interest in joining our team. We'll be in touch soon with an update.</p> | |
| <p style="margin-top: 30px;"> | |
| Best regards,<br> | |
| <strong>ResumeIQ Hiring Team</strong> | |
| </p>""" | |