commit
954f696044
@ -3,14 +3,14 @@ import {
|
|||||||
BrowserRouter as Router,
|
BrowserRouter as Router,
|
||||||
Route,
|
Route,
|
||||||
Routes,
|
Routes,
|
||||||
Navigate,
|
Navigate
|
||||||
} from "react-router-dom";
|
} from "react-router-dom";
|
||||||
|
|
||||||
import { getNotification } from "@redux/outstaffingSlice";
|
import { getNotification } from "@redux/outstaffingSlice";
|
||||||
|
|
||||||
import Auth from "./pages/Auth/Auth";
|
import Auth from "./pages/Auth/Auth";
|
||||||
import CatalogSpecialists from "@pages/CatalogSpecialists/CatalogSpecialists";
|
import CatalogSpecialists from "@pages/CatalogSpecialists/CatalogSpecialists";
|
||||||
import { TrackerIntro } from "@pages/TrackerIntro/TrackerIntro"
|
import { TrackerIntro } from "@pages/TrackerIntro/TrackerIntro";
|
||||||
import { CompanyInfo } from "@pages/CompanyInfo/CompanyInfo";
|
import { CompanyInfo } from "@pages/CompanyInfo/CompanyInfo";
|
||||||
import { TrackerAuth } from "@pages/TrackerAuth/TrackerAuth";
|
import { TrackerAuth } from "@pages/TrackerAuth/TrackerAuth";
|
||||||
import { TrackerRegistration } from "@pages/TrackerRegistration/TrackerRegistration";
|
import { TrackerRegistration } from "@pages/TrackerRegistration/TrackerRegistration";
|
||||||
@ -57,7 +57,7 @@ import "./assets/fonts/stylesheet.css";
|
|||||||
import "bootstrap/dist/css/bootstrap.min.css";
|
import "bootstrap/dist/css/bootstrap.min.css";
|
||||||
|
|
||||||
const App = () => {
|
const App = () => {
|
||||||
const notification = useSelector(getNotification)
|
const notification = useSelector(getNotification);
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<Router>
|
<Router>
|
||||||
@ -65,10 +65,22 @@ const App = () => {
|
|||||||
<Route exact path="/auth" element={<Auth />} />
|
<Route exact path="/auth" element={<Auth />} />
|
||||||
<Route exact path="/tracker-intro" element={<TrackerIntro />} />
|
<Route exact path="/tracker-intro" element={<TrackerIntro />} />
|
||||||
<Route exact path="/tracker-auth" element={<TrackerAuth />} />
|
<Route exact path="/tracker-auth" element={<TrackerAuth />} />
|
||||||
<Route exact path="/tracker-registration" element={<TrackerRegistration />} />
|
<Route
|
||||||
|
exact
|
||||||
|
path="/tracker-registration"
|
||||||
|
element={<TrackerRegistration />}
|
||||||
|
/>
|
||||||
<Route exact path="/company" element={<CompanyInfo />} />
|
<Route exact path="/company" element={<CompanyInfo />} />
|
||||||
<Route exact path="/registration-setting" element={<RegistrationSetting />} />
|
<Route
|
||||||
<Route exact path="/catalog-specialists" element={<CatalogSpecialists />} />
|
exact
|
||||||
|
path="/registration-setting"
|
||||||
|
element={<RegistrationSetting />}
|
||||||
|
/>
|
||||||
|
<Route
|
||||||
|
exact
|
||||||
|
path="/catalog-specialists"
|
||||||
|
element={<CatalogSpecialists />}
|
||||||
|
/>
|
||||||
|
|
||||||
<Route exact path="/worker/:id" element={<FreeDevelopers />} />
|
<Route exact path="/worker/:id" element={<FreeDevelopers />} />
|
||||||
<Route
|
<Route
|
||||||
@ -113,18 +125,26 @@ const App = () => {
|
|||||||
<Route exact path="catalog" element={<Home />} />
|
<Route exact path="catalog" element={<Home />} />
|
||||||
<Route exact path="calendar" element={<ProfileCalendar />} />
|
<Route exact path="calendar" element={<ProfileCalendar />} />
|
||||||
<Route exact path="calendar/report" element={<ReportForm />} />
|
<Route exact path="calendar/report" element={<ReportForm />} />
|
||||||
<Route exact path="calendar/view/:date/:id" element={<ViewReport />} />
|
<Route
|
||||||
|
exact
|
||||||
|
path="calendar/view/:date/:id"
|
||||||
|
element={<ViewReport />}
|
||||||
|
/>
|
||||||
<Route exact path="summary" element={<Summary />} />
|
<Route exact path="summary" element={<Summary />} />
|
||||||
<Route exact path="tracker" element={<Tracker />} />
|
<Route exact path="tracker" element={<Tracker />} />
|
||||||
<Route exact path="statistics/:id" element={<Statistics/>}/>
|
<Route exact path="statistics/:id" element={<Statistics />} />
|
||||||
<Route exact path="payouts" element={<Payouts />} />
|
<Route exact path="payouts" element={<Payouts />} />
|
||||||
<Route exact path="settings" element={<PartnerSettings />} />
|
<Route exact path="settings" element={<PartnerSettings />} />
|
||||||
<Route exact path="requests" element={<PartnerRequests />} />
|
<Route exact path="requests" element={<PartnerRequests />} />
|
||||||
<Route exact path="add-request" element={<PartnerAddRequest />} />
|
<Route exact path="requests-add" element={<PartnerAddRequest />} />
|
||||||
<Route exact path="edit-request" element={<PartnerAddRequest />} />
|
<Route exact path="requests-edit" element={<PartnerAddRequest />} />
|
||||||
<Route exact path="bid" element={<PartnerBid />} />
|
<Route exact path="requests-bid" element={<PartnerBid />} />
|
||||||
<Route exact path="employees" element={<PartnerCategories />} />
|
<Route exact path="employees" element={<PartnerCategories />} />
|
||||||
<Route exact path="employees/report/:uuid" element={<PartnerEmployeeReport />} />
|
<Route
|
||||||
|
exact
|
||||||
|
path="employees/report/:uuid"
|
||||||
|
element={<PartnerEmployeeReport />}
|
||||||
|
/>
|
||||||
<Route exact path="treaties" element={<PartnerTreaties />} />
|
<Route exact path="treaties" element={<PartnerTreaties />} />
|
||||||
<Route exact path="quiz">
|
<Route exact path="quiz">
|
||||||
<Route index element={<QuizPage />} />
|
<Route index element={<QuizPage />} />
|
||||||
@ -139,7 +159,6 @@ const App = () => {
|
|||||||
/>
|
/>
|
||||||
</Route>
|
</Route>
|
||||||
|
|
||||||
|
|
||||||
<Route exact path="profile-candidate/:id">
|
<Route exact path="profile-candidate/:id">
|
||||||
<Route index element={<ProfileCandidate />} />
|
<Route index element={<ProfileCandidate />} />
|
||||||
</Route>
|
</Route>
|
||||||
@ -147,9 +166,7 @@ const App = () => {
|
|||||||
<Route path="*" element={<Navigate to="/auth" replace />} />
|
<Route path="*" element={<Navigate to="/auth" replace />} />
|
||||||
</Routes>
|
</Routes>
|
||||||
</Router>
|
</Router>
|
||||||
{notification.show &&
|
{notification.show && <Notification />}
|
||||||
<Notification />
|
|
||||||
}
|
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
};
|
};
|
@ -79,8 +79,8 @@ const Calendar = () => {
|
|||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<Footer />
|
|
||||||
</section>
|
</section>
|
||||||
|
<Footer />
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
.calendar {
|
.calendar {
|
||||||
margin-bottom: 40px;
|
margin-bottom: 40px;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
|
|
||||||
&__header {
|
&__header {
|
||||||
display: flex;
|
display: flex;
|
||||||
@ -136,10 +135,6 @@
|
|||||||
line-height: normal;
|
line-height: normal;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
footer {
|
|
||||||
margin-top: 2rem !important;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@media (max-width: 575.98px) {
|
@media (max-width: 575.98px) {
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
margin: 10px 0;
|
margin: 10px 0;
|
||||||
background-color: #f9f9f9;
|
background-color: #f9f9f9;
|
||||||
padding: 20px 30px;
|
padding: 20px 30px;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
|
|
||||||
&__header {
|
&__header {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
@ -233,8 +233,8 @@ const Candidate = () => {
|
|||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<Footer />
|
|
||||||
</div>
|
</div>
|
||||||
|
<Footer />
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
@ -148,12 +148,6 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
footer {
|
|
||||||
margin-top: 2.5rem !important;
|
|
||||||
position: relative;
|
|
||||||
z-index: -2;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@media (max-width: 375.98px) {
|
@media (max-width: 375.98px) {
|
||||||
|
@ -6,7 +6,6 @@
|
|||||||
border-radius: 44px;
|
border-radius: 44px;
|
||||||
color: white;
|
color: white;
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
border: none;
|
border: none;
|
||||||
transition: 0.5s;
|
transition: 0.5s;
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ export const Loader = ({ width = 50, height = 50, style }) => {
|
|||||||
<div className="loader">
|
<div className="loader">
|
||||||
<SVGLoader
|
<SVGLoader
|
||||||
type="Circles"
|
type="Circles"
|
||||||
color={style ? style : `#fff`}
|
color={style ? style : `green`}
|
||||||
height={height}
|
height={height}
|
||||||
width={width}
|
width={width}
|
||||||
/>
|
/>
|
||||||
|
@ -5,7 +5,6 @@
|
|||||||
justify-content: center;
|
justify-content: center;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
position: relative;
|
position: relative;
|
||||||
|
|
||||||
//&:hover {
|
//&:hover {
|
||||||
// path {
|
// path {
|
||||||
// fill: #6aaf5c;
|
// fill: #6aaf5c;
|
||||||
|
@ -18,7 +18,6 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
&__empty {
|
&__empty {
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
|
@ -92,8 +92,8 @@ export const FreeDevelopers = () => {
|
|||||||
</BaseButton>
|
</BaseButton>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<Footer />
|
|
||||||
</div>
|
</div>
|
||||||
|
<Footer />
|
||||||
</section>
|
</section>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
.free-dev {
|
.free-dev {
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
position: relative;
|
position: relative;
|
||||||
background-color: #f1f1f1;
|
background-color: #f1f1f1;
|
||||||
|
@ -77,7 +77,6 @@
|
|||||||
line-height: 32px;
|
line-height: 32px;
|
||||||
color: #1458dd;
|
color: #1458dd;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
h2 {
|
h2 {
|
||||||
@ -780,7 +779,6 @@
|
|||||||
|
|
||||||
.react-datepicker__current-month {
|
.react-datepicker__current-month {
|
||||||
font-size: 18px;
|
font-size: 18px;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
text-transform: capitalize;
|
text-transform: capitalize;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -823,7 +821,6 @@
|
|||||||
.react-datepicker__day {
|
.react-datepicker__day {
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
width: 35px;
|
width: 35px;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
border-radius: 50px;
|
border-radius: 50px;
|
||||||
padding: 7px;
|
padding: 7px;
|
||||||
}
|
}
|
||||||
@ -832,7 +829,6 @@
|
|||||||
font-size: 18px;
|
font-size: 18px;
|
||||||
width: 35px;
|
width: 35px;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.react-datepicker__triangle {
|
.react-datepicker__triangle {
|
||||||
|
@ -30,6 +30,7 @@ import { useNotification } from "@hooks/useNotification";
|
|||||||
|
|
||||||
import { getCorrectDate } from "@components/Calendar/calendarHelper";
|
import { getCorrectDate } from "@components/Calendar/calendarHelper";
|
||||||
import BaseButton from "@components/Common/BaseButton/BaseButton";
|
import BaseButton from "@components/Common/BaseButton/BaseButton";
|
||||||
|
import { Loader } from "@components/Common/Loader/Loader";
|
||||||
import ModalLayout from "@components/Common/ModalLayout/ModalLayout";
|
import ModalLayout from "@components/Common/ModalLayout/ModalLayout";
|
||||||
|
|
||||||
import arrowRight from "assets/icons/arrows/arrowRightCreateTask.svg";
|
import arrowRight from "assets/icons/arrows/arrowRightCreateTask.svg";
|
||||||
@ -90,6 +91,7 @@ export const TrackerModal = ({
|
|||||||
const [deadLineDate, setDeadLineDate] = useState("");
|
const [deadLineDate, setDeadLineDate] = useState("");
|
||||||
const [datePickerOpen, setDatePickerOpen] = useState(false);
|
const [datePickerOpen, setDatePickerOpen] = useState(false);
|
||||||
const [startDate, setStartDate] = useState(new Date());
|
const [startDate, setStartDate] = useState(new Date());
|
||||||
|
const [loader, setLoader] = useState(false);
|
||||||
|
|
||||||
const priority = [
|
const priority = [
|
||||||
{
|
{
|
||||||
@ -138,6 +140,8 @@ export const TrackerModal = ({
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
setLoader(true);
|
||||||
|
|
||||||
apiRequest("/task/create-task", {
|
apiRequest("/task/create-task", {
|
||||||
method: "POST",
|
method: "POST",
|
||||||
data: {
|
data: {
|
||||||
@ -158,6 +162,7 @@ export const TrackerModal = ({
|
|||||||
text: "Задача с таким именем уже существует",
|
text: "Задача с таким именем уже существует",
|
||||||
type: "error"
|
type: "error"
|
||||||
});
|
});
|
||||||
|
setLoader(false);
|
||||||
} else {
|
} else {
|
||||||
for (let i = 0; i < taskTags.length; i++) {
|
for (let i = 0; i < taskTags.length; i++) {
|
||||||
apiRequest("/mark/attach", {
|
apiRequest("/mark/attach", {
|
||||||
@ -185,9 +190,11 @@ export const TrackerModal = ({
|
|||||||
setDescriptionTicket("");
|
setDescriptionTicket("");
|
||||||
setSelectedExecutorTask("Выберите исполнителя");
|
setSelectedExecutorTask("Выберите исполнителя");
|
||||||
setSelectedPriority(null);
|
setSelectedPriority(null);
|
||||||
|
setLoader(false);
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
setActive(false);
|
setActive(false);
|
||||||
|
setLoader(false);
|
||||||
setValueTicket("");
|
setValueTicket("");
|
||||||
setDescriptionTicket("");
|
setDescriptionTicket("");
|
||||||
dispatch(setProjectBoardFetch(projectBoard.id));
|
dispatch(setProjectBoardFetch(projectBoard.id));
|
||||||
@ -703,9 +710,13 @@ export const TrackerModal = ({
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
{loader ? (
|
||||||
|
<Loader style={"green"} />
|
||||||
|
) : (
|
||||||
<BaseButton styles={"button-add"} onClick={createTicket}>
|
<BaseButton styles={"button-add"} onClick={createTicket}>
|
||||||
Создать
|
Создать
|
||||||
</BaseButton>
|
</BaseButton>
|
||||||
|
)}
|
||||||
</div>
|
</div>
|
||||||
</>
|
</>
|
||||||
)}
|
)}
|
||||||
|
@ -172,7 +172,8 @@
|
|||||||
|
|
||||||
.executor {
|
.executor {
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
column-gap: 5px;
|
||||||
|
align-items: center;
|
||||||
&:hover {
|
&:hover {
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
}
|
}
|
||||||
@ -650,7 +651,6 @@
|
|||||||
|
|
||||||
.react-datepicker__current-month {
|
.react-datepicker__current-month {
|
||||||
font-size: 18px;
|
font-size: 18px;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
text-transform: capitalize;
|
text-transform: capitalize;
|
||||||
padding-bottom: 8px;
|
padding-bottom: 8px;
|
||||||
}
|
}
|
||||||
@ -694,7 +694,6 @@
|
|||||||
.react-datepicker__day {
|
.react-datepicker__day {
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
width: 35px;
|
width: 35px;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
border-radius: 50px;
|
border-radius: 50px;
|
||||||
padding: 7px;
|
padding: 7px;
|
||||||
}
|
}
|
||||||
@ -703,7 +702,6 @@
|
|||||||
font-size: 18px;
|
font-size: 18px;
|
||||||
width: 35px;
|
width: 35px;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.react-datepicker__triangle {
|
.react-datepicker__triangle {
|
||||||
|
@ -45,6 +45,7 @@ export const Navigation = () => {
|
|||||||
partner: [
|
partner: [
|
||||||
{
|
{
|
||||||
path: "/catalog",
|
path: "/catalog",
|
||||||
|
active: "candidate",
|
||||||
name: "Каталог"
|
name: "Каталог"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -53,6 +54,7 @@ export const Navigation = () => {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: "/employees",
|
path: "/employees",
|
||||||
|
active: "calendar",
|
||||||
name: "Персонал"
|
name: "Персонал"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -80,7 +82,12 @@ export const Navigation = () => {
|
|||||||
key={index}
|
key={index}
|
||||||
end
|
end
|
||||||
to={link.path === "/Quiz" ? link.path : `/profile${link.path}`}
|
to={link.path === "/Quiz" ? link.path : `/profile${link.path}`}
|
||||||
className={currentPath.includes(link.path) ? "active" : ""}
|
className={
|
||||||
|
currentPath.includes(link.path) ||
|
||||||
|
currentPath.includes(link.active)
|
||||||
|
? "active"
|
||||||
|
: ""
|
||||||
|
}
|
||||||
>
|
>
|
||||||
{link.name}
|
{link.name}
|
||||||
</NavLink>
|
</NavLink>
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
position: fixed;
|
position: fixed;
|
||||||
bottom: 25px;
|
bottom: 25px;
|
||||||
right: 25px;
|
right: 25px;
|
||||||
z-index: 20;
|
z-index: 10000;
|
||||||
|
|
||||||
&__info {
|
&__info {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
@ -1,7 +1,3 @@
|
|||||||
body {
|
|
||||||
font-family: "LabGrotesque", sans-serif !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
max-width: 1160px !important;
|
max-width: 1160px !important;
|
||||||
}
|
}
|
||||||
@ -9,7 +5,6 @@ body {
|
|||||||
background: #f1f1f1;
|
background: #f1f1f1;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
padding-top: 23px;
|
padding-top: 23px;
|
||||||
|
|
||||||
&__title {
|
&__title {
|
||||||
|
@ -1,12 +1,15 @@
|
|||||||
.profile__calendar {
|
.profile__calendar {
|
||||||
background: #f1f1f1;
|
background: #f1f1f1;
|
||||||
height: 100%;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
max-width: 1160px;
|
max-width: 1160px;
|
||||||
margin-top: 23px;
|
margin-top: 23px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
flex: 1;
|
||||||
|
|
||||||
@media (max-width: 570px) {
|
@media (max-width: 570px) {
|
||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
|
@ -3,6 +3,8 @@
|
|||||||
height: 80px;
|
height: 80px;
|
||||||
background: #e1fccf;
|
background: #e1fccf;
|
||||||
padding: 20px;
|
padding: 20px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
|
||||||
&__head {
|
&__head {
|
||||||
background: #e1fccf;
|
background: #e1fccf;
|
||||||
|
@ -135,7 +135,7 @@ export const ProjectTicket = ({ project, index }) => {
|
|||||||
<img src={edit}></img>
|
<img src={edit}></img>
|
||||||
<p>редактировать</p>
|
<p>редактировать</p>
|
||||||
</div>
|
</div>
|
||||||
<div onClick={copyProjectLink(project.id)}>
|
<div onClick={() => copyProjectLink(project.id)}>
|
||||||
<img src={link}></img>
|
<img src={link}></img>
|
||||||
<p>скопировать ссылку</p>
|
<p>скопировать ссылку</p>
|
||||||
</div>
|
</div>
|
||||||
|
@ -1,8 +1,6 @@
|
|||||||
.report-form {
|
.report-form {
|
||||||
background: #f1f1f1;
|
background: #f1f1f1;
|
||||||
height: 100%;
|
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
max-width: 1160px;
|
max-width: 1160px;
|
||||||
@ -430,7 +428,6 @@
|
|||||||
|
|
||||||
.react-datepicker__current-month {
|
.react-datepicker__current-month {
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
text-transform: capitalize;
|
text-transform: capitalize;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -442,13 +439,11 @@
|
|||||||
.react-datepicker__day {
|
.react-datepicker__day {
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
width: 35px;
|
width: 35px;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.react-datepicker__day-name {
|
.react-datepicker__day-name {
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
width: 35px;
|
width: 35px;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.react-datepicker__triangle {
|
.react-datepicker__triangle {
|
||||||
|
@ -6,15 +6,13 @@ body {
|
|||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',
|
font-family: "LabGrotesque", sans-serif !important;
|
||||||
'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',
|
|
||||||
sans-serif;
|
|
||||||
-webkit-font-smoothing: antialiased;
|
-webkit-font-smoothing: antialiased;
|
||||||
-moz-osx-font-smoothing: grayscale;
|
-moz-osx-font-smoothing: grayscale;
|
||||||
}
|
}
|
||||||
|
|
||||||
code {
|
code {
|
||||||
font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',
|
font-family: source-code-pro, Menlo, Monaco, Consolas, "Courier New",
|
||||||
monospace;
|
monospace;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -91,10 +91,10 @@ const Auth = () => {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<Footer />
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<SideBar />
|
<SideBar />
|
||||||
|
<Footer />
|
||||||
</section>
|
</section>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
.auth-partners {
|
.auth-partners {
|
||||||
font-family: "LabGrotesque", sans-serif;
|
background-color: #f1f1f1;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
position: relative;
|
position: relative;
|
||||||
|
|
||||||
&__background {
|
&__background {
|
||||||
background-color: #f1f1f1;
|
|
||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -115,7 +115,7 @@ export const AuthForCandidate = () => {
|
|||||||
resetModal={setModalReset}
|
resetModal={setModalReset}
|
||||||
title="Войти, если есть доступ"
|
title="Войти, если есть доступ"
|
||||||
description="Если вы получили доступ, пройдя
|
description="Если вы получили доступ, пройдя
|
||||||
2 шага для входа или хотите узнать
|
2 шага для входа, или хотите узнать
|
||||||
свои результаты в кабинете"
|
свои результаты в кабинете"
|
||||||
/>
|
/>
|
||||||
<div className="auth-candidate__start">
|
<div className="auth-candidate__start">
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
.auth-candidate {
|
.auth-candidate {
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
position: relative;
|
position: relative;
|
||||||
background-color: #f1f1f1;
|
background-color: #f1f1f1;
|
||||||
@ -62,8 +61,4 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
footer {
|
|
||||||
margin-top: 10px;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -90,12 +90,10 @@ export const Blog = () => {
|
|||||||
);
|
);
|
||||||
})}
|
})}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="blog__load-more">
|
<div className="blog__load-more">
|
||||||
<button>Загрузить еще</button>
|
<button>Загрузить еще</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<Footer />
|
<Footer />
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
|
@ -200,9 +200,9 @@ const CatalogSpecialists = () => {
|
|||||||
);
|
);
|
||||||
})}
|
})}
|
||||||
</div>
|
</div>
|
||||||
<Footer />
|
|
||||||
</div>
|
</div>
|
||||||
<SideBar />
|
<SideBar />
|
||||||
|
<Footer />
|
||||||
</section>
|
</section>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
.catalog-specialists {
|
.catalog-specialists {
|
||||||
background: #f1f1f1;
|
background: #f1f1f1;
|
||||||
height: 100%;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
|
|
||||||
&__wrapper {
|
&__wrapper {
|
||||||
padding-top: 24px;
|
padding-top: 24px;
|
||||||
|
@ -103,8 +103,8 @@ export const CompanyInfo = () => {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<Footer />
|
|
||||||
</div>
|
</div>
|
||||||
|
<Footer />
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
.company-info {
|
.company-info {
|
||||||
&__content {
|
&__content {
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
background-color: #f1f1f1;
|
background-color: #f1f1f1;
|
||||||
padding-top: 60px;
|
padding-top: 60px;
|
||||||
|
|
||||||
|
@ -96,8 +96,8 @@ const FormPage = () => {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<Footer />
|
|
||||||
</div>
|
</div>
|
||||||
|
<Footer />
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
@ -124,10 +124,6 @@
|
|||||||
right: 2.5rem;
|
right: 2.5rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
.form-page footer {
|
|
||||||
margin-top: 6rem !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (max-width: 991px) {
|
@media (max-width: 991px) {
|
||||||
.form-page {
|
.form-page {
|
||||||
&__separator {
|
&__separator {
|
||||||
|
@ -2,9 +2,7 @@
|
|||||||
|
|
||||||
.frequently-asked-question {
|
.frequently-asked-question {
|
||||||
background: #f5f5f5;
|
background: #f5f5f5;
|
||||||
height: 100%;
|
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
|
||||||
|
@ -1,8 +1,6 @@
|
|||||||
.frequently-asked-questions {
|
.frequently-asked-questions {
|
||||||
background: #f5f5f5;
|
background: #f5f5f5;
|
||||||
height: 100%;
|
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
|
||||||
|
@ -69,9 +69,9 @@ const Home = () => {
|
|||||||
<h2 className="catalog__title">Каталог специалистов</h2>
|
<h2 className="catalog__title">Каталог специалистов</h2>
|
||||||
<Outstaffing />
|
<Outstaffing />
|
||||||
<Description onLoadMore={loadMore} isLoadingMore={isLoadingMore} />
|
<Description onLoadMore={loadMore} isLoadingMore={isLoadingMore} />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<Footer />
|
<Footer />
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
@ -49,13 +49,14 @@ export const PartnerAddRequest = () => {
|
|||||||
const [inputs, setInputs] = useState({ title: "", description: "" });
|
const [inputs, setInputs] = useState({ title: "", description: "" });
|
||||||
|
|
||||||
if (
|
if (
|
||||||
currentUrl[0] === "/profile/edit-request" &&
|
currentUrl[0] === "/profile/requests-edit" &&
|
||||||
!Object.keys(partnerRequestInfo).length
|
!Object.keys(partnerRequestInfo).length
|
||||||
) {
|
) {
|
||||||
return <Navigate to="/profile/requests" replace />;
|
return <Navigate to="/profile/requests" replace />;
|
||||||
}
|
}
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
|
initListeners();
|
||||||
apiRequest(`/profile/positions-list`).then((el) =>
|
apiRequest(`/profile/positions-list`).then((el) =>
|
||||||
setSpecializationList(el)
|
setSpecializationList(el)
|
||||||
);
|
);
|
||||||
@ -68,7 +69,7 @@ export const PartnerAddRequest = () => {
|
|||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (
|
if (
|
||||||
currentUrl[0] === "/profile/edit-request" &&
|
currentUrl[0] === "/profile/requests-edit" &&
|
||||||
Object.keys(partnerRequestInfo).length
|
Object.keys(partnerRequestInfo).length
|
||||||
) {
|
) {
|
||||||
setInputs({
|
setInputs({
|
||||||
@ -101,7 +102,7 @@ export const PartnerAddRequest = () => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const handler = () => {
|
const handler = () => {
|
||||||
if (currentUrl[0] === "/profile/edit-request") {
|
if (currentUrl[0] === "/profile/requests-edit") {
|
||||||
apiRequest("/request/update-request", {
|
apiRequest("/request/update-request", {
|
||||||
method: "PUT",
|
method: "PUT",
|
||||||
data: {
|
data: {
|
||||||
@ -141,6 +142,31 @@ export const PartnerAddRequest = () => {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const initListeners = () => {
|
||||||
|
document.addEventListener("click", closeByClickingOut);
|
||||||
|
};
|
||||||
|
|
||||||
|
const closeByClickingOut = (event) => {
|
||||||
|
const path = event.path || (event.composedPath && event.composedPath());
|
||||||
|
|
||||||
|
if (
|
||||||
|
event &&
|
||||||
|
!path.find(
|
||||||
|
(div) =>
|
||||||
|
div.classList &&
|
||||||
|
(div.classList.contains("form__block__section__selects") ||
|
||||||
|
div.classList.contains("form__block__dropDown") ||
|
||||||
|
div.classList.contains("form__block__skills") ||
|
||||||
|
div.classList.contains("form__block__section__select"))
|
||||||
|
)
|
||||||
|
) {
|
||||||
|
setOpenSkillsSelect(false);
|
||||||
|
setOpenSpecializationListOpen(false);
|
||||||
|
setOpenLevelList(false);
|
||||||
|
setOpenCountList(false);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="partner-add-request">
|
<div className="partner-add-request">
|
||||||
<ProfileHeader />
|
<ProfileHeader />
|
||||||
@ -154,7 +180,7 @@ export const PartnerAddRequest = () => {
|
|||||||
name: `${
|
name: `${
|
||||||
editRequest ? "Редактирование заявки" : "Создание новой заявки"
|
editRequest ? "Редактирование заявки" : "Создание новой заявки"
|
||||||
}`,
|
}`,
|
||||||
link: "/profile/add-request"
|
link: "/profile/requests-add"
|
||||||
}
|
}
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
@ -1,8 +1,8 @@
|
|||||||
.partner-add-request {
|
.partner-add-request {
|
||||||
background: #f1f1f1;
|
background: #f1f1f1;
|
||||||
height: 100%;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
max-width: 1160px;
|
max-width: 1160px;
|
||||||
@ -314,10 +314,6 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
footer {
|
|
||||||
margin-top: 70px;
|
|
||||||
}
|
|
||||||
|
|
||||||
&__info {
|
&__info {
|
||||||
background: #ffffff;
|
background: #ffffff;
|
||||||
border-radius: 12px;
|
border-radius: 12px;
|
||||||
|
@ -107,7 +107,10 @@ export const PartnerBid = () => {
|
|||||||
links={[
|
links={[
|
||||||
{ name: "Главная", link: "/profile" },
|
{ name: "Главная", link: "/profile" },
|
||||||
{ name: "Запросы и открытые позиции", link: "/profile/requests" },
|
{ name: "Запросы и открытые позиции", link: "/profile/requests" },
|
||||||
{ name: "Просмотр заявки - PHP разработчик", link: "/profile/bid" }
|
{
|
||||||
|
name: "Просмотр заявки - PHP разработчик",
|
||||||
|
link: "/profile/requests-bid"
|
||||||
|
}
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
<h2 className="partner-bid__title">Страница заявки </h2>
|
<h2 className="partner-bid__title">Страница заявки </h2>
|
||||||
@ -117,7 +120,7 @@ export const PartnerBid = () => {
|
|||||||
<div className="partner-bid__qualification">
|
<div className="partner-bid__qualification">
|
||||||
<h3>{requestInfo.title}</h3>
|
<h3>{requestInfo.title}</h3>
|
||||||
<div className="partner-bid__qualification__buttons">
|
<div className="partner-bid__qualification__buttons">
|
||||||
<Link to="/profile/edit-request">Редактировать</Link>
|
<Link to="/profile/requests-edit">Редактировать</Link>
|
||||||
<img
|
<img
|
||||||
src={deleteBtn}
|
src={deleteBtn}
|
||||||
alt="delete"
|
alt="delete"
|
||||||
|
@ -1,11 +1,13 @@
|
|||||||
.partner-bid {
|
.partner-bid {
|
||||||
background: #f1f1f1;
|
background: #f1f1f1;
|
||||||
height: 100%;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
max-width: 1160px;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
flex: 1;
|
||||||
margin-top: 23px;
|
margin-top: 23px;
|
||||||
|
|
||||||
@media (max-width: 570px) {
|
@media (max-width: 570px) {
|
||||||
@ -536,8 +538,4 @@
|
|||||||
background: #52b709;
|
background: #52b709;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
footer {
|
|
||||||
margin-top: 70px;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -1,10 +1,13 @@
|
|||||||
.employee-report {
|
.employee-report {
|
||||||
background: #f1f1f1;
|
background: #f1f1f1;
|
||||||
height: 100%;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
flex: 1;
|
||||||
margin-top: 23px;
|
margin-top: 23px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
.partner-employees {
|
.partner-employees {
|
||||||
background: #f1f1f1;
|
background: #f1f1f1;
|
||||||
height: 100%;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
|
|
||||||
&__title {
|
&__title {
|
||||||
color: #000000;
|
color: #000000;
|
||||||
@ -167,15 +167,13 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
max-width: 1160px;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
flex: 1;
|
||||||
margin-top: 23px;
|
margin-top: 23px;
|
||||||
|
|
||||||
@media (max-width: 570px) {
|
@media (max-width: 570px) {
|
||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
footer {
|
|
||||||
margin-top: 70px;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -60,7 +60,7 @@ export const PartnerRequests = () => {
|
|||||||
return (
|
return (
|
||||||
<Link
|
<Link
|
||||||
key={index}
|
key={index}
|
||||||
to={"/profile/bid"}
|
to={"/profile/requests-bid"}
|
||||||
className="partner-requests__section__item"
|
className="partner-requests__section__item"
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
dispatch(setPartnerRequestId(item.id));
|
dispatch(setPartnerRequestId(item.id));
|
||||||
@ -85,7 +85,7 @@ export const PartnerRequests = () => {
|
|||||||
параметры: количество сотрудников, стек, уровень специалиста
|
параметры: количество сотрудников, стек, уровень специалиста
|
||||||
</p>
|
</p>
|
||||||
<BaseButton>
|
<BaseButton>
|
||||||
<Link to={"/profile/add-request"}>
|
<Link to={"/profile/requests-add"}>
|
||||||
<span>+</span>
|
<span>+</span>
|
||||||
Создать запрос
|
Создать запрос
|
||||||
</Link>
|
</Link>
|
||||||
@ -100,7 +100,7 @@ export const PartnerRequests = () => {
|
|||||||
<img src={cursorImg} alt="cursor" />
|
<img src={cursorImg} alt="cursor" />
|
||||||
<p>У вас ещё нет запросов на сотрудников</p>
|
<p>У вас ещё нет запросов на сотрудников</p>
|
||||||
<BaseButton>
|
<BaseButton>
|
||||||
<Link to={"/profile/add-request"}>
|
<Link to={"/profile/requests-add"}>
|
||||||
<span>+</span>
|
<span>+</span>
|
||||||
Создать запрос
|
Создать запрос
|
||||||
</Link>
|
</Link>
|
||||||
|
@ -1,11 +1,13 @@
|
|||||||
.partner-requests {
|
.partner-requests {
|
||||||
background: #f1f1f1;
|
background: #f1f1f1;
|
||||||
height: 100%;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
max-width: 1160px;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
flex: 1;
|
||||||
margin-top: 23px;
|
margin-top: 23px;
|
||||||
|
|
||||||
@media (max-width: 570px) {
|
@media (max-width: 570px) {
|
||||||
@ -352,8 +354,4 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
footer {
|
|
||||||
margin-top: 70px;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
.settings {
|
.settings {
|
||||||
background: #f1f1f1;
|
display: flex;
|
||||||
height: 100%;
|
flex-direction: column;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
background: #f1f1f1;
|
||||||
|
|
||||||
.info-personal__title {
|
.info-personal__title {
|
||||||
color: #000000;
|
color: #000000;
|
||||||
@ -12,7 +12,9 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
&__page {
|
&__page {
|
||||||
min-height: 750px;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
flex: 1;
|
||||||
max-width: 1160px !important;
|
max-width: 1160px !important;
|
||||||
margin-top: 23px;
|
margin-top: 23px;
|
||||||
}
|
}
|
||||||
@ -129,7 +131,10 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.partner-settings {
|
.partner-settings {
|
||||||
margin-bottom: 110px;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
flex: 1;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
|
||||||
&__body {
|
&__body {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
.treaties {
|
.treaties {
|
||||||
background: #f1f1f1;
|
background: #f1f1f1;
|
||||||
height: 100%;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
|
|
||||||
&__title {
|
&__title {
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
@ -378,15 +378,13 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
max-width: 1160px;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
flex: 1;
|
||||||
margin-top: 23px;
|
margin-top: 23px;
|
||||||
|
|
||||||
@media (max-width: 570px) {
|
@media (max-width: 570px) {
|
||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
footer {
|
|
||||||
margin-top: 70px;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
.partner-categories {
|
.partner-categories {
|
||||||
background: #f1f1f1;
|
background: #f1f1f1;
|
||||||
height: 100%;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
|
|
||||||
&__title {
|
&__title {
|
||||||
color: #000000;
|
color: #000000;
|
||||||
@ -144,15 +144,13 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
max-width: 1160px;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
flex: 1;
|
||||||
margin-top: 23px;
|
margin-top: 23px;
|
||||||
|
|
||||||
@media (max-width: 570px) {
|
@media (max-width: 570px) {
|
||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
footer {
|
|
||||||
margin-top: 70px;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -2,12 +2,15 @@ import React from "react";
|
|||||||
|
|
||||||
import { Navigation } from "@components/Navigation/Navigation";
|
import { Navigation } from "@components/Navigation/Navigation";
|
||||||
import { ProfileHeader } from "@components/ProfileHeader/ProfileHeader";
|
import { ProfileHeader } from "@components/ProfileHeader/ProfileHeader";
|
||||||
|
import { Footer } from "@components/common/Footer/Footer";
|
||||||
|
|
||||||
export const Payouts = () => {
|
export const Payouts = () => {
|
||||||
return (
|
return (
|
||||||
<div className="payouts">
|
<div className="payouts">
|
||||||
<ProfileHeader />
|
<ProfileHeader />
|
||||||
<Navigation />
|
<Navigation />
|
||||||
|
<div className="container"></div>
|
||||||
|
<Footer />
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
};
|
};
|
@ -1,8 +1,8 @@
|
|||||||
.profile {
|
.profile {
|
||||||
background: #f1f1f1;
|
background: #f1f1f1;
|
||||||
height: 100%;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
|
|
||||||
&__title {
|
&__title {
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
@ -48,92 +48,17 @@
|
|||||||
@media (max-width: 1175px) {
|
@media (max-width: 1175px) {
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
// .item {
|
|
||||||
// max-width: 353px;
|
|
||||||
// width: 100%;
|
|
||||||
// padding: 35px 45px 15px 30px;
|
|
||||||
// background: #FFFFFF;
|
|
||||||
// border-radius: 12px;
|
|
||||||
// text-decoration: none;
|
|
||||||
// cursor: pointer;
|
|
||||||
// transition: all 0.3s ease;
|
|
||||||
|
|
||||||
// &:hover {
|
|
||||||
// box-shadow: 6px 5px 20px rgb(87 98 80 / 21%);
|
|
||||||
// transform: scale(1.02);
|
|
||||||
// }
|
|
||||||
|
|
||||||
// @media (max-width: 1175px) {
|
|
||||||
// width: 48%;
|
|
||||||
// max-width: none;
|
|
||||||
// }
|
|
||||||
|
|
||||||
// @media (max-width: 925px) {
|
|
||||||
// width: 100%;
|
|
||||||
// padding: 15px 25px;
|
|
||||||
// }
|
|
||||||
|
|
||||||
// &__about {
|
|
||||||
// display: flex;
|
|
||||||
// column-gap: 20px;
|
|
||||||
// align-items: center;
|
|
||||||
// margin-bottom: 30px;
|
|
||||||
|
|
||||||
// @media (max-width: 925px) {
|
|
||||||
// margin-bottom: 15px;
|
|
||||||
// }
|
|
||||||
|
|
||||||
// h3 {
|
|
||||||
// color: #000000;
|
|
||||||
// font-weight: 500;
|
|
||||||
// font-size: 18px;
|
|
||||||
// line-height: 22px;
|
|
||||||
// max-width: 125px;
|
|
||||||
// margin-bottom: 0;
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
|
|
||||||
// &__info {
|
|
||||||
// display: flex;
|
|
||||||
// justify-content: space-between;
|
|
||||||
// align-items: center;
|
|
||||||
|
|
||||||
// p {
|
|
||||||
// font-weight: 700;
|
|
||||||
// font-size: 12px;
|
|
||||||
// line-height: 20px;
|
|
||||||
// color: #000000;
|
|
||||||
// margin-bottom: 0;
|
|
||||||
|
|
||||||
// span {
|
|
||||||
// color: #52B709;
|
|
||||||
// font-weight: 700;
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// &Link {
|
|
||||||
// width: 48px;
|
|
||||||
// height: 48px;
|
|
||||||
// background: #DDEEC6;
|
|
||||||
// border-radius: 50px;
|
|
||||||
// display: flex;
|
|
||||||
// justify-content: center;
|
|
||||||
// align-items: center;
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
max-width: 1160px;
|
max-width: 1160px;
|
||||||
margin-top: 23px;
|
margin-top: 23px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
flex: 1;
|
||||||
|
|
||||||
@media (max-width: 570px) {
|
@media (max-width: 570px) {
|
||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
footer {
|
|
||||||
margin-top: 70px;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -1,21 +1,19 @@
|
|||||||
.profile-candidate{
|
.profile-candidate {
|
||||||
background: #F1F1F1;
|
background: #f1f1f1;
|
||||||
height: 100%;
|
display: flex;
|
||||||
min-height: 100vh;
|
flex-direction: column;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
min-height: 100vh;
|
||||||
|
&__container {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
//max-width: 1200px;
|
|
||||||
&__container{
|
|
||||||
max-width: 1160px;
|
|
||||||
margin: 0 auto 42px auto;
|
margin: 0 auto 42px auto;
|
||||||
flex: 1 1 auto;
|
flex: 1 1 auto;
|
||||||
padding: 0 15px;
|
padding: 0 15px;
|
||||||
}
|
}
|
||||||
&__title{
|
&__title {
|
||||||
margin: 0 0 31px 0;
|
margin: 0 0 31px 0;
|
||||||
}
|
}
|
||||||
&__row{
|
&__row {
|
||||||
display: flex;
|
display: flex;
|
||||||
gap: 30px;
|
gap: 30px;
|
||||||
flex-wrap: wrap;
|
flex-wrap: wrap;
|
||||||
@ -23,14 +21,14 @@
|
|||||||
// &__column{
|
// &__column{
|
||||||
// flex: 1 1 60%;
|
// flex: 1 1 60%;
|
||||||
// }
|
// }
|
||||||
&__tests{
|
&__tests {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-wrap: wrap;
|
flex-wrap: wrap;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
flex: 1 1 60%;
|
flex: 1 1 60%;
|
||||||
gap: 30px;
|
gap: 30px;
|
||||||
}
|
}
|
||||||
&__cards{
|
&__cards {
|
||||||
display: flex;
|
display: flex;
|
||||||
gap: 29px;
|
gap: 29px;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
@ -38,20 +36,17 @@
|
|||||||
flex-wrap: wrap;
|
flex-wrap: wrap;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
&__head-bottom{
|
&__head-bottom {
|
||||||
margin: 0 0 27px 0;
|
margin: 0 0 27px 0;
|
||||||
//max-width: 1160px;
|
//max-width: 1160px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.instructions-candidate {
|
||||||
.instructions-candidate{
|
|
||||||
flex: 1 1 auto;
|
flex: 1 1 auto;
|
||||||
background: #FFFFFF;
|
background: #ffffff;
|
||||||
border-radius: 12px;
|
border-radius: 12px;
|
||||||
&__container{
|
&__container {
|
||||||
padding: 40px 18px 32px 36px;
|
padding: 40px 18px 32px 36px;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
@ -60,33 +55,32 @@
|
|||||||
padding: 20px;
|
padding: 20px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
&__note{
|
&__note {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
gap: 22px;
|
gap: 22px;
|
||||||
&:not(:last-child){
|
&:not(:last-child) {
|
||||||
margin: 0 0 30px 0;
|
margin: 0 0 30px 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
&__icon{
|
&__icon {
|
||||||
width: 25px;
|
width: 25px;
|
||||||
height: 30px;
|
height: 30px;
|
||||||
}
|
}
|
||||||
&__title{
|
&__title {
|
||||||
color: #52B709;
|
color: #52b709;
|
||||||
font-weight: 900;
|
font-weight: 900;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
line-height: 171%;
|
line-height: 171%;
|
||||||
margin: 0 0 20px 0;
|
margin: 0 0 20px 0;
|
||||||
}
|
}
|
||||||
&__text{
|
&__text {
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
font-size: 12px;
|
font-size: 12px;
|
||||||
line-height: 200%;
|
line-height: 200%;
|
||||||
color: #000000;
|
color: #000000;
|
||||||
max-width: 235px;
|
max-width: 235px;
|
||||||
span{
|
span {
|
||||||
color: #406128;
|
color: #406128;
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
text-decoration: underline;
|
text-decoration: underline;
|
||||||
@ -94,7 +88,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.info-candidate{
|
.info-candidate {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
background: #fff;
|
background: #fff;
|
||||||
border-radius: 12px;
|
border-radius: 12px;
|
||||||
@ -102,23 +96,23 @@
|
|||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
gap: 47px;
|
gap: 47px;
|
||||||
@media (max-width:560px) {
|
@media (max-width: 560px) {
|
||||||
padding: 20px;
|
padding: 20px;
|
||||||
}
|
}
|
||||||
&__img{
|
&__img {
|
||||||
flex: 0 0 88px;
|
flex: 0 0 88px;
|
||||||
height: 88px;
|
height: 88px;
|
||||||
img{
|
img {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
object-fit: cover;
|
object-fit: cover;
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
&__info{
|
&__info {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
&__title{
|
&__title {
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
line-height: 200%;
|
line-height: 200%;
|
||||||
@ -126,20 +120,19 @@
|
|||||||
margin: 0 0 12px 0;
|
margin: 0 0 12px 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
&__decor{
|
&__decor {
|
||||||
background: #52B709;
|
background: #52b709;
|
||||||
border-radius: 12px;
|
border-radius: 12px;
|
||||||
height: 8px;
|
height: 8px;
|
||||||
width: 60%;
|
width: 60%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.bottom-head{
|
.bottom-head {
|
||||||
margin: 0 0 40px 0;
|
margin: 0 0 40px 0;
|
||||||
height: 66px;
|
height: 66px;
|
||||||
background: #FFF;
|
background: #fff;
|
||||||
&__container{
|
&__container {
|
||||||
max-width: 1160px;
|
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
padding: 0 15px;
|
padding: 0 15px;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
@ -147,17 +140,17 @@
|
|||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
&__img{
|
&__img {
|
||||||
flex: 0 0 37px;
|
flex: 0 0 37px;
|
||||||
height: 37px;
|
height: 37px;
|
||||||
img{
|
img {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
object-fit: cover;
|
object-fit: cover;
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
&__title{
|
&__title {
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
font-size: 18px;
|
font-size: 18px;
|
||||||
line-height: 178%;
|
line-height: 178%;
|
||||||
|
@ -7,6 +7,7 @@ import { apiRequest } from "@api/request";
|
|||||||
|
|
||||||
import CategoriesItem from "@components/CategoriesItem/CategoriesItem";
|
import CategoriesItem from "@components/CategoriesItem/CategoriesItem";
|
||||||
import { Footer } from "@components/Common/Footer/Footer";
|
import { Footer } from "@components/Common/Footer/Footer";
|
||||||
|
import { Loader } from "@components/Common/Loader/Loader";
|
||||||
import { Navigation } from "@components/Navigation/Navigation";
|
import { Navigation } from "@components/Navigation/Navigation";
|
||||||
import { ProfileBreadcrumbs } from "@components/ProfileBreadcrumbs/ProfileBreadcrumbs";
|
import { ProfileBreadcrumbs } from "@components/ProfileBreadcrumbs/ProfileBreadcrumbs";
|
||||||
import { ProfileHeader } from "@components/ProfileHeader/ProfileHeader";
|
import { ProfileHeader } from "@components/ProfileHeader/ProfileHeader";
|
||||||
@ -27,7 +28,8 @@ import BackEndImg from "assets/images/partnerProfile/personalBackEnd.svg";
|
|||||||
import "./quiz-page.scss";
|
import "./quiz-page.scss";
|
||||||
|
|
||||||
export const QuizPage = () => {
|
export const QuizPage = () => {
|
||||||
const [questionnaires, setQuestionnaires] = useState(null);
|
const [questionnaires, setQuestionnaires] = useState([]);
|
||||||
|
const [loader, setLoader] = useState(false);
|
||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
const [personalInfoItems] = useState([
|
const [personalInfoItems] = useState([
|
||||||
{
|
{
|
||||||
@ -102,8 +104,12 @@ export const QuizPage = () => {
|
|||||||
const [selectedCategory, setSetSelectedCategory] = useState(false);
|
const [selectedCategory, setSetSelectedCategory] = useState(false);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
|
setLoader(true);
|
||||||
apiRequest(`/user-questionnaire/questionnaires-list?user_id=${userId}`)
|
apiRequest(`/user-questionnaire/questionnaires-list?user_id=${userId}`)
|
||||||
.then((res) => setQuestionnaires(res))
|
.then((res) => {
|
||||||
|
setQuestionnaires(res);
|
||||||
|
setLoader(false);
|
||||||
|
})
|
||||||
.catch((e) => console.log(e));
|
.catch((e) => console.log(e));
|
||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
@ -122,7 +128,9 @@ export const QuizPage = () => {
|
|||||||
<div className="quiz-page__title main-title">
|
<div className="quiz-page__title main-title">
|
||||||
{!selectedCategory ? "Тестирование" : "Замена специализации"}
|
{!selectedCategory ? "Тестирование" : "Замена специализации"}
|
||||||
</div>
|
</div>
|
||||||
{!selectedCategory && (
|
{loader ? (
|
||||||
|
<Loader />
|
||||||
|
) : (
|
||||||
<>
|
<>
|
||||||
{/*<div className="quiz-page__specialization">*/}
|
{/*<div className="quiz-page__specialization">*/}
|
||||||
{/* <SelectedCategory setSelectedCategory={setSetSelectedCategory} />*/}
|
{/* <SelectedCategory setSelectedCategory={setSetSelectedCategory} />*/}
|
@ -7,6 +7,7 @@ import { selectedTest } from "@redux/quizSlice";
|
|||||||
import { apiRequest } from "@api/request";
|
import { apiRequest } from "@api/request";
|
||||||
|
|
||||||
import { Footer } from "@components/Common/Footer/Footer";
|
import { Footer } from "@components/Common/Footer/Footer";
|
||||||
|
import { Loader } from "@components/Common/Loader/Loader";
|
||||||
import { Navigation } from "@components/Navigation/Navigation";
|
import { Navigation } from "@components/Navigation/Navigation";
|
||||||
import { ProfileBreadcrumbs } from "@components/ProfileBreadcrumbs/ProfileBreadcrumbs";
|
import { ProfileBreadcrumbs } from "@components/ProfileBreadcrumbs/ProfileBreadcrumbs";
|
||||||
import { ProfileHeader } from "@components/ProfileHeader/ProfileHeader";
|
import { ProfileHeader } from "@components/ProfileHeader/ProfileHeader";
|
||||||
@ -23,16 +24,19 @@ export const QuizReportPage = () => {
|
|||||||
navigate("/Quiz");
|
navigate("/Quiz");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const [testInfo, setTestInfo] = useState({});
|
||||||
|
const [loader, setLoader] = useState(false);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
|
setLoader(true);
|
||||||
apiRequest(
|
apiRequest(
|
||||||
`/user-questionnaire/questionnaire-completed?user_questionnaire_uuid=${params.uuid}`
|
`/user-questionnaire/questionnaire-completed?user_questionnaire_uuid=${params.uuid}`
|
||||||
).then((res) => {
|
).then((res) => {
|
||||||
setTestInfo(res);
|
setTestInfo(res);
|
||||||
|
setLoader(false);
|
||||||
});
|
});
|
||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
const [testInfo, setTestInfo] = useState({});
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="quiz-report-page">
|
<div className="quiz-report-page">
|
||||||
<ProfileHeader />
|
<ProfileHeader />
|
||||||
@ -46,6 +50,10 @@ export const QuizReportPage = () => {
|
|||||||
{ name: "Отчет по тестированию", link: "/profile/quiz" }
|
{ name: "Отчет по тестированию", link: "/profile/quiz" }
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
|
{loader ? (
|
||||||
|
<Loader />
|
||||||
|
) : (
|
||||||
|
<>
|
||||||
<div className="quiz-report-page__title main-title">
|
<div className="quiz-report-page__title main-title">
|
||||||
Отчет по тестированию позиции {testInfo.questionnaire_title}
|
Отчет по тестированию позиции {testInfo.questionnaire_title}
|
||||||
</div>
|
</div>
|
||||||
@ -53,6 +61,8 @@ export const QuizReportPage = () => {
|
|||||||
<QuizReport info={testInfo} />
|
<QuizReport info={testInfo} />
|
||||||
</div>
|
</div>
|
||||||
<AlertResult info={testInfo} />
|
<AlertResult info={testInfo} />
|
||||||
|
</>
|
||||||
|
)}
|
||||||
</div>
|
</div>
|
||||||
<Footer />
|
<Footer />
|
||||||
</div>
|
</div>
|
@ -1,13 +1,12 @@
|
|||||||
.quiz-page {
|
.quiz-page {
|
||||||
background: #f1f1f1;
|
background: #f1f1f1;
|
||||||
height: 100%;
|
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
|
||||||
&__container {
|
&__container {
|
||||||
max-width: 1160px;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
margin: 23px auto 42px auto;
|
margin: 23px auto 42px auto;
|
||||||
flex: 1 1 auto;
|
flex: 1 1 auto;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
@ -64,9 +63,7 @@
|
|||||||
|
|
||||||
.interjacent-page-quiz {
|
.interjacent-page-quiz {
|
||||||
background: #f1f1f1;
|
background: #f1f1f1;
|
||||||
height: 100%;
|
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
|
||||||
@ -79,7 +76,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
&__container {
|
&__container {
|
||||||
max-width: 1160px;
|
display: flex;
|
||||||
margin: 23px auto 42px auto;
|
margin: 23px auto 42px auto;
|
||||||
flex: 1 1 auto;
|
flex: 1 1 auto;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
@ -96,14 +93,12 @@
|
|||||||
|
|
||||||
.passing-tests-page {
|
.passing-tests-page {
|
||||||
background: #f1f1f1;
|
background: #f1f1f1;
|
||||||
height: 100%;
|
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
|
||||||
&__container {
|
&__container {
|
||||||
max-width: 1160px;
|
display: flex;
|
||||||
margin: 23px auto 42px auto;
|
margin: 23px auto 42px auto;
|
||||||
flex: 1 1 auto;
|
flex: 1 1 auto;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
@ -136,14 +131,13 @@
|
|||||||
|
|
||||||
.quiz-report-page {
|
.quiz-report-page {
|
||||||
background: #f1f1f1;
|
background: #f1f1f1;
|
||||||
height: 100%;
|
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
|
||||||
&__container {
|
&__container {
|
||||||
max-width: 1160px;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
margin: 23px auto 42px auto;
|
margin: 23px auto 42px auto;
|
||||||
flex: 1 1 auto;
|
flex: 1 1 auto;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
.registration-candidate {
|
.registration-candidate {
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
position: relative;
|
position: relative;
|
||||||
background-color: #f1f1f1;
|
background-color: #f1f1f1;
|
||||||
|
|
||||||
@ -188,8 +187,4 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
footer {
|
|
||||||
margin-top: 80px;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -212,8 +212,8 @@ export const RegistrationSetting = () => {
|
|||||||
</button>
|
</button>
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
<Footer />
|
|
||||||
</div>
|
</div>
|
||||||
|
<Footer />
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
};
|
};
|
@ -1,6 +1,5 @@
|
|||||||
.registration-setting {
|
.registration-setting {
|
||||||
&__content {
|
&__content {
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
background-color: #f1f1f1;
|
background-color: #f1f1f1;
|
||||||
color: #000000;
|
color: #000000;
|
||||||
padding: 50px 0 0;
|
padding: 50px 0 0;
|
||||||
|
@ -105,7 +105,10 @@ const Statistics = () => {
|
|||||||
<div className="statistics-header__menu">
|
<div className="statistics-header__menu">
|
||||||
<h1>Статистика проекта</h1>
|
<h1>Статистика проекта</h1>
|
||||||
<img src={link} alt="#" />
|
<img src={link} alt="#" />
|
||||||
<span className="return-text" onClick={copyProjectLink("62")}>
|
<span
|
||||||
|
className="return-text"
|
||||||
|
onClick={() => copyProjectLink("62")}
|
||||||
|
>
|
||||||
ссылка на проект
|
ссылка на проект
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
@ -1,9 +1,8 @@
|
|||||||
.statistics {
|
.statistics {
|
||||||
background: #f1f1f1;
|
background: #f1f1f1;
|
||||||
height: 100%;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
position: relative;
|
|
||||||
|
|
||||||
&-header {
|
&-header {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
.summary {
|
.summary {
|
||||||
background: #f1f1f1;
|
background: #f1f1f1;
|
||||||
height: 100%;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
|
|
||||||
&__content {
|
&__content {
|
||||||
display: flex;
|
display: flex;
|
||||||
@ -509,12 +509,10 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
footer {
|
|
||||||
margin-top: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
max-width: 1160px;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
flex: 1;
|
||||||
margin-top: 23px;
|
margin-top: 23px;
|
||||||
|
|
||||||
@media (max-width: 570px) {
|
@media (max-width: 570px) {
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
.tracker {
|
.tracker {
|
||||||
background: #f1f1f1;
|
background: #f1f1f1;
|
||||||
height: 100%;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
position: relative;
|
position: relative;
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
@ -18,14 +18,6 @@
|
|||||||
margin-top: 23px;
|
margin-top: 23px;
|
||||||
}
|
}
|
||||||
|
|
||||||
footer {
|
|
||||||
margin-top: 70px;
|
|
||||||
|
|
||||||
.row {
|
|
||||||
margin-right: 0px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
&__title {
|
&__title {
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
font-size: 22px;
|
font-size: 22px;
|
||||||
@ -34,9 +26,9 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
&__tabs {
|
&__tabs {
|
||||||
min-height: 600px;
|
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
flex: 1;
|
||||||
|
|
||||||
&__head {
|
&__head {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
@ -38,8 +38,8 @@ export const TrackerAuth = () => {
|
|||||||
<ModalReset setModalReset={setModalReset} />
|
<ModalReset setModalReset={setModalReset} />
|
||||||
</ModalLayout>
|
</ModalLayout>
|
||||||
)}
|
)}
|
||||||
<Footer />
|
|
||||||
</div>
|
</div>
|
||||||
|
<Footer />
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
};
|
};
|
@ -1,10 +1,16 @@
|
|||||||
.tracker-auth {
|
.tracker-auth {
|
||||||
&__content {
|
display: flex;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
flex-direction: column;
|
||||||
|
min-height: 100vh;
|
||||||
background-color: #f1f1f1;
|
background-color: #f1f1f1;
|
||||||
|
|
||||||
|
&__content {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
flex: 1;
|
||||||
|
|
||||||
color: #000000;
|
color: #000000;
|
||||||
padding: 50px 0 0;
|
padding: 50px 0 0;
|
||||||
min-height: 100vh;
|
|
||||||
|
|
||||||
@media (max-width: 1375px) {
|
@media (max-width: 1375px) {
|
||||||
padding-top: 100px;
|
padding-top: 100px;
|
||||||
@ -25,7 +31,7 @@
|
|||||||
margin-bottom: 46px;
|
margin-bottom: 46px;
|
||||||
color: #000000;
|
color: #000000;
|
||||||
span {
|
span {
|
||||||
color: #52B709;
|
color: #52b709;
|
||||||
position: relative;
|
position: relative;
|
||||||
img {
|
img {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
|
@ -102,8 +102,8 @@ export const TrackerIntro = () => {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<Footer />
|
|
||||||
</div>
|
</div>
|
||||||
|
<Footer />
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
};
|
};
|
@ -1,7 +1,6 @@
|
|||||||
.tracker-intro {
|
.tracker-intro {
|
||||||
&__content {
|
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
background-color: #f1f1f1;
|
background-color: #f1f1f1;
|
||||||
|
&__content {
|
||||||
color: #000000;
|
color: #000000;
|
||||||
|
|
||||||
@media (max-width: 1375px) {
|
@media (max-width: 1375px) {
|
||||||
|
@ -149,8 +149,8 @@ export const TrackerRegistration = () => {
|
|||||||
/>
|
/>
|
||||||
</ModalLayout>
|
</ModalLayout>
|
||||||
)}
|
)}
|
||||||
<Footer />
|
|
||||||
</div>
|
</div>
|
||||||
|
<Footer />
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
};
|
};
|
@ -1,6 +1,5 @@
|
|||||||
.tracker-registration {
|
.tracker-registration {
|
||||||
&__content {
|
&__content {
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
background-color: #f1f1f1;
|
background-color: #f1f1f1;
|
||||||
color: #000000;
|
color: #000000;
|
||||||
padding: 50px 0 0;
|
padding: 50px 0 0;
|
||||||
|
@ -269,8 +269,8 @@ export const ViewReport = () => {
|
|||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
<Footer />
|
|
||||||
</div>
|
</div>
|
||||||
|
<Footer />
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
@ -1,11 +1,13 @@
|
|||||||
.view-report {
|
.view-report {
|
||||||
background: #f1f1f1;
|
background: #f1f1f1;
|
||||||
height: 100%;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
font-family: "LabGrotesque", sans-serif;
|
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
max-width: 1160px;
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
flex: 1;
|
||||||
margin-top: 23px;
|
margin-top: 23px;
|
||||||
|
|
||||||
@media (max-width: 570px) {
|
@media (max-width: 570px) {
|
||||||
@ -424,12 +426,4 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
footer {
|
|
||||||
margin-top: 70px;
|
|
||||||
|
|
||||||
@media (max-width: 575px) {
|
|
||||||
margin-top: 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -2,34 +2,33 @@ export function createMarkup(text) {
|
|||||||
return { __html: text.split("</p>").join("</p>") };
|
return { __html: text.split("</p>").join("</p>") };
|
||||||
}
|
}
|
||||||
|
|
||||||
// export function transformHtml(text) {
|
export function transformHtml(text) {
|
||||||
// let startHtml = {
|
let startHtml = {
|
||||||
// __html: text.split("<h3> || <h2>").join("<br><h2>").split("<br>"),
|
__html: text.split("<h3> || <h2>").join("<br><h2>").split("<br>")
|
||||||
// };
|
};
|
||||||
// startHtml = startHtml.__html.filter(
|
startHtml = startHtml.__html.filter(
|
||||||
// (el) => (el !== null && el !== "") || el === 0
|
(el) => (el !== null && el !== "") || el === 0
|
||||||
// );
|
);
|
||||||
// const finalHtml = startHtml.map(
|
const finalHtml = startHtml.map(
|
||||||
// (item) =>
|
(item) =>
|
||||||
// `<div class='experience__block'>
|
`<div class='experience__block'>
|
||||||
// <div class="summary__sections__head">
|
<div class="summary__sections__head">
|
||||||
// <h3>Описание опыта работы</h3>
|
<h3>Описание опыта работы</h3>
|
||||||
// <button>Редактировать</button>
|
<button>Редактировать</button>
|
||||||
// </div>
|
</div>
|
||||||
// <div class="experience__content">${item.split("<h3>")[0]}</div>
|
<div class="experience__content">${item.split("<h3>")[0]}</div>
|
||||||
// </div>`
|
</div>`
|
||||||
// );
|
);
|
||||||
// return { __html: finalHtml.join("") };
|
return { __html: finalHtml.join("") };
|
||||||
// }
|
}
|
||||||
//
|
|
||||||
// export const setToken = () => {
|
export const setToken = () => {
|
||||||
// const url = new URL(window.location.href);
|
const url = new URL(window.location.href);
|
||||||
// const urlT = url.searchParams.get("token");
|
const urlT = url.searchParams.get("token");
|
||||||
// urlT ? sessionStorage.setItem('token', 'Bearer ' + urlT) : '';
|
urlT ? sessionStorage.setItem("token", "Bearer " + urlT) : "";
|
||||||
// const tParam = urlT || sessionStorage.getItem('token');
|
const tParam = urlT || sessionStorage.getItem("token");
|
||||||
// return tParam ? {"Authorization": tParam} : false
|
return tParam ? { Authorization: tParam } : false;
|
||||||
//
|
};
|
||||||
// };
|
|
||||||
|
|
||||||
export const getToken = () => {
|
export const getToken = () => {
|
||||||
const tParam = `Bearer ${localStorage.getItem("auth_token")}`;
|
const tParam = `Bearer ${localStorage.getItem("auth_token")}`;
|
||||||
|
Loading…
Reference in New Issue
Block a user