diff --git a/src/components/SendMessageWizard/MessageForm.jsx b/src/components/SendMessageWizard/MessageForm.jsx index 8e81591..cfa8e52 100644 --- a/src/components/SendMessageWizard/MessageForm.jsx +++ b/src/components/SendMessageWizard/MessageForm.jsx @@ -3,9 +3,10 @@ import styles from './SendMessageWizard.module.css'; import { tokenService } from '../../services/TokenService'; import { messageApi, CreateMessageRequest } from '../../api/messageApi'; -function MessageForm({ message, onMessageChange, onMessageCreated }) { +function MessageForm({ message, onMessageChange, onMessageCreated, onToggleScheduled }) { const [characterCount, setCharacterCount] = useState(message.length); const [isCreatingMessage, setIsCreatingMessage] = useState(false); + const [isScheduledChecked, setIsScheduledChecked] = useState(false); const [createdMessage, setCreatedMessage] = useState(null); const handleMessageChange = (e) => { @@ -14,6 +15,12 @@ function MessageForm({ message, onMessageChange, onMessageCreated }) { setCharacterCount(newMessage.length); }; + const handleIsScheduledCheckbox = (event) => { + console.log('Doing something to the checkbox'); + setIsScheduledChecked(event.target.checked); + onToggleScheduled(event.target.checked); + }; + const createMessage = async () => { if (!message.trim()) { return; @@ -97,6 +104,17 @@ function MessageForm({ message, onMessageChange, onMessageCreated }) {
  • Check spelling and grammar
  • +
    + +
    ); } diff --git a/src/components/SendMessageWizard/SendMessageWizardModal.jsx b/src/components/SendMessageWizard/SendMessageWizardModal.jsx index 01551e1..1f40c06 100644 --- a/src/components/SendMessageWizard/SendMessageWizardModal.jsx +++ b/src/components/SendMessageWizard/SendMessageWizardModal.jsx @@ -26,6 +26,7 @@ function SendMessageWizardModal({ isOpen, onClose, onComplete }) { message={wizard.message} onMessageChange={wizard.setMessage} onMessageCreated={wizard.setCreatedMessage} + onToggleScheduled={wizard.toggleScheduled} /> ); case 'confirm': diff --git a/src/components/SendMessageWizard/useSendMessageWizard.js b/src/components/SendMessageWizard/useSendMessageWizard.js index a717f38..d086b91 100644 --- a/src/components/SendMessageWizard/useSendMessageWizard.js +++ b/src/components/SendMessageWizard/useSendMessageWizard.js @@ -13,6 +13,7 @@ const useSendMessageWizard = () => { message: '', createdMessage: null, isSubmitting: false, + isScheduled: false, submissionError: null, }); @@ -44,6 +45,14 @@ const useSendMessageWizard = () => { })); }; + const toggleScheduled = (scheduled) => { + console.log('Yup'); + setState((prev) => ({ + ...prev, + isScheduled: scheduled + })); + }; + const setMessage = (message) => { setState((prev) => ({ ...prev, message })); }; @@ -56,6 +65,13 @@ const useSendMessageWizard = () => { const nextStep = () => { if (!canProceedToNextStep()) return; + console.log('Going to next step'); + console.log(state.isScheduled); + + if (state.isScheduled) { + console.log('Scheduled Checked'); + } + const stepOrder = ['select', 'message', 'confirm', 'result']; const currentIndex = stepOrder.indexOf(state.step); if (currentIndex < stepOrder.length - 1) { @@ -109,6 +125,7 @@ const useSendMessageWizard = () => { ...prev, step: 'result', isSubmitting: false, + isScheduled: false, })); } } catch (error) { @@ -121,6 +138,7 @@ const useSendMessageWizard = () => { ...prev, submissionError: error.message || 'Failed to send messages', isSubmitting: false, + isScheduled: false, })); } }; @@ -133,6 +151,7 @@ const useSendMessageWizard = () => { message: '', createdMessage: null, isSubmitting: false, + isScheduled: false, submissionError: null, }); }; @@ -149,12 +168,14 @@ const useSendMessageWizard = () => { message: state.message, createdMessage: state.createdMessage, isSubmitting: state.isSubmitting, + isScheduled: state.isScheduled, submissionError: state.submissionError, canProceedToNextStep: canProceedToNextStep(), canGoBack, // Actions toggleContact, + toggleScheduled, setMessage, setCreatedMessage, nextStep,