removed notifymessage and added toastify for event feedback and redirect

This commit is contained in:
Toni L
2021-03-30 21:09:28 +03:00
parent 7eb5ee1a63
commit 7fa3ae1af7
4 changed files with 24 additions and 25 deletions
+6 -7
View File
@@ -11,6 +11,7 @@ import EventApi from "@api/eventApi";
import DatetimeWidget from "@components/Widgets/DatetimeWidget";
import SectionDividerWidget from "@components/Widgets/SectionDividerWidget";
import MarkdownEditorWidget from "@components/Widgets/MarkdownEditorWidget";
import { toast } from "react-toastify";
const widgets = {
datetime: DatetimeWidget,
@@ -167,7 +168,6 @@ const EventCreatePage: NextPage = () => {
const [tags, setTags] = useState<Tag[]>([]);
const [signupForms, setSignupForms] = useState<SignupForm[]>([]);
const [error, setError] = useState<string>(null);
const [statusMessage, setStatusMessage] = useState<string>(null);
const router = useRouter();
@@ -199,7 +199,6 @@ const EventCreatePage: NextPage = () => {
}, [id]);
const onSubmit = async (data: any) => {
window.scrollTo(0, 0);
try {
const payload = data.formData;
payload.signup_id = payload.signupForm;
@@ -214,7 +213,8 @@ const EventCreatePage: NextPage = () => {
// resp.signupForm = (resp.signupForm as any).map(inst => inst.id);
resp.tags = data.formData.tags;
resp.signupForm = data.formData.signupForm;
setStatusMessage("Event created successfully");
toast("Event created successfully 😎");
router.push("/admin/events");
setFormData(resp);
} else {
const resp = await EventApi.updateEvent(payload);
@@ -224,16 +224,17 @@ const EventCreatePage: NextPage = () => {
// resp.signupForm = (resp.signupForm as any).map(inst => inst.id);
resp.tags = data.formData.tags;
resp.signupForm = data.formData.signupForm;
setStatusMessage("Event updated successfully");
toast("Event updated successfully 😎");
router.push("/admin/events");
setFormData(resp);
}
} catch (err) {
toast("Uh oh! Something went wrong! Try again later. 😟");
setError(err);
}
};
const onChange = (data: any) => setFormData(data.formData);
const onFocus = () => setStatusMessage(null);
const title = formData?.id
? `Edit Event "${formData.title_fi}"`
: "Create Event";
@@ -245,9 +246,7 @@ const EventCreatePage: NextPage = () => {
schema={buildSchema(formData, signupForms, tags)}
UISchema={buildUISchema()}
onChange={onChange}
onFocus={onFocus}
onSubmit={onSubmit}
statusMessage={statusMessage}
error={error}
widgets={widgets}
/>
+6 -6
View File
@@ -9,6 +9,7 @@ import FeedApi from "@api/feedApi";
import DatetimeWidget from "@components/Widgets/DatetimeWidget";
import SectionDividerWidget from "@components/Widgets/SectionDividerWidget";
import MarkdownEditorWidget from "@components/Widgets/MarkdownEditorWidget";
import { toast } from "react-toastify";
const widgets = {
datetime: DatetimeWidget,
@@ -133,7 +134,6 @@ const FeedCreatePage: NextPage = () => {
const [formData, setFormData] = useState<Post>(null);
const [tags, setTags] = useState<Tag[]>([]);
const [error, setError] = useState<string>(null);
const [statusMessage, setStatusMessage] = useState<string>(null);
const router = useRouter();
@@ -167,21 +167,23 @@ const FeedCreatePage: NextPage = () => {
if (payload.id === undefined) {
const resp = await FeedApi.createPost(payload);
// resp.tags = resp.tags;
setStatusMessage("Post created successfully");
toast("Post created successfully 😎");
router.push("/admin/feed");
setFormData(resp);
} else {
const resp = await FeedApi.updatePost(payload);
// resp.tags = resp.tag_id;
setStatusMessage("Post updated successfully");
toast("Post updated successfully 😎");
router.push("/admin/feed");
setFormData(resp);
}
} catch (err) {
toast("Uh oh! Something went wrong! Try again later. 😟");
setError(err);
}
};
const onChange = (data) => setFormData(data.formData);
const onFocus = () => setStatusMessage(null);
const title = formData?.id
? `Edit Post "${formData.title_fi}"`
@@ -194,9 +196,7 @@ const FeedCreatePage: NextPage = () => {
schema={buildSchema(formData, tags)}
UISchema={buildUISchema(formData)}
onChange={onChange}
onFocus={onFocus}
onSubmit={onSubmit}
statusMessage={statusMessage}
error={error}
widgets={widgets}
/>
+6 -6
View File
@@ -7,6 +7,7 @@ import JobAdApi from "@api/jobAdApi";
import DatetimeWidget from "@components/Widgets/DatetimeWidget";
import SectionDividerWidget from "@components/Widgets/SectionDividerWidget";
import MarkdownEditorWidget from "@components/Widgets/MarkdownEditorWidget";
import { toast } from "react-toastify";
const widgets = {
datetime: DatetimeWidget,
@@ -108,7 +109,6 @@ const buildUISchema = (formData: JobAd) => ({
const JobAdCreatePage: NextPage = () => {
const [formData, setFormData] = useState<JobAd>(null);
const [error, setError] = useState<string>(null);
const [statusMessage, setStatusMessage] = useState<string>(null);
const router = useRouter();
@@ -132,20 +132,22 @@ const JobAdCreatePage: NextPage = () => {
const payload = data.formData;
if (payload.id === undefined) {
const resp = await JobAdApi.createJobAd(payload);
setStatusMessage("Post created successfully");
toast("Job ad created successfully 😎");
router.push("/admin/jobads");
setFormData(resp);
} else {
const resp = await JobAdApi.updateJobAd(payload);
setStatusMessage("Post updated successfully");
toast("Job ad updated successfully 😎");
router.push("/admin/jobads");
setFormData(resp);
}
} catch (err) {
toast("Uh oh! Something went wrong! Try again later. 😟");
setError(err);
}
};
const onChange = (data) => setFormData(data.formData);
const onFocus = () => setStatusMessage(null);
const title = formData?.id
? `Edit Ad "${formData.title_fi}"`
@@ -158,9 +160,7 @@ const JobAdCreatePage: NextPage = () => {
schema={buildSchema(formData)}
UISchema={buildUISchema(formData)}
onChange={onChange}
onFocus={onFocus}
onSubmit={onSubmit}
statusMessage={statusMessage}
error={error}
widgets={widgets}
/>
+6 -6
View File
@@ -8,6 +8,7 @@ import DatetimeWidget from "@components/Widgets/DatetimeWidget";
import SignupQuestionsWidget from "@components/Widgets/SignupQuestionsWidget/SignupQuestionsWidget";
import MarkdownEditorWidget from "@components/Widgets/MarkdownEditorWidget";
import { buildValidationSchema } from "@views/SignUpPage/FormUtils";
import { toast } from "react-toastify";
const DEFAULT_EMAIL = `Moikka,
@@ -98,7 +99,6 @@ const buildUISchema = () => {
const SignupCreatePage: NextPage = () => {
const [formData, setFormData] = useState<SignupForm>(null);
const [error, setError] = useState<string>(null);
const [statusMessage, setStatusMessage] = useState<string>(null);
const router = useRouter();
@@ -133,26 +133,28 @@ const SignupCreatePage: NextPage = () => {
if (payload.id === undefined) {
const resp = await SignupApi.createForm(payload);
setStatusMessage("Sign-up created successfully");
toast("Sign-up created successfully 😎");
router.push("/admin/signups");
setFormData({
...resp,
questions: JSON.stringify(resp.questions) as any,
});
} else {
const resp = await SignupApi.updateForm(payload);
setStatusMessage("Sign-up updated successfully");
toast("Sign-up updated successfully 😎");
router.push("/admin/signups");
setFormData({
...resp,
questions: JSON.stringify(resp.questions) as any,
});
}
} catch (err) {
toast("Uh oh! Something went wrong! Try again later. 😟");
setError(err);
}
};
const onChange = (data) => setFormData(data.formData);
const onFocus = () => setStatusMessage(null);
const title = formData?.id
? `Edit Sign-up Form "${formData.title_fi}"`
@@ -166,9 +168,7 @@ const SignupCreatePage: NextPage = () => {
schema={buildSchema(formData)}
UISchema={buildUISchema()}
onChange={onChange}
onFocus={onFocus}
onSubmit={onSubmit}
statusMessage={statusMessage}
error={error}
widgets={widgets}
/>