Parent Waiting View Added & Market Link goes to bad page fixed

This commit is contained in:
2023-07-06 06:33:33 +01:00
parent bbb099d51f
commit 626835e1e0
5 changed files with 220 additions and 172 deletions
+39 -23
View File
@@ -1,4 +1,5 @@
import React, { useMemo, useState } from "react";
import { useState } from "react";
import { useLocation } from "react-router-dom";
import ModalCom from "../Helpers/ModalCom";
import { Form, Formik } from "formik";
import InputCom from "../Helpers/Inputs/InputCom";
@@ -6,6 +7,7 @@ import usersService from "../../services/UsersService";
const DEFAULT_IMAGE = require("../../assets/images/family/default.jpg");
const SuggestTask = ({ details, onClose, situation }) => {
const { pathname, state } = useLocation();
const [submitTask, setSubmitTask] = useState({
loading: false,
msg: "",
@@ -16,16 +18,16 @@ const SuggestTask = ({ details, onClose, situation }) => {
const initialValues = {
title: details?.title || "",
description: details?.description || "",
banner: details?.banner
banner: details?.banner,
};
const apiCall = new usersService();
const handleSubmit = async (values) => {
if(!values.title && !values.description) return;
if (!values.title && !values.description) return;
try {
setSubmitTask({ loading: true });
const reqData = { ...values, };
const reqData = { ...values };
const res = await apiCall.sendFamilySuggestedTasks(reqData);
if (res.internal_return < 0) {
setSubmitTask({ loading: false, msg: res.status, state: "bad" });
@@ -40,12 +42,16 @@ const SuggestTask = ({ details, onClose, situation }) => {
throw new Error("Error Occurred", error);
}
};
// console.log("state >-->>", state);
return (
<ModalCom action={onClose} situation={situation}>
<div className="logout-modal-wrapper lw-[90%] md:w-[768px] h-full lg:h-auto bg-white dark:bg-dark-white lg:rounded-2xl overflow-y-auto">
<div className="logout-modal-header w-full flex items-center justify-between lg:p-6 px-[30px] py-[23px] border-b dark:border-[#5356fb29] border-light-purple">
<h1 className="text-base md:text-lg font-bold text-dark-gray dark:text-white tracking-wide">
Suggest to Parent
{pathname === "/manage-family"
? `${state?.firstname}'s Suggested Task`
: "Suggest to Parent"}
</h1>
<button
type="button"
@@ -93,10 +99,16 @@ const SuggestTask = ({ details, onClose, situation }) => {
{/* Title */}
<div className="field w-full mb-[15px]">
<InputCom
fieldClass="px-6"
fieldClass={
pathname === "/manage-family" ? "px-2" : "px-6"
}
label="Title"
labelClass="tracking-wide"
inputBg="bg-slate-100"
inputBg={
pathname === "/manage-family"
? "bg-white"
: "bg-slate-100"
}
inputClass="disabled:cursor-default"
type="text"
name="title"
@@ -129,7 +141,11 @@ const SuggestTask = ({ details, onClose, situation }) => {
<textarea
id="description"
rows="5"
className={`input-field px-3 pt-2 placeholder:text-base text-dark-gray dark:text-white w-full h-[130px] bg-slate-100 dark:bg-[#11131F] focus:ring-0 focus:outline-[#dce4e9] rounded-[10px]`}
className={`input-field pt-2 placeholder:text-base text-dark-gray dark:text-white w-full h-[130px] ${
pathname === "/manage-family"
? "px-2"
: "bg-slate-100 px-3 dark:bg-[#11131F] focus:ring-0 focus:outline-[#dce4e9] rounded-[10px]"
}`}
style={{ resize: "none" }}
name="description"
value={props.values.description}
@@ -148,21 +164,21 @@ const SuggestTask = ({ details, onClose, situation }) => {
>
<span className="text-gradient"> Cancel</span>
</button>
<button
type="submit"
disabled={props.isSubmitting}
className="text-white primary-gradient text-18 tracking-wide px-4 py-3 rounded-full"
>
{submitTask.loading
? "Submitting Task"
: submitTask.state == "success"
? "Task Submitted"
: submitTask.state == "bad"
? "An Error Occurred"
: "Send to Parents"}
</button>
{/* )} */}
{pathname !== "/manage-family" && (
<button
type="submit"
disabled={props.isSubmitting}
className="text-white primary-gradient text-18 tracking-wide px-4 py-3 rounded-full"
>
{submitTask.loading
? "Submitting Task"
: submitTask.state == "success"
? "Task Submitted"
: submitTask.state == "bad"
? "An Error Occurred"
: "Send to Parents"}
</button>
)}
</div>
</div>
</Form>