diff --git a/apps/front-end/src/pages/front-end/Orientation.js b/apps/front-end/src/pages/front-end/Orientation.js new file mode 100644 index 000000000..1d77ab202 --- /dev/null +++ b/apps/front-end/src/pages/front-end/Orientation.js @@ -0,0 +1,389 @@ +import React from "react"; +import { + capture, + IconByName, + AdminLayout as Layout, + ProgressBar, +} from "@shiksha/common-lib"; + +// import { useTranslation } from "react-i18next"; +import { Calendar as Cal } from "react-calendar"; +import "react-calendar/dist/Calendar.css"; +import Fullcalendar from "@fullcalendar/react"; +import dayGridPlugin from "@fullcalendar/daygrid"; +import timeGridPlugin from "@fullcalendar/timegrid"; +import interactionPlugin from "@fullcalendar/interaction"; +import Form from "@rjsf/core"; +import orientationPopupSchema from "./orientationPopupSchema"; +import validator from "@rjsf/validator-ajv8"; +import { + TitleFieldTemplate, + DescriptionFieldTemplate, + FieldTemplate, + ObjectFieldTemplate, + ArrayFieldTitleTemplate, +} from "../../component/BaseInput"; +import { + Button, + HStack, + Text, + VStack, + Box, + Modal, + Input, + FormControl, + Select, + CheckIcon, + CheckCircleIcon, + TextArea, +} from "native-base"; +import Chip from "component/Chip"; +import moment from "moment"; + +export default function Orientation({ footerLinks }) { + // const { t } = useTranslation(); + const [yearsRange, setYearsRange] = React.useState([1980, 2030]); + const formRef = React.useRef(); + const [modalVisible, setModalVisible] = React.useState(false); + const [formData, setFormData] = React.useState({}); + const uiSchema = { + date: { + "ui:widget": "alt-date", + "ui:options": { + hideNowButton: true, + hideClearButton: true, + }, + }, + }; + return ( + + + + + + + Home + + + + + + + + Prerak Orientation + + + + + + Prerak Training + + + + + + My MT + + + + + + Add a Prerak + + + + + Your Calender + + + + setModalVisible(false)} + avoidKeyboard + size="xl" + > + + + {/* + Schedule an Interview + + + + + + + + Event Type + + + + + + + + + + + + Master Trainer + + + Prakash Wagh + + + + + + Candidates + + + + + + + Date + + + + + + + + + Time + + + + + + + + + Reminder + + + + + + + + + Location + + + + + + + + + + + + + + + */} + +
+ + + + + + +
+
+
+ + + + + + + + + + + Interview + + + + Orientation Days + + + + Training Days + + + + Camp visits + + + + + + + + + +
+ ); +} diff --git a/apps/front-end/src/pages/front-end/orientationPopupSchema.js b/apps/front-end/src/pages/front-end/orientationPopupSchema.js new file mode 100644 index 000000000..0e18af7b4 --- /dev/null +++ b/apps/front-end/src/pages/front-end/orientationPopupSchema.js @@ -0,0 +1,50 @@ +export default { + title: "Schedule an Interview", + type: "object", + + properties: { + event_type: { + title: "Event type", + type: "string", + format: "select", + enum: ["Prerak Orientationb", "Prerak Training", "My MT", "Add a Prerak"], + }, + mastertrainer: { + title: "Master Trainer", + type: "string", + format: "select", + enum: [""], + }, + candidates: { + title: "Candidates", + type: "string", + format: "select", + enum: [""], + }, + date: { + title: "Date", + type: "string", + format: "date", + }, + start_time: { + title: "Start time", + type: "string", + format: "time", + }, + end_time: { + title: "End time", + type: "string", + format: "time", + }, + reminder: { + title: "Reminder", + type: "string", + format: "select", + enum: ["1 Day Before ", "1 Week Before"], + }, + location: { + title: "Location", + type: "string", + }, + }, +}; diff --git a/apps/front-end/src/routes/admin.js b/apps/front-end/src/routes/admin.js index 7ef396794..841bce1b9 100644 --- a/apps/front-end/src/routes/admin.js +++ b/apps/front-end/src/routes/admin.js @@ -4,6 +4,7 @@ import FacilitatorView from "pages/admin/facilitator/View"; import AdminHome from "pages/admin/AdminHome"; import FacilitatorForm from "../pages/admin/FacilitatorForm"; import NotFound from "pages/NotFound"; +import Orientation from "pages/front-end/Orientation"; export default [ { path: "/admin/view/:id", component: FacilitatorView }, @@ -12,4 +13,5 @@ export default [ { path: "/admin", component: AdminHome }, { path: "/", component: AdminHome }, { path: "*", component: NotFound }, + { path: "/orientation", component: Orientation }, ]; diff --git a/lib/common-lib/src/components/IconByName.js b/lib/common-lib/src/components/IconByName.js index ef6c9ae33..2c812f0e9 100644 --- a/lib/common-lib/src/components/IconByName.js +++ b/lib/common-lib/src/components/IconByName.js @@ -99,6 +99,9 @@ import DonutChartLineIcon from 'remixicon-react/DonutChartLineIcon' import MessageLineIcon from 'remixicon-react/MessageLineIcon' import ShutDownLineIcon from 'remixicon-react/ShutDownLineIcon' import LoginCircleLineIcon from 'remixicon-react/LoginCircleLineIcon' +import VidiconLineIcon from 'remixicon-react/VidiconLineIcon' +import UserAddLineIcon from 'remixicon-react/UserAddLineIcon' +import CalendarLineIcon from 'remixicon-react/CalendarLineIcon' function IconButton({ icon, isDisabled, prefix, ...props }) { if (!isDisabled) { @@ -896,6 +899,32 @@ export default function IconByName({ _icon, ...props }) { /> ) break + case 'VidiconLineIcon': + icon = ( + } + /> + ) + break + + case 'UserAddLineIcon': + icon = ( + } + /> + ) + break + case 'CalendarLineIcon': + icon = ( + } + /> + ) + break + default: if (props.name !== 'Home4LineIcon') { console.warn(props.name) diff --git a/package.json b/package.json index ecf88b45d..9d97ed845 100644 --- a/package.json +++ b/package.json @@ -20,5 +20,13 @@ "devDependencies": { "lerna": "4.0.0", "prettier": "^2.6.0" + }, + "dependencies": { + "@fullcalendar/daygrid": "^6.1.7", + "@fullcalendar/interaction": "^6.1.7", + "@fullcalendar/react": "^6.1.7", + "@fullcalendar/timegrid": "^6.1.7", + "fullcalendar": "^6.1.7", + "react-calendar": "^4.2.1" } -} \ No newline at end of file +}