import { useState, useCallback } from 'react'; import { useTranslation } from 'next-i18next'; import { Modal, ModalBody, } from 'reactstrap'; import { apiv3Post } from '~/client/util/apiv3-client'; type ModalProps = { isOpen: boolean, onClose: () => void, }; const QuestionnaireCompletionModal = (props: ModalProps): JSX.Element => { const { t } = useTranslation('commons'); const { isOpen, onClose } = props; return ( {t('questionnaire_modal.title')} {t('questionnaire_modal.successfully_submitted')} {t('questionnaire_modal.thanks_for_answering')} {t('Close')} ); }; const ProactiveQuestionnaireModal = (props: ModalProps): JSX.Element => { const { t } = useTranslation('commons'); const { isOpen, onClose } = props; const [isQuestionnaireCompletionModal, setQuestionnaireCompletionModal] = useState(false); const submitHandler = useCallback(async(e) => { e.preventDefault(); const formData = e.target.elements; const { satisfaction: { value: satisfaction }, lengthOfExperience: { value: lengthOfExperience }, occupation: { value: occupation }, position: { value: position }, commentText: { value: commentText }, } = formData; const sendValues = { satisfaction: Number(satisfaction), lengthOfExperience, occupation, position, commentText, }; apiv3Post('/questionnaire/proactive/answer', sendValues); onClose(); setQuestionnaireCompletionModal(true); }, [onClose]); return ( <> {t('questionnaire_modal.title')} {t('questionnaire_modal.more_satisfied_services')} {t('questionnaire_modal.strive_to_improve_services')} {t('questionnaire_modal.required')}{t('questionnaire_modal.satisfaction_with_growi')} ▼ {t('Select')} 1 2 3 4 5 {t('questionnaire_modal.history_of_growi_usage')} ▼ {t('Select')} {t('questionnaire_modal.length_of_experience.more_than_two_years')} {t('questionnaire_modal.length_of_experience.one_to_two_years')} {t('questionnaire_modal.length_of_experience.six_months_to_one_year')} {t('questionnaire_modal.length_of_experience.three_months_to_six_months')} {t('questionnaire_modal.length_of_experience.one_month_to_three_months')} {t('questionnaire_modal.length_of_experience.less_than_one_month')} {t('questionnaire_modal.occupation')} {t('questionnaire_modal.position')} {t('questionnaire_modal.required')}{t('questionnaire_modal.comment_on_growi')} {t('questionnaire_modal.submit')} {t('questionnaire_modal.close')} setQuestionnaireCompletionModal(false)} /> > ); }; export default ProactiveQuestionnaireModal;
{t('questionnaire_modal.successfully_submitted')}
{t('questionnaire_modal.thanks_for_answering')}
{t('questionnaire_modal.more_satisfied_services')}
{t('questionnaire_modal.strive_to_improve_services')}