Skip to content
This repository was archived by the owner on Mar 13, 2025. It is now read-only.

Commit cade1f5

Browse files
authored
Merge pull request #263 from topcoder-platform/dev
Interview scheduler
2 parents a552223 + b6e939c commit cade1f5

File tree

5 files changed

+21
-15
lines changed

5 files changed

+21
-15
lines changed

src/routes/PositionDetails/components/InterviewConfirmPopup/index.jsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ function InterviewConfirmPopup({ open, onClose }) {
2828
<p>
2929
You may manually select your available times from the email, or click
3030
<span styleName="highlighted"> “View More Times”</span> to see
31-
expanded options, Additionally, you may click
31+
expanded options, additionally, you may click
3232
<span styleName="highlighted"> “Overlay My Calendar”</span> to
3333
integrate with your calendar and allow the system to schedule based on
3434
your calendar availability.

src/routes/PositionDetails/components/InterviewDetailsPopup/index.jsx

+10-7
Original file line numberDiff line numberDiff line change
@@ -57,13 +57,16 @@ function InterviewDetailsPopup({ open, onClose, candidate, openNext }) {
5757

5858
const onSubmitCallback = useCallback(
5959
async (formData) => {
60-
const attendeesList =
61-
formData.emails?.filter(
62-
(email) => typeof email === "string" && email.length > 0
63-
) || [];
60+
const hostEmail = formData.emails[0];
61+
const guestEmails =
62+
formData.emails
63+
.slice(1)
64+
.filter((email) => typeof email === "string" && email.length > 0) ||
65+
[];
6466
const interviewData = {
65-
xaiTemplate: formData.time,
66-
attendeesList,
67+
templateUrl: formData.time,
68+
hostEmail,
69+
guestEmails,
6770
};
6871

6972
try {
@@ -222,7 +225,7 @@ function InterviewDetailsPopup({ open, onClose, candidate, openNext }) {
222225
<div styleName="bottom">
223226
<p styleName="modal-text">
224227
Selecting “Begin Scheduling” will initiate emails to all
225-
attendees to coordinate availabiltiy. Please check your email to
228+
attendees to coordinate availability. Please check your email to
226229
input your availability.
227230
</p>
228231
</div>

src/routes/PositionDetails/components/PositionCandidates/index.jsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ const PositionCandidates = ({ position, statusFilterKey, updateCandidate }) => {
146146
status: CANDIDATE_STATUS.SELECTED,
147147
})
148148
.then(() => {
149-
toastr.success("Candidate is marked as interested.");
149+
toastr.success("Candidate is marked as selected.");
150150
setSelectCandidateOpen(false);
151151
})
152152
.catch((error) => {
@@ -170,7 +170,7 @@ const PositionCandidates = ({ position, statusFilterKey, updateCandidate }) => {
170170
: CANDIDATE_STATUS.CLIENT_REJECTED_SCREENING,
171171
})
172172
.then(() => {
173-
toastr.success("Candidate is marked as not interested.");
173+
toastr.success("Candidate is marked as declined.");
174174
setSelectCandidateOpen(false);
175175
})
176176
.catch((error) => {

src/routes/PositionDetails/components/PrevInterviewItem/index.jsx

+6-4
Original file line numberDiff line numberDiff line change
@@ -10,16 +10,17 @@ import Accordion from "components/Accordion";
1010
import "./styles.module.scss";
1111

1212
function PrevInterviewItem(props) {
13-
const { date, round, emails } = props;
13+
const { date, round, hostEmail, guestEmails } = props;
1414

1515
return (
1616
<Accordion
1717
title={`Interview Round ${round}`}
1818
subhead={formatDate(date)}
19-
sidebar={`${emails.length} Attendees`}
19+
sidebar={`${guestEmails.length + 1} Attendee(s)`}
2020
>
2121
<ul>
22-
{emails.map((email) => (
22+
<li styleName="email">{hostEmail}</li>
23+
{guestEmails.map((email) => (
2324
<li styleName="email">{email}</li>
2425
))}
2526
</ul>
@@ -30,7 +31,8 @@ function PrevInterviewItem(props) {
3031
PrevInterviewItem.propTypes = {
3132
date: PT.string.isRequired,
3233
round: PT.number.isRequired,
33-
emails: PT.arrayOf(PT.string).isRequired,
34+
hostEmail: PT.string.isRequired,
35+
guestEmails: PT.arrayOf(PT.string).isRequired,
3436
};
3537

3638
export default PrevInterviewItem;

src/routes/PositionDetails/components/PreviousInterviewsPopup/index.jsx

+2-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,8 @@ function PreviousInterviewsPopup(props) {
2424
key={interview.id}
2525
round={interview.round}
2626
date={interview.startTimestamp}
27-
emails={interview.attendeesList}
27+
hostEmail={interview.hostEmail}
28+
guestEmails={interview.guestEmails}
2829
/>
2930
));
3031
};

0 commit comments

Comments
 (0)