{"version":3,"sources":["config/tokenConfig.js","assets/images/bgulogo.png","assets/images/inovationsAndDigital.png","components/Footer/Footer.js","components/Container/Container.js","assets/images/logo_eng.png","context/UserContext.js","components/UI/Spinner/TinySpinner.js","components/UI/WarningAlert/WarningAlert.js","components/NavbarAndDrawer/NavbarAndDrawer.js","components/Navigation/NavigationItems/NavigationItem/NavigationItem.js","components/Navigation/NavigationItems/NavigationItems.js","components/DrawerNavigation/DrawerNavigation.js","components/UI/Backdrop/Backdrop.js","context/FormContext.js","components/UI/Input/MyInput.js","components/Tables/FormOfTableInputs.js","components/Form/Step1.js","components/Form/Step2.js","components/Form/Step3.js","components/Form/Step4.js","components/Form/Step5.js","components/Form/Step6.js","components/Form/Step7.js","components/Form/Step8.js","components/Form/Step9.js","components/Form/Step10.js","components/FileUpload/FileUpload.styles.js","components/FileUpload/FileUpload.js","components/Form/Step11.js","components/Form/Step.js","components/UI/StatusBar/StatusBar.js","components/Form/FormNavigateBtns.js","components/UI/Bootstrap/Message/Message.js","components/UI/Spinner/Spinner.js","components/Form/Form.js","components/Tables/TableFilters.js","components/Members/AddOrEditMembers.js","components/Meetings/AddOrEditMeetings.js","components/UI/Bootstrap/ModalForm/ModalConfirm.js","components/Requests/EditRequestStatus.js","components/Requests/EditRequestStatusForCommitteeMember.js","components/PDF/PdfContainer.js","components/PDF/DocService.js","components/Form/Step2ForPDF.js","components/Form/Step3ForPDF.js","components/Form/Step4ForPDF.js","components/Form/Step5ForPDF.js","components/Form/Step6ForPDF.js","components/Form/Step7ForPDF.js","components/Form/Step9ForPDF.js","components/Form/Step10ForPDF.js","components/Form/PDFform.js","components/PDF/PdfContainerForCertification.js","assets/images/bgu_logo.png","assets/images/golan_signature.png","components/Form/CertificationPdf.js","components/UI/Bootstrap/ModalForm/ModalForm.js","components/ZipDownload/ZipDownload.js","components/Tables/TableContainer.js","components/Members/Members.js","components/Meetings/Meetings.js","components/Home/Home.js","components/Requests/Requests.js","components/Requests/AdminRequests.js","components/NotFound.js/NotFound.js","components/Test/Test.js","components/Requests/CommitteeMemberRequests.js","routes/PrivateAndPublicRoutes.js","App.js","reportWebVitals.js","utils/history.js","index.js","components/Form/CertificationPdf.module.css","components/Home/Home.module.css","components/Footer/Footer.module.css","config/rolesConfig.js","components/DrawerNavigation/DrawerNavigation.module.css","config/AcadmicDegrees.js","components/Meetings/Meetings.module.css","components/Navigation/NavigationItems/NavigationItems.module.css","components/Navigation/NavigationItems/NavigationItem/NavigationItem.module.css","components/PDF/PdfContainer.module.css","components/PDF/PdfContainerForCertification.module.css","components/Container/Container.module.css","config/RequestStatus.js","components/NavbarAndDrawer/NavbarAndDrawer.module.css","components/UI/Spinner/TinySpinner.module.css","components/UI/Backdrop/Backdrop.module.css","components/UI/Spinner/Spinner.module.css","utils/JSZipUtils.js","components/Members/Members.module.css","config/Roles.js","App.module.css","config/Constants.js"],"names":["module","exports","tokenConfig","userContextToken","config","headers","Footer","props","attachedClasses","classes","py_3","textDark","id","page_footer","className","join","footerbg","style","height","container","bgu_info","footer_content","bgu_icon","icon","src","footerLogo","custom_content","Container","container_fluid","page","children","UserContext","React","createContext","UserProvider","Provider","Consumer","TinySpinner","lds_spinner","WarninAlert","useState","visible","setVisible","Alert","color","isOpen","toggle","message","NavbarAndDrawer","userName","userPassword","userID","userEmail","userFirstName","userLastName","userLoginDetails","setUserLoginDetails","isLoading","setIsLoading","isLogIn","setIsLogin","isBGUmember","setIsBGUmember","error","setError","setMessage","userContext","useContext","userAuth","authed","userBguName","onChangeHandler","e","target","name","value","updatedState","convertIntUserTypeToString","num","includes","getUserType","a","bodyContent","fetch","URL","method","body","JSON","stringify","credentials","response","ok","json","userTypeStr","data","userType","localStorage","setItem","token","handleChange","submitLogOut","preventDefault","then","console","log","removeItem","catch","submitHandler","UserName","PassWord","Id","auth","mail","firstName","lastName","useEffect","customHeaders","status","loggedIn","fixed_top","navbar","navbar_bgu","navbar_fhs","navbar_expand","moodle_has_zindex","data-region","d_inline_block","mr_3","aria-expanded","aria-controls","type","btn","nav_link","float_sm_left","mr_1","btn_secondary","data-action","data-side","data-preference","onClick","drawerToggleClicked","fa","fa_bars","fa_fw","aria-hidden","sr_only","href","navbar_brand","has_logo","logo","d_none","d_sm_inline","bguLogoEng","data-tooltip","fhs_tooltip","data-original-title","alt","nav","navbar_nav","ml_auto","align_items_center","nav_item","d_flex","marginTop","loginform","login","onSubmit","form_group","login_username","placeholder","form_control","autoComplete","onChange","login_password","login_userid","btn_primary","btn_block","navigationItem","display","toDisplay","list_group_item","list_group_item_action","to","link","exact","data-key","data-isexpandable","data-indent","data-showdivider","data-type","data-nodetype","data-collapse","data-forceopen","data-isactive","data-hidden","data-preceedwithhr","activeClassName","list_group_item_action_active","NavigationItems","userRole","NavigationItem","ml_0","media","media_body","Fragment","rolesConfig","routes","filter","element","url","length","DrawerNavigation","d_print_none","closed","open","nav_drawer","tabIndex","data-aria-hidden-tab-index","list_group","aria-label","backdrop","Backdrop","FormContext","FormProvider","MyInput","forwardRef","ref","inputElement","elementType","Label","htmlFor","labelConfig","dbFiels","title","Input","elementConfig","moment","format","changed","check","checked","options","map","option","FormGroup","key","FormOfTableInputs","headersInputConfig","inputObj","index","wrapperConfig","hasOwnProperty","isEditMode","disabled","currItem","dbField","Step1","myContext","headersInputConfigForReserachDetails","dictionary","researchDetails","researchName","agency","headersInputConfigForFirstInvestigator","department","degrees","academicDegree","email","phone","headersInputConfigForSecondtInvestigator","headersInputConfigForFirstConductor","headersInputConfigForSecondConductor","introduction","description_part1","fontWeight","description_part2","description_part3","researchAndAgencyTitle","state","reserachDetails","investigatorsTitle","firstInvestigatorTitle","secondInvestigatorTitle","conductorsTitle","firstConductorTitle","secondConductorTitle","Step2","consentToParticipate","q1","global","yes","no","border","paddingLeft","backgroundColor","q1note","q3","explain","q3comments","rows","q4","q5","comments","q5comments","q2","q2comments","q6","q6comments","Step3","discomfort","q7","q8","both_q_note","q7and8comments","Step4","deception","q9","q10","q9and10comments","Step5","feedbackToTheSubject","fontSize","note","q11","q12","q11and12comments","Step6","compensationForParticipation","q13","q13_note","q13comments","q14","q14comments","Step7","privacy","q15","q15_A","q15A","q16","q16_A","q16commentsA","q16_B","q16commentsB","q16_C","q16commentsC","Step8","withdrawelFromTheStudy","q17","q18","q18_A","q18A","Step9","researchEquipment","q19","q19_A","q19A","q20","q20comments","Step10","researchProtocol","cols","protocolText","FileUploadContainer","styled","section","FormField","input","InputLabel","label","DragDropText","p","UploadFileBtn","button","FilePreviewContainer","article","PreviewList","FileMetaData","div","isImageFile","RemoveFileIcon","i","PreviewContainer","ImagePreview","img","apiURL","require","FileUpload","updateFilesCb","extraDetails","maxFileSizeInBytes","otherProps","fileInputField","useRef","files","setFiles","wasUpload","setWasUpload","callUpdateFilesCb","nestedObj","filesAsArray","Object","keys","uploadFilesHandler","FormData","entries","append","requestNumber","requestSubNumber","Error","success","current","click","multiple","newFiles","updatedFiles","file","size","addNewFiles","justifyContent","Spinner","fileName","bytes","split","createObjectURL","Math","round","removeFile","Step11","profileImages","newUserInfo","setNewUserInfo","researchConsent","accept","requestObjectState","Step","currentStep","StausBar","percentageStr","percentage","class","role","width","aria-valuenow","aria-valuemin","aria-valuemax","FormNavigateBtns","flex","prev","previous","consts","next","submit","right","Message","header","mainContent","secondaryContent","spinner","Loader","Form","setRequestObjectState","isFirstRender","isSubmmited","submittedMessageHeader","submittedMessageMainContent","submittedMessageSecondaryContent","gotData","firstInvestigatorName","firstInvestigatorDepartment","firstInvestigatorAcademicDegree","firstInvestigatorPhone","firstInvestigatorEmail","secondInvestigatorName","secondInvestigatorDepartment","secondInvestigatorAcademicDegree","secondInvestigatorPhone","secondInvestigatorEmail","firstConductorName","firstConductorDepartment","firstConductorAcademicDegree","firstConductorPhone","firstConductorEmail","secondConductorName","secondConductorDepartment","secondConductorAcademicDegree","secondConductorPhone","secondConductorEmail","formState","setFormState","saveCurrStepInDB","jsonObj","isLastFormStep","getRequestDetails","fetchURL","results","result","prevState","getNextRequestCounter","urlState","location","isNewRequest","request","subRequest","originalSubRequest","event","getAttribute","nameArr","newState","Filter","column","canFilter","render","DefaultColumnFilter","filterValue","setFilter","preFilteredRows","undefined","SelectColumnFilter","useMemo","Set","forEach","row","add","values","CustomInput","AddOrEditMembers","setCurrItem","item","updateState","err","addItemToState","updateItem","Button","AddOrEditMeetings","committeeMeetingID","COMMITTEE_ID","ModalConfirm","ModalFooter","confirmFunction","EditRequestStatus","setData","statusList","setStatusList","membersList","setmembersList","requestStatus","receiverBguID","requestStageComments","titleRef","reseracherID","columns","Header","accessor","Cell","Date","disableFilters","disableSortBy","doFetch","getSubmissionTableData","getAllStatusForDDL","getAllCommitteeUsersForCheckboxList","members","updatedMemberList","push","initReceiversBguID","stages","researcherID","newObj","updatedCurrItem","xstyle","Row","Col","margin","receiversArr","myMap","newArr","convertMapToArrString","obj","EditRequestStatusForCommitteeMember","isRequestWasReviewed","setIsRequestWasReviewed","isCommitteeMemberReviewedTheRequest","isReviewed","PdfContainer","bodyRef","createRef","pdf_container","pdf_toolbar","createPdf","pdf_body","Doc","html","savePDF","paperSize","padding","PDFform","hasError","formStepsAnswers","Step2ForPDF","Step3ForPDF","Step4ForPDF","Step5ForPDF","Step6ForPDF","Step7ForPDF","Step9ForPDF","Step10ForPDF","CertificationPdf","aprrovedInDate","fullName","requestFullNumber","main","headerImgDiv","headerImg","headerTitle","inputfield","golan_sign","GolanImg","ModalForm","modal","setModal","history","useHistory","closeBtn","buttonLabel","float","marginRight","isDisabled","modalInnerTitle","modalContent","pathname","subRequst","Modal","modalClass","ModalHeader","close","ModalBody","ZipDownload","urlsArray","setUrlsArray","download","urls","alert","zip","JSZip","count","folderName","zipFilename","urlElem","newUrl","JSZipUtils","getBinaryContent","binary","generateAsync","content","saveAs","getAllFilesOfRequest","TableContainer","deleteItemFromState","rowID","useTable","defaultColumn","initialState","pageIndex","pageSize","useFilters","useSortBy","usePagination","getTableProps","getTableBodyProps","headerGroups","prepareRow","canPreviousPage","canNextPage","pageOptions","pageCount","gotoPage","nextPage","previousPage","setPageSize","generateSortingIndicator","isSorted","isSortedDesc","generateCustomColumns","statusMapForEdit","subID","deleteRequestFromTable","statusMapForDelete","returnValue","deleteRowFromTable","Table","bordered","hover","headerGroup","getHeaderGroupProps","getHeaderProps","getSortByToggleProps","cells","cell","getCellProps","getRowProps","maxWidth","textAlign","md","min","max","defaultValue","Number","Members","roles","contacts","ColAddItem","itemIndex","findIndex","newArray","slice","updatedItems","Meetings","meetings","Home","myRef","imgDiv","txtBox","newSiteAlert","window","scrollTo","top","offsetTop","behavior","readMoreBtn","middle","committee","committeCol","helsinkiBtn","Requests","show","defaultChecked","requests","AdminRequests","NotFound","Test","isCompanyMember","setIsCompanyMember","padLeadingZeros","updatedNum","idWithLeadingZeros","data-dismiss","CommitteeMemberRequests","PrivateAndPublicRoutes","match","allowedRoutes","reduce","acc","uniqBy","component","path","Routes","App","showSideDrawer","setShowSideDrawer","setAuthed","setUserRole","getItem","setToken","setUserBguName","sideDrawerToggleHandler","page_wrapper","reportWebVitals","onPerfEntry","Function","getCLS","getFID","getFCP","getLCP","getTTFB","createBrowserHistory","app","ReactDOM","StrictMode","document","getElementById","HeadOfCommittee","MemberOfCommittee","AdministrativeAssistant","Researcher","NoUser","common","createStandardXHR","XMLHttpRequest","_getBinaryFromXHR","xhr","responseText","createXHR","ActiveXObject","createActiveXHR","promise","resolve","reject","callback","Promise","_resolve","_reject","responseType","overrideMimeType","onreadystatechange","readyState","this","statusText","progress","onprogress","originalEvent","percent","loaded","total","send","NUM_OF_STEPS"],"mappings":"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","file":"static/js/main.367a4296.chunk.js","sourcesContent":["const tokenConfig = (userContextToken) => {\r\n // Headers\r\n const config = {\r\n headers: {\r\n \"Content-type\": \"application/json\",\r\n },\r\n };\r\n\r\n // If token, add to headers\r\n if (userContextToken) {\r\n config.headers[\"x-auth-token\"] = userContextToken;\r\n }\r\n\r\n return config;\r\n};\r\n\r\nmodule.exports={\r\n tokenConfig:tokenConfig\r\n}","export default __webpack_public_path__ + \"static/media/bgulogo.a4408566.png\";","export default __webpack_public_path__ + \"static/media/inovationsAndDigital.7cb38104.png\";","import React from \"react\";\r\nimport classes from \"./Footer.module.css\";\r\nimport footerLogo from \"../../assets/images/bgulogo.png\";\r\nimport digitalLogo from \"../../assets/images/inovationsAndDigital.png\";\r\n\r\nconst Footer = (props) => {\r\n let attachedClasses = [classes.py_3, classes.textDark];\r\n\r\n return (\r\n \r\n );\r\n};\r\n\r\nexport default Footer;\r\n","import React from \"react\";\r\nimport classes from \"./Container.module.css\";\r\n\r\nconst Container = (props) => {\r\n let attachedClasses = [classes.container_fluid];\r\n\r\n return (\r\n
\r\n {props.children}\r\n
\r\n );\r\n};\r\n\r\nexport default Container;\r\n","export default __webpack_public_path__ + \"static/media/logo_eng.61504645.png\";","import React from \"react\";\r\nconst UserContext = React.createContext();\r\nexport const UserProvider = UserContext.Provider;\r\nexport const UserConsumer = UserContext.Consumer;\r\n\r\nexport default UserContext;\r\n","import React from \"react\";\r\n\r\nimport classes from \"./TinySpinner.module.css\";\r\n\r\nconst TinySpinner = () => (\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n);\r\n\r\nexport default TinySpinner;\r\n","import React, { useState } from \"react\";\r\nimport { Alert, Button } from \"reactstrap\";\r\n\r\nconst WarninAlert = (props) => {\r\n const [visible, setVisible] = useState(true);\r\n\r\n const onDismiss = () => setVisible(false);\r\n\r\n return (\r\n \r\n {props.message}\r\n \r\n );\r\n};\r\nexport default WarninAlert;\r\n","import React, { useState, useEffect, useContext } from \"react\";\r\nimport classes from \"./NavbarAndDrawer.module.css\";\r\nimport bguLogoEng from \"../../assets/images/logo_eng.png\";\r\nimport { URL } from \"../../config/Constants\";\r\nimport UserContext from \"../../context/UserContext\";\r\nimport TinySpinner from \"../UI/Spinner/TinySpinner\";\r\nimport WarninAlert from \"../UI/WarningAlert/WarningAlert\";\r\nimport { tokenConfig } from \"../../config/tokenConfig\";\r\n\r\nconst NavbarAndDrawer = (props) => {\r\n const [userLoginDetails, setUserLoginDetails] = useState({\r\n userName: \"\",\r\n userPassword: \"\",\r\n userID: \"\",\r\n userEmail: \"\",\r\n userFirstName: \"\",\r\n userLastName: \"\",\r\n });\r\n\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [isLogIn, setIsLogin] = useState(false);\r\n const [isBGUmember, setIsBGUmember] = useState(false);\r\n const [error, setError] = useState(false);\r\n const [message, setMessage] = useState(\"\");\r\n const userContext = useContext(UserContext);\r\n const userAuth = userContext.authed;\r\n const userBguName = userContext.userBguName;\r\n\r\n const onChangeHandler = (e) => {\r\n let { name, value } = e.target;\r\n let updatedState = { ...userLoginDetails };\r\n updatedState[name] = value;\r\n setUserLoginDetails(updatedState);\r\n };\r\n\r\n const convertIntUserTypeToString = (num) => {\r\n const adminsTypes = [1, 3]; //1=Head of committee, 3= Administrative assistant\r\n if (num === 0) {\r\n return \"Researcher\";\r\n } else if (adminsTypes.includes(num)) {\r\n return \"AdministrativeAssistant\";\r\n } else {\r\n return \"MemberOfCommittee\";\r\n }\r\n };\r\n\r\n const getUserType = async () => {\r\n const bodyContent = {\r\n userName: userLoginDetails.userName,\r\n userEmail: userLoginDetails.userEmail,\r\n userFirstName: userLoginDetails.userFirstName,\r\n userLastName: userLoginDetails.userLastName,\r\n };\r\n try {\r\n const response = await fetch(\r\n `${URL}/members/${userLoginDetails.userID}`,\r\n {\r\n method: \"post\",\r\n /*headers: {\r\n \"Content-Type\": \"application/json\",\r\n },*/\r\n headers: { \"Content-type\": \"application/json\" },\r\n body: JSON.stringify(bodyContent),\r\n credentials: \"include\",\r\n }\r\n );\r\n if (!response.ok) {\r\n setError(true);\r\n setIsLoading(false);\r\n setMessage(\"something went wrong! try again!\");\r\n return;\r\n }\r\n const body = await response.json();\r\n const userTypeStr = convertIntUserTypeToString(body.data.userType);\r\n localStorage.setItem(\"token\", body.data.token);\r\n userContext.handleChange(\r\n userTypeStr,\r\n true,\r\n userLoginDetails.userName,\r\n body.data.token\r\n );\r\n setIsLogin(true);\r\n setError(false);\r\n setMessage(\"\");\r\n } catch (error) {\r\n setError(true);\r\n setIsLoading(false);\r\n setMessage(\"something went wrong! try again!\");\r\n }\r\n setIsLoading(false);\r\n };\r\n\r\n const submitLogOut = async (e) => {\r\n e.preventDefault();\r\n fetch(`${URL}/login/logout/`, { credentials: \"include\" })\r\n .then((response) => {\r\n return response.json();\r\n })\r\n .then((response) => {\r\n console.log(response);\r\n setIsLogin(false);\r\n setIsBGUmember(false);\r\n localStorage.removeItem(\"token\");\r\n userContext.handleChange(\"NoUser\", false, \"\", null);\r\n })\r\n .catch();\r\n };\r\n const submitHandler = async (e) => {\r\n e.preventDefault();\r\n setIsLoading(true);\r\n setError(false);\r\n\r\n fetch(`${URL}/login/AuthGen`, {\r\n //`http://apps4cloud19.auth.ad.bgu.ac.il:84/api/AuthGen`\r\n method: \"post\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify({\r\n UserName: userLoginDetails.userName,\r\n PassWord: userLoginDetails.userPassword,\r\n Id: userLoginDetails.userID,\r\n }),\r\n })\r\n .then((response) => {\r\n return response.json();\r\n })\r\n .then((response) => {\r\n //The combination of user, id and password is correct!\r\n if (response.data.auth) {\r\n //getUserType();\r\n let updatedState = { ...userLoginDetails };\r\n updatedState[\"userEmail\"] = response.data.mail;\r\n updatedState[\"userFirstName\"] = response.data.firstName;\r\n updatedState[\"userLastName\"] = response.data.lastName;\r\n setUserLoginDetails(updatedState);\r\n setIsBGUmember(true);\r\n } else {\r\n //The combination of user, id and password is wrong!\r\n setError(true);\r\n setIsLoading(false);\r\n setMessage(\"combination of user,id an password didnt work!\");\r\n }\r\n })\r\n //unexpected problem...\r\n .catch(() => {\r\n setError(true);\r\n setIsLoading(false);\r\n setMessage(\"connection problem\");\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n const customHeaders = tokenConfig(userContext.token);\r\n fetch(`${URL}/login/`, {\r\n credentials: \"include\",\r\n headers: customHeaders.headers,\r\n })\r\n .then((response) => {\r\n if (response.status === 401 || response.status === 400) {\r\n // 401=no token, 400=token is not valid\r\n return;\r\n } else {\r\n return response.json();\r\n }\r\n })\r\n .then((response) => {\r\n if (response) {\r\n if (response.data.loggedIn === true) {\r\n setIsLogin(true);\r\n setError(false);\r\n setMessage(\"\");\r\n const userTypeStr = convertIntUserTypeToString(\r\n response.data.userType\r\n );\r\n localStorage.setItem(\"token\", userContext.token);\r\n userContext.handleChange(\r\n userTypeStr,\r\n true,\r\n response.data.userName,\r\n userContext.token\r\n );\r\n }\r\n } else {\r\n localStorage.removeItem(\"token\");\r\n userContext.handleChange(\"NoUser\", false, \"\", null);\r\n }\r\n })\r\n .catch();\r\n return () => {\r\n //for cleanup\r\n };\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (isBGUmember) {\r\n getUserType();\r\n }\r\n }, [isBGUmember]);\r\n return (\r\n \r\n {/* The hamburger icon*/}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n {/* The BGU logo */}\r\n \r\n \r\n \r\n \r\n \r\n\r\n {/* login and logout forms */}\r\n\r\n \r\n \r\n {/* A spinner */}\r\n {isLoading && }\r\n\r\n {/* An alert message */}\r\n {!isLogIn && error && (\r\n
\r\n \r\n
\r\n )}\r\n {/* login form */}\r\n {!userAuth && (\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n )}\r\n {/* logout form */}\r\n {userAuth && (\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n )}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default NavbarAndDrawer;\r\n","import React from \"react\";\r\nimport classes from \"./NavigationItem.module.css\";\r\nimport { NavLink } from \"react-router-dom\";\r\n\r\nconst navigationItem = (props) => {\r\n return (\r\n
  • \r\n \r\n {props.children}\r\n \r\n
  • \r\n );\r\n};\r\nexport default navigationItem;\r\n{\r\n /*activeClassName={classes.active}*/\r\n}\r\n","import React, { useContext } from \"react\";\r\nimport classes from \"./NavigationItems.module.css\";\r\nimport NavigationItem from \"./NavigationItem/NavigationItem\";\r\nimport UserContext from \"../../../context/UserContext\";\r\nimport rolesConfig from \"../../../config/rolesConfig\";\r\n\r\nconst NavigationItems = (props) => {\r\n const userContext = useContext(UserContext);\r\n const userRole = userContext.userRole;\r\n\r\n return (\r\n
      \r\n \r\n
      \r\n
      \r\n {/*\r\n \r\n */}\r\n Home\r\n
      \r\n
      \r\n \r\n {userRole !== \"NoUser\" && (\r\n \r\n {\r\n return element.url === \"/committeeMembers\";\r\n }).length > 0\r\n ? true\r\n : false\r\n }\r\n >\r\n Members\r\n \r\n {\r\n return element.url === \"/committeeMeetings\";\r\n }).length > 0\r\n ? true\r\n : false\r\n }\r\n >\r\n Meetings\r\n \r\n {\r\n return element.url === \"/requests\";\r\n }).length > 0\r\n ? true\r\n : false\r\n }\r\n >\r\n Researcher requests\r\n \r\n {\r\n return element.url === \"/adminRequests\";\r\n }).length > 0\r\n ? true\r\n : false\r\n }\r\n >\r\n Admin Requests\r\n \r\n {\r\n return element.url === \"/memberRequests\";\r\n }).length > 0\r\n ? true\r\n : false\r\n }\r\n >\r\n Member Requests\r\n \r\n \r\n )}\r\n
    \r\n );\r\n};\r\nexport default NavigationItems;\r\n","import classes from \"./DrawerNavigation.module.css\";\r\nimport React from \"react\";\r\nimport NavigationItems from \"../Navigation/NavigationItems/NavigationItems\";\r\n\r\nconst DrawerNavigation = (props) => {\r\n let attachedClasses = [\r\n classes.d_print_none,\r\n classes.moodle_has_zindex,\r\n classes.closed,\r\n ];\r\n if (props.open) {\r\n attachedClasses = [classes.d_print_none, classes.moodle_has_zindex];\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default DrawerNavigation;\r\n","import React from \"react\";\r\n\r\nimport classes from \"./Backdrop.module.css\";\r\n\r\nconst backdrop = (props) =>\r\n props.open ?
    : null;\r\n\r\nexport default backdrop;\r\n","import React from 'react'\r\nconst FormContext=React.createContext();\r\nexport const FormProvider = FormContext.Provider\r\nexport const FormConsumer = FormContext.Consumer\r\n\r\nexport default FormContext","import React from \"react\";\r\nimport moment from \"moment\";\r\nimport { Button, Form, FormGroup, Label, Input } from \"reactstrap\";\r\n\r\nconst MyInput = React.forwardRef((props, ref) => {\r\n let inputElement = null;\r\n let deafultValue = \"select\";\r\n switch (props.elementType) {\r\n case \"input\":\r\n inputElement = (\r\n \r\n \r\n \r\n \r\n );\r\n break;\r\n\r\n case \"checkbox\":\r\n inputElement = (\r\n \r\n \r\n \r\n );\r\n break;\r\n\r\n case \"checkboxList\":\r\n inputElement = (\r\n \r\n \r\n {props.elementConfig.options.map((option) => (\r\n \r\n \r\n \r\n ))}\r\n \r\n );\r\n break;\r\n case \"textarea\":\r\n inputElement = (\r\n \r\n \r\n \r\n \r\n );\r\n break;\r\n case \"select\":\r\n inputElement = (\r\n \r\n \r\n \r\n {props.elementConfig.options.map((option) => (\r\n \r\n ))}\r\n \r\n \r\n );\r\n break;\r\n\r\n default:\r\n inputElement = (\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n\r\n return {inputElement};\r\n});\r\n\r\nexport default MyInput;\r\n","import React from \"react\";\r\nimport { FormGroup } from \"reactstrap\";\r\nimport MyInput from \"../UI/Input/MyInput\";\r\n\r\nconst FormOfTableInputs = (props) => {\r\n return props.headersInputConfig.map((inputObj, index) => {\r\n return (\r\n //instaed of-> //return props.headers.indexOf(header) == 0 ? null : (\r\n \r\n \r\n \r\n );\r\n });\r\n};\r\n\r\nexport default FormOfTableInputs;\r\n","import React, { useContext, useState } from \"react\";\r\nimport FormContext from \"../../context/FormContext\";\r\nimport dictionary from \"../../config/dictionary.json\";\r\nimport FormOfTableInputs from \"../Tables/FormOfTableInputs\";\r\nimport degrees from \"../../config/AcadmicDegrees\";\r\n\r\nconst Step1 = () => {\r\n const myContext = useContext(FormContext);\r\n\r\n const headersInputConfigForReserachDetails = [\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"text\",\r\n id: \"reserachDetails.researchName\",\r\n name: \"reserachDetails.researchName\",\r\n },\r\n labelConfig: {\r\n dbField: \"researchName\",\r\n title: dictionary.researchDetails.researchName,\r\n },\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"text\",\r\n id: \"reserachDetails.agency\",\r\n name: \"reserachDetails.agency\",\r\n },\r\n labelConfig: {\r\n dbField: \"agency\",\r\n title: dictionary.researchDetails.agency,\r\n },\r\n },\r\n ];\r\n const headersInputConfigForFirstInvestigator = [\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"text\",\r\n id: \"reserachDetails.firstInvestigatorName\",\r\n name: \"reserachDetails.firstInvestigatorName\",\r\n },\r\n labelConfig: {\r\n dbField: \"firstInvestigatorName\",\r\n title: dictionary.researchDetails.name,\r\n },\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"text\",\r\n id: \"reserachDetails.firstInvestigatorDepartment\",\r\n name: \"reserachDetails.firstInvestigatorDepartment\",\r\n },\r\n labelConfig: {\r\n dbField: \"firstInvestigatorDepartment\",\r\n title: dictionary.researchDetails.department,\r\n },\r\n },\r\n {\r\n elementType: \"select\",\r\n elementConfig: {\r\n options: degrees,\r\n id: \"reserachDetails.firstInvestigatorAcademicDegree\",\r\n name: \"reserachDetails.firstInvestigatorAcademicDegree\",\r\n },\r\n labelConfig: {\r\n dbField: \"firstInvestigatorAcademicDegree\",\r\n title: dictionary.researchDetails.academicDegree,\r\n },\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n placeholder: \"xxx@yyy.zzz\",\r\n type: \"email\",\r\n id: \"reserachDetails.firstInvestigatorEmail\",\r\n name: \"reserachDetails.firstInvestigatorEmail\",\r\n },\r\n labelConfig: {\r\n dbField: \"firstInvestigatorEmail\",\r\n title: dictionary.researchDetails.email,\r\n },\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n placeholder: \"05x-xxxxxxx\",\r\n type: \"text\",\r\n id: \"reserachDetails.firstInvestigatorPhone\",\r\n name: \"reserachDetails.firstInvestigatorPhone\",\r\n },\r\n labelConfig: {\r\n dbField: \"firstInvestigatorPhone\",\r\n title: dictionary.researchDetails.phone,\r\n },\r\n },\r\n ];\r\n const headersInputConfigForSecondtInvestigator = [\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"text\",\r\n id: \"reserachDetails.secondInvestigatorName\",\r\n name: \"reserachDetails.secondInvestigatorName\",\r\n },\r\n labelConfig: {\r\n dbField: \"secondInvestigatorName\",\r\n title: dictionary.researchDetails.name,\r\n },\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"text\",\r\n id: \"reserachDetails.secondInvestigatorDepartment\",\r\n name: \"reserachDetails.secondInvestigatorDepartment\",\r\n },\r\n labelConfig: {\r\n dbField: \"secondInvestigatorDepartment\",\r\n title: dictionary.researchDetails.department,\r\n },\r\n },\r\n {\r\n elementType: \"select\",\r\n elementConfig: {\r\n options: degrees,\r\n id: \"reserachDetails.secondInvestigatorAcademicDegree\",\r\n name: \"reserachDetails.secondInvestigatorAcademicDegree\",\r\n },\r\n labelConfig: {\r\n dbField: \"secondInvestigatorAcademicDegree\",\r\n title: dictionary.researchDetails.academicDegree,\r\n },\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n placeholder: \"xxx@yyy.zzz\",\r\n type: \"email\",\r\n id: \"reserachDetails.secondInvestigatorEmail\",\r\n name: \"reserachDetails.secondInvestigatorEmail\",\r\n },\r\n labelConfig: {\r\n dbField: \"secondInvestigatorEmail\",\r\n title: dictionary.researchDetails.email,\r\n },\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n placeholder: \"05x-xxxxxxx\",\r\n type: \"text\",\r\n id: \"reserachDetails.secondInvestigatorPhone\",\r\n name: \"reserachDetails.secondInvestigatorPhone\",\r\n },\r\n labelConfig: {\r\n dbField: \"secondInvestigatorPhone\",\r\n title: dictionary.researchDetails.phone,\r\n },\r\n },\r\n ];\r\n const headersInputConfigForFirstConductor = [\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"text\",\r\n id: \"reserachDetails.firstConductorName\",\r\n name: \"reserachDetails.firstConductorName\",\r\n },\r\n labelConfig: {\r\n dbField: \"firstConductorName\",\r\n title: dictionary.researchDetails.name,\r\n },\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"text\",\r\n id: \"reserachDetails.firstConductorDepartment\",\r\n name: \"reserachDetails.firstConductorDepartment\",\r\n },\r\n labelConfig: {\r\n dbField: \"firstConductorDepartment\",\r\n title: dictionary.researchDetails.department,\r\n },\r\n },\r\n {\r\n elementType: \"select\",\r\n elementConfig: {\r\n options: degrees,\r\n id: \"reserachDetails.firstConductorAcademicDegree\",\r\n name: \"reserachDetails.firstConductorAcademicDegree\",\r\n },\r\n labelConfig: {\r\n dbField: \"firstConductorAcademicDegree\",\r\n title: dictionary.researchDetails.academicDegree,\r\n },\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n placeholder: \"xxx@yyy.zzz\",\r\n type: \"email\",\r\n id: \"reserachDetails.firstConductorEmail\",\r\n name: \"reserachDetails.firstConductorEmail\",\r\n },\r\n labelConfig: {\r\n dbField: \"firstConductorEmail\",\r\n title: dictionary.researchDetails.email,\r\n },\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n placeholder: \"05x-xxxxxxx\",\r\n type: \"text\",\r\n id: \"reserachDetails.firstConductorPhone\",\r\n name: \"reserachDetails.firstConductorPhone\",\r\n },\r\n labelConfig: {\r\n dbField: \"firstConductorPhone\",\r\n title: dictionary.researchDetails.phone,\r\n },\r\n },\r\n ];\r\n const headersInputConfigForSecondConductor = [\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"text\",\r\n id: \"reserachDetails.secondConductorName\",\r\n name: \"reserachDetails.secondConductorName\",\r\n },\r\n labelConfig: {\r\n dbField: \"secondConductorName\",\r\n title: dictionary.researchDetails.name,\r\n },\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"text\",\r\n id: \"reserachDetails.secondConductorDepartment\",\r\n name: \"reserachDetails.secondConductorDepartment\",\r\n },\r\n labelConfig: {\r\n dbField: \"secondConductorDepartment\",\r\n title: dictionary.researchDetails.department,\r\n },\r\n },\r\n {\r\n elementType: \"select\",\r\n elementConfig: {\r\n options: degrees,\r\n id: \"reserachDetails.secondConductorAcademicDegree\",\r\n name: \"reserachDetails.secondConductorAcademicDegree\",\r\n },\r\n labelConfig: {\r\n dbField: \"secondConductorAcademicDegree\",\r\n title: dictionary.researchDetails.academicDegree,\r\n },\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n placeholder: \"xxx@yyy.zzz\",\r\n type: \"email\",\r\n id: \"reserachDetails.secondConductorEmail\",\r\n name: \"reserachDetails.secondConductorEmail\",\r\n },\r\n labelConfig: {\r\n dbField: \"secondConductorEmail\",\r\n title: dictionary.researchDetails.email,\r\n },\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n placeholder: \"05x-xxxxxxx\",\r\n type: \"text\",\r\n id: \"reserachDetails.secondConductorPhone\",\r\n name: \"reserachDetails.secondConductorPhone\",\r\n },\r\n labelConfig: {\r\n dbField: \"secondConductorPhone\",\r\n title: dictionary.researchDetails.phone,\r\n },\r\n },\r\n ];\r\n return (\r\n
    \r\n
    \r\n
    \r\n

    {dictionary.researchDetails.title}

    \r\n
    \r\n
    \r\n {/*research details */}\r\n
    \r\n
    \r\n {dictionary.introduction.description_part1}\r\n
    \r\n \r\n {dictionary.introduction.description_part2}\r\n \r\n
    \r\n {dictionary.introduction.description_part3}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    {dictionary.researchDetails.researchAndAgencyTitle}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n {/*investigators details */}\r\n
    \r\n
    \r\n
    {dictionary.researchDetails.investigatorsTitle}
    \r\n
    \r\n
    \r\n {/*first */}\r\n
    \r\n
    \r\n
    {dictionary.researchDetails.firstInvestigatorTitle}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n {/*second */}\r\n
    \r\n
    \r\n
    {dictionary.researchDetails.secondInvestigatorTitle}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n {/********************************************************************/}\r\n {/*conductors details */}\r\n
    \r\n
    \r\n
    {dictionary.researchDetails.conductorsTitle}
    \r\n
    \r\n
    \r\n {/*first */}\r\n
    \r\n
    \r\n
    {dictionary.researchDetails.firstConductorTitle}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n {/*second */}\r\n
    \r\n
    \r\n
    {dictionary.researchDetails.secondConductorTitle}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n {/********************************************************************/}\r\n
    \r\n );\r\n};\r\n\r\nexport default Step1;\r\n","import React, { useContext } from \"react\";\r\nimport FormContext from \"../../context/FormContext\";\r\nimport dictionary from \"../../config/dictionary.json\";\r\n\r\nconst Step2 = () => {\r\n const myContext = useContext(FormContext);\r\n return (\r\n
    \r\n
    \r\n
    \r\n

    {dictionary.consentToParticipate.title}

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n );\r\n};\r\n\r\nexport default Step2;\r\n","import React, { useContext } from \"react\";\r\nimport FormContext from \"../../context/FormContext\";\r\nimport dictionary from \"../../config/dictionary.json\";\r\n\r\nconst Step3 = () => {\r\n const myContext = useContext(FormContext);\r\n return (\r\n
    \r\n
    \r\n
    \r\n

    {dictionary.discomfort.title}

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default Step3;\r\n","import React, { useContext } from \"react\";\r\nimport FormContext from \"../../context/FormContext\";\r\nimport dictionary from \"../../config/dictionary.json\";\r\n\r\nconst Step4 = () => {\r\n const myContext = useContext(FormContext);\r\n return (\r\n
    \r\n
    \r\n
    \r\n

    {dictionary.deception.title}

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default Step4;\r\n","import React, { useContext } from \"react\";\r\nimport FormContext from \"../../context/FormContext\";\r\nimport dictionary from \"../../config/dictionary.json\";\r\n\r\nconst Step5 = () => {\r\n const myContext = useContext(FormContext);\r\n return (\r\n
    \r\n
    \r\n
    \r\n

    {dictionary.feedbackToTheSubject.title}

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n {\" \"}\r\n {dictionary.feedbackToTheSubject.note}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default Step5;\r\n","import React, { useContext } from \"react\";\r\nimport FormContext from \"../../context/FormContext\";\r\nimport dictionary from \"../../config/dictionary.json\";\r\n\r\nconst Step6 = () => {\r\n const myContext = useContext(FormContext);\r\n return (\r\n
    \r\n
    \r\n
    \r\n

    {dictionary.compensationForParticipation.title}

    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n );\r\n};\r\n\r\nexport default Step6;\r\n","import React, { useContext } from \"react\";\r\nimport FormContext from \"../../context/FormContext\";\r\nimport dictionary from \"../../config/dictionary.json\";\r\n\r\nconst Step7 = () => {\r\n const myContext = useContext(FormContext);\r\n return (\r\n
    \r\n
    \r\n
    \r\n

    {dictionary.privacy.title}

    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n );\r\n};\r\n\r\nexport default Step7;\r\n","import React, { useContext } from \"react\";\r\nimport FormContext from \"../../context/FormContext\";\r\nimport dictionary from \"../../config/dictionary.json\";\r\nimport { TramRounded } from \"@material-ui/icons\";\r\n\r\nconst Step8 = () => {\r\n const myContext = useContext(FormContext);\r\n return (\r\n
    \r\n
    \r\n
    \r\n

    {dictionary.withdrawelFromTheStudy.title}

    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default Step8;\r\n","import React, { useContext } from \"react\";\r\nimport FormContext from \"../../context/FormContext\";\r\nimport dictionary from \"../../config/dictionary.json\";\r\n\r\nconst Step9 = () => {\r\n const myContext = useContext(FormContext);\r\n return (\r\n
    \r\n
    \r\n
    \r\n

    {dictionary.researchEquipment.title}

    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n );\r\n};\r\n\r\nexport default Step9;\r\n","import React, { useContext } from \"react\";\r\nimport FormContext from \"../../context/FormContext\";\r\nimport dictionary from \"../../config/dictionary.json\";\r\n\r\nconst Step10 = () => {\r\n const myContext = useContext(FormContext);\r\n return (\r\n
    \r\n
    \r\n
    \r\n

    {dictionary.researchProtocol.title}

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n The research protocol should contain a full description of\r\n the project stages that pertain to the experimental method and all\r\n interaction with human subjects.

    If the project contains a\r\n series of experiments, describe the variations.

    Include a\r\n description of type and number of subjects and the subject\r\n recruitment method.

    If this type of protocol is one\r\n commonly used and/or if a similar protocol and method have been used\r\n and published in the literature, please add references.

    \r\n \r\n Do not submit the project proposal that was submitted to the\r\n funding agency.\r\n \r\n

    \r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default Step10;\r\n","import styled from \"styled-components\";\r\n\r\nexport const FileUploadContainer = styled.section`\r\n position: relative;\r\n margin: 25px 0 15px;\r\n border: 2px dotted lightgray;\r\n padding: 35px 20px;\r\n border-radius: 6px;\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n background-color: white;\r\n`;\r\n\r\nexport const FormField = styled.input`\r\n font-size: 18px;\r\n display: block;\r\n width: 100%;\r\n border: none;\r\n text-transform: none;\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n right: 0;\r\n bottom: 0;\r\n opacity: 0;\r\n\r\n &:focus {\r\n outline: none;\r\n }\r\n`;\r\n\r\nexport const InputLabel = styled.label`\r\n top: -21px;\r\n font-size: 13px;\r\n color: black;\r\n left: 0;\r\n position: absolute;\r\n`;\r\n\r\nexport const DragDropText = styled.p`\r\n font-weight: bold;\r\n letter-spacing: 2.2px;\r\n margin-top: 0;\r\n text-align: center;\r\n`;\r\n\r\nexport const DragFileNameText = styled.p`\r\n font-weight: bold;\r\n letter-spacing: 2.2px;\r\n margin-top: 0;\r\n text-align: center;\r\n font-size:14px;\r\n color:red;\r\n`;\r\n\r\nexport const UploadFileBtn = styled.button`\r\n box-sizing: border-box;\r\n appearance: none;\r\n background-color: transparent;\r\n border: 2px solid #3498db;\r\n cursor: pointer;\r\n font-size: 1rem;\r\n line-height: 1;\r\n padding: 1.1em 2.8em;\r\n text-align: center;\r\n text-transform: uppercase;\r\n font-weight: 700;\r\n border-radius: 6px;\r\n color: #3498db;\r\n position: relative;\r\n overflow: hidden;\r\n z-index: 1;\r\n transition: color 250ms ease-in-out;\r\n font-family: \"Open Sans\", sans-serif;\r\n width: 45%;\r\n display: flex;\r\n align-items: center;\r\n padding-right: 0;\r\n justify-content: center;\r\n\r\n &:after {\r\n content: \"\";\r\n position: absolute;\r\n display: block;\r\n top: 0;\r\n left: 50%;\r\n transform: translateX(-50%);\r\n width: 0;\r\n height: 100%;\r\n background: #3498db;\r\n z-index: -1;\r\n transition: width 250ms ease-in-out;\r\n }\r\n\r\n i {\r\n font-size: 22px;\r\n margin-right: 5px;\r\n border-right: 2px solid;\r\n position: absolute;\r\n top: 0;\r\n bottom: 0;\r\n left: 0;\r\n right: 0;\r\n width: 20%;\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n }\r\n\r\n @media only screen and (max-width: 500px) {\r\n width: 70%;\r\n }\r\n\r\n @media only screen and (max-width: 350px) {\r\n width: 100%;\r\n }\r\n\r\n &:hover {\r\n color: #fff;\r\n outline: 0;\r\n background: transparent;\r\n\r\n &:after {\r\n width: 110%;\r\n }\r\n }\r\n\r\n &:focus {\r\n outline: 0;\r\n background: transparent;\r\n }\r\n\r\n &:disabled {\r\n opacity: 0.4;\r\n filter: grayscale(100%);\r\n pointer-events: none;\r\n }\r\n`;\r\n\r\nexport const FilePreviewContainer = styled.article`\r\n margin-bottom: 35px;\r\n\r\n span {\r\n font-size: 14px;\r\n }\r\n`;\r\n\r\nexport const PreviewList = styled.section`\r\n display: flex;\r\n flex-wrap: wrap;\r\n margin-top: 10px;\r\n\r\n @media only screen and (max-width: 400px) {\r\n flex-direction: column;\r\n }\r\n`;\r\n\r\nexport const FileMetaData = styled.div`\r\n display: ${(props) => (props.isImageFile ? \"none\" : \"flex\")};\r\n flex-direction: column;\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n right: 0;\r\n bottom: 0;\r\n padding: 10px;\r\n border-radius: 6px;\r\n color: white;\r\n font-weight: bold;\r\n background-color: rgba(5, 5, 5, 0.55);\r\n\r\n aside {\r\n margin-top: auto;\r\n display: flex;\r\n justify-content: space-between;\r\n }\r\n`;\r\n\r\nexport const RemoveFileIcon = styled.i`\r\n cursor: pointer;\r\n\r\n &:hover {\r\n transform: scale(1.3);\r\n }\r\n`;\r\n\r\nexport const PreviewContainer = styled.section`\r\n padding: 0.25rem;\r\n width: 20%;\r\n height: 120px;\r\n border-radius: 6px;\r\n box-sizing: border-box;\r\n\r\n &:hover {\r\n opacity: 0.55;\r\n\r\n ${FileMetaData} {\r\n display: flex;\r\n }\r\n }\r\n\r\n & > div:first-of-type {\r\n height: 100%;\r\n position: relative;\r\n }\r\n\r\n @media only screen and (max-width: 750px) {\r\n width: 25%;\r\n }\r\n\r\n @media only screen and (max-width: 500px) {\r\n width: 50%;\r\n }\r\n\r\n @media only screen and (max-width: 400px) {\r\n width: 100%;\r\n padding: 0 0 0.4em;\r\n }\r\n`;\r\n\r\nexport const ImagePreview = styled.img`\r\n border-radius: 6px;\r\n width: 100%;\r\n height: 100%;\r\n`;\r\n","import React, { useRef, useState, useContext } from \"react\";\r\nimport {\r\n FileUploadContainer,\r\n FormField,\r\n DragDropText,\r\n DragFileNameText,\r\n UploadFileBtn,\r\n FilePreviewContainer,\r\n ImagePreview,\r\n PreviewContainer,\r\n PreviewList,\r\n FileMetaData,\r\n RemoveFileIcon,\r\n InputLabel,\r\n} from \"./FileUpload.styles\";\r\nimport { tokenConfig } from \"../../config/tokenConfig\";\r\nimport UserContext from \"../../context/UserContext\";\r\nimport TinySpinner from \"../UI/Spinner/TinySpinner\";\r\nimport { Spinner } from \"reactstrap\";\r\nimport WarninAlert from \"../UI/WarningAlert/WarningAlert\";\r\nconst apiURL = require(\"../../config/Constants\");\r\n\r\nconst KILO_BYTES_PER_BYTE = 1000;\r\nconst DEFAULT_MAX_FILE_SIZE_IN_BYTES = 2000000;\r\n\r\nconst convertNestedObjectToArray = (nestedObj) =>\r\n Object.keys(nestedObj).map((key) => nestedObj[key]);\r\n\r\nconst convertBytesToKB = (bytes) => Math.round(bytes / KILO_BYTES_PER_BYTE);\r\n\r\nconst FileUpload = ({\r\n label,\r\n updateFilesCb,\r\n extraDetails,\r\n maxFileSizeInBytes = DEFAULT_MAX_FILE_SIZE_IN_BYTES,\r\n ...otherProps\r\n}) => {\r\n const fileInputField = useRef(null);\r\n const [files, setFiles] = useState({});\r\n const userContext = useContext(UserContext);\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [error, setError] = useState(false);\r\n const [wasUpload, setWasUpload] = useState(false);\r\n const [message, setMessage] = useState(\"\");\r\n\r\n const handleUploadBtnClick = () => {\r\n fileInputField.current.click();\r\n };\r\n\r\n const addNewFiles = (newFiles) => {\r\n for (let file of newFiles) {\r\n if (file.size <= maxFileSizeInBytes) {\r\n if (!otherProps.multiple) {\r\n return { file };\r\n }\r\n files[file.name] = file;\r\n }\r\n }\r\n return { ...files };\r\n };\r\n\r\n const callUpdateFilesCb = (files) => {\r\n const filesAsArray = convertNestedObjectToArray(files);\r\n updateFilesCb(filesAsArray);\r\n };\r\n\r\n const handleNewFileUpload = (e) => {\r\n const { files: newFiles } = e.target;\r\n if (newFiles.length) {\r\n let updatedFiles = addNewFiles(newFiles);\r\n setFiles(updatedFiles);\r\n callUpdateFilesCb(updatedFiles);\r\n }\r\n };\r\n\r\n const uploadFilesHandler = async () => {\r\n setIsLoading(true);\r\n setError(false);\r\n setMessage(\"\");\r\n setWasUpload(false);\r\n try {\r\n const customHeaders = tokenConfig(userContext.token).headers;\r\n delete customHeaders[\"Content-type\"];\r\n const data = new FormData();\r\n for (const [key, value] of Object.entries(files)) {\r\n data.append(\"files\", value);\r\n }\r\n\r\n let requestNumber = extraDetails.requestNumber;\r\n let requestSubNumber = extraDetails.requestSubNumber;\r\n const response = await fetch(\r\n `${apiURL.URL}/requests/uploadFiles/${requestNumber}/${requestSubNumber}`,\r\n {\r\n method: \"post\",\r\n body: data,\r\n headers: customHeaders,\r\n }\r\n );\r\n const body = await response.json();\r\n if (!response.ok) {\r\n throw new Error(body.error);\r\n }\r\n setMessage(body.success);\r\n setWasUpload(true);\r\n } catch (error) {\r\n setMessage(error.message);\r\n setError(true);\r\n }\r\n\r\n setIsLoading(false);\r\n };\r\n\r\n const removeFile = (fileName) => {\r\n delete files[fileName];\r\n setFiles({ ...files });\r\n callUpdateFilesCb({ ...files });\r\n };\r\n\r\n return (\r\n <>\r\n \r\n {label}\r\n Drag and drop your files anywhere or click the UPLOAD FILES button\r\n {/*\r\n The file name must be in English only, otherwise it will not be\r\n readable.\r\n */}\r\n \r\n \r\n Upload {otherProps.multiple ? \"files\" : \"a file\"}\r\n \r\n \r\n \r\n \r\n
    \r\n Upload files and click this button:    \r\n \r\n Submit files\r\n \r\n    \r\n {isLoading && }\r\n {!isLoading && error && }\r\n {!error && !isLoading && wasUpload && (\r\n \r\n )}\r\n
    \r\n \r\n {Object.keys(files).map((fileName, index) => {\r\n let file = files[fileName];\r\n let isImageFile = file.type.split(\"/\")[0] === \"image\";\r\n return (\r\n \r\n
    \r\n {isImageFile && (\r\n \r\n )}\r\n \r\n {file.name}\r\n \r\n \r\n
    \r\n
    \r\n );\r\n })}\r\n
    \r\n
    \r\n \r\n );\r\n};\r\n\r\nexport default FileUpload;\r\n","import React, { useState, useContext } from \"react\";\r\nimport FormContext from \"../../context/FormContext\";\r\nimport dictionary from \"../../config/dictionary.json\";\r\nimport FileUpload from \"../FileUpload/FileUpload\";\r\n\r\nconst Step11 = () => {\r\n const [newUserInfo, setNewUserInfo] = useState({\r\n profileImages: [],\r\n });\r\n const myContext = useContext(FormContext);\r\n\r\n const updateUploadedFiles = (files) =>\r\n setNewUserInfo({ ...newUserInfo, profileImages: files });\r\n\r\n const handleSubmit = (event) => {\r\n event.preventDefault();\r\n //logic to create new user...\r\n };\r\n\r\n return (\r\n
    \r\n
    \r\n
    \r\n

    {dictionary.researchConsent.title}

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n Please upload Consent Forms that will be used in the study, to be\r\n signed by your participants.

    \r\n Requests sent without the Consent Form will not be processed.\r\n

    \r\n

    \r\n
    \r\n
    \r\n \r\n
    \r\n );\r\n};\r\n\r\nexport default Step11;\r\n","import React, { useContext } from \"react\";\r\n/*import PropTypes from \"prop-types\";*/\r\nimport FormContext from \"../../context/FormContext\";\r\nimport Step1 from \"./Step1\";\r\nimport Step2 from \"./Step2\";\r\nimport Step3 from \"./Step3\";\r\nimport Step4 from \"./Step4\";\r\nimport Step5 from \"./Step5\";\r\nimport Step6 from \"./Step6\";\r\nimport Step7 from \"./Step7\";\r\nimport Step8 from \"./Step8\";\r\nimport Step9 from \"./Step9\";\r\nimport Step10 from \"./Step10\";\r\nimport Step11 from \"./Step11\";\r\n\r\nconst Step = (props) => {\r\n const myContext = useContext(FormContext);\r\n switch (myContext.state.currentStep) {\r\n case 1:\r\n return ;\r\n case 2:\r\n return ;\r\n case 3:\r\n return ;\r\n case 4:\r\n return ;\r\n case 5:\r\n return ;\r\n case 6:\r\n return ;\r\n case 7:\r\n return ;\r\n case 8:\r\n return ;\r\n case 9:\r\n return ;\r\n case 10:\r\n return ;\r\n case 11:\r\n return ;\r\n default:\r\n return null;\r\n }\r\n};\r\n\r\n/*Step.propTypes={\r\n currentStep:PropTypes.number.isRequired \r\n};*/\r\n\r\nexport default Step;\r\n","import React from \"react\";\r\n\r\nconst StausBar = (props) => {\r\n const percentageStr = props.percentage + \"%\";\r\n return (\r\n
    \r\n
    \r\n \r\n );\r\n};\r\n\r\nexport default StausBar;\r\n","import React, { useContext } from \"react\";\r\nimport FormContext from \"../../context/FormContext\";\r\nimport dictionary from \"../../config/dictionary.json\";\r\nimport * as consts from \"../../config/Constants\";\r\n\r\nconst FormNavigateBtns = (props) => {\r\n const myContext = useContext(FormContext);\r\n\r\n const previousButton = () => {\r\n let currentStep = myContext.state.currentStep;\r\n if (currentStep !== 1) {\r\n return (\r\n
    \r\n \r\n {dictionary.global.previous}\r\n \r\n
    \r\n );\r\n }\r\n return null;\r\n };\r\n\r\n const nextButton = () => {\r\n let currentStep = myContext.state.currentStep;\r\n if (currentStep < consts.NUM_OF_STEPS) {\r\n return (\r\n
    \r\n \r\n {dictionary.global.next}\r\n \r\n
    \r\n );\r\n } else {\r\n return (\r\n
    \r\n \r\n {dictionary.global.submit}\r\n \r\n \r\n Please press the \"Submit files\" button, before submitting the\r\n request !\r\n \r\n
    \r\n );\r\n }\r\n };\r\n return (\r\n \r\n {previousButton()}\r\n {nextButton()}\r\n \r\n );\r\n};\r\n\r\nexport default FormNavigateBtns;\r\n","import React from 'react'\r\nimport { Alert } from \"reactstrap\";\r\n\r\nconst Message=(props)=>{\r\n return (\r\n
    \r\n \r\n

    {props.header}

    \r\n

    \r\n {props.mainContent}\r\n

    \r\n
    \r\n

    \r\n {props.secondaryContent}\r\n

    \r\n
    \r\n
    \r\n );\r\n}\r\n\r\nexport default Message;","import React from 'react';\r\n\r\nimport classes from './Spinner.module.css';\r\n\r\nconst spinner = () => (\r\n
    Loading...
    \r\n);\r\n\r\nexport default spinner;","import React, {\r\n Component,\r\n useState,\r\n useEffect,\r\n useRef,\r\n useContext,\r\n} from \"react\";\r\nimport Step from \"./Step\";\r\nimport StausBar from \"../UI/StatusBar/StatusBar\";\r\nimport FormNavigateBtns from \"./FormNavigateBtns\";\r\nimport Message from \"../UI/Bootstrap/Message/Message\";\r\nimport Spinner from \"../UI/Spinner/Spinner\";\r\nimport { FormProvider } from \"../../context/FormContext\";\r\nimport * as consts from \"../../config/Constants\";\r\nimport { URL } from \"../../config/Constants\";\r\nimport { tokenConfig } from \"../../config/tokenConfig\";\r\nimport UserContext from \"../../context/UserContext\";\r\n\r\n//TODO formik and react-hook-form\r\nconst Form = (props) => {\r\n const userContext = useContext(UserContext);\r\n\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [error, setError] = useState(null);\r\n const [requestObjectState, setRequestObjectState] = useState({\r\n requestNumber: 0,\r\n requestSubNumber: 1,\r\n });\r\n const isFirstRender = useRef(true);\r\n\r\n const [formState, setFormState] = useState({\r\n currentStep: 1,\r\n isSubmmited: false,\r\n submittedMessageHeader: \"\",\r\n submittedMessageMainContent: \"\",\r\n submittedMessageSecondaryContent: \"\",\r\n gotData: false,\r\n //step 1\r\n reserachDetails: {\r\n researchName: \"\",\r\n agency: \"\",\r\n firstInvestigatorName: \"\",\r\n firstInvestigatorDepartment: \"\",\r\n firstInvestigatorAcademicDegree: \"Select\",\r\n firstInvestigatorPhone: \"\",\r\n firstInvestigatorEmail: \"\",\r\n secondInvestigatorName: \"\",\r\n secondInvestigatorDepartment: \"\",\r\n secondInvestigatorAcademicDegree: \"Select\",\r\n secondInvestigatorPhone: \"\",\r\n secondInvestigatorEmail: \"\",\r\n firstConductorName: \"\",\r\n firstConductorDepartment: \"\",\r\n firstConductorAcademicDegree: \"Select\",\r\n firstConductorPhone: \"\",\r\n firstConductorEmail: \"\",\r\n secondConductorName: \"\",\r\n secondConductorDepartment: \"\",\r\n secondConductorAcademicDegree: \"Select\",\r\n secondConductorPhone: \"\",\r\n secondConductorEmail: \"\",\r\n },\r\n //step 2\r\n consentToParticipate: {\r\n q1: null,\r\n q2: null,\r\n q3: null,\r\n q4: null,\r\n q5: null,\r\n q2comments: \"\",\r\n q3comments: \"\",\r\n q5comments: \"\",\r\n q6comments: \"\",\r\n },\r\n //step 3\r\n discomfort: {\r\n q7: null,\r\n q8: null,\r\n q7and8comments: \"\",\r\n },\r\n //step 4\r\n deception: {\r\n q9: null,\r\n q10: null,\r\n q9and10comments: \"\",\r\n },\r\n //step 5\r\n feedbackToTheSubject: {\r\n q11: null,\r\n q12: null,\r\n q11and12comments: \"\",\r\n },\r\n //step 6\r\n compensationForParticipation: {\r\n q13: null,\r\n q13comments: \"\",\r\n q14comments: \"\",\r\n },\r\n //step 7\r\n privacy: {\r\n q15: null,\r\n q15A: null,\r\n q16: null,\r\n q16commentsA: \"\",\r\n q16commentsB: \"\",\r\n q16commentsC: \"\",\r\n },\r\n //step 8\r\n withdrawelFromTheStudy: {\r\n q17: null,\r\n q18: null,\r\n q18A: null,\r\n },\r\n //step 9\r\n researchEquipment: {\r\n q19: null,\r\n q19A: null,\r\n q20comments: \"\",\r\n },\r\n //step 10\r\n researchProtocol: {\r\n protocolText: \"\",\r\n },\r\n //step 11\r\n \r\n });\r\n\r\n const onFormInputChangeHandler = (event) => {\r\n let { name, value } = event.target;\r\n const type = event.target.getAttribute(\"type\");\r\n if (type === \"radio\") value = value === \"true\";\r\n\r\n const nameArr = name.split(\".\");\r\n if (nameArr.length === 2) {\r\n //this is object\r\n const newState = { ...formState };\r\n newState[nameArr[0]][nameArr[1]] = value;\r\n setFormState(newState);\r\n } else {\r\n //this is string\r\n setFormState((prevState) => {\r\n return { ...prevState, name: value };\r\n });\r\n }\r\n };\r\n\r\n const handleSubmit = (event) => {\r\n event.preventDefault();\r\n /*const { email, username, password } = this.state;\r\n alert(`Your registration detail: \\n \r\n Email: ${email} \\n \r\n Username: ${username} \\n\r\n Password: ${password}`);*/\r\n };\r\n\r\n const saveCurrStepInDB = async () => {\r\n //TODO-setLoading and set Error should work\r\n //setIsLoading(true);\r\n //setError(null);\r\n try {\r\n let jsonObj = formState.consentToParticipate;\r\n switch (formState.currentStep) {\r\n case 1:\r\n jsonObj = JSON.stringify(formState.reserachDetails);\r\n break;\r\n case 2:\r\n jsonObj = JSON.stringify(formState.consentToParticipate);\r\n break;\r\n case 3:\r\n jsonObj = JSON.stringify(formState.discomfort);\r\n break;\r\n case 4:\r\n jsonObj = JSON.stringify(formState.deception);\r\n break;\r\n case 5:\r\n jsonObj = JSON.stringify(formState.feedbackToTheSubject);\r\n break;\r\n case 6:\r\n jsonObj = JSON.stringify(formState.compensationForParticipation);\r\n break;\r\n case 7:\r\n jsonObj = JSON.stringify(formState.privacy);\r\n break;\r\n case 8:\r\n jsonObj = JSON.stringify(formState.withdrawelFromTheStudy);\r\n break;\r\n case 9:\r\n jsonObj = JSON.stringify(formState.researchEquipment);\r\n break;\r\n case 10:\r\n jsonObj = JSON.stringify(formState.researchProtocol);\r\n break;\r\n case 11:\r\n jsonObj = JSON.stringify({\r\n isLastFormStep: true,\r\n });\r\n break;\r\n default:\r\n jsonObj = null;\r\n }\r\n const customHeaders = tokenConfig(userContext.token);\r\n\r\n const response = await fetch(\r\n `${URL}/requests/${requestObjectState.requestNumber}/${requestObjectState.requestSubNumber}`,\r\n {\r\n method: \"put\",\r\n headers: customHeaders.headers,\r\n body: jsonObj,\r\n }\r\n ); //https://randomuser.me/api/?results=100\r\n if (!response.ok) {\r\n throw new Error(\"something went wrong!\");\r\n }\r\n const body = await response.json();\r\n //setData(contacts);\r\n } catch (error) {\r\n console.log(error);\r\n }\r\n //setIsLoading(false);\r\n };\r\n\r\n const _next = () => {\r\n let currentStep = formState.currentStep;\r\n saveCurrStepInDB();\r\n currentStep =\r\n currentStep >= consts.NUM_OF_STEPS - 1\r\n ? consts.NUM_OF_STEPS\r\n : currentStep + 1;\r\n setFormState((prevState) => {\r\n return { ...prevState, currentStep: currentStep };\r\n });\r\n };\r\n\r\n const _submit = () => {\r\n saveCurrStepInDB();\r\n /*TODO what will going to be if isSubnitted with error??? */\r\n setFormState((prevState) => {\r\n return {\r\n ...prevState,\r\n isSubmmited: true,\r\n submittedMessageHeader: \"Your request has been sent\",\r\n submittedMessageMainContent:\r\n \"Thank you for completing the form request. An email confirming your request is waiting for you in your inbox. You can return to your page of requests\",\r\n submittedMessageSecondaryContent:\r\n \"\",\r\n };\r\n });\r\n };\r\n\r\n const _prev = () => {\r\n let currentStep = formState.currentStep;\r\n currentStep = currentStep <= 1 ? 1 : currentStep - 1;\r\n setFormState((prevState) => {\r\n return { ...prevState, currentStep: currentStep };\r\n });\r\n };\r\n\r\n const getRequestDetails = async (fetchURL) => {\r\n setIsLoading(true);\r\n setError(null);\r\n try {\r\n const customHeaders = tokenConfig(userContext.token);\r\n const response = await fetch(fetchURL, {\r\n headers: customHeaders.headers,\r\n });\r\n if (!response.ok) {\r\n throw new Error(\"something went wrong!\");\r\n }\r\n const body = await response.json();\r\n if (body.results) {\r\n const result = body.results[0];\r\n setFormState((prevState) => {\r\n return { ...prevState, ...result, gotData: true };\r\n });\r\n console.log(result); //result will be rendered instead of

    Hi there!

    \r\n } else {\r\n setFormState((prevState) => {\r\n return { ...prevState, gotData: true };\r\n });\r\n }\r\n } catch (error) {\r\n setError(error.message);\r\n }\r\n setIsLoading(false);\r\n };\r\n\r\n const getNextRequestCounter = async () => {\r\n setIsLoading(true);\r\n setError(null);\r\n try {\r\n const customHeaders = tokenConfig(userContext.token);\r\n\r\n const response = await fetch(`${URL}/requests/requestCounter`, {\r\n headers: customHeaders.headers,\r\n });\r\n if (!response.ok) {\r\n throw new Error(\"something went wrong!\");\r\n }\r\n const body = await response.json();\r\n const result = body.result;\r\n //setRequestNumber(result);\r\n let updatedState = { ...requestObjectState };\r\n updatedState[\"requestNumber\"] = result;\r\n setRequestObjectState(updatedState);\r\n } catch (error) {\r\n setError(error.message);\r\n }\r\n setIsLoading(false);\r\n };\r\n\r\n useEffect(() => {\r\n var urlState = props.location.state;\r\n if (isFirstRender.current) {\r\n isFirstRender.current = false; // toggle flag after first render/mounting\r\n if (urlState.isNewRequest) {\r\n getNextRequestCounter(); //calling to setRequestObjectState\r\n } else {\r\n let updatedState = { ...requestObjectState };\r\n updatedState[\"requestNumber\"] = urlState.request;\r\n updatedState[\"requestSubNumber\"] = urlState.subRequest;\r\n setRequestObjectState(updatedState);\r\n }\r\n return;\r\n }\r\n let fetchURL = \"\";\r\n if (urlState.isNewRequest) {\r\n fetchURL = `${URL}/requests/${requestObjectState.requestNumber}/${requestObjectState.requestSubNumber}`;\r\n } else {\r\n fetchURL = `${URL}/requests/${requestObjectState.requestNumber}/${urlState.originalSubRequest}`;\r\n }\r\n // do something after state has updated\r\n getRequestDetails(fetchURL);\r\n }, [requestObjectState]);\r\n\r\n return (\r\n \r\n {!isLoading && formState.gotData && (\r\n \r\n \r\n {/*TODO what will going to be if isSubnitted with error??? */}\r\n {formState.isSubmmited && (\r\n \r\n )}\r\n {!formState.isSubmmited && }\r\n {!formState.isSubmmited && }\r\n \r\n )}\r\n {!isLoading && !formState.gotData && !error && (\r\n

    Something wrong with form....

    \r\n )}\r\n {isLoading && }\r\n {!isLoading && error &&

    {error}

    }\r\n
    \r\n );\r\n};\r\n\r\nexport default Form;\r\n","import React from \"react\"\r\nimport { Input, CustomInput } from \"reactstrap\"\r\n\r\n\r\nexport const Filter = ({ column }) => {\r\n return (\r\n
    \r\n {column.canFilter && column.render(\"Filter\")}\r\n
    \r\n )\r\n}\r\n\r\nexport const DefaultColumnFilter = ({\r\n column: {\r\n filterValue,\r\n setFilter,\r\n preFilteredRows: { length },\r\n },\r\n}) => {\r\n return (\r\n {\r\n setFilter(e.target.value || undefined)\r\n }}\r\n placeholder={`search...`}\r\n />\r\n )\r\n}\r\n\r\nexport const SelectColumnFilter = ({\r\n column: { filterValue, setFilter, preFilteredRows, id },\r\n}) => {\r\n const options = React.useMemo(() => {\r\n const options = new Set()\r\n preFilteredRows.forEach(row => {\r\n options.add(row.values[id])\r\n })\r\n return [...options.values()]\r\n }, [id, preFilteredRows])\r\n\r\n return (\r\n {\r\n setFilter(e.target.value || undefined)\r\n }}\r\n >\r\n \r\n {options.map(option => (\r\n \r\n ))}\r\n \r\n )\r\n}\r\n","import React, { useEffect, useState, useMemo, useContext } from \"react\";\r\nimport { Button, Form, FormGroup } from \"reactstrap\";\r\nimport FormOfTableInputs from \"../Tables/FormOfTableInputs\";\r\nimport { URL } from \"../../config/Constants\";\r\nimport { tokenConfig } from \"../../config/tokenConfig\";\r\nimport UserContext from \"../../context/UserContext\";\r\n\r\nconst AddOrEditMembers = (props) => {\r\n const userContext = useContext(UserContext);\r\n const [currItem, setCurrItem] = useState({});\r\n const numOfInputs = props.headersInputConfig.length;\r\n\r\n //TODO- change on change not to be called in every char we type\r\n const onChange = (e) => {\r\n let type = e.target.type;\r\n let updateItem = { ...currItem };\r\n switch (type) {\r\n case \"checkbox\":\r\n updateItem[e.target.name] = e.target.checked;\r\n break;\r\n default:\r\n updateItem[e.target.name] = e.target.value;\r\n break;\r\n }\r\n setCurrItem(updateItem);\r\n };\r\n\r\n const submitFormAdd = (e) => {\r\n e.preventDefault();\r\n const customHeaders = tokenConfig(userContext.token);\r\n const jsonObj = JSON.stringify(currItem, (key, value) => value);\r\n fetch(`${URL}/members/`, {\r\n method: \"post\",\r\n headers: customHeaders.headers,\r\n body: jsonObj,\r\n })\r\n .then((response) => response.json())\r\n .then((item) => {\r\n if (item) {\r\n props.addItemToState(item);\r\n props.toggle();\r\n } else {\r\n //console.log(\"failure\");\r\n //TODO\r\n //להציג הודעת שגיאה\r\n //לסגור את הפופ אפ\r\n }\r\n })\r\n .catch((err) => console.log(err));\r\n };\r\n\r\n const submitFormEdit = (e) => {\r\n e.preventDefault();\r\n const customHeaders = tokenConfig(userContext.token);\r\n //remove the \"userID\" field from the json that will be sent\r\n const jsonObj = JSON.stringify(currItem, (key, value) =>\r\n key != \"userID\" ? value : undefined\r\n ); //remove the id from the params to be send\r\n fetch(`${URL}/members/${currItem.userID}`, {\r\n method: \"put\",\r\n headers: customHeaders.headers,\r\n body: jsonObj,\r\n })\r\n .then((response) => response.json())\r\n .then((item) => {\r\n if (item) {\r\n //row has changed in DB\r\n props.updateState(item);\r\n props.toggle();\r\n } else {\r\n //console.log(\"failure\");\r\n //TODO\r\n //להציג הודעת שגיאה\r\n //לסגור את הפופ אפ\r\n }\r\n })\r\n .catch((err) => console.log(err));\r\n };\r\n\r\n useEffect(() => {\r\n // if item exists, populate the state with proper data\r\n if (props.item) {\r\n const item = { ...props.item };\r\n setCurrItem(item);\r\n }\r\n }, []);\r\n\r\n return (\r\n
    \r\n {/*{formGroups}*/}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default AddOrEditMembers;\r\n/*\r\n \r\n \r\n*/\r\n\r\n/*const formGroups = props.headersInputConfig.map((inputObj, index) => {\r\n return (\r\n //instaed of-> //return props.headers.indexOf(header) == 0 ? null : (\r\n \r\n \r\n \r\n );\r\n });*/\r\n\r\n//creating refs for all the inputs in the page\r\n/*const inputRefs = useMemo(\r\n () =>\r\n Array(numOfInputs)\r\n .fill(0)\r\n .map((i) => React.createRef()),\r\n []\r\n );*/\r\n","import React, { useEffect, useState, useMemo, useContext } from \"react\";\r\nimport { Button, Form, FormGroup } from \"reactstrap\";\r\nimport FormOfTableInputs from \"../Tables/FormOfTableInputs\";\r\nimport { COMMITTEE_ID, URL } from \"../../config/Constants\";\r\nimport { tokenConfig } from \"../../config/tokenConfig\";\r\nimport UserContext from \"../../context/UserContext\";\r\nconst AddOrEditMeetings = (props) => {\r\n const userContext = useContext(UserContext);\r\n const [currItem, setCurrItem] = useState({});\r\n //TODO- change on change not to be called in every char we type\r\n const onChange = (e) => {\r\n let type = e.target.type;\r\n let updateItem = { ...currItem };\r\n switch (type) {\r\n case \"checkbox\":\r\n updateItem[e.target.name] = e.target.checked;\r\n break;\r\n default:\r\n updateItem[e.target.name] = e.target.value;\r\n break;\r\n }\r\n setCurrItem(updateItem);\r\n };\r\n\r\n const submitFormAdd = (e) => {\r\n e.preventDefault();\r\n const customHeaders = tokenConfig(userContext.token);\r\n const jsonObj = JSON.stringify(currItem, (key, value) => value);\r\n fetch(`${URL}/meetings/${COMMITTEE_ID}`, {\r\n method: \"post\",\r\n headers: customHeaders.headers,\r\n body: jsonObj,\r\n })\r\n .then((response) => response.json())\r\n .then((item) => {\r\n if (item) {\r\n props.addItemToState(item);\r\n props.toggle();\r\n } else {\r\n //console.log(\"failure\");\r\n //TODO\r\n //להציג הודעת שגיאה\r\n //לסגור את הפופ אפ\r\n }\r\n })\r\n .catch((err) => console.log(err));\r\n };\r\n\r\n const submitFormEdit = (e) => {\r\n e.preventDefault();\r\n //remove the \"userID\" field from the json that will be sent\r\n const jsonObj = JSON.stringify(currItem, (key, value) =>\r\n key !== \"committeeMeetingID\" ? value : undefined\r\n ); //remove the id from the params to be send\r\n const customHeaders = tokenConfig(userContext.token);\r\n\r\n fetch(`${URL}/meetings/${currItem.committeeMeetingID}`, {\r\n method: \"put\",\r\n headers: customHeaders.headers,\r\n body: jsonObj,\r\n })\r\n .then((response) => response.json())\r\n .then((item) => {\r\n if (item) {\r\n //row has changed in DB\r\n props.updateState(item);\r\n props.toggle();\r\n } else {\r\n //console.log(\"failure\");\r\n //TODO\r\n //להציג הודעת שגיאה\r\n //לסגור את הפופ אפ\r\n }\r\n })\r\n .catch((err) => console.log(err));\r\n };\r\n\r\n useEffect(() => {\r\n // if item exists, populate the state with proper data\r\n if (props.item) {\r\n const item = { ...props.item };\r\n setCurrItem(item);\r\n }\r\n }, []);\r\n\r\n return (\r\n
    \r\n {/*{formGroups}*/}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default AddOrEditMeetings;\r\n","import React from 'react'\r\nimport { ModalFooter,Button } from 'reactstrap';\r\nconst ModalConfirm = (props) => {\r\n \r\n const confirmClick=()=>{\r\n props.confirmFunction();\r\n props.toggle();\r\n }\r\n\r\n return (\r\n
    \r\n
    {props.message}
    \r\n \r\n \r\n \r\n
    \r\n );\r\n};\r\n\r\nexport default ModalConfirm;","import { useEffect, useState, useMemo, useRef, useContext } from \"react\";\r\nimport React from \"react\";\r\nimport Spinner from \"../UI/Spinner/Spinner\";\r\nimport { format } from \"date-fns\";\r\nimport { Container, Row, Col, Button } from \"reactstrap\";\r\nimport TableContainer from \"../Tables/TableContainer\";\r\nimport { URL } from \"../../config/Constants\";\r\nimport FormOfTableInputs from \"../Tables/FormOfTableInputs\";\r\nimport UserContext from \"../../context/UserContext\";\r\nimport { tokenConfig } from \"../../config/tokenConfig\";\r\n\r\nconst EditRequestStatus = (props) => {\r\n const userContext = useContext(UserContext);\r\n const [data, setData] = useState([]);\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [error, setError] = useState(null);\r\n const [statusList, setStatusList] = useState([]);\r\n const [membersList, setmembersList] = useState([]);\r\n const [currItem, setCurrItem] = useState({\r\n requestStatus: \"Submitted\",\r\n receiverBguID: {},\r\n requestStageComments: \"\",\r\n });\r\n\r\n const titleRef = useRef(\"\");\r\n const reseracherID=useRef(\"\");\r\n const headersInputConfig = [\r\n {\r\n elementType: \"select\",\r\n elementConfig: {\r\n options: statusList,\r\n id: \"requestStatus\",\r\n name: \"requestStatus\",\r\n },\r\n labelConfig: {\r\n dbField: \"requestStatus\",\r\n title: \"Add status:\",\r\n },\r\n wrapperConfig: {},\r\n },\r\n {\r\n elementType: \"checkboxList\",\r\n elementConfig: {\r\n options: membersList,\r\n type: \"checkbox\",\r\n id: \"receiverBguID\",\r\n name: \"receiverBguID\",\r\n },\r\n labelConfig: {\r\n dbField: \"receiverBguID\",\r\n title: \"For user/s: (You must check at least one person)\",\r\n },\r\n wrapperConfig: {},\r\n },\r\n {\r\n elementType: \"textarea\",\r\n elementConfig: {\r\n id: \"requestStageComments\",\r\n name: \"requestStageComments\",\r\n rows: 4,\r\n cols: 50,\r\n },\r\n labelConfig: {\r\n dbField: \"requestStageComments\",\r\n title: \"Comments:\",\r\n },\r\n wrapperConfig: {},\r\n },\r\n ];\r\n // Those columns dont need to be changed in every rerendering\r\n // but, because it is an array, and arry it is an object. it will be rendered.\r\n // we are avoiding it, by using \"useMemo\" hook, that doing mempoization to this const.\r\n const columns = useMemo(\r\n () => [\r\n {\r\n id: \"executionDate\",\r\n Header: \"Submission date\",\r\n accessor: \"executionDate\",\r\n Cell: ({ value }) => {\r\n return format(new Date(value), \"dd/MM/yyyy\");\r\n },\r\n disableFilters: true,\r\n disableSortBy: true,\r\n },\r\n {\r\n id: \"executerBguName\",\r\n Header: \"Submission user\",\r\n accessor: \"executerBguName\",\r\n disableFilters: true,\r\n disableSortBy: true,\r\n },\r\n {\r\n id: \"statusDescription\",\r\n Header: \"Request status\",\r\n accessor: \"statusDescription\",\r\n disableFilters: true,\r\n disableSortBy: true,\r\n },\r\n {\r\n id: \"receiversList\",\r\n Header: \"Reviewers\",\r\n accessor: \"receiversList\",\r\n disableFilters: true,\r\n disableSortBy: true,\r\n },\r\n ],\r\n []\r\n );\r\n\r\n //TODO- change on change not to be called in every char we type\r\n const onChange = (e) => {\r\n let type = e.target.type;\r\n let updateItem = { ...currItem };\r\n switch (type) {\r\n case \"checkbox\":\r\n updateItem[e.target.name][e.target.id] = e.target.checked;\r\n break;\r\n default:\r\n updateItem[e.target.name] = e.target.value;\r\n break;\r\n }\r\n setCurrItem(updateItem);\r\n };\r\n\r\n const doFetch = async () => {\r\n setIsLoading(true);\r\n setError(null);\r\n try {\r\n await getSubmissionTableData();\r\n await getAllStatusForDDL();\r\n await getAllCommitteeUsersForCheckboxList();\r\n } catch (error) {\r\n setError(error.message);\r\n }\r\n setIsLoading(false);\r\n };\r\n\r\n const getAllCommitteeUsersForCheckboxList = async () => {\r\n const customHeaders = tokenConfig(userContext.token);\r\n const response = await fetch(`${URL}/members/membersJSON`, {\r\n headers: customHeaders.headers,\r\n });\r\n if (!response.ok) {\r\n throw new Error(\"something went wrong!\");\r\n }\r\n const body = await response.json();\r\n\r\n const members = body.results;\r\n //console.log(members);\r\n let updatedMemberList = [...members];\r\n updatedMemberList.push(reseracherID.current);\r\n setmembersList(updatedMemberList);\r\n initReceiversBguID(updatedMemberList);\r\n };\r\n const getSubmissionTableData = async () => {\r\n const customHeaders = tokenConfig(userContext.token);\r\n const response = await fetch(\r\n `${URL}/stages/${props.request}/${props.subRequest}`,\r\n { headers: customHeaders.headers }\r\n );\r\n titleRef.current = `Request stages for submission num ${props.request}.${props.subRequest}`;\r\n if (!response.ok) {\r\n throw new Error(\"something went wrong!\");\r\n }\r\n const body = await response.json();\r\n\r\n const stages = body.results;\r\n setData(stages);\r\n reseracherID.current = {\r\n key: body.researcherID,\r\n value: \"Request's reseracher\",\r\n };\r\n \r\n };\r\n const getAllStatusForDDL = async () => {\r\n const customHeaders = tokenConfig(userContext.token);\r\n const response = await fetch(`${URL}/status/statusJson`, {\r\n headers: customHeaders.headers,\r\n });\r\n if (!response.ok) {\r\n throw new Error(\"something went wrong!\");\r\n }\r\n const body = await response.json();\r\n\r\n const status = body.results;\r\n //console.log(status);\r\n setStatusList(status);\r\n };\r\n\r\n const initReceiversBguID = (members) => {\r\n let newObj = {};\r\n members.forEach((item) => {\r\n newObj[item.key] = false;\r\n });\r\n let updatedCurrItem = { ...currItem };\r\n updatedCurrItem.receiverBguID = newObj;\r\n setCurrItem(updatedCurrItem);\r\n };\r\n\r\n const convertMapToArrString = (myMap) => {\r\n let newArr = [];\r\n for (let [key, value] of Object.entries(myMap)) {\r\n if (value) {\r\n newArr.push(key);\r\n }\r\n }\r\n return newArr.join();\r\n };\r\n const submit = (e) => {\r\n e.preventDefault();\r\n //remove the \"userID\" field from the json that will be sent\r\n let receiversArr = convertMapToArrString(currItem.receiverBguID);\r\n const obj = { ...currItem, receiverBguID: receiversArr };\r\n const jsonObj = JSON.stringify(obj);\r\n const customHeaders = tokenConfig(userContext.token);\r\n fetch(\r\n `${URL}/requests/requestStatusStage/${props.request}/${props.subRequest}`,\r\n {\r\n method: \"put\",\r\n headers: customHeaders.headers,\r\n body: jsonObj,\r\n }\r\n )\r\n .then((response) => response.json())\r\n .then((item) => {\r\n if (item) {\r\n props.updateState(item);\r\n props.toggle();\r\n } else {\r\n console.log(\"failure\");\r\n //TODO\r\n //להציג הודעת שגיאה\r\n //לסגור את הפופ אפ\r\n }\r\n })\r\n .catch((err) => console.log(err));\r\n };\r\n\r\n useEffect(() => {\r\n doFetch();\r\n }, []);\r\n return (\r\n \r\n \r\n \r\n
    \r\n {titleRef.current}\r\n
    \r\n \r\n
    \r\n \r\n \r\n {!isLoading && data.length > 0 && (\r\n \r\n )}\r\n {!isLoading && data.length === 0 && !error && (\r\n

    Requests not found

    \r\n )}\r\n {isLoading && }\r\n {!isLoading && error &&

    {error}

    }\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n );\r\n};\r\n\r\nexport default EditRequestStatus;\r\n","import { useEffect, useState, useMemo, useRef, useContext } from \"react\";\r\nimport React from \"react\";\r\nimport Spinner from \"../UI/Spinner/Spinner\";\r\nimport { format } from \"date-fns\";\r\nimport { Container, Row, Col, Button } from \"reactstrap\";\r\nimport TableContainer from \"../Tables/TableContainer\";\r\nimport { URL } from \"../../config/Constants\";\r\nimport FormOfTableInputs from \"../Tables/FormOfTableInputs\";\r\nimport UserContext from \"../../context/UserContext\";\r\nimport { tokenConfig } from \"../../config/tokenConfig\";\r\n\r\nconst EditRequestStatusForCommitteeMember = (props) => {\r\n const userContext = useContext(UserContext);\r\n const [data, setData] = useState([]);\r\n const [isRequestWasReviewed, setIsRequestWasReviewed] = useState(false);\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [error, setError] = useState(null);\r\n const [statusList, setStatusList] = useState([]);\r\n const [currItem, setCurrItem] = useState({\r\n requestStatus: \"Revision is requested\",\r\n receiverBguID: { \"203355011\": true,\"023549009\":true },\r\n requestStageComments: \"\",\r\n });\r\n\r\n const titleRef = useRef(\"\");\r\n const headersInputConfig = [\r\n {\r\n elementType: \"select\",\r\n elementConfig: {\r\n options: statusList,\r\n id: \"requestStatus\",\r\n name: \"requestStatus\",\r\n },\r\n labelConfig: {\r\n dbField: \"requestStatus\",\r\n title: \"Add status:\",\r\n },\r\n wrapperConfig: {},\r\n },\r\n {\r\n elementType: \"checkboxList\",\r\n elementConfig: {\r\n options: [\r\n { key: \"203355011\", value: \"Michal Levy\" },\r\n { key: \"023549009\",value:\"Golan Shahar\" },\r\n ],\r\n type: \"checkbox\",\r\n id: \"receiverBguID\",\r\n name: \"receiverBguID\",\r\n },\r\n labelConfig: {\r\n dbField: \"receiverBguID\",\r\n title: \"For user/s: (You must check at least one person)\",\r\n },\r\n wrapperConfig: {},\r\n },\r\n {\r\n elementType: \"textarea\",\r\n elementConfig: {\r\n id: \"requestStageComments\",\r\n name: \"requestStageComments\",\r\n rows: 4,\r\n cols: 50,\r\n },\r\n labelConfig: {\r\n dbField: \"requestStageComments\",\r\n title: \"Comments:\",\r\n },\r\n wrapperConfig: {},\r\n },\r\n ];\r\n // Those columns dont need to be changed in every rerendering\r\n // but, because it is an array, and arry it is an object. it will be rendered.\r\n // we are avoiding it, by using \"useMemo\" hook, that doing mempoization to this const.\r\n const columns = useMemo(\r\n () => [\r\n {\r\n id: \"executionDate\",\r\n Header: \"Submission date\",\r\n accessor: \"executionDate\",\r\n Cell: ({ value }) => {\r\n return format(new Date(value), \"dd/MM/yyyy\");\r\n },\r\n disableFilters: true,\r\n disableSortBy: true,\r\n },\r\n {\r\n id: \"executerBguName\",\r\n Header: \"Submission user\",\r\n accessor: \"executerBguName\",\r\n disableFilters: true,\r\n disableSortBy: true,\r\n },\r\n {\r\n id: \"statusDescription\",\r\n Header: \"Request status\",\r\n accessor: \"statusDescription\",\r\n disableFilters: true,\r\n disableSortBy: true,\r\n },\r\n {\r\n id: \"receiversList\",\r\n Header: \"Reviewers\",\r\n accessor: \"receiversList\",\r\n disableFilters: true,\r\n disableSortBy: true,\r\n },\r\n ],\r\n []\r\n );\r\n\r\n //TODO- change on change not to be called in every char we type\r\n const onChange = (e) => {\r\n let type = e.target.type;\r\n let updateItem = { ...currItem };\r\n switch (type) {\r\n case \"checkbox\":\r\n updateItem[e.target.name][e.target.id] = e.target.checked;\r\n break;\r\n default:\r\n updateItem[e.target.name] = e.target.value;\r\n break;\r\n }\r\n setCurrItem(updateItem);\r\n };\r\n\r\n const doFetch = async () => {\r\n setIsLoading(true);\r\n setError(null);\r\n try {\r\n await getSubmissionTableData();\r\n await getAllStatusForDDL();\r\n await isCommitteeMemberReviewedTheRequest();\r\n } catch (error) {\r\n setError(error.message);\r\n }\r\n setIsLoading(false);\r\n };\r\n\r\n const getSubmissionTableData = async () => {\r\n const customHeaders = tokenConfig(userContext.token);\r\n const response = await fetch(\r\n `${URL}/stages/${props.request}/${props.subRequest}`,\r\n { headers: customHeaders.headers }\r\n );\r\n titleRef.current = `Request stages for submission num ${props.request}.${props.subRequest}`;\r\n if (!response.ok) {\r\n throw new Error(\"something went wrong!\");\r\n }\r\n const body = await response.json();\r\n\r\n const stages = body.results;\r\n //console.log(stages);\r\n setData(stages);\r\n };\r\n const getAllStatusForDDL = async () => {\r\n const customHeaders = tokenConfig(userContext.token);\r\n const response = await fetch(`${URL}/status/statusJsonForCommitteeMember`, {\r\n headers: customHeaders.headers,\r\n });\r\n if (!response.ok) {\r\n throw new Error(\"something went wrong!\");\r\n }\r\n const body = await response.json();\r\n\r\n const status = body.results;\r\n //console.log(status);\r\n setStatusList(status);\r\n };\r\n\r\n const isCommitteeMemberReviewedTheRequest = async () => {\r\n const obj = {\r\n requestNumber: props.request,\r\n requestSubNumber: props.subRequest,\r\n };\r\n const jsonObj = JSON.stringify(obj);\r\n const customHeaders = tokenConfig(userContext.token);\r\n const response = await fetch(`${URL}/requests/checkRequest`, {\r\n method: \"post\",\r\n headers: customHeaders.headers,\r\n body: jsonObj,\r\n });\r\n if (!response.ok) {\r\n throw new Error(\"something went wrong!\");\r\n }\r\n const body = await response.json();\r\n\r\n const isReviewed = body.result;\r\n if (isReviewed === 1) setIsRequestWasReviewed(true);\r\n console.log(isReviewed);\r\n };\r\n\r\n const convertMapToArrString = (myMap) => {\r\n let newArr = [];\r\n for (let [key, value] of Object.entries(myMap)) {\r\n if (value) {\r\n newArr.push(key);\r\n }\r\n }\r\n return newArr.join();\r\n };\r\n const submit = (e) => {\r\n e.preventDefault();\r\n //remove the \"userID\" field from the json that will be sent\r\n let receiversArr = convertMapToArrString(currItem.receiverBguID);\r\n const obj = { ...currItem, receiverBguID: receiversArr };\r\n const jsonObj = JSON.stringify(obj);\r\n const customHeaders = tokenConfig(userContext.token);\r\n fetch(\r\n `${URL}/requests/requestStatusStage/${props.request}/${props.subRequest}`,\r\n {\r\n method: \"put\",\r\n headers: customHeaders.headers,\r\n body: jsonObj,\r\n }\r\n )\r\n .then((response) => response.json())\r\n .then((item) => {\r\n if (item) {\r\n props.updateState(item);\r\n props.toggle();\r\n } else {\r\n console.log(\"failure\");\r\n //TODO\r\n //להציג הודעת שגיאה\r\n //לסגור את הפופ אפ\r\n }\r\n })\r\n .catch((err) => console.log(err));\r\n };\r\n\r\n useEffect(() => {\r\n doFetch();\r\n }, []);\r\n return (\r\n \r\n \r\n \r\n
    \r\n {titleRef.current}\r\n
    \r\n \r\n
    \r\n \r\n \r\n {!isLoading && data.length > 0 && (\r\n \r\n )}\r\n {!isLoading && data.length === 0 && !error && (\r\n

    Requests not found

    \r\n )}\r\n {isLoading && }\r\n {!isLoading && error &&

    {error}

    }\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {!isRequestWasReviewed && }\r\n {isRequestWasReviewed && (\r\n \r\n You have already reviewed this request....\r\n \r\n )}\r\n \r\n \r\n
    \r\n );\r\n};\r\n\r\nexport default EditRequestStatusForCommitteeMember;\r\n","import React from \"react\";\r\nimport classes from \"./PdfContainer.module.css\"\r\n\r\nconst PdfContainer = (props) => {\r\n const bodyRef = React.createRef();\r\n const createPdf = () => props.createPdf(bodyRef.current);\r\n return (\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n {props.children}\r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default PdfContainer;\r\n","import { savePDF } from \"@progress/kendo-react-pdf\";\r\n\r\nclass DocService {\r\n createPdf = (html) => {\r\n savePDF(html, {\r\n paperSize: \"Letter\",\r\n fileName: \"form.pdf\",\r\n margin: 3,\r\n });\r\n };\r\n}\r\n\r\nconst Doc = new DocService();\r\nexport default Doc;\r\n","import React, { useContext } from \"react\";\r\nimport FormContext from \"../../context/FormContext\";\r\nimport dictionary from \"../../config/dictionary.json\";\r\n\r\nconst Step2 = () => {\r\n const myContext = useContext(FormContext);\r\n return (\r\n
    \r\n
    \r\n
    \r\n

    {dictionary.consentToParticipate.title}

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n {/**/}\r\n {myContext.state.consentToParticipate.q3comments &&\r\n {myContext.state.consentToParticipate.q3comments}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n {/**/}\r\n {myContext.state.consentToParticipate.q5comments &&\r\n {myContext.state.consentToParticipate.q5comments}}\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n {/**/}\r\n {myContext.state.consentToParticipate.q2comments &&\r\n {myContext.state.consentToParticipate.q2comments}}\r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n {/**/}\r\n {myContext.state.consentToParticipate.q6comments &&\r\n {myContext.state.consentToParticipate.q6comments}}\r\n
    \r\n
    \r\n \r\n );\r\n};\r\n\r\nexport default Step2;\r\n","import React, { useContext } from \"react\";\r\nimport FormContext from \"../../context/FormContext\";\r\nimport dictionary from \"../../config/dictionary.json\";\r\n\r\n\r\nconst Step3 = () => {\r\n const myContext = useContext(FormContext);\r\n return (\r\n
    \r\n
    \r\n
    \r\n

    {dictionary.discomfort.title}

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n {/**/}\r\n {myContext.state.discomfort.q7and8comments &&\r\n {myContext.state.discomfort.q7and8comments}}\r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default Step3;\r\n","import React, { useContext } from 'react'\r\nimport FormContext from '../../context/FormContext'\r\nimport dictionary from \"../../config/dictionary.json\";\r\n\r\n\r\nconst Step4=()=>{\r\n\r\n const myContext = useContext(FormContext);\r\n return (\r\n
    \r\n
    \r\n
    \r\n

    {dictionary.deception.title}

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n {/**/}\r\n {myContext.state.deception.q9and10comments &&\r\n {myContext.state.deception.q9and10comments}}\r\n
    \r\n
    \r\n
    \r\n );\r\n}\r\n\r\nexport default Step4","import React, { useContext } from \"react\";\r\nimport FormContext from \"../../context/FormContext\";\r\nimport dictionary from \"../../config/dictionary.json\";\r\n\r\nconst Step5 = () => {\r\n const myContext = useContext(FormContext);\r\n return (\r\n
    \r\n
    \r\n
    \r\n

    {dictionary.feedbackToTheSubject.title}

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n {\" \"}\r\n {dictionary.feedbackToTheSubject.note}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n {/**/}\r\n {myContext.state.feedbackToTheSubject.q11and12comments &&\r\n {myContext.state.feedbackToTheSubject.q11and12comments}}\r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default Step5;\r\n","import React, { useContext } from \"react\";\r\nimport FormContext from \"../../context/FormContext\";\r\nimport dictionary from \"../../config/dictionary.json\";\r\n\r\nconst Step6 = () => {\r\n const myContext = useContext(FormContext);\r\n return (\r\n
    \r\n
    \r\n
    \r\n

    {dictionary.compensationForParticipation.title}

    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n {/**/}\r\n {myContext.state.compensationForParticipation.q13comments &&\r\n {myContext.state.compensationForParticipation.q13comments}}\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n {/**/}\r\n {myContext.state.compensationForParticipation.q14comments &&\r\n {myContext.state.compensationForParticipation.q14comments}}\r\n
    \r\n
    \r\n \r\n );\r\n};\r\n\r\nexport default Step6;\r\n","import React, { useContext } from \"react\";\r\nimport FormContext from \"../../context/FormContext\";\r\nimport dictionary from \"../../config/dictionary.json\";\r\n\r\nconst Step7 = () => {\r\n const myContext = useContext(FormContext);\r\n return (\r\n
    \r\n
    \r\n
    \r\n

    {dictionary.privacy.title}

    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n {/**/}\r\n {myContext.state.privacy.q16commentsA &&\r\n {myContext.state.privacy.q16commentsA}}\r\n
    \r\n \r\n \r\n
    \r\n \r\n {/* */}\r\n {myContext.state.privacy.q16commentsB &&\r\n {myContext.state.privacy.q16commentsB}}\r\n
    \r\n \r\n \r\n
    \r\n \r\n {/**/}\r\n {myContext.state.privacy.q16commentsC &&\r\n {myContext.state.privacy.q16commentsC}}\r\n
    \r\n \r\n \r\n );\r\n};\r\n\r\nexport default Step7;\r\n","import React, { useContext } from \"react\";\r\nimport FormContext from \"../../context/FormContext\";\r\nimport dictionary from \"../../config/dictionary.json\";\r\n\r\nconst Step9 = () => {\r\n const myContext = useContext(FormContext);\r\n return (\r\n
    \r\n
    \r\n
    \r\n

    {dictionary.researchEquipment.title}

    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n {/**/}\r\n {myContext.state.researchEquipment.q20comments &&\r\n {myContext.state.researchEquipment.q20comments}}\r\n
    \r\n
    \r\n \r\n );\r\n};\r\n\r\nexport default Step9;\r\n","import React, { useContext } from \"react\";\r\nimport FormContext from \"../../context/FormContext\";\r\nimport dictionary from \"../../config/dictionary.json\";\r\n\r\nconst Step10 = () => {\r\n const myContext = useContext(FormContext);\r\n return (\r\n
    \r\n
    \r\n
    \r\n

    {dictionary.researchProtocol.title}

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n The research protocol should contain a full description of\r\n the project stages that pertain to the experimental method and all\r\n interaction with human subjects.

    If the project contains a series\r\n of experiments, describe the variations.

    Include a description of\r\n type and number of subjects and the subject recruitment method.

    If\r\n this type of protocol is one commonly used and/or if a similar\r\n protocol and method have been used and published in the literature,\r\n please add references.

    \r\n \r\n Do not submit the project proposal that was submitted to the funding agency.\r\n \r\n

    \r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n {/**/}\r\n {myContext.state.researchProtocol.protocolText &&\r\n {myContext.state.researchProtocol.protocolText}}\r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default Step10;\r\n","import React, { useEffect, useState, useRef, useContext } from \"react\";\r\nimport PdfContainer from \"../PDF/PdfContainer\";\r\nimport Doc from \"../PDF/DocService\";\r\nimport { FormProvider } from \"../../context/FormContext\";\r\nimport { URL } from \"../../config/Constants\";\r\nimport Step1 from \"./Step1\";\r\nimport Step2ForPDF from \"./Step2ForPDF\";\r\nimport Step3ForPDF from \"./Step3ForPDF\";\r\nimport Step4ForPDF from \"./Step4ForPDF\";\r\nimport Step5ForPDF from \"./Step5ForPDF\";\r\nimport Step6ForPDF from \"./Step6ForPDF\";\r\nimport Step7ForPDF from \"./Step7ForPDF\";\r\nimport Step8 from \"./Step8\";\r\nimport Step9ForPDF from \"./Step9ForPDF\";\r\nimport Step10ForPDF from \"./Step10ForPDF\"\r\nimport { tokenConfig } from \"../../config/tokenConfig\";\r\nimport UserContext from \"../../context/UserContext\";\r\n\r\nconst PDFform = (props) => {\r\n const userContext = useContext(UserContext);\r\n\r\n const [formState, setFormState] = useState({\r\n currentStep: 1,\r\n isSubmmited: false,\r\n submittedMessageHeader: \"\",\r\n submittedMessageMainContent: \"\",\r\n submittedMessageSecondaryContent: \"\",\r\n hasError: false,\r\n //step 1\r\n reserachDetails: {\r\n researchName: \"\",\r\n agency: \"\",\r\n firstInvestigatorName: \"\",\r\n firstInvestigatorDepartment: \"\",\r\n firstInvestigatorAcademicDegree: \"Select\",\r\n firstInvestigatorPhone: \"\",\r\n firstInvestigatorEmail: \"\",\r\n secondInvestigatorName: \"\",\r\n secondInvestigatorDepartment: \"\",\r\n secondInvestigatorAcademicDegree: \"Select\",\r\n secondInvestigatorPhone: \"\",\r\n secondInvestigatorEmail: \"\",\r\n firstConductorName: \"\",\r\n firstConductorDepartment: \"\",\r\n firstConductorAcademicDegree: \"Select\",\r\n firstConductorPhone: \"\",\r\n firstConductorEmail: \"\",\r\n secondConductorName: \"\",\r\n secondConductorDepartment: \"\",\r\n secondConductorAcademicDegree: \"Select\",\r\n secondConductorPhone: \"\",\r\n secondConductorEmail: \"\",\r\n },\r\n //step 2\r\n consentToParticipate: {\r\n q1: null,\r\n q2: null,\r\n q3: null,\r\n q4: null,\r\n q5: null,\r\n q2comments: \"\",\r\n q3comments: \"\",\r\n q5comments: \"\",\r\n q6comments: \"\",\r\n },\r\n //step 3\r\n discomfort: {\r\n q7: null,\r\n q8: null,\r\n q7and8comments: \"\",\r\n },\r\n //step 4\r\n deception: {\r\n q9: null,\r\n q10: null,\r\n q9and10comments: \"\",\r\n },\r\n //step 5\r\n feedbackToTheSubject: {\r\n q11: null,\r\n q12: null,\r\n q11and12comments: \"\",\r\n },\r\n //step 6\r\n compensationForParticipation: {\r\n q13: null,\r\n q13comments: \"\",\r\n q14comments: \"\",\r\n },\r\n //step 7\r\n privacy: {\r\n q15: null,\r\n q15A: null,\r\n q16: null,\r\n q16commentsA: \"\",\r\n q16commentsB: \"\",\r\n q16commentsC: \"\",\r\n },\r\n //step 8\r\n withdrawelFromTheStudy: {\r\n q17: null,\r\n q18: null,\r\n q18A: null,\r\n },\r\n //step 9\r\n researchEquipment: {\r\n q19: null,\r\n q19A: null,\r\n q20comments: \"\",\r\n },\r\n //step 10\r\n researchProtocol: {\r\n protocolText: \"\",\r\n },\r\n });\r\n const titleRef = useRef(\"\");\r\n titleRef.current = `Request num ${props.request}.${props.subRequest}`;\r\n\r\n const getRequestDetails = async () => {\r\n try {\r\n const customHeaders = tokenConfig(userContext.token);\r\n\r\n const response = await fetch(\r\n `${URL}/requests/${props.request}/${props.subRequest}`,\r\n { headers: customHeaders.headers }\r\n );\r\n if (!response.ok) {\r\n throw new Error(\"something went wrong!\");\r\n }\r\n const body = await response.json();\r\n //TODO- if there is no row in the DB for this request and subrequest, because this is the begining of the submisiion of the request of the researcher, what should be here?\r\n const formStepsAnswers = body.results[0];\r\n setFormState((prevState) => {\r\n return { ...prevState, ...formStepsAnswers };\r\n });\r\n } catch (error) {}\r\n };\r\n\r\n const createPdf = (html) => Doc.createPdf(html);\r\n\r\n const onFormInputChangeHandler = (event) => {\r\n let { name, value } = event.target;\r\n const type = event.target.getAttribute(\"type\");\r\n if (type === \"radio\") value = value === \"true\";\r\n\r\n const nameArr = name.split(\".\");\r\n if (nameArr.length === 2) {\r\n //this is object\r\n const newState = { ...formState };\r\n newState[nameArr[0]][nameArr[1]] = value;\r\n setFormState(newState);\r\n } else {\r\n //this is string\r\n setFormState((prevState) => {\r\n return { ...prevState, name: value };\r\n });\r\n }\r\n };\r\n useEffect(() => {\r\n getRequestDetails();\r\n }, []);\r\n\r\n return (\r\n \r\n \r\n \r\n
    \r\n {titleRef.current}\r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default PDFform;\r\n","import React from \"react\";\r\nimport classes from \"./PdfContainerForCertification.module.css\"\r\n\r\nconst PdfContainer = (props) => {\r\n const bodyRef = React.createRef();\r\n const createPdf = () => props.createPdf(bodyRef.current);\r\n return (\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n {props.children}\r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default PdfContainer;\r\n","export default __webpack_public_path__ + \"static/media/bgu_logo.61504645.png\";","export default __webpack_public_path__ + \"static/media/golan_signature.eab015a2.png\";","import React, { useEffect, useState, useRef, useContext } from \"react\";\r\nimport PdfContainer from \"../PDF/PdfContainerForCertification\";\r\nimport Doc from \"../PDF/DocService\";\r\nimport classes from \"./CertificationPdf.module.css\";\r\nimport logo from \"../../assets/images/bgu_logo.png\";\r\nimport golan_sign from \"../../assets/images/golan_signature.png\";\r\nimport { tokenConfig } from \"../../config/tokenConfig\";\r\nimport UserContext from \"../../context/UserContext\";\r\nimport { URL } from \"../../config/Constants\";\r\nimport { format } from \"date-fns\";\r\n\r\n\r\nconst CertificationPdf = (props) => {\r\n \r\n const userContext = useContext(UserContext);\r\n const [data, setData] = useState({\r\n researchName: \"\",\r\n aprrovedInDate: new Date(),\r\n fullName: \"\",\r\n requestFullNumber:\"\"\r\n });\r\n const getRequestDetails = async () => {\r\n try {\r\n const customHeaders = tokenConfig(userContext.token);\r\n\r\n const response = await fetch(\r\n `${URL}/requests/certificationDetails/${props.request}/${props.subRequest}`,\r\n { headers: customHeaders.headers }\r\n );\r\n if (!response.ok) {\r\n throw new Error(\"something went wrong!\");\r\n }\r\n const body = await response.json();\r\n //TODO- if there is no row in the DB for this request and subrequest, because this is the begining of the submisiion of the request of the researcher, what should be here?\r\n setData(body);\r\n } catch (error) {}\r\n };\r\n\r\n const createPdf = (html) => Doc.createPdf(html);\r\n\r\n \r\n useEffect(() => {\r\n getRequestDetails();\r\n }, []);\r\n\r\n return (\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \"bguLogo\"\r\n
    \r\n
    \r\n Human Subjects Research Committee\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n {format(new Date(data.aprrovedInDate), \"dd/MM/yyyy\")}\r\n
    \r\n
    \r\n \r\n {data.fullName}\r\n
    \r\n
    \r\n \r\n \r\n Chairperson, Human Subjects Research Committee of Ben-Gurion\r\n University\r\n \r\n
    \r\n
    \r\n \r\n Application for ethics approval for research project\r\n
    \r\n
    \r\n \r\n {data.requestFullNumber}\r\n
    \r\n
    \r\n \r\n {data.researchName}\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n After discussion, the HSR committee of Ben-Gurion University has\r\n approved your request.\r\n
    Conditions: None\r\n
    \r\n
    \r\n
    \r\n\r\n

    \r\n Notice: (1) Any appreciable change to the research protocol (that\r\n might be relevant to its ethical status) requires resubmission to\r\n the HSR Committee for re-approval.
    \r\n (2) Any unexpected adverse effect to research subjects must be\r\n immediately reported to the HSR Committee.\r\n

    \r\n
    \r\n

    \r\n Note: The decision of this committee pertains only to ethical\r\n considerations involved in the conduct of the research\r\n

    \r\n
    \r\n Sincerely,\r\n
    \r\n \r\n
    \r\n \r\n Prof. Golan Shachar\r\n
    Chairman of the Human Subject Research Committee\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default CertificationPdf;\r\n","import React, { useState } from \"react\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport { Button, Modal, ModalHeader, ModalBody } from \"reactstrap\";\r\nimport AddOrEditMembers from \"../../../Members/AddOrEditMembers\";\r\nimport AddOrEditMeetings from \"../../../Meetings/AddOrEditMeetings\";\r\nimport ModalConfirm from \"./ModalConfirm\";\r\nimport EditRequestStatus from \"../../../Requests/EditRequestStatus\";\r\nimport EditRequestStatusForCommitteeMember from \"../../../Requests/EditRequestStatusForCommitteeMember\";\r\nimport PDFform from \"../../../Form/PDFform\";\r\nimport CertificationPdf from \"../../../Form/CertificationPdf\";\r\n\r\nconst ModalForm = (props) => {\r\n const [modal, setModal] = useState(false);\r\n const history = useHistory();\r\n\r\n const toggle = () => {\r\n setModal((prevState) => {\r\n return !prevState;\r\n });\r\n };\r\n\r\n const closeBtn = (\r\n \r\n );\r\n\r\n const label = props.buttonLabel;\r\n\r\n let button = \"\"; // The button that open the pop-up(modla)\r\n button = (\r\n \r\n {label}\r\n \r\n );\r\n let isEditMode = props.isEditMode;\r\n let title = props.modalInnerTitle; //isEditMode?\"Add new Item\":\"Edit item\"// The title in the pop-up (modal) that was opened\r\n\r\n let modalContent = \"\";\r\n switch (props.type) {\r\n case \"members\":\r\n modalContent = (\r\n \r\n );\r\n break;\r\n case \"meetings\":\r\n modalContent = (\r\n \r\n );\r\n break;\r\n case \"requests\":\r\n var message = \"\";\r\n var urlState;\r\n switch (props.item[\"statusDescription\"]) {\r\n case \"Revision is requested\":\r\n message = \"You are going to create new sub-request. Are you sure?\";\r\n urlState = {\r\n pathname: \"/form\",\r\n state: {\r\n request: props.item[\"requestNumber\"],\r\n subRequest: props.item[\"requestSubNumber\"] + 1,\r\n isNewRequest: false,\r\n originalSubRequest: props.item[\"requestSubNumber\"],\r\n },\r\n };\r\n break;\r\n case \"Not completed\":\r\n message = \"You are going to edit the same sub-request. Are you sure?\";\r\n urlState = {\r\n pathname: \"/form\",\r\n state: {\r\n request: props.item[\"requestNumber\"],\r\n subRequest: props.item[\"requestSubNumber\"],\r\n isNewRequest: false,\r\n originalSubRequest: props.item[\"requestSubNumber\"],\r\n },\r\n };\r\n break;\r\n default:\r\n message = \"\";\r\n break;\r\n }\r\n\r\n modalContent = (\r\n {\r\n history.push(urlState);\r\n }}\r\n toggle={toggle}\r\n />\r\n );\r\n break;\r\n case \"requestDelete\":\r\n var message = \"You are going to delete your request. Are you sure?\";\r\n modalContent = (\r\n \r\n );\r\n break;\r\n case \"deleteMembersOrMeetings\":\r\n var message = \"You are going to delete this row. Are you sure?\";\r\n modalContent = (\r\n \r\n );\r\n break;\r\n case \"editRequestStatus\":\r\n modalContent = (\r\n \r\n );\r\n break;\r\n case \"editRequestStatusForCommitteeMember\":\r\n modalContent = (\r\n \r\n );\r\n break;\r\n case \"viewRequestAsPDF\":\r\n modalContent = (\r\n \r\n );\r\n break;\r\n case \"viewCertificationAsPDF\":\r\n modalContent = (\r\n \r\n );\r\n break;\r\n default:\r\n modalContent = null;\r\n }\r\n\r\n return (\r\n
    \r\n {button}\r\n \r\n \r\n {title}\r\n \r\n {modalContent}\r\n \r\n
    \r\n );\r\n};\r\n\r\nexport default ModalForm;\r\n","import React, { useEffect, useState, useContext } from \"react\";\r\nimport { saveAs } from \"file-saver\";\r\nimport { Button } from \"reactstrap\";\r\nimport JSZip from \"jszip\";\r\nimport JSZipUtils from \"../../utils/JSZipUtils\";\r\nimport { tokenConfig } from \"../../config/tokenConfig\";\r\nimport { URL } from \"../../config/Constants\";\r\nimport UserContext from \"../../context/UserContext\";\r\n\r\nconst ZipDownload = (props) => {\r\n const [urlsArray, setUrlsArray] = useState([]);\r\n const userContext = useContext(UserContext);\r\n\r\n const download = async() => {\r\n const urls = urlsArray;\r\n if(urls.length===0){\r\n alert(\"There are no files to download\");\r\n return;\r\n }\r\n const zip = new JSZip();\r\n let count = 0;\r\n const folderName = props.request + \"_\" + props.subRequst;\r\n const zipFilename = folderName + \".zip\";\r\n urls.forEach(async function (urlElem) {\r\n const fileName = urlElem.name;\r\n try {\r\n const customHeaders = tokenConfig(userContext.token);\r\n const response = await fetch(`${URL}/files/${folderName}/${fileName}`, {\r\n headers: customHeaders.headers,\r\n });\r\n if (!response.ok) {\r\n throw new Error(\"something went wrong!\");\r\n }\r\n \r\n const newUrl = response.url;\r\n const file = await JSZipUtils.getBinaryContent(newUrl);\r\n zip.file(fileName, file, { binary: true });\r\n count++;\r\n if (count === urls.length) {\r\n zip.generateAsync({ type: \"blob\" }).then(function (content) {\r\n saveAs(content, zipFilename);\r\n });\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n }\r\n });\r\n };\r\n\r\n const getAllFilesOfRequest = async () => {\r\n try {\r\n //`${URL}/requests/requestFiles/${props.request}/${props.subRequst}`\r\n const customHeaders = tokenConfig(userContext.token);\r\n const folderName = `${props.request}_${props.subRequst}`;\r\n const response = await fetch(\r\n `${URL}/files/${folderName}`,\r\n {\r\n headers: customHeaders.headers,\r\n }\r\n );\r\n if (!response.ok) {\r\n throw new Error(\"something went wrong!\");\r\n }\r\n const body = await response.json();\r\n setUrlsArray(body);\r\n } catch (error) {}\r\n };\r\n useEffect(() => {\r\n getAllFilesOfRequest();\r\n }, []);\r\n\r\n return (\r\n
    \r\n \r\n
    \r\n );\r\n};\r\n\r\nexport default ZipDownload;\r\n","import React, { useContext } from \"react\";\r\nimport { useTable, useSortBy, useFilters, usePagination } from \"react-table\";\r\nimport { Table, Row, Col, Button, Input, CustomInput } from \"reactstrap\";\r\nimport { Filter, DefaultColumnFilter } from \"./TableFilters\";\r\nimport ModalForm from \"../UI/Bootstrap/ModalForm/ModalForm\";\r\nimport {\r\n statusMapForEdit,\r\n statusMapForDelete,\r\n} from \"../../config/RequestStatus\";\r\nimport { URL } from \"../../config/Constants\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport { tokenConfig } from \"../../config/tokenConfig\";\r\nimport UserContext from \"../../context/UserContext\";\r\nimport ZipDownload from \"../ZipDownload/ZipDownload\";\r\n\r\nconst TableContainer = ({\r\n columns,\r\n data,\r\n headersInputConfig,\r\n updateState,\r\n deleteItemFromState,\r\n type,\r\n rowID,\r\n}) => {\r\n const {\r\n getTableProps,\r\n getTableBodyProps,\r\n headerGroups,\r\n page,\r\n prepareRow,\r\n // below new props related to 'usePagination' hook\r\n canPreviousPage,\r\n canNextPage,\r\n pageOptions,\r\n pageCount,\r\n gotoPage,\r\n nextPage,\r\n previousPage,\r\n setPageSize,\r\n state: { pageIndex, pageSize },\r\n } = useTable(\r\n {\r\n columns,\r\n data,\r\n defaultColumn: { Filter: DefaultColumnFilter },\r\n initialState: { pageIndex: 0, pageSize: 10 },\r\n },\r\n useFilters,\r\n useSortBy,\r\n usePagination\r\n );\r\n\r\n const history = useHistory();\r\n const userContext = useContext(UserContext);\r\n\r\n const generateSortingIndicator = (column) => {\r\n return column.isSorted ? (column.isSortedDesc ? \" 🔽\" : \" 🔼\") : \"\";\r\n };\r\n\r\n const onChangeInSelect = (event) => {\r\n setPageSize(Number(event.target.value));\r\n };\r\n\r\n const onChangeInInput = (event) => {\r\n const page = event.target.value ? Number(event.target.value) - 1 : 0;\r\n gotoPage(page);\r\n };\r\n\r\n const deleteRowFromTable = (id) => {\r\n let url = \"\";\r\n switch (type) {\r\n case \"members\":\r\n url = `${URL}/members/${id}`;\r\n break;\r\n case \"meetings\":\r\n url = `${URL}/meetings/${id}`;\r\n break;\r\n\r\n default:\r\n url = null;\r\n }\r\n const customHeaders = tokenConfig(userContext.token);\r\n fetch(url, {\r\n method: \"delete\",\r\n headers: customHeaders.headers,\r\n })\r\n .then((response) => response.json())\r\n .then((item) => {\r\n if (item.returnValue === 1) {\r\n //ok\r\n //row has changed in DB\r\n deleteItemFromState(id);\r\n } else {\r\n //console.log(\"failure\");\r\n }\r\n })\r\n .catch((err) => console.log(err));\r\n };\r\n\r\n const deleteRequestFromTable = (id, subID) => {\r\n let url = `${URL}/requests/${id}/${subID}`;\r\n const customHeaders = tokenConfig(userContext.token);\r\n fetch(url, {\r\n method: \"delete\",\r\n headers: customHeaders.headers,\r\n })\r\n .then((response) => response.json())\r\n .then((item) => {\r\n if (item) {\r\n //ok\r\n //row has changed in DB\r\n deleteItemFromState(item);\r\n } else {\r\n console.log(\"failure\");\r\n }\r\n })\r\n .catch((err) => console.log(err));\r\n };\r\n\r\n const generateCustomColumns = (row) => {\r\n switch (type) {\r\n case \"requests\":\r\n return (\r\n \r\n \r\n
    \r\n {\" \"}\r\n
    \r\n \r\n \r\n {\r\n deleteRequestFromTable(\r\n row.values[\"requestNumber\"],\r\n row.values[\"requestSubNumber\"]\r\n );\r\n }}\r\n type=\"requestDelete\"\r\n color=\"danger\"\r\n isDisabled={statusMapForDelete[row.values[\"statusDescription\"]]}\r\n />{\" \"}\r\n \r\n \r\n {\" \"}\r\n \r\n
    \r\n );\r\n case \"adminRequests\":\r\n return (\r\n \r\n \r\n {\" \"}\r\n \r\n \r\n {\" \"}\r\n \r\n \r\n \r\n \r\n \r\n );\r\n case \"committeeMemnberRequests\":\r\n return (\r\n \r\n \r\n {\" \"}\r\n \r\n \r\n {\" \"}\r\n \r\n \r\n \r\n \r\n \r\n );\r\n case \"editRequestStatus\":\r\n return null;\r\n case \"editRequestStatusForCommitteeMember\":\r\n return null;\r\n default:\r\n return (\r\n \r\n \r\n
    \r\n {\" \"}\r\n
    \r\n \r\n \r\n {\r\n deleteRowFromTable(row.values[rowID]);\r\n }}\r\n type=\"deleteMembersOrMeetings\"\r\n color=\"danger\"\r\n />{\" \"}\r\n \r\n
    \r\n );\r\n }\r\n };\r\n return (\r\n // If you're curious what props we get as a result of calling our getter functions (getTableProps(), getRowProps())\r\n // Feel free to use console.log() This will help you better understand how react table works underhood.\r\n \r\n \r\n \r\n {headerGroups.map((headerGroup) => (\r\n \r\n {headerGroup.headers.map((column) => (\r\n \r\n ))}\r\n \r\n ))}\r\n \r\n\r\n \r\n {page.map((row) => {\r\n /*\r\n row.cells.map(mycell=>{\r\n return mycell.value; \r\n })*/\r\n prepareRow(row);\r\n //console.log(\"row\", row);\r\n return (\r\n \r\n \r\n {row.cells.map((cell) => {\r\n return (\r\n \r\n );\r\n })}\r\n {generateCustomColumns(row)}\r\n \r\n \r\n );\r\n })}\r\n \r\n
    \r\n
    \r\n {column.render(\"Header\")}\r\n {generateSortingIndicator(column)}\r\n
    \r\n \r\n
    {cell.render(\"Cell\")}
    \r\n\r\n \r\n \r\n gotoPage(0)}\r\n disabled={!canPreviousPage}\r\n >\r\n {\"<<\"}\r\n \r\n \r\n {\"<\"}\r\n \r\n \r\n \r\n Page{\" \"}\r\n \r\n {pageIndex + 1} of {pageOptions.length}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {[10, 20, 30, 40, 50].map((pageSize) => (\r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n gotoPage(pageCount - 1)}\r\n disabled={!canNextPage}\r\n >\r\n {\">>\"}\r\n \r\n \r\n \r\n
    \r\n );\r\n};\r\n\r\nexport default TableContainer;\r\n","import React, { useEffect, useState, useMemo, useContext } from \"react\";\r\nimport TableContainer from \"../Tables/TableContainer\";\r\nimport { Container, Row, Col } from \"reactstrap\";\r\nimport \"bootstrap/dist/css/bootstrap.min.css\";\r\nimport {\r\n SelectColumnFilter,\r\n DefaultColumnFilter,\r\n Filter,\r\n} from \"../Tables/TableFilters\";\r\nimport ModalForm from \"../UI/Bootstrap/ModalForm/ModalForm\";\r\nimport classes from \"./Members.module.css\";\r\nimport Spinner from \"../UI/Spinner/Spinner\";\r\nimport degrees from \"../../config/AcadmicDegrees\";\r\nimport roles from \"../../config/Roles\";\r\nimport { URL } from \"../../config/Constants\";\r\nimport { tokenConfig } from \"../../config/tokenConfig\";\r\nimport UserContext from \"../../context/UserContext\";\r\n//check validation: https://betterprogramming.pub/the-complete-guide-to-forms-in-react-d2ba93f32825\r\n\r\nconst Members = () => {\r\n const userContext = useContext(UserContext);\r\n const [data, setData] = useState([]);\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [error, setError] = useState(null);\r\n\r\n //The inputs and their config to the \"add/edit\" page,\r\n //according to the fields from the DB\r\n const headersInputConfig = [\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"text\",\r\n id: \"userID\",\r\n name: \"userID\",\r\n disabled: true,\r\n },\r\n labelConfig: {\r\n dbField: \"userID\",\r\n title: \"ID\",\r\n },\r\n },\r\n /*{\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"text\",\r\n id: \"userName\",\r\n name: \"userName\",\r\n },\r\n labelConfig: {\r\n dbField: \"userName\",\r\n title: \"BGU user\",\r\n },\r\n },*/\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"text\",\r\n id: \"firstName\",\r\n name: \"firstName\",\r\n },\r\n labelConfig: {\r\n dbField: \"firstName\",\r\n title: \"First name\",\r\n },\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"text\",\r\n id: \"lastName\",\r\n name: \"lastName\",\r\n },\r\n labelConfig: {\r\n dbField: \"lastName\",\r\n title: \"Last name\",\r\n },\r\n },\r\n {\r\n elementType: \"select\",\r\n elementConfig: {\r\n options: degrees,\r\n id: \"academicRank\",\r\n name: \"academicRank\",\r\n },\r\n labelConfig: {\r\n dbField: \"academicRank\",\r\n title: \"Academic rank\",\r\n },\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n placeholder: \"xxx@yyy.zzz\",\r\n type: \"email\",\r\n id: \"email\",\r\n name: \"email\",\r\n },\r\n labelConfig: {\r\n dbField: \"email\",\r\n title: \"Email\",\r\n },\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n placeholder: \"05x-xxxxxxx\",\r\n type: \"text\",\r\n id: \"phoneNumber\",\r\n name: \"phoneNumber\",\r\n },\r\n labelConfig: {\r\n dbField: \"phoneNumber\",\r\n title: \"Phone number\",\r\n },\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"text\",\r\n id: \"department\",\r\n name: \"department\",\r\n },\r\n labelConfig: {\r\n dbField: \"department\",\r\n title: \"Department\",\r\n },\r\n },\r\n {\r\n elementType: \"select\",\r\n elementConfig: {\r\n options: roles,\r\n id: \"roleDescription\",\r\n name: \"roleDescription\",\r\n },\r\n labelConfig: {\r\n dbField: \"roleDescription\",\r\n title: \"Role\",\r\n },\r\n },\r\n /*{\r\n elementType: \"checkbox\",\r\n elementConfig: {\r\n type: \"checkbox\",\r\n id: \"isActive\",\r\n name: \"isActive\",\r\n },\r\n labelConfig: {\r\n dbField: \"isActive\",\r\n title: \"Is Active\",\r\n },\r\n },*/\r\n ];\r\n\r\n // Those columns dont need to be changed in every rerendering\r\n // but, because it is an array, and array it is an object. it will be rendered.\r\n // we are avoiding it, by using \"useMemo\" hook, that doing memoization to this const.\r\n\r\n //The columns of the table, and their filters and sort features\r\n const columns = useMemo(\r\n () => [\r\n {\r\n id: \"userID\",\r\n Header: \"ID\",\r\n accessor: \"userID\",\r\n disableSortBy: true,\r\n Filter: DefaultColumnFilter,\r\n //filter: \"equals\", // by default, filter: 'text', but in our case we don't want to filter options like text, we want to find exact match of selected option.\r\n },\r\n /*{\r\n id: \"userName\",\r\n Header: \"BGU user\",\r\n accessor: \"userName\",\r\n },*/\r\n {\r\n id: \"firstName\",\r\n Header: \"First Name\",\r\n accessor: \"firstName\",\r\n },\r\n {\r\n id: \"lastName\",\r\n Header: \"Last Name\",\r\n accessor: \"lastName\",\r\n },\r\n {\r\n id: \"academicRank\",\r\n Header: \"Academic rank\",\r\n accessor: \"academicRank\",\r\n Filter: SelectColumnFilter,\r\n filter: \"equals\",\r\n },\r\n {\r\n id: \"email\",\r\n Header: \"Email\",\r\n accessor: \"email\",\r\n },\r\n {\r\n id: \"phoneNumber\",\r\n Header: \"Phone number\",\r\n accessor: \"phoneNumber\",\r\n },\r\n {\r\n id: \"department\",\r\n Header: \"Department\",\r\n accessor: \"department\",\r\n },\r\n {\r\n id: \"roleDescription\",\r\n Header: \"Role\",\r\n accessor: \"roleDescription\",\r\n Filter: SelectColumnFilter,\r\n filter: \"equals\",\r\n },\r\n /*{\r\n id: \"isActive\",\r\n Header: \"Is active\",\r\n accessor: \"isActive\",\r\n Cell: (row) => {\r\n return (\r\n
    \r\n \r\n
    \r\n );\r\n },\r\n },*/\r\n ],\r\n []\r\n );\r\n\r\n const doFetch = async () => {\r\n setIsLoading(true);\r\n setError(null);\r\n try {\r\n const customHeaders = tokenConfig(userContext.token);\r\n const response = await fetch(`${URL}/members`, {\r\n headers: customHeaders.headers,\r\n }); //https://randomuser.me/api/?results=100\r\n if (!response.ok) {\r\n throw new Error(\"something went wrong!\");\r\n }\r\n const body = await response.json();\r\n\r\n const contacts = body.results;\r\n //console.log(contacts);\r\n setData(contacts);\r\n } catch (error) {\r\n setError(error.message);\r\n }\r\n setIsLoading(false);\r\n };\r\n\r\n useEffect(() => {\r\n doFetch();\r\n }, []);\r\n\r\n const updateState = (item) => {\r\n const itemIndex = data.findIndex((row) => row.userID === item.userID);\r\n const newArray = [\r\n // destructure all items from beginning to the indexed item\r\n ...data.slice(0, itemIndex),\r\n // add the updated item to the array\r\n item,\r\n // add the rest of the items to the array from the index after the replaced item\r\n ...data.slice(itemIndex + 1),\r\n ];\r\n setData(newArray);\r\n };\r\n\r\n const addItemToState = (item) => {\r\n setData((prevState) => [...prevState, item]);\r\n };\r\n\r\n const deleteItemFromState = (id) => {\r\n var updatedData = [...data];\r\n\r\n const updatedItems = updatedData.filter((item) => item.userID !== id);\r\n setData(updatedItems);\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n

    Members

    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n {!isLoading && data.length > 0 && (\r\n \r\n )}\r\n {!isLoading && data.length === 0 && !error && (\r\n

    Members not found

    \r\n )}\r\n {isLoading && }\r\n {!isLoading && error &&

    {error}

    }\r\n \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default Members;\r\n","import React, { useEffect, useState, useMemo, useContext } from \"react\";\r\nimport TableContainer from \"../Tables/TableContainer\";\r\nimport { Container, Row, Col } from \"reactstrap\";\r\nimport \"bootstrap/dist/css/bootstrap.min.css\";\r\nimport { COMMITTEE_ID, URL } from \"../../config/Constants\";\r\nimport {\r\n SelectColumnFilter,\r\n DefaultColumnFilter,\r\n Filter,\r\n} from \"../Tables/TableFilters\";\r\nimport ModalForm from \"../UI/Bootstrap/ModalForm/ModalForm\";\r\nimport classes from \"./Meetings.module.css\";\r\nimport Spinner from \"../UI/Spinner/Spinner\";\r\nimport { format } from \"date-fns\";\r\nimport { tokenConfig } from \"../../config/tokenConfig\";\r\nimport UserContext from \"../../context/UserContext\";\r\n\r\nconst Meetings = () => {\r\n const userContext = useContext(UserContext);\r\n const [data, setData] = useState([]);\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [error, setError] = useState(null);\r\n\r\n const headersInputConfig = [\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"text\",\r\n id: \"committeeMeetingID\",\r\n name: \"committeeMeetingID\",\r\n disabled: true,\r\n },\r\n labelConfig: {\r\n dbField: \"committeeMeetingID\",\r\n title: \"Meeting ID\",\r\n },\r\n wrapperConfig: {\r\n display: \"none\",\r\n },\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"date\",\r\n id: \"committeeMeetingDate\",\r\n name: \"committeeMeetingDate\",\r\n },\r\n labelConfig: {\r\n dbField: \"committeeMeetingDate\",\r\n title: \"Date\",\r\n },\r\n wrapperConfig: {},\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"text\",\r\n id: \"committeeLocation\",\r\n name: \"committeeLocation\",\r\n },\r\n labelConfig: {\r\n dbField: \"committeeLocation\",\r\n title: \"Location\",\r\n },\r\n wrapperConfig: {},\r\n },\r\n {\r\n elementType: \"textarea\",\r\n elementConfig: {\r\n id: \"committeeSubject\",\r\n name: \"committeeSubject\",\r\n rows: 4,\r\n cols: 50,\r\n },\r\n labelConfig: {\r\n dbField: \"committeeSubject\",\r\n title: \"Subject\",\r\n },\r\n wrapperConfig: {},\r\n },\r\n ];\r\n\r\n // Those columns dont need to be changed in every rerendering\r\n // but, because it is an array, and arry it is an object. it will be rendered.\r\n // we are avoiding it, by using \"useMemo\" hook, that doing mempoization to this const.\r\n const columns = useMemo(\r\n () => [\r\n {\r\n id: \"committeeMeetingID\",\r\n Header: \"num\",\r\n accessor: \"committeeMeetingID\",\r\n disableSortBy: true,\r\n Filter: DefaultColumnFilter,\r\n },\r\n {\r\n id: \"committeeMeetingDate\",\r\n Header: \"Meeting date\",\r\n accessor: \"committeeMeetingDate\",\r\n Cell: ({ value }) => {\r\n return format(new Date(value), \"dd/MM/yyyy\");\r\n },\r\n },\r\n {\r\n id: \"committeeLocation\",\r\n Header: \"Meeting location\",\r\n accessor: \"committeeLocation\",\r\n },\r\n {\r\n id: \"committeeSubject\",\r\n Header: \"Meeting subject\",\r\n accessor: \"committeeSubject\",\r\n },\r\n ],\r\n []\r\n );\r\n\r\n const doFetch = async () => {\r\n setIsLoading(true);\r\n setError(null);\r\n try {\r\n const customHeaders = tokenConfig(userContext.token);\r\n const response = await fetch(`${URL}/meetings/${COMMITTEE_ID}`, {\r\n headers: customHeaders.headers,\r\n });\r\n if (!response.ok) {\r\n throw new Error(\"something went wrong!\");\r\n }\r\n const body = await response.json();\r\n \r\n const meetings = body.results;\r\n //console.log(meetings);\r\n setData(meetings);\r\n } catch (error) {\r\n setError(error.message);\r\n }\r\n setIsLoading(false);\r\n };\r\n\r\n useEffect(() => {\r\n doFetch();\r\n }, []);\r\n\r\n const updateState = (item) => {\r\n const itemIndex = data.findIndex(\r\n (row) => row.committeeMeetingID === item.committeeMeetingID\r\n );\r\n const newArray = [\r\n // destructure all items from beginning to the indexed item\r\n ...data.slice(0, itemIndex),\r\n // add the updated item to the array\r\n item,\r\n // add the rest of the items to the array from the index after the replaced item\r\n ...data.slice(itemIndex + 1),\r\n ];\r\n setData(newArray);\r\n };\r\n\r\n const addItemToState = (item) => {\r\n setData((prevState) => [...prevState, item]);\r\n };\r\n\r\n const deleteItemFromState = (id) => {\r\n var updatedData = [...data];\r\n\r\n const updatedItems = updatedData.filter(\r\n (item) => item.committeeMeetingID !== id\r\n );\r\n setData(updatedItems);\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n

    Meeting table

    \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n {!isLoading && data.length > 0 && (\r\n \r\n )}\r\n {!isLoading && data.length === 0 && !error && (\r\n

    Meetings not found

    \r\n )}\r\n {isLoading && }\r\n {!isLoading && error &&

    {error}

    }\r\n \r\n
    \r\n
    \r\n );\r\n};\r\nexport default Meetings;\r\n//TODO - try to fetch with calllback. this is the right way.\r\n/*\r\nimport React, { useState, useEffect, useCalllback } from 'react'\r\n\r\nimport { fetchUserAction } from '../api/actions.js'\r\n\r\nconst UserContainer = () => {\r\n const [user, setUser] = useState(null);\r\n \r\n const handleUserFetch = useCalllback(async () => {\r\n const result = await fetchUserAction();\r\n setUser(result);\r\n }, []);\r\n \r\n useEffect(() => {\r\n handleUserFetch();\r\n }, [handleUserFetch]);\r\n \r\n if (!user) return

    No data available.

    \r\n \r\n return \r\n};\r\n\r\n\r\n*/\r\n","import React, { useRef } from \"react\";\r\nimport classes from \"./Home.module.css\";\r\nimport Footer from \"../Footer/Footer\";\r\n\r\nconst scrollToRef = (ref) =>\r\n window.scrollTo({\r\n top: ref.current.offsetTop,\r\n behavior: \"smooth\",\r\n });\r\n\r\nconst Home = () => {\r\n const myRef = useRef(null);\r\n\r\n const scrollToMiddle = () => {\r\n scrollToRef(myRef);\r\n };\r\n return (\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n\t\t\tהאתר מיועד לבקשות שהוגשו עד לתאריך 1.10.2024\r\n\t\t\t
    \r\n\t\t\t במידה ומדובר בבקשה חדשה יש לפנות לאתר החדש-\r\n\t\t\t
    \r\n\t\t\t https://k2prod.bgu.ac.il/Runtime/Runtime/form/CommitteeSelectionForm\r\n\t\t\t

    \r\n\t\t\t

    Human Subjects Research Committee Website

    \r\n

    \r\n Research using human subjects has the potential to contribute\r\n significantly to the understanding of cognitive, behavioral,\r\n emotional, and social processes.\r\n

    When conducting such research, the researcher is\r\n responsible for adhering to the code of ethics geared to\r\n protecting participants.\r\n

    More specifically, the researcher is responsible for\r\n making sure that participants understand the nature of the study\r\n and what will be asked of them, what they will or will not receive\r\n as compensation for their participation, for treating participants\r\n respectfully, ensuring their well-being, and honoring their right\r\n to privacy.

    When proposing research with human subjects,\r\n researchers are required to provide accurate information about\r\n their research and to obtain institutional approval before\r\n conducting the research.

    In this website, you can find\r\n information about the Committee's function and what is needed in\r\n order to submit a request for approval for the research.

    \r\n The entire approval request process is carried out via this\r\n website.\r\n
    \r\n
    \r\n \r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Our other committees

    \r\n

    \r\n
    \r\n
    \r\n

    Departmental Ethics Committees

    \r\n

    \r\n The Departmental Committees are responsible for evaluating all\r\n studies that are not funded or submitted to external granting\r\n institutions and that do not include the collection of\r\n biological samples (such as blood, cells, urine, semen, stool,\r\n sputum, tissues) or any invasive physical procedures including\r\n the intake of substances (e.g., alcohol, drugs).\r\n
    \r\n
    \r\n All research that is eligible for expedited review is to be\r\n submitted to the respective Departmental Ethics Committee\r\n for approval.\r\n \r\n Research may be considered for expedited review if it involves\r\n no more than minimal risk, does not include intentional\r\n deception, does not include vulnerable populations, does not\r\n address sensitive topics, and includes appropriate consent\r\n procedures.\r\n \r\n Minimal risk means that the probability and magnitude of\r\n psychological harm or discomfort anticipated in the research is\r\n not greater than those encountered in daily life and routine\r\n behavior. This includes, but is not limited to financial risk,\r\n employment risk, criminal/civil liability, stigmatization,\r\n insurability, emotional distress, embarrassment, and more.\r\n Sensitive populations include, but are not limited to, children,\r\n prisoners, etc. Sensitive topics include, but are not limited\r\n to, questions about clinical symptoms, sexuality, etc.\r\n

    \r\n
    \r\n
    \r\n

    Helsinki Ethics Committee

    \r\n

    \r\n Evaluates studies that include the collection of biological\r\n samples (such as blood, cells, urine, semen, stool, sputum,\r\n tissues and/or any invasive physical procedures including the\r\n intake of substances (e.g., alcohol, drugs). The committee\r\n evaluates proposals based on the standards promoted by the\r\n Helsinki Declaration (1964). Currently, the university Helsinki\r\n Committee is based at Soroka Hospital.\r\n
    \r\n \r\n Soroka University Medical Center Helsinki Committee Website\r\n \r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default Home;\r\n","import React, { useEffect, useState, useMemo, useContext } from \"react\";\r\nimport TableContainer from \"../Tables/TableContainer\";\r\nimport { Container, Row, Col, Button } from \"reactstrap\";\r\nimport \"bootstrap/dist/css/bootstrap.min.css\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport { URL } from \"../../config/Constants\";\r\nimport UserContext from \"../../context/UserContext\";\r\nimport { COMMITTEE_ID } from \"../../config/Constants\";\r\nimport { tokenConfig } from \"../../config/tokenConfig\";\r\nimport {\r\n SelectColumnFilter,\r\n DefaultColumnFilter,\r\n Filter,\r\n} from \"../Tables/TableFilters\";\r\nimport ModalForm from \"../UI/Bootstrap/ModalForm/ModalForm\";\r\nimport classes from \"../Meetings/Meetings.module.css\";\r\nimport Spinner from \"../UI/Spinner/Spinner\";\r\nimport { format } from \"date-fns\";\r\n\r\n//TODO https://medium.com/we-code-we-write/consume-rest-apis-in-your-react-app-like-a-pro-using-services-983a6271494f\r\nconst Requests = () => {\r\n const [data, setData] = useState([]);\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [error, setError] = useState(null);\r\n const history = useHistory();\r\n const userContext = useContext(UserContext);\r\n\r\n const headersInputConfig = [\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"text\",\r\n id: \"committeeMeetingID\",\r\n name: \"committeeMeetingID\",\r\n disabled: true,\r\n },\r\n labelConfig: {\r\n dbField: \"committeeMeetingID\",\r\n title: \"Meeting ID\",\r\n },\r\n wrapperConfig: {\r\n display: \"none\",\r\n },\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"date\",\r\n id: \"committeeMeetingDate\",\r\n name: \"committeeMeetingDate\",\r\n },\r\n labelConfig: {\r\n dbField: \"committeeMeetingDate\",\r\n title: \"Date\",\r\n },\r\n wrapperConfig: {},\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"text\",\r\n id: \"committeeLocation\",\r\n name: \"committeeLocation\",\r\n },\r\n labelConfig: {\r\n dbField: \"committeeLocation\",\r\n title: \"Location\",\r\n },\r\n wrapperConfig: {},\r\n },\r\n {\r\n elementType: \"textarea\",\r\n elementConfig: {\r\n id: \"committeeSubject\",\r\n name: \"committeeSubject\",\r\n rows: 4,\r\n cols: 50,\r\n },\r\n labelConfig: {\r\n dbField: \"committeeSubject\",\r\n title: \"Subject\",\r\n },\r\n wrapperConfig: {},\r\n },\r\n ];\r\n\r\n // Those columns dont need to be changed in every rerendering\r\n // but, because it is an array, and arry it is an object. it will be rendered.\r\n // we are avoiding it, by using \"useMemo\" hook, that doing mempoization to this const.\r\n const columns = useMemo(\r\n () => [\r\n {\r\n id: \"requestNumber\",\r\n Header: \"Submission number\",\r\n accessor: \"requestNumber\",\r\n disableSortBy: true,\r\n Filter: DefaultColumnFilter,\r\n show: true,\r\n },\r\n {\r\n id: \"requestSubNumber\",\r\n Header: \"Submission sub-number\",\r\n accessor: \"requestSubNumber\",\r\n disableSortBy: true,\r\n Filter: DefaultColumnFilter,\r\n },\r\n {\r\n id: \"requestInsertDate\",\r\n Header: \"Submission date\",\r\n accessor: \"requestInsertDate\",\r\n Cell: ({ value }) => {\r\n return format(new Date(value), \"dd/MM/yyyy\");\r\n },\r\n },\r\n {\r\n id: \"bguID\",\r\n Header: \"BGU user name\",\r\n accessor: \"bguID\",\r\n },\r\n {\r\n id: \"statusDescription\",\r\n Header: \"Request status\",\r\n accessor: \"statusDescription\",\r\n Filter: SelectColumnFilter,\r\n },\r\n {\r\n id: \"hasCertification\",\r\n Header: \"Approved by HSR\",\r\n accessor: \"hasCertification\",\r\n Cell: (row) => {\r\n return (\r\n
    \r\n \r\n
    \r\n );\r\n },\r\n },\r\n ],\r\n []\r\n );\r\n\r\n //todo\r\n //https://medium.com/trabe/using-renderless-components-in-react-to-handle-data-4c55f1e94dd4\r\n const doFetch = async () => {\r\n setIsLoading(true);\r\n setError(null);\r\n try {\r\n const customHeaders = tokenConfig(userContext.token);\r\n const response = await fetch(`${URL}/requests/`, {\r\n headers: customHeaders.headers,\r\n });\r\n if (!response.ok) {\r\n throw new Error(\"something went wrong!\");\r\n }\r\n const body = await response.json();\r\n\r\n const requests = body.results;\r\n //console.log(requests);\r\n setData(requests);\r\n } catch (error) {\r\n setError(error.message);\r\n }\r\n setIsLoading(false);\r\n };\r\n\r\n useEffect(() => {\r\n doFetch();\r\n }, []);\r\n\r\n const deleteItemFromState = (item) => {\r\n const itemIndex = data.findIndex(\r\n (row) =>\r\n row.requestNumber === item.requestNumber &&\r\n row.requestSubNumber === item.requestSubNumber\r\n );\r\n const newArray = [\r\n // destructure all items from beginning to the indexed item\r\n ...data.slice(0, itemIndex),\r\n // add the updated item to the array\r\n item,\r\n // add the rest of the items to the array from the index after the replaced item\r\n ...data.slice(itemIndex + 1),\r\n ];\r\n setData(newArray);\r\n\r\n //todo - in DB- after we delete the row- should we insert this new status to the requestStageTable?\r\n };\r\n\r\n const handleRoute = () => {\r\n let urlState = {\r\n pathname: \"/form\",\r\n state: {\r\n request: null,\r\n subRequest: 1,\r\n isNewRequest: true,\r\n originalSubRequest: 1,\r\n },\r\n };\r\n history.push(urlState);\r\n };\r\n return (\r\n \r\n \r\n \r\n

    Your requests

    \r\n \r\n \r\n \r\n New request\r\n \r\n \r\n
    \r\n \r\n \r\n {!isLoading && data.length > 0 && (\r\n \r\n )}\r\n {!isLoading && data.length === 0 && !error && (\r\n

    Requests not found

    \r\n )}\r\n {isLoading && }\r\n {!isLoading && error &&

    {error}

    }\r\n \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default Requests;\r\n","import React, { useEffect, useState, useMemo, useContext } from \"react\";\r\nimport TableContainer from \"../Tables/TableContainer\";\r\nimport { Container, Row, Col, Button } from \"reactstrap\";\r\nimport \"bootstrap/dist/css/bootstrap.min.css\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport { URL } from \"../../config/Constants\";\r\nimport UserContext from \"../../context/UserContext\";\r\nimport { tokenConfig } from \"../../config/tokenConfig\";\r\n\r\nimport { COMMITTEE_ID } from \"../../config/Constants\";\r\nimport {\r\n SelectColumnFilter,\r\n DefaultColumnFilter,\r\n Filter,\r\n} from \"../Tables/TableFilters\";\r\nimport ModalForm from \"../UI/Bootstrap/ModalForm/ModalForm\";\r\nimport classes from \"../Meetings/Meetings.module.css\";\r\nimport Spinner from \"../UI/Spinner/Spinner\";\r\nimport { format } from \"date-fns\";\r\n\r\nconst AdminRequests = () => {\r\n const userContext = useContext(UserContext);\r\n const [data, setData] = useState([]);\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [error, setError] = useState(null);\r\n const history = useHistory();\r\n\r\n const headersInputConfig = [\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"text\",\r\n id: \"committeeMeetingID\",\r\n name: \"committeeMeetingID\",\r\n disabled: true,\r\n },\r\n labelConfig: {\r\n dbField: \"committeeMeetingID\",\r\n title: \"Meeting ID\",\r\n },\r\n wrapperConfig: {\r\n display: \"none\",\r\n },\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"date\",\r\n id: \"committeeMeetingDate\",\r\n name: \"committeeMeetingDate\",\r\n },\r\n labelConfig: {\r\n dbField: \"committeeMeetingDate\",\r\n title: \"Date\",\r\n },\r\n wrapperConfig: {},\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"text\",\r\n id: \"committeeLocation\",\r\n name: \"committeeLocation\",\r\n },\r\n labelConfig: {\r\n dbField: \"committeeLocation\",\r\n title: \"Location\",\r\n },\r\n wrapperConfig: {},\r\n },\r\n {\r\n elementType: \"textarea\",\r\n elementConfig: {\r\n id: \"committeeSubject\",\r\n name: \"committeeSubject\",\r\n rows: 4,\r\n cols: 50,\r\n },\r\n labelConfig: {\r\n dbField: \"committeeSubject\",\r\n title: \"Subject\",\r\n },\r\n wrapperConfig: {},\r\n },\r\n ];\r\n\r\n // Those columns dont need to be changed in every rerendering\r\n // but, because it is an array, and arry it is an object. it will be rendered.\r\n // we are avoiding it, by using \"useMemo\" hook, that doing mempoization to this const.\r\n const columns = useMemo(\r\n () => [\r\n {\r\n id: \"requestNumber\",\r\n Header: \"Submission number\",\r\n accessor: \"requestNumber\",\r\n disableSortBy: true,\r\n Filter: DefaultColumnFilter,\r\n show: true,\r\n },\r\n {\r\n id: \"requestSubNumber\",\r\n Header: \"Submission sub-number\",\r\n accessor: \"requestSubNumber\",\r\n disableSortBy: true,\r\n Filter: DefaultColumnFilter,\r\n },\r\n {\r\n id: \"requestInsertDate\",\r\n Header: \"Submission date\",\r\n accessor: \"requestInsertDate\",\r\n Cell: ({ value }) => {\r\n return format(new Date(value), \"dd/MM/yyyy\");\r\n },\r\n },\r\n {\r\n id: \"bguID\",\r\n Header: \"BGU user name\",\r\n accessor: \"bguID\",\r\n },\r\n {\r\n id: \"statusDescription\",\r\n Header: \"Request status\",\r\n accessor: \"statusDescription\",\r\n Filter: SelectColumnFilter,\r\n },\r\n ],\r\n []\r\n );\r\n\r\n const doFetch = async () => {\r\n setIsLoading(true);\r\n setError(null);\r\n try {\r\n const customHeaders = tokenConfig(userContext.token);\r\n const response = await fetch(`${URL}/requests/AdminRequests`, {\r\n headers: customHeaders.headers,\r\n });\r\n if (!response.ok) {\r\n throw new Error(\"something went wrong!\");\r\n }\r\n const body = await response.json();\r\n\r\n const requests = body.results;\r\n //console.log(requests);\r\n setData(requests);\r\n } catch (error) {\r\n setError(error.message);\r\n }\r\n setIsLoading(false);\r\n };\r\n\r\n useEffect(() => {\r\n doFetch();\r\n }, []);\r\n\r\n const updateState = (item) => {\r\n const itemIndex = data.findIndex(\r\n (row) =>\r\n row.requestNumber === item.requestNumber &&\r\n row.requestSubNumber === item.requestSubNumber\r\n );\r\n const newArray = [\r\n // destructure all items from beginning to the indexed item\r\n ...data.slice(0, itemIndex),\r\n // add the updated item to the array\r\n item,\r\n // add the rest of the items to the array from the index after the replaced item\r\n ...data.slice(itemIndex + 1),\r\n ];\r\n setData(newArray);\r\n };\r\n\r\n const addItemToState = (item) => {\r\n setData((prevState) => [...prevState, item]);\r\n };\r\n\r\n const deleteItemFromState = (id) => {\r\n var updatedData = [...data];\r\n\r\n const updatedItems = updatedData.filter(\r\n (item) => item.committeeMeetingID !== id\r\n );\r\n setData(updatedItems);\r\n };\r\n\r\n const handleRoute = () => {\r\n history.push(\"/form\");\r\n };\r\n return (\r\n \r\n \r\n \r\n

    All requests

    \r\n \r\n
    \r\n \r\n \r\n {!isLoading && data.length > 0 && (\r\n \r\n )}\r\n {!isLoading && data.length === 0 && !error && (\r\n

    Requests not found

    \r\n )}\r\n {isLoading && }\r\n {!isLoading && error &&

    {error}

    }\r\n \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default AdminRequests;\r\n","import React from 'react'\r\n\r\nconst NotFound=()=>{\r\n return(\r\n
    \r\n

    Oops... You have no permissions to this page...

    \r\n
    \r\n )\r\n}\r\nexport default NotFound; ","import React, { useState, useEffect, useContext } from \"react\";\r\nimport { URL } from \"../../config/Constants\";\r\nimport classes from \"../NavbarAndDrawer/NavbarAndDrawer.module.css\";\r\nimport UserContext from \"../../context/UserContext\";\r\nimport TinySpinner from \"../UI/Spinner/TinySpinner\";\r\n\r\nconst Test = (props) => {\r\n const [userLoginDetails, setUserLoginDetails] = useState({\r\n userName: \"\",\r\n userPassword: \"\",\r\n userID: \"\",\r\n });\r\n\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [isLogIn, setIsLogin] = useState(false);\r\n const [isCompanyMember, setIsCompanyMember] = useState(false);\r\n const [error, setError] = useState(false);\r\n const [message, setMessage] = useState(\"\");\r\n const userContext = useContext(UserContext);\r\n const userAuth = userContext.authed;\r\n\r\n const onChangeHandler = (e) => {\r\n let { name, value } = e.target;\r\n let updatedState = { ...userLoginDetails };\r\n updatedState[name] = value;\r\n setUserLoginDetails(updatedState);\r\n };\r\n\r\n const padLeadingZeros = (num, size) => {\r\n var updatedNum = num + \"\";\r\n while (updatedNum.length < size) updatedNum = \"0\" + updatedNum;\r\n return updatedNum;\r\n };\r\n\r\n const convertIntUserTypeToString = (num) => {\r\n const adminsTypes = [1, 3]; //1=Head of committee, 3= Administrative assistant\r\n if (num === 0) {\r\n return \"Researcher\";\r\n } else if (adminsTypes.includes(num)) {\r\n return \"AdministrativeAssistant\";\r\n } else {\r\n return \"MemberOfCommittee\";\r\n }\r\n };\r\n\r\n const getUserType = async () => {\r\n let idWithLeadingZeros = padLeadingZeros(userLoginDetails.userID, 9);\r\n const bodyContent = {\r\n userName: userLoginDetails.userName,\r\n };\r\n const response = await fetch(`${URL}/members/${idWithLeadingZeros}`, {\r\n method: \"post\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(bodyContent),\r\n credentials: \"include\",\r\n });\r\n if (!response.ok) {\r\n setError(true);\r\n setIsLoading(false);\r\n setMessage(\"something went wrong! try again!\");\r\n return;\r\n }\r\n const body = await response.json();\r\n const userTypeStr = convertIntUserTypeToString(body.data.result);\r\n userContext.handleChange(userTypeStr, true, userLoginDetails.userName);\r\n setIsLogin(true);\r\n setError(false);\r\n setIsLoading(false);\r\n setMessage(\"\");\r\n };\r\n\r\n const submitLogOut = async (e) => {\r\n e.preventDefault();\r\n fetch(`${URL}/login/logout/`, { credentials: \"include\" })\r\n .then((response) => {\r\n return response.json();\r\n })\r\n .then((response) => {\r\n console.log(response);\r\n userContext.handleChange(\"NoUser\", false, \"\");\r\n })\r\n .catch();\r\n };\r\n const submitHandler = async (e) => {\r\n e.preventDefault();\r\n setIsLoading(true);\r\n setError(false);\r\n fetch(`http://apps4cloud19.auth.ad.bgu.ac.il:84/api/AuthGen`, {\r\n method: \"post\",\r\n json: true,\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify({\r\n UserName: userLoginDetails.userName,\r\n PassWord: userLoginDetails.userPassword,\r\n Id: userLoginDetails.userID,\r\n }),\r\n })\r\n .then((response) => {\r\n return response.json();\r\n })\r\n .then((response) => {\r\n //The combination of user, id and password is correct!\r\n if (response) {\r\n //getUserType();\r\n setIsCompanyMember(true);\r\n } else {\r\n //The combination of user, id and password is wrong!\r\n setError(true);\r\n setIsLoading(false);\r\n setMessage(\"combination of user,id an password didnt work!\");\r\n }\r\n })\r\n //unexpected problem...\r\n .catch(() => {\r\n setError(true);\r\n setIsLoading(false);\r\n setMessage(\"connection problem\");\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n fetch(`${URL}/login/`, { credentials: \"include\" })\r\n .then((response) => {\r\n return response.json();\r\n })\r\n .then((response) => {\r\n console.log(response);\r\n if (response.data.loggedIn === true) {\r\n setIsLogin(true);\r\n setError(false);\r\n setMessage(\"\");\r\n const userTypeStr = convertIntUserTypeToString(\r\n response.data.userType\r\n );\r\n userContext.handleChange(userTypeStr, true, response.data.userName);\r\n }\r\n })\r\n .catch();\r\n return () => {\r\n //for cleanup\r\n };\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (isCompanyMember) {\r\n getUserType();\r\n }\r\n }, [isCompanyMember]);\r\n return (\r\n \r\n {/* An alert message */}\r\n\r\n {!isLogIn && error && (\r\n \r\n {message}\r\n \r\n ×\r\n \r\n \r\n )}\r\n\r\n {/* login and logout forms */}\r\n\r\n \r\n \r\n {isLoading && }\r\n\r\n {!userAuth && (\r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n )}\r\n {/*{userAuth && (\r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n )}*/}\r\n \r\n \r\n \r\n );\r\n};\r\nexport default Test;\r\n","import React, { useEffect, useState, useMemo, useContext } from \"react\";\r\nimport TableContainer from \"../Tables/TableContainer\";\r\nimport { Container, Row, Col, Button } from \"reactstrap\";\r\nimport \"bootstrap/dist/css/bootstrap.min.css\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport { URL } from \"../../config/Constants\";\r\nimport {\r\n SelectColumnFilter,\r\n DefaultColumnFilter,\r\n Filter,\r\n} from \"../Tables/TableFilters\";\r\nimport ModalForm from \"../UI/Bootstrap/ModalForm/ModalForm\";\r\nimport classes from \"../Meetings/Meetings.module.css\";\r\nimport Spinner from \"../UI/Spinner/Spinner\";\r\nimport { format } from \"date-fns\";\r\nimport UserContext from \"../../context/UserContext\";\r\nimport { tokenConfig } from \"../../config/tokenConfig\";\r\n\r\nconst CommitteeMemberRequests = () => {\r\n const userContext = useContext(UserContext);\r\n const [data, setData] = useState([]);\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [error, setError] = useState(null);\r\n const history = useHistory();\r\n\r\n const headersInputConfig = [\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"text\",\r\n id: \"committeeMeetingID\",\r\n name: \"committeeMeetingID\",\r\n disabled: true,\r\n },\r\n labelConfig: {\r\n dbField: \"committeeMeetingID\",\r\n title: \"Meeting ID\",\r\n },\r\n wrapperConfig: {\r\n display: \"none\",\r\n },\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"date\",\r\n id: \"committeeMeetingDate\",\r\n name: \"committeeMeetingDate\",\r\n },\r\n labelConfig: {\r\n dbField: \"committeeMeetingDate\",\r\n title: \"Date\",\r\n },\r\n wrapperConfig: {},\r\n },\r\n {\r\n elementType: \"input\",\r\n elementConfig: {\r\n type: \"text\",\r\n id: \"committeeLocation\",\r\n name: \"committeeLocation\",\r\n },\r\n labelConfig: {\r\n dbField: \"committeeLocation\",\r\n title: \"Location\",\r\n },\r\n wrapperConfig: {},\r\n },\r\n {\r\n elementType: \"textarea\",\r\n elementConfig: {\r\n id: \"committeeSubject\",\r\n name: \"committeeSubject\",\r\n rows: 4,\r\n cols: 50,\r\n },\r\n labelConfig: {\r\n dbField: \"committeeSubject\",\r\n title: \"Subject\",\r\n },\r\n wrapperConfig: {},\r\n },\r\n ];\r\n\r\n // Those columns dont need to be changed in every rerendering\r\n // but, because it is an array, and arry it is an object. it will be rendered.\r\n // we are avoiding it, by using \"useMemo\" hook, that doing mempoization to this const.\r\n const columns = useMemo(\r\n () => [\r\n {\r\n id: \"requestNumber\",\r\n Header: \"Submission number\",\r\n accessor: \"requestNumber\",\r\n disableSortBy: true,\r\n Filter: DefaultColumnFilter,\r\n },\r\n {\r\n id: \"requestSubNumber\",\r\n Header: \"Submission sub-number\",\r\n accessor: \"requestSubNumber\",\r\n disableSortBy: true,\r\n Filter: DefaultColumnFilter,\r\n },\r\n {\r\n id: \"finalRequestStatusDescription\",\r\n Header: \"Request status\",\r\n accessor: \"finalRequestStatusDescription\",\r\n disableSortBy: true,\r\n Filter: SelectColumnFilter,\r\n },\r\n ],\r\n []\r\n );\r\n\r\n const doFetch = async () => {\r\n setIsLoading(true);\r\n setError(null);\r\n try {\r\n const customHeaders = tokenConfig(userContext.token);\r\n const response = await fetch(`${URL}/requests/CommitteeMemberRequests`, {\r\n headers: customHeaders.headers,\r\n });\r\n if (!response.ok) {\r\n throw new Error(\"something went wrong!\");\r\n }\r\n const body = await response.json();\r\n\r\n const requests = body.results;\r\n //console.log(requests);\r\n setData(requests);\r\n } catch (error) {\r\n setError(error.message);\r\n }\r\n setIsLoading(false);\r\n };\r\n\r\n useEffect(() => {\r\n doFetch();\r\n }, []);\r\n\r\n const updateState = (item) => {\r\n const itemIndex = data.findIndex(\r\n (row) =>\r\n row.requestNumber === item.requestNumber &&\r\n row.requestSubNumber === item.requestSubNumber\r\n );\r\n const newArray = [\r\n // destructure all items from beginning to the indexed item\r\n ...data.slice(0, itemIndex),\r\n // add the updated item to the array\r\n item,\r\n // add the rest of the items to the array from the index after the replaced item\r\n ...data.slice(itemIndex + 1),\r\n ];\r\n setData(newArray);\r\n };\r\n\r\n const addItemToState = (item) => {\r\n setData((prevState) => [...prevState, item]);\r\n };\r\n\r\n const deleteItemFromState = (id) => {\r\n var updatedData = [...data];\r\n\r\n const updatedItems = updatedData.filter(\r\n (item) => item.committeeMeetingID !== id\r\n );\r\n setData(updatedItems);\r\n };\r\n\r\n const handleRoute = () => {\r\n history.push(\"/form\");\r\n };\r\n return (\r\n \r\n \r\n \r\n

    Request to review

    \r\n \r\n
    \r\n \r\n \r\n {!isLoading && data.length > 0 && (\r\n \r\n )}\r\n {!isLoading && data.length === 0 && !error && (\r\n

    Requests not found

    \r\n )}\r\n {isLoading && }\r\n {!isLoading && error &&

    {error}

    }\r\n \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default CommitteeMemberRequests;\r\n","import React, { useContext } from \"react\";\r\nimport { Route, Link, Redirect, Switch } from \"react-router-dom\";\r\nimport { uniqBy } from \"lodash\";\r\nimport rolesConfig from \"../config/rolesConfig\";\r\nimport * as Routes from \"../config/componentsRoutes\";\r\nimport UserContext from \"../context/UserContext\";\r\n\r\nconst PrivateAndPublicRoutes = ({ match }) => {\r\n // TODO: Replace hardcoded roles with redux, localStorage, or get from server.\r\n\r\n const userContext = useContext(UserContext);\r\n const userRole = userContext.userRole;\r\n\r\n const roles = [\r\n //user roles + concatinate common role\r\n ...[userRole],\r\n \"common\",\r\n ];\r\n\r\n let allowedRoutes = roles.reduce((acc, role) => {\r\n return [...acc, ...rolesConfig[role].routes];\r\n }, []);\r\n\r\n // For removing duplicate entries.\r\n allowedRoutes = uniqBy(allowedRoutes, \"component\");\r\n return (\r\n
    \r\n \r\n {/*Private routes*/}\r\n {allowedRoutes.map(({ component, url }) => (\r\n \r\n ))}\r\n {/*Public routes*/}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n );\r\n};\r\n\r\nexport default PrivateAndPublicRoutes;\r\n","import React, { Component, Suspense, useState, useEffect } from \"react\";\r\nimport Footer from \"./components/Footer/Footer\";\r\nimport Container from \"./components/Container/Container\";\r\nimport NavbarAndDrawer from \"./components/NavbarAndDrawer/NavbarAndDrawer\";\r\nimport DrawerNavigation from \"./components/DrawerNavigation/DrawerNavigation\";\r\nimport Backdrop from \"./components/UI/Backdrop/Backdrop\";\r\nimport PrivateAndPublicRoutes from \"./routes/PrivateAndPublicRoutes\";\r\nimport { UserProvider } from \"./context/UserContext\";\r\n\r\nimport classes from \"./App.module.css\";\r\nimport { useHistory } from \"react-router-dom\";\r\n\r\nfunction App() {\r\n const [showSideDrawer, setShowSideDrawer] = useState(false);\r\n const [authed, setAuthed] = useState(false);\r\n const [userRole, setUserRole] = useState(\"NoUser\");\r\n const [token, setToken] = useState(localStorage.getItem(\"token\"));\r\n const [userBguName, setUserBguName] = useState(\"\");\r\n const history = useHistory();\r\n\r\n const sideDrawerClosedHandler = () => {\r\n setShowSideDrawer(false);\r\n };\r\n\r\n const sideDrawerToggleHandler = () => {\r\n setShowSideDrawer((prevState) => {\r\n return !prevState;\r\n });\r\n };\r\n\r\n const handleChange = (role, auth, name, token) => {\r\n setUserRole(role);\r\n setAuthed(auth);\r\n setUserBguName(name);\r\n setToken(token);\r\n\r\n if (!auth) {\r\n //there was a logout action\r\n history.push(\"/home\");\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n console.log(token);\r\n }, []);\r\n\r\n return (\r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/*
    */}\r\n
    \r\n \r\n );\r\n}\r\n\r\nexport default App;\r\n","const reportWebVitals = onPerfEntry => {\r\n if (onPerfEntry && onPerfEntry instanceof Function) {\r\n import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {\r\n getCLS(onPerfEntry);\r\n getFID(onPerfEntry);\r\n getFCP(onPerfEntry);\r\n getLCP(onPerfEntry);\r\n getTTFB(onPerfEntry);\r\n });\r\n }\r\n};\r\n\r\nexport default reportWebVitals;\r\n","import { createBrowserHistory } from \"history\";\r\n\r\nexport default createBrowserHistory({});\r\n","import React from \"react\";\r\nimport ReactDOM from \"react-dom\";\r\nimport App from \"./App\";\r\nimport reportWebVitals from \"./reportWebVitals\";\r\nimport axios from \"axios\";\r\nimport {BrowserRouter} from 'react-router-dom';\r\nimport 'bootstrap/dist/css/bootstrap.min.css';\r\nimport \"./index.css\";\r\nimport history from \"./utils/history\";\r\n\r\nconst app=(\r\n \r\n \r\n \r\n)\r\n\r\nReactDOM.render(\r\n \r\n {app}\r\n ,\r\n document.getElementById(\"root\")\r\n);\r\n\r\n// If you want to start measuring performance in your app, pass a function\r\n// to log results (for example: reportWebVitals(console.log))\r\n// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals\r\nreportWebVitals();\r\n\r\n\r\n//define global url for all requests in the project:\r\n/*axios.defaults.baseURL = \"https://jsonplaceholder.typicode.com\";\r\naxios.defaults.headers.common[\"Authoorization\"] = \"Auth Token\";\r\naxios.defaults.headers.post[\"Content-Type\"] = \"application/json\";*/\r\n\r\n//for request error\r\n/*axios.interceptors.request.use(\r\n (request) => {\r\n //edit the request\r\n //always return it, otherwise tou block it from happen\r\n return request;\r\n },\r\n (error) => {\r\n return Promise.reject(error);\r\n }\r\n);\r\n\r\n//for response error\r\naxios.interceptors.response.use(\r\n (response) => {\r\n //edit the response\r\n //always return it, otherwise tou block it from happen\r\n return response;\r\n },\r\n (error) => {\r\n return Promise.reject(error);\r\n }\r\n);*/","// extracted by mini-css-extract-plugin\nmodule.exports = {\"main\":\"CertificationPdf_main__3RDAr\",\"container\":\"CertificationPdf_container__1CT6S\",\"inputfield\":\"CertificationPdf_inputfield__WwbjL\",\"header\":\"CertificationPdf_header__31LbT\",\"headerImgDiv\":\"CertificationPdf_headerImgDiv__AyE8N\",\"headerImg\":\"CertificationPdf_headerImg__fvH3M\",\"GolanImg\":\"CertificationPdf_GolanImg__1nH2U\",\"footer\":\"CertificationPdf_footer__3rbiX\",\"headerTitle\":\"CertificationPdf_headerTitle__Ypm-w\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"header\":\"Home_header__2R5Ew\",\"imgDiv\":\"Home_imgDiv__3cus2\",\"txtBox\":\"Home_txtBox__18J6i\",\"newSiteAlert\":\"Home_newSiteAlert__1s382\",\"readMoreBtn\":\"Home_readMoreBtn__13jvL\",\"middle\":\"Home_middle__b1zRo\",\"committee\":\"Home_committee__3YHRG\",\"row\":\"Home_row__1PhQ2\",\"committeCol\":\"Home_committeCol__2I2eI\",\"helsinkiBtn\":\"Home_helsinkiBtn__1Ccaa\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"container\":\"Footer_container__3GtkE\",\"pt_3\":\"Footer_pt_3__3zCMb\",\"py_3\":\"Footer_py_3__2cdHZ\",\"pb_3\":\"Footer_pb_3__3xxUd\",\"yui-skin-sam\":\"Footer_yui-skin-sam__1r2Qw\",\"yui-layout\":\"Footer_yui-layout__s3WeM\",\"path-mod-chat-gui_ajax\":\"Footer_path-mod-chat-gui_ajax__2TikZ\",\"chat-input-area\":\"Footer_chat-input-area__1k9r-\",\"py-3\":\"Footer_py-3__2WTR3\",\"textDark\":\"Footer_textDark__A-bQZ\",\"page_footer\":\"Footer_page_footer__bvNxv\",\"bgu_info\":\"Footer_bgu_info__jIdd6\",\"custom_content\":\"Footer_custom_content__2wNPM\",\"moodle_info\":\"Footer_moodle_info__HE8r6\",\"footer_content\":\"Footer_footer_content__1EAGU\",\"bgu_icon\":\"Footer_bgu_icon__3fnYe\",\"icon\":\"Footer_icon__2S4vY\",\"footercontact\":\"Footer_footercontact__2lKur\",\"fa_globe\":\"Footer_fa_globe__1_rK9\",\"fa_envelope\":\"Footer_fa_envelope__27Zve\",\"fa_envelope-square\":\"Footer_fa_envelope-square__AhiaP\",\"fa_envelope-open\":\"Footer_fa_envelope-open__3LBnK\",\"fa_envelope-open-o\":\"Footer_fa_envelope-open-o__2Iml9\",\"fa_envelope-o\":\"Footer_fa_envelope-o__QU42R\",\"fa_mobile_phone\":\"Footer_fa_mobile_phone__1Q1ej\",\"fa-mobile\":\"Footer_fa-mobile__2A8rA\",\"moodleicon\":\"Footer_moodleicon__1plsY\",\"navbar_nav\":\"Footer_navbar_nav__3xS6x\",\"nav-link\":\"Footer_nav-link__3GNey\",\"dropdown-menu\":\"Footer_dropdown-menu__38A7p\",\"navbar-expand\":\"Footer_navbar-expand__351dQ\",\"navbar-light\":\"Footer_navbar-light__8m9O_\",\"disabled\":\"Footer_disabled__1SwcQ\",\"show\":\"Footer_show__1IBJh\",\"active\":\"Footer_active__3vCFj\",\"navbar-dark\":\"Footer_navbar-dark__1JjmA\",\"coursecontrols\":\"Footer_coursecontrols__3P3Pk\",\"nav-item\":\"Footer_nav-item__2FTld\",\"navbar-fhs\":\"Footer_navbar-fhs__TAqwM\",\"footer_rights\":\"Footer_footer_rights__1agQM\",\"navbar\":\"Footer_navbar__2VbJM\",\"navbar_bgu\":\"Footer_navbar_bgu__1bcBK\",\"btn\":\"Footer_btn__1xJLd\",\"nav_link\":\"Footer_nav_link__3j7BG\",\"fa\":\"Footer_fa__1rqzu\",\"fa_fw\":\"Footer_fa_fw__2nK4p\",\"sr_only\":\"Footer_sr_only__1utdt\",\"navbar-expand-xl\":\"Footer_navbar-expand-xl__2LPSe\",\"container-fluid\":\"Footer_container-fluid__20hOK\",\"container-sm\":\"Footer_container-sm__dw2ce\",\"container-md\":\"Footer_container-md__2f3Bl\",\"container-lg\":\"Footer_container-lg__1bNOM\",\"container-xl\":\"Footer_container-xl__2tvyd\",\"navbar-collapse\":\"Footer_navbar-collapse__2dQqF\",\"navbar-toggler\":\"Footer_navbar-toggler__2RHlE\",\"navbar-expand-lg\":\"Footer_navbar-expand-lg__2edgU\",\"d_md_none\":\"Footer_d_md_none__2RlS3\",\"d-md-inline\":\"Footer_d-md-inline__3y2lm\",\"d-md-inline-block\":\"Footer_d-md-inline-block__2O6my\",\"d-md-block\":\"Footer_d-md-block__3ujzt\",\"d-md-table\":\"Footer_d-md-table__7y_FJ\",\"d-md-table-row\":\"Footer_d-md-table-row__3tz22\",\"d-md-table-cell\":\"Footer_d-md-table-cell__1BDi4\",\"d-md-flex\":\"Footer_d-md-flex__2Z_pC\",\"d-md-inline-flex\":\"Footer_d-md-inline-flex__1qfBq\",\"navbar-expand-md\":\"Footer_navbar-expand-md__pTM31\",\"list-unstyled\":\"Footer_list-unstyled__O9yIB\",\"drawer_ease\":\"Footer_drawer_ease__22Pmv\",\"drawer_open_left\":\"Footer_drawer_open_left__2Fvb8\",\"drawer_open_right\":\"Footer_drawer_open_right__2b-By\",\"navbar-expand-sm\":\"Footer_navbar-expand-sm__3hXQR\"};","const rolesConfig = {\r\n //role name as a key.\r\n HeadOfCommittee: {\r\n routes: [\r\n {\r\n component: \"Meetings\",\r\n url: \"/committeeMeetings\",\r\n },\r\n {\r\n component: \"Members\",\r\n url: \"/committeeMembers\",\r\n },\r\n {\r\n component: \"AdminRequests\",\r\n url: \"/adminRequests\",\r\n },\r\n {\r\n component: \"Requests\",\r\n url: \"/requests\",\r\n },\r\n {\r\n component: \"Form\",\r\n url: \"/form\",\r\n },\r\n ],\r\n },\r\n MemberOfCommittee: {\r\n routes: [\r\n { component: \"MemberRequests\", url: \"/memberRequests\" },\r\n {\r\n component: \"Requests\",\r\n url: \"/requests\",\r\n },\r\n {\r\n component: \"Form\",\r\n url: \"/form\",\r\n },\r\n ],\r\n },\r\n AdministrativeAssistant: {\r\n routes: [\r\n {\r\n component: \"Meetings\",\r\n url: \"/committeeMeetings\",\r\n },\r\n {\r\n component: \"Members\",\r\n url: \"/committeeMembers\",\r\n },\r\n {\r\n component: \"AdminRequests\",\r\n url: \"/adminRequests\",\r\n },\r\n {\r\n component: \"Requests\",\r\n url: \"/requests\",\r\n },\r\n {\r\n component: \"Form\",\r\n url: \"/form\",\r\n },\r\n ],\r\n },\r\n Researcher: {\r\n routes: [\r\n {\r\n component: \"Requests\",\r\n url: \"/requests\",\r\n },\r\n {\r\n component: \"Form\",\r\n url: \"/form\",\r\n },\r\n ],\r\n },\r\n NoUser: {\r\n routes: [],\r\n },\r\n common: {\r\n routes: [\r\n /*{\r\n component: \"CommonRoute\",\r\n url: \"/common-component\",\r\n },*/\r\n ],\r\n },\r\n};\r\n\r\nmodule.exports = rolesConfig;\r\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"nav_drawer\":\"DrawerNavigation_nav_drawer__1ibh9\",\"list_group\":\"DrawerNavigation_list_group__3Sp1V\",\"list_group_item\":\"DrawerNavigation_list_group_item__1wdJA\",\"list_group_item_action\":\"DrawerNavigation_list_group_item_action__c68B2\",\"ml_0\":\"DrawerNavigation_ml_0__Q2rdR\",\"mx_0\":\"DrawerNavigation_mx_0__2nNBr\",\"media\":\"DrawerNavigation_media__340yQ\",\"icon\":\"DrawerNavigation_icon__12Xa1\",\"fa_fw\":\"DrawerNavigation_fa_fw__1OOUl\",\"fa\":\"DrawerNavigation_fa__3-rCg\",\"closed\":\"DrawerNavigation_closed__3ew5U\",\"media_body\":\"DrawerNavigation_media_body__1fkfh\",\"fixed_top\":\"DrawerNavigation_fixed_top__1EoxC\",\"navbar\":\"DrawerNavigation_navbar__1x69l\",\"navbar_teacher\":\"DrawerNavigation_navbar_teacher__1cuQY\",\"navbar_expand\":\"DrawerNavigation_navbar_expand__3vRe2\",\"moodle_has_zindex\":\"DrawerNavigation_moodle_has_zindex__Yc_oz\",\"navbar_student\":\"DrawerNavigation_navbar_student__3Uket\",\"d_print_none\":\"DrawerNavigation_d_print_none__J5bE9\"};","const degrees = [\r\n {\"key\":\"Select\",\"value\":\"Select\"},\r\n {\"key\":\"B.A\",\"value\":\"B.A\"},\r\n {\"key\": \"B.Arch.\",\"value\":\"B.Arch.\"},\r\n {\"key\":\"B.Des.\",\"value\":\"B.Des.\"},\r\n {\"key\":\"B.Ed.\",\"value\":\"B.Ed.\"},\r\n {\"key\":\"B.Sc.\",\"value\":\"B.Sc.\"},\r\n {\"key\":\"B.Sw.\",\"value\":\"B.Sw.\"},\r\n {\"key\":\"B.Tech.\",\"value\":\"B.Tech.\"},\r\n {\"key\":\"Dr.\",\"value\":\"Dr.\"},\r\n {\"key\":\"D.M.D\",\"value\":\"D.M.D\"},\r\n {\"key\":\"Doctornat\",\"value\":\"Doctornat\"},\r\n {\"key\":\"D.V.M\",\"value\":\"D.V.M\"},\r\n {\"key\":\"J.S.D\",\"value\":\"J.S.D\"},\r\n {\"key\":\"LL.B\",\"value\":\"LL.B\"},\r\n {\"key\":\"LL.D\",\"value\":\"LL.D\"},\r\n {\"key\":\"LL.M\",\"value\":\"LL.M\"},\r\n {\"key\":\"M.A\",\"value\":\"M.A\"},\r\n {\"key\":\"M.B.A\",\"value\":\"M.B.A\"},\r\n {\"key\":\"M.D\",\"value\":\"M.D\"},\r\n {\"key\":\"M.E\",\"value\":\"M.E\"},\r\n {\"key\":\"M.Ed.\",\"value\":\"M.Ed.\"},\r\n {\"key\":\"M.Sc\",\"value\":\"M.Sc\"},\r\n {\"key\":\"M.S.P.H\",\"value\":\"M.S.P.H\"},\r\n {\"key\":\"Ph.D\",\"value\":\"Ph.D\"},\r\n {\"key\":\"Post.Doc.\",\"value\":\"Post.Doc.\"},\r\n {\"key\":\"Prof.\",\"value\":\"Prof.\"},\r\n];\r\n\r\nmodule.exports = degrees;\r\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"ColAddItem\":\"Meetings_ColAddItem__1uIE9\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"nav_drawer\":\"NavigationItems_nav_drawer__8QgOL\",\"list_group\":\"NavigationItems_list_group__3h8c_\",\"list_group_item\":\"NavigationItems_list_group_item__2NwMO\",\"list_group_item_action\":\"NavigationItems_list_group_item_action__3rp3b\",\"ml_0\":\"NavigationItems_ml_0__3Lxpz\",\"mx_0\":\"NavigationItems_mx_0__2AgrY\",\"media\":\"NavigationItems_media__2_H4g\",\"icon\":\"NavigationItems_icon__2En1p\",\"fa_fw\":\"NavigationItems_fa_fw__lC6Qz\",\"fa\":\"NavigationItems_fa__3Yuz0\",\"closed\":\"NavigationItems_closed__Pj431\",\"media_body\":\"NavigationItems_media_body__2QuGZ\",\"fixed_top\":\"NavigationItems_fixed_top__AuJGT\",\"navbar\":\"NavigationItems_navbar__1MRlZ\",\"navbar_teacher\":\"NavigationItems_navbar_teacher__3hwdK\",\"navbar_expand\":\"NavigationItems_navbar_expand__10HKX\",\"moodle_has_zindex\":\"NavigationItems_moodle_has_zindex__1Xevt\",\"navbar_student\":\"NavigationItems_navbar_student__3-U4B\",\"d_print_none\":\"NavigationItems_d_print_none__30DIw\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"nav_drawer\":\"NavigationItem_nav_drawer__3YV6V\",\"list_group\":\"NavigationItem_list_group__2BdVm\",\"list_group_item\":\"NavigationItem_list_group_item__g0zmY\",\"list_group_item_action\":\"NavigationItem_list_group_item_action__2Ymtv\",\"list_group_item_action_active\":\"NavigationItem_list_group_item_action_active__2GUbL\",\"ml_0\":\"NavigationItem_ml_0__2exOZ\",\"mx_0\":\"NavigationItem_mx_0__3YIW6\",\"media\":\"NavigationItem_media__hX5nz\",\"icon\":\"NavigationItem_icon__18ZIg\",\"fa_fw\":\"NavigationItem_fa_fw__1sxDq\",\"fa\":\"NavigationItem_fa__2S1VL\",\"closed\":\"NavigationItem_closed__3_BO7\",\"media_body\":\"NavigationItem_media_body__1OAgT\",\"fixed_top\":\"NavigationItem_fixed_top__fWvqK\",\"navbar\":\"NavigationItem_navbar__3FO5V\",\"navbar_teacher\":\"NavigationItem_navbar_teacher__1YgmF\",\"navbar_expand\":\"NavigationItem_navbar_expand__3d8Rs\",\"moodle_has_zindex\":\"NavigationItem_moodle_has_zindex__1zsrN\",\"navbar_student\":\"NavigationItem_navbar_student__vv17W\",\"d_print_none\":\"NavigationItem_d_print_none__32SNQ\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"root\":\"PdfContainer_root__E098g\",\"pdf_body\":\"PdfContainer_pdf_body__2EWFX\",\"flex-column\":\"PdfContainer_flex-column__1piPd\",\"flex-row\":\"PdfContainer_flex-row__3z8UU\",\"flex\":\"PdfContainer_flex__3ozRc\",\"header-bar\":\"PdfContainer_header-bar__3NDtB\",\"header\":\"PdfContainer_header__1q-r3\",\"pdf_toolbar\":\"PdfContainer_pdf_toolbar__3MMUM\",\"pdf_container\":\"PdfContainer_pdf_container__aUKyt\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"root\":\"PdfContainerForCertification_root__11_2X\",\"pdf_body\":\"PdfContainerForCertification_pdf_body__1tNpt\",\"flex-column\":\"PdfContainerForCertification_flex-column__3ngPA\",\"flex-row\":\"PdfContainerForCertification_flex-row__11Rp6\",\"flex\":\"PdfContainerForCertification_flex__3vtx_\",\"header-bar\":\"PdfContainerForCertification_header-bar__3hDP1\",\"header\":\"PdfContainerForCertification_header__3uLQ9\",\"pdf_toolbar\":\"PdfContainerForCertification_pdf_toolbar__z3DjL\",\"pdf_container\":\"PdfContainerForCertification_pdf_container__8bkmx\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"page_wrapper\":\"Container_page_wrapper__3bJ6I\",\"page\":\"Container_page__7vyUP\",\"container_fluid\":\"Container_container_fluid__2SkrQ\",\"container_sm\":\"Container_container_sm__1fvfA\",\"container_md\":\"Container_container_md__3jM7C\",\"container_lg\":\"Container_container_lg__1mKqv\",\"container_xl\":\"Container_container_xl__3QiPY\",\"row\":\"Container_row__wKuTK\",\"page_content\":\"Container_page_content__20OGl\",\"drawer_ease\":\"Container_drawer_ease__2l2JX\",\"drawer_open_left\":\"Container_drawer_open_left__QeJVJ\",\"drawer_open_right\":\"Container_drawer_open_right__36Wlr\",\"learningcontent\":\"Container_learningcontent__3Yggq\"};","const statusMapForEdit = {\r\n \"Submitted\": true,\r\n \"Under review\": true,\r\n \"Revision is requested\": false,\r\n \"Approved\": true,\r\n \"Withdrawn by researcher\": true,\r\n \"Rejected\": true,\r\n \"Not completed\": false,\r\n \"New sub-request was created\":true\r\n};\r\n\r\nconst statusMapForDelete = {\r\n \"Submitted\": false,\r\n \"Under review\": true,\r\n \"Revision is requested\": true,\r\n \"Approved\": true,\r\n \"Withdrawn by researcher\": true,\r\n \"Rejected\": true,\r\n \"Not completed\": false, \r\n \"New sub-request was created\":true\r\n\r\n};\r\nmodule.exports = {\r\n statusMapForEdit: statusMapForEdit,\r\n statusMapForDelete: statusMapForDelete,\r\n};\r\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"navbar\":\"NavbarAndDrawer_navbar__3Odsy\",\"navbar_bgu\":\"NavbarAndDrawer_navbar_bgu__1159t\",\"logo\":\"NavbarAndDrawer_logo__2XuTN\",\"nav_link\":\"NavbarAndDrawer_nav_link__FQTje\",\"btn_secondary\":\"NavbarAndDrawer_btn_secondary__2KofO\",\"fixed_top\":\"NavbarAndDrawer_fixed_top__vUZug\",\"navbar_expand\":\"NavbarAndDrawer_navbar_expand__5yhoR\",\"mr_3\":\"NavbarAndDrawer_mr_3__1N-AY\",\"mx_3\":\"NavbarAndDrawer_mx_3__iHBgI\",\"mr_1\":\"NavbarAndDrawer_mr_1__2ozZd\",\"mx_1\":\"NavbarAndDrawer_mx_1__3IGKH\",\"d_inline_block\":\"NavbarAndDrawer_d_inline_block__xaznS\",\"page_local_mydashboard_index\":\"NavbarAndDrawer_page_local_mydashboard_index__2U0uW\",\"btn\":\"NavbarAndDrawer_btn__eiiQI\",\"aabtn\":\"NavbarAndDrawer_aabtn__cCY_D\",\"btn_link\":\"NavbarAndDrawer_btn_link__2y2Fd\",\"atto_link_button\":\"NavbarAndDrawer_atto_link_button__3Nnq4\",\"list_group_item_action\":\"NavbarAndDrawer_list_group_item_action__HzrK_\",\"sr_only-_focusable\":\"NavbarAndDrawer_sr_only-_focusable__1nEwV\",\"dropdown_toggle\":\"NavbarAndDrawer_dropdown_toggle__16hWL\",\"modal_dialog\":\"NavbarAndDrawer_modal_dialog__k3hzF\",\"moodle_dialogue_base\":\"NavbarAndDrawer_moodle_dialogue_base__1rqFP\",\"closebutton\":\"NavbarAndDrawer_closebutton__3RCVw\",\"close\":\"NavbarAndDrawer_close__2Ob_u\",\"form_autocomplete_selection\":\"NavbarAndDrawer_form_autocomplete_selection__Fe-0b\",\"disabled\":\"NavbarAndDrawer_disabled__12JaP\",\"navbar_fhs\":\"NavbarAndDrawer_navbar_fhs__1ezYW\",\"navbar_brand\":\"NavbarAndDrawer_navbar_brand__lTbVw\",\"d_none\":\"NavbarAndDrawer_d_none__3PEHE\",\"coursecontrols\":\"NavbarAndDrawer_coursecontrols__3nFOs\",\"nav_item\":\"NavbarAndDrawer_nav_item__18dWg\",\"d_flex\":\"NavbarAndDrawer_d_flex__3HKBB\",\"navbar_nav\":\"NavbarAndDrawer_navbar_nav__3WKUX\",\"ml_auto\":\"NavbarAndDrawer_ml_auto__1G0pl\",\"mx_auto\":\"NavbarAndDrawer_mx_auto__1d5-x\",\"align_items_center\":\"NavbarAndDrawer_align_items_center__3eU2u\",\"nav\":\"NavbarAndDrawer_nav__2T3kQ\",\"loginform\":\"NavbarAndDrawer_loginform__1fgy-\",\"form_group\":\"NavbarAndDrawer_form_group__hf70t\",\"carousel_indicators\":\"NavbarAndDrawer_carousel_indicators__PzsOI\",\"dropdown_menu\":\"NavbarAndDrawer_dropdown_menu__2XUK5\",\"form_control\":\"NavbarAndDrawer_form_control__3JE2U\",\"modal_content\":\"NavbarAndDrawer_modal_content__-pzsA\",\"popover\":\"NavbarAndDrawer_popover__1ZMJj\",\"toast\":\"NavbarAndDrawer_toast__3RIx7\",\"btn_primary\":\"NavbarAndDrawer_btn_primary__2DUD_\",\"btn_block\":\"NavbarAndDrawer_btn_block__1ZdOs\",\"fa\":\"NavbarAndDrawer_fa__1XgfE\",\"icon\":\"NavbarAndDrawer_icon__2vTLV\",\"fa_fw\":\"NavbarAndDrawer_fa_fw__1I3p0\",\"navbar_teacher\":\"NavbarAndDrawer_navbar_teacher__3obiC\",\"moodle_has_zindex\":\"NavbarAndDrawer_moodle_has_zindex__17Byu\",\"navbar_student\":\"NavbarAndDrawer_navbar_student__24cZb\",\"fa_navicon\":\"NavbarAndDrawer_fa_navicon__27Bx7\",\"fa_reorder\":\"NavbarAndDrawer_fa_reorder__3OVXY\",\"fa_bars\":\"NavbarAndDrawer_fa_bars__lI_xG\",\"d_lg_block\":\"NavbarAndDrawer_d_lg_block__z6rDf\",\"has_logo\":\"NavbarAndDrawer_has_logo__38NtI\",\"float_sm_left\":\"NavbarAndDrawer_float_sm_left__3sQf2\",\"d_sm_inline\":\"NavbarAndDrawer_d_sm_inline__1ofz1\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"lds_spinner\":\"TinySpinner_lds_spinner__3WkD-\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"Backdrop\":\"Backdrop_Backdrop__ZExGp\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"Loader\":\"Spinner_Loader__qwU1K\",\"load2\":\"Spinner_load2__1eVF-\"};","var JSZipUtils = {};\r\n// just use the responseText with xhr1, response with xhr2.\r\n// The transformation doesn't throw away high-order byte (with responseText)\r\n// because JSZip handles that case. If not used with JSZip, you may need to\r\n// do it, see https://developer.mozilla.org/En/Using_XMLHttpRequest#Handling_binary_data\r\nJSZipUtils._getBinaryFromXHR = function (xhr) {\r\n // for xhr.responseText, the 0xFF mask is applied by JSZip\r\n return xhr.response || xhr.responseText;\r\n};\r\n\r\n// taken from jQuery\r\nfunction createStandardXHR() {\r\n try {\r\n return new window.XMLHttpRequest();\r\n } catch (e) {}\r\n}\r\n\r\nfunction createActiveXHR() {\r\n try {\r\n return new window.ActiveXObject(\"Microsoft.XMLHTTP\");\r\n } catch (e) {}\r\n}\r\n\r\n// Create the request object\r\nvar createXHR =\r\n typeof window !== \"undefined\" && window.ActiveXObject\r\n ? /* Microsoft failed to properly\r\n * implement the XMLHttpRequest in IE7 (can't request local files),\r\n * so we use the ActiveXObject when it is available\r\n * Additionally XMLHttpRequest can be disabled in IE7/IE8 so\r\n * we need a fallback.\r\n */\r\n function () {\r\n return createStandardXHR() || createActiveXHR();\r\n }\r\n : // For all other browsers, use the standard XMLHttpRequest object\r\n createStandardXHR;\r\n\r\n/**\r\n * @param {string} path The path to the resource to GET.\r\n * @param {function|{callback: function, progress: function}} options\r\n * @return {Promise|undefined} If no callback is passed then a promise is returned\r\n */\r\nJSZipUtils.getBinaryContent = function (path, options) {\r\n var promise, resolve, reject;\r\n var callback;\r\n\r\n if (!options) {\r\n options = {};\r\n }\r\n\r\n // backward compatible callback\r\n if (typeof options === \"function\") {\r\n callback = options;\r\n options = {};\r\n } else if (typeof options.callback === \"function\") {\r\n // callback inside options object\r\n callback = options.callback;\r\n }\r\n\r\n if (!callback && typeof Promise !== \"undefined\") {\r\n promise = new Promise(function (_resolve, _reject) {\r\n resolve = _resolve;\r\n reject = _reject;\r\n });\r\n } else {\r\n resolve = function (data) {\r\n callback(null, data);\r\n };\r\n reject = function (err) {\r\n callback(err, null);\r\n };\r\n }\r\n\r\n /*\r\n * Here is the tricky part : getting the data.\r\n * In firefox/chrome/opera/... setting the mimeType to 'text/plain; charset=x-user-defined'\r\n * is enough, the result is in the standard xhr.responseText.\r\n * cf https://developer.mozilla.org/En/XMLHttpRequest/Using_XMLHttpRequest#Receiving_binary_data_in_older_browsers\r\n * In IE <= 9, we must use (the IE only) attribute responseBody\r\n * (for binary data, its content is different from responseText).\r\n * In IE 10, the 'charset=x-user-defined' trick doesn't work, only the\r\n * responseType will work :\r\n * http://msdn.microsoft.com/en-us/library/ie/hh673569%28v=vs.85%29.aspx#Binary_Object_upload_and_download\r\n *\r\n * I'd like to use jQuery to avoid this XHR madness, but it doesn't support\r\n * the responseType attribute : http://bugs.jquery.com/ticket/11461\r\n */\r\n try {\r\n var xhr = createXHR();\r\n\r\n xhr.open(\"GET\", path, true);\r\n\r\n // recent browsers\r\n if (\"responseType\" in xhr) {\r\n xhr.responseType = \"arraybuffer\";\r\n }\r\n\r\n // older browser\r\n if (xhr.overrideMimeType) {\r\n xhr.overrideMimeType(\"text/plain; charset=x-user-defined\");\r\n }\r\n\r\n xhr.onreadystatechange = function (event) {\r\n // use `xhr` and not `this`... thanks IE\r\n if (xhr.readyState === 4) {\r\n if (xhr.status === 200 || xhr.status === 0) {\r\n try {\r\n resolve(JSZipUtils._getBinaryFromXHR(xhr));\r\n } catch (err) {\r\n reject(new Error(err));\r\n }\r\n } else {\r\n reject(\r\n new Error(\r\n \"Ajax error for \" +\r\n path +\r\n \" : \" +\r\n this.status +\r\n \" \" +\r\n this.statusText\r\n )\r\n );\r\n }\r\n }\r\n };\r\n\r\n if (options.progress) {\r\n xhr.onprogress = function (e) {\r\n options.progress({\r\n path: path,\r\n originalEvent: e,\r\n percent: (e.loaded / e.total) * 100,\r\n loaded: e.loaded,\r\n total: e.total,\r\n });\r\n };\r\n }\r\n\r\n xhr.send();\r\n } catch (e) {\r\n reject(new Error(e), null);\r\n }\r\n\r\n // returns a promise or undefined depending on whether a callback was\r\n // provided\r\n return promise;\r\n};\r\n\r\n// export\r\nmodule.exports = JSZipUtils;\r\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"ColAddItem\":\"Members_ColAddItem__fQPyo\"};","const Roles=[\r\n{\"key\":\"Select\",\"value\":\"Select\"},\r\n{\"key\":1,\"value\":\"Head of committee\"},\r\n{\"key\":2,\"value\":\"Member of committee\"},\r\n{\"key\":3,\"value\":\"Administrative assistant\"},\r\n]\r\n\r\nmodule.exports=Roles;","// extracted by mini-css-extract-plugin\nmodule.exports = {\"col-md-2\":\"App_col-md-2__3vz3Y\",\"page_wrapper\":\"App_page_wrapper__1hLd_\",\"pt_3\":\"App_pt_3__38rF_\",\"py_3\":\"App_py_3__gTU6J\",\"pb_3\":\"App_pb_3__4v7pn\",\"textDark\":\"App_textDark__2e-ea\"};","export const NUM_OF_STEPS = 11;\r\nexport const COMMITTEE_ID = 1; //The whole site is for comiites and mettings of \"Athic Committe\"=number 1\r\nexport const URL = \"https://apps4cloud.bgu.ac.il/bguEthics/api\";\r\n"],"sourceRoot":""}