diff --git a/src/routes/CreateNewTeam/pages/CreateTaasPayment/PaymentRule/index.jsx b/src/routes/CreateNewTeam/pages/CreateTaasPayment/PaymentRule/index.jsx new file mode 100644 index 0000000..1156d21 --- /dev/null +++ b/src/routes/CreateNewTeam/pages/CreateTaasPayment/PaymentRule/index.jsx @@ -0,0 +1,83 @@ +import React, { useState } from "react"; +import cn from "classnames"; +import { useDispatch, useSelector } from "react-redux"; +import { navigate } from "@reach/router"; +import _ from "lodash"; +import { toastr } from "react-redux-toastr"; +import { postTeamRequest } from "services/teams"; +import Button from "components/Button"; +import Checkbox from "components/Checkbox"; +import Spinner from "components/CenteredSpinner"; +import { clearSearchedRoles } from "../../../actions"; + +import "./styles.module.scss"; + +const PaymentRule = ({ calculatedAmount }) => { + const [processing, setProcessing] = useState(false); + const [isChecked, setIsChecked] = useState(false); + const [clicked, setClicked] = useState(true); + const [projectId, setProjectId] = useState(null); + const dispatch = useDispatch(); + const { teamObject } = useSelector((state) => state.searchedRoles); + + const handlePostTeam = async (e) => { + setProcessing(true); + postTeamRequest(teamObject) + .then((res) => { + const projectId = _.get(res, "data.projectId"); + dispatch(clearSearchedRoles()); + navigate(`/taas/myteams/${projectId}`); + }) + .catch((err) => { + toastr.error("Error Requesting Team", err.message); + }) + .finally(() => { + setProcessing(false); + }); + }; + + return ( +
+
Our commitment to you
+
+ We will do everything we can to find the talent you need within the + Topcoder Community. +
+
Your commitment to us
+
+ You will only post genuine job opportunities, and will be responsive and + communicative with the candidates provided. You recognize the + freelancers in the Topcoder Community are real people making big + decisions based on your engagement with them. +
+
+ setIsChecked(!isChecked)} + /> +
+ +
+ ); +}; + +export default PaymentRule; diff --git a/src/routes/CreateNewTeam/pages/CreateTaasPayment/PaymentRule/styles.module.scss b/src/routes/CreateNewTeam/pages/CreateTaasPayment/PaymentRule/styles.module.scss new file mode 100644 index 0000000..bd21f64 --- /dev/null +++ b/src/routes/CreateNewTeam/pages/CreateTaasPayment/PaymentRule/styles.module.scss @@ -0,0 +1,64 @@ +@import "styles/include"; + +.commitment-container { + display: flex; + flex-direction: column; + margin: 0 10px 20px;; + + label { + margin-top: 10px; + font-size: 12px; + line-height: 15px; + span:last-child { + width: 15px; + height: 15px; + &:after { + left: 5px; + top: 2px ; + width: 4px ; + height: 9px ; + border-width: 0 2px 2px 0; + } + } + } + + + button[disabled] { + background-color: #e9e9e9; + color: #fff; + opacity: 1; + filter: none; + } + button { + margin-top: 10px; + display: flex; + width: 100%; + justify-content: center; + &.processing { + pointer-events: none; + } + .spinner { + margin-top: 3px; + margin-right: 5px; + } + } +} +.commitment-title { + @include font-barlow; + + margin-bottom: 2px; + font-weight: 600; + color: #2A2A2A; + font-size: 16px; + line-height: 20px; + text-transform: uppercase; +} + +.commitment-content { + @include font-roboto; + + color: #2A2A2A; + font-size: 14px; + line-height: 22px; + margin-bottom: 10px; +} diff --git a/src/routes/CreateNewTeam/pages/CreateTaasPayment/index.jsx b/src/routes/CreateNewTeam/pages/CreateTaasPayment/index.jsx index d14ff38..0605abb 100644 --- a/src/routes/CreateNewTeam/pages/CreateTaasPayment/index.jsx +++ b/src/routes/CreateNewTeam/pages/CreateTaasPayment/index.jsx @@ -1,5 +1,6 @@ import React, { useState, useEffect, useCallback } from "react"; import _ from "lodash"; +import cn from "classnames"; import { useSelector } from "react-redux"; import { Elements } from "@stripe/react-stripe-js"; import { loadStripe } from "@stripe/stripe-js"; @@ -7,6 +8,7 @@ import { ThemeProvider } from "@material-ui/styles"; import { toastr } from "react-redux-toastr"; import PaymentForm from "./PaymentForm"; +import PaymentRule from "./PaymentRule"; import PageHeader from "components/PageHeader"; import { calculateAmount } from "services/teams"; import Progress from "../../components/Progress"; @@ -134,34 +136,44 @@ const CreateTassPayment = () => { ))} -

Deposit & Refund Terms

- + {calculatedAmount ? ( + <> +

Deposit & Refund Terms

+ + + ) : null} -
+

${calculatedAmount}

Total Deposit


- + {calculatedAmount ? ( + + ) : ( + + )}
diff --git a/src/routes/CreateNewTeam/pages/CreateTaasPayment/styles.module.scss b/src/routes/CreateNewTeam/pages/CreateTaasPayment/styles.module.scss index 14ee489..26a76d1 100644 --- a/src/routes/CreateNewTeam/pages/CreateTaasPayment/styles.module.scss +++ b/src/routes/CreateNewTeam/pages/CreateTaasPayment/styles.module.scss @@ -138,6 +138,10 @@ min-height: 570px; margin-left: 15px; + &.show-rule { + min-height: auto; + } + hr { background-color: #aaaaaa; height: 1px;