From 180f749e7b52dab8b1b650e16c30e39c5cec7e8a Mon Sep 17 00:00:00 2001 From: Patrick Fic <> Date: Mon, 8 Feb 2021 12:00:05 -0800 Subject: [PATCH] Added dates to job admin and locked down dates on detail. IO-628 --- .../jobs-admin-dates.component.jsx | 125 ++++++++++++++++++ .../jobs-detail-dates.component.jsx | 4 +- .../src/pages/jobs-admin/jobs-admin.page.jsx | 2 + 3 files changed, 129 insertions(+), 2 deletions(-) create mode 100644 client/src/components/jobs-admin-dates/jobs-admin-dates.component.jsx diff --git a/client/src/components/jobs-admin-dates/jobs-admin-dates.component.jsx b/client/src/components/jobs-admin-dates/jobs-admin-dates.component.jsx new file mode 100644 index 000000000..ddc95bc48 --- /dev/null +++ b/client/src/components/jobs-admin-dates/jobs-admin-dates.component.jsx @@ -0,0 +1,125 @@ +import { useMutation } from "@apollo/react-hooks"; +import { Button, Form, notification, DatePicker } from "antd"; +import React, { useEffect, useState } from "react"; +import { useTranslation } from "react-i18next"; +import { UPDATE_JOB } from "../../graphql/jobs.queries"; +import DateTimePicker from "../form-date-time-picker/form-date-time-picker.component"; +import LayoutFormRow from "../layout-form-row/layout-form-row.component"; +import moment from "moment"; +export default function JobsAdminDatesChange({ job }) { + const { t } = useTranslation(); + const [loading, setLoading] = useState(false); + const [form] = Form.useForm(); + const [updateJob] = useMutation(UPDATE_JOB); + + const handleFinish = async (values) => { + console.log(values); + setLoading(true); + const result = await updateJob({ + variables: { jobId: job.id, job: values }, + }); + + if (!!!result.errors) { + notification["success"]({ message: t("jobs.successes.save") }); + } else { + notification["error"]({ + message: t("jobs.errors.saving", { + error: JSON.stringify(result.errors), + }), + }); + } + setLoading(false); + //Get the owner details, populate it all back into the job. + }; + + useEffect(() => { + //form.resetFields(); + }, [form, job]); + + return ( +