{"version":3,"sources":["fetch.js","MemberRegistrationForm.js","NonMemberRegistrationForm.js","BrainCanvas.js","MemberEditForm.js","index.js"],"names":["baseUrl","CheckMember","actionName","data","successCallback","failCallback","grecaptcha","window","ready","execute","action","then","token","axios","post","response","catch","error","console","log","checkMemberFunc","theme","createMuiTheme","paper","marginTop","display","flexDirection","alignItems","avatar","margin","spacing","backgroundColor","palette","secondary","main","form","width","submit","MemberRegistrationForm","props","AnchorElement","textDecoration","color","ModalLabel","fontSize","fontFamily","fontWeight","lineHeight","letterSpacing","ModalLabelSmall","textAlign","ModalBody","marginLeft","marginRight","left","right","position","top","padding","MainContainer","background","bottom","getData","errorCallback","result","onWindowResize","innerWidth","innerHeight","state","giv","sur","tle","email","userDetails","username","password","isShowBadAuthModal","isShowTbSfn","newValue","this","setState","prevState","tbSfnCode","target","value","element","preventDefault","memberDetailsForm","document","getElementById","first_name","last_name","title","member_type","toLowerCase","setAttribute","showBadAuthModal","addEventListener","Container","style","component","maxWidth","CssBaseline","src","Avatar","Typography","variant","id","method","onSubmit","submitRegistration","TextField","name","type","Grid","container","item","xs","onChange","tbUsernameChanged","autoComplete","required","fullWidth","label","autoFocus","tbPasswordChanged","href","Button","Modal","open","onClose","event","badAuthModalClosed","onClick","closeBadAuthModal","React","PureComponent","BrainCanvas","clock","THREE","scene","camera","renderer","alpha","aspect","updateProjectionMatrix","setSize","autoClear","setClearColor","mount","appendChild","domElement","requestAnimationFrame","animate","OrbitControls","z","dirLight","set","add","ambient","light","GLTFLoader","load","gltf","brainMesh","texture","flipY","material","map","opacity","transparent","skinning","traverse","o","isMesh","castShadow","receiveShadow","mixer","animations","forEach","clip","clipAction","play","xhr","ref","getDelta","update","render","Component","App","basename","rootElement","ReactDOM"],"mappings":"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","file":"static/js/main.f36525c2.chunk.js","sourcesContent":["import React, {useEffect, useState} from \"react\";\r\nimport axios from 'axios';\r\n\r\nconst baseUrl = 'https://membershipapi.kenes.com/';\r\n// const baseUrl = 'https://84.110.107.18:5001/';\r\n\r\n\r\nexport const GET = url => {\r\n return axios.get(`${baseUrl}/${url}`);\r\n}\r\n\r\nconst headers = {};\r\n// const headers = {\r\n// 'Accept': 'application/json',\r\n// // 'Content-Type': 'application/json'\r\n// };\r\n// const headers = { 'Content-Type': 'application/json' }\r\n\r\n\r\nconst checkMemberFunc = (actionName, data, successCallback, failCallback) => {\r\n\r\n\r\n /* let formData = new FormData();\r\n formData.append('token', data.token);\r\n axios({\r\n url: `${baseUrl}api/values/${actionName}`,\r\n method: 'post',\r\n headers: {\r\n 'Content-Type': 'multipart/form-data'\r\n },\r\n data: formData\r\n }).then((result) => {\r\n debugger;\r\n /!*this.$message({\r\n message: 'Request success',\r\n type: 'success',\r\n showClose: true\r\n });*!/\r\n }).catch((err) => {\r\n debugger;\r\n /!*this.$message({\r\n message: 'Request failed',\r\n type: 'error',\r\n showClose: true\r\n });*!/\r\n })*/\r\n\r\n /*\r\n fetch(`${baseUrl}api/values/${actionName}`, {mode: 'cors'})\r\n .then(response => response.clone().json())\r\n .then(jsonBody => { console.log(jsonBody); return jsonBody; })\r\n .then(result => console.log(result));\r\n */\r\n\r\n return axios\r\n .post(`${baseUrl}api/values/${actionName}`, data)\r\n .then(response => {\r\n successCallback(response);\r\n })\r\n .catch(function (error) {\r\n failCallback(error);\r\n console.log(error);\r\n });\r\n debugger;\r\n\r\n /*\r\n return fetch(`${baseUrl}api/values/${actionName}`, {\r\n mode: 'cors',\r\n method: 'POST',\r\n headers: {\r\n // 'Content-Type': 'application/json'\r\n },\r\n body: JSON.stringify(data)\r\n })\r\n .then((item) => {\r\n debugger;\r\n successCallback(item);\r\n })\r\n .catch((error) => {\r\n debugger;\r\n failCallback(error);\r\n });\r\n */\r\n\r\n\r\n}\r\n\r\nexport const CheckMember = (actionName, data, successCallback, failCallback) => {\r\n\r\n if (typeof grecaptcha !== 'undefined') {\r\n window.grecaptcha.ready(function () {\r\n window.grecaptcha.execute('6Lc4pIUUAAAAAG-r76A6RhcMTiI4Bh0JKi1Mv7qW', {action: 'submit'})\r\n // window.grecaptcha.enterprise.execute('6Lc4pIUUAAAAAG-r76A6RhcMTiI4Bh0JKi1Mv7qW', {action: 'submit'})\r\n .then(function (token) {\r\n debugger;\r\n if (data == null) {\r\n data = {};\r\n }\r\n data['token'] = token;\r\n checkMemberFunc(actionName, data, successCallback, failCallback);\r\n });\r\n });\r\n }\r\n}\r\n","import React, {Component, useEffect, useState} from \"react\";\r\nimport {CheckMember} from './fetch.js';\r\nimport Autocomplete from '@material-ui/lab/Autocomplete';\r\n\r\nimport {\r\n Avatar, Box, Button, Checkbox,\r\n Container, createMuiTheme,\r\n CssBaseline,\r\n FormControlLabel,\r\n Grid, Hidden, Link,\r\n makeStyles, Modal,\r\n TextField,\r\n Typography\r\n} from \"@material-ui/core\";\r\nimport {Copyright} from \"@material-ui/icons\";\r\n\r\nconst theme = createMuiTheme();\r\n\r\n/*\r\nlet MainContainer = {\r\n position: 'absolute',\r\n background: 'white',\r\n top: '2em',\r\n left: '2em',\r\n bottom: '2em',\r\n}\r\n*/\r\n\r\nconst paper = {\r\n marginTop: '20px',\r\n // marginTop: theme.spacing(8),\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'center',\r\n}\r\nconst avatar = {\r\n margin: theme.spacing(1),\r\n backgroundColor: theme.palette.secondary.main,\r\n}\r\nconst form = {\r\n width: '100%', // Fix IE 11 issue.\r\n marginTop: theme.spacing(3),\r\n}\r\nconst submit = {\r\n margin: theme.spacing(3, 0, 2),\r\n}\r\n\r\nconst countryToFlag = (isoCode) => {\r\n return typeof String.fromCodePoint !== 'undefined'\r\n ? isoCode\r\n .toUpperCase()\r\n .replace(/./g, (char) => String.fromCodePoint(char.charCodeAt(0) + 127397))\r\n : isoCode;\r\n}\r\n\r\nexport default class MemberRegistrationForm extends React.PureComponent {\r\n\r\n AnchorElement = {\r\n textDecoration: 'none',\r\n color: 'blue'\r\n }\r\n\r\n ModalLabel = {\r\n fontSize: '1.5rem',\r\n fontFamily: '\"Roboto\", \"Helvetica\", \"Arial\", sans-serif',\r\n fontWeight: '400',\r\n lineHeight: '1.334',\r\n letterSpacing: '0em',\r\n margin: '0',\r\n }\r\n\r\n ModalLabelSmall = {\r\n color: 'gray',\r\n textAlign: 'left',\r\n fontSize: '1.2rem',\r\n fontFamily: '\"Roboto\", \"Helvetica\", \"Arial\", sans-serif',\r\n fontWeight: '400',\r\n lineHeight: '1.334',\r\n letterSpacing: '0em',\r\n margin: '0',\r\n }\r\n\r\n ModalBody = {\r\n backgroundColor: 'white',\r\n width: '33vw',\r\n marginLeft: 'auto',\r\n marginRight: 'auto',\r\n left: '0',\r\n right: '0',\r\n textAlign: 'center',\r\n position: 'absolute',\r\n top: '20%',\r\n padding: '20px',\r\n }\r\n\r\n MainContainer = {\r\n position: 'absolute',\r\n background: 'white',\r\n top: '2em',\r\n left: '2em',\r\n bottom: '2em',\r\n }\r\n\r\n\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n giv: '',\r\n sur: '',\r\n tle: '',\r\n email: '',\r\n userDetails: {},\r\n username: '',\r\n password: '',\r\n isShowBadAuthModal: false,\r\n isShowTbSfn: false,\r\n };\r\n\r\n }\r\n\r\n getData = (actionName, data, successCallback, errorCallback) => {\r\n CheckMember(\r\n actionName,\r\n data,\r\n (result) => {\r\n successCallback(result);\r\n },\r\n (error) => {\r\n errorCallback(error);\r\n });\r\n }\r\n\r\n badAuthModalClosed(newValue) {\r\n\r\n if (newValue == 'escapeKeyDown' || newValue == 'backdropClick') {\r\n\r\n this.setState(\r\n prevState => {\r\n const {isShowBadAuthModal: prevIsShowBadAuthModal} = prevState;\r\n return {\r\n isShowBadAuthModal: false,\r\n };\r\n },\r\n () => {\r\n // this.setSomeOtherState();\r\n }\r\n );\r\n\r\n }\r\n\r\n }\r\n\r\n tbSfnChanged(newValue) {\r\n\r\n if (newValue == null) {\r\n return;\r\n }\r\n\r\n this.setState(\r\n prevState => {\r\n const {tbSfnCode: prevIsShow} = prevState;\r\n return {\r\n tbSfnCode: newValue.target.value,\r\n };\r\n },\r\n () => {\r\n // this.setSomeOtherState();\r\n }\r\n );\r\n\r\n }\r\n\r\n showBadAuthModal() {\r\n\r\n this.setState(\r\n prevState => {\r\n const {isShowBadAuthModal: prevIsShowBadAuthModal} = prevState;\r\n return {\r\n isShowBadAuthModal: true,\r\n };\r\n },\r\n () => {\r\n // this.setSomeOtherState();\r\n }\r\n );\r\n\r\n }\r\n\r\n closeBadAuthModal(element) {\r\n this.setState(\r\n prevState => {\r\n const {isShowBadAuthModal: prevIsShowBadAuthModal} = prevState;\r\n return {\r\n isShowBadAuthModal: false,\r\n };\r\n },\r\n () => {\r\n // this.setSomeOtherState();\r\n }\r\n );\r\n\r\n }\r\n\r\n submitRegistration(newValue) {\r\n\r\n newValue.preventDefault();\r\n\r\n this.getData('checkFensExternalLogin', {username: this.state.username, password: this.state.password},\r\n (result) => {\r\n debugger;\r\n if (result.data) {\r\n const memberDetailsForm = document.getElementById('memberDetailsForm');\r\n // this.state.userDetails = result.data;\r\n\r\n this.setState(\r\n prevState => {\r\n const {giv: prevIsShow} = prevState;\r\n return {\r\n giv: result.data.first_name,\r\n };\r\n },\r\n () => {\r\n // this.setSomeOtherState();\r\n }\r\n );\r\n\r\n this.setState(\r\n prevState => {\r\n const {sur: prevIsShow} = prevState;\r\n return {\r\n sur: result.data.last_name,\r\n };\r\n },\r\n () => {\r\n // this.setSomeOtherState();\r\n }\r\n );\r\n\r\n this.setState(\r\n prevState => {\r\n const {tle: prevIsShow} = prevState;\r\n return {\r\n tle: result.data.title,\r\n };\r\n },\r\n () => {\r\n // this.setSomeOtherState();\r\n }\r\n );\r\n\r\n this.setState(\r\n prevState => {\r\n const {email: prevIsShow} = prevState;\r\n return {\r\n email: result.data.email,\r\n };\r\n },\r\n () => {\r\n // this.setSomeOtherState();\r\n }\r\n );\r\n\r\n /*document.getElementById('giv').value = this.state.userDetails.first_name;\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n*/\r\n // memberDetailsForm.setAttribute('action', 'https://kenes.eventsair.com/KenesSiteRedirect/fens2021/fensredirect/contactpost/data');\r\n\r\n // memberDetailsForm.setAttribute('action', 'https://kenes.eventsair.com/KenesSiteRedirect/fens22/appfensredirect/contactpost/data');\r\n\r\n if(result.data.member_type.toLowerCase() == 'associate')\r\n {\r\n memberDetailsForm.setAttribute('action', 'https://kenes.eventsair.com/KenesSiteRedirect/fens22/appassociate--memberredirect/contactpost/data');\r\n }\r\n if(result.data.member_type.toLowerCase() == 'full')\r\n {\r\n memberDetailsForm.setAttribute('action', 'https://kenes.eventsair.com/KenesSiteRedirect/fens22/appfensredirect/contactpost/data');\r\n }\r\n\r\n memberDetailsForm.submit();\r\n } else {\r\n this.showBadAuthModal();\r\n }\r\n },\r\n (error) => {\r\n debugger;\r\n this.showBadAuthModal();\r\n }\r\n );\r\n }\r\n\r\n onWindowResize = () => {\r\n if (window.innerWidth < 500 || window.innerHeight < 500) {\r\n this.MainContainer = {\r\n position: 'unset',\r\n background: 'white',\r\n top: '2em',\r\n left: '2em',\r\n bottom: '2em',\r\n }\r\n this.ModalBody = {\r\n backgroundColor: 'white',\r\n width: '77vw',\r\n marginLeft: 'auto',\r\n marginRight: 'auto',\r\n left: '0',\r\n right: '0',\r\n textAlign: 'center',\r\n position: 'absolute',\r\n top: '33%',\r\n padding: '10px',\r\n }\r\n\r\n }\r\n }\r\n\r\n render() {\r\n\r\n window.addEventListener('resize', this.onWindowResize, false);\r\n\r\n if (window.innerWidth < 500 || window.innerHeight < 500) {\r\n this.MainContainer = {\r\n position: 'unset',\r\n background: 'white',\r\n top: '2em',\r\n left: '2em',\r\n bottom: '2em',\r\n }\r\n this.ModalBody = {\r\n backgroundColor: 'white',\r\n width: '77vw',\r\n marginLeft: 'auto',\r\n marginRight: 'auto',\r\n left: '0',\r\n right: '0',\r\n textAlign: 'center',\r\n position: 'absolute',\r\n top: '33%',\r\n padding: '10px',\r\n }\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 Register\r\n \r\n
{\r\n this.submitRegistration(element);\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n {/**/}\r\n {/**/}\r\n {/**/}\r\n {/**/}\r\n {/**/}\r\n {/**/}\r\n {/**/}\r\n {/**/}\r\n {/**/}\r\n {/**/}\r\n {/**/}\r\n {/**/}\r\n {/**/}\r\n\r\n \r\n \r\n {\r\n this.tbUsernameChanged(element);\r\n }}\r\n autoComplete=\"username\"\r\n variant=\"outlined\"\r\n required\r\n fullWidth\r\n label=\"Username\"\r\n autoFocus\r\n />\r\n \r\n \r\n {\r\n this.tbPasswordChanged(element);\r\n }}\r\n variant=\"outlined\"\r\n required\r\n fullWidth\r\n label=\"Password\"\r\n autoComplete=\"password\"\r\n />\r\n Forgot password?\r\n\r\n

\r\n If you are having issues registering for the Forum as a FENS member, please ensure you are using your FENS ID in the Username field to register, not your email.\r\n Your FENS ID is visible on your fens.org profile page, on the My FENS membership tab, in the upper right corner (example: FENS00001).\r\n

\r\n

\r\n If you still cannot register, try resetting your password on fens.org, and then try to register for the Forum again using your FENS ID and updated password.\r\n If none of these steps solved the issue, please contact the FENS administration at office@fens.org .\r\n

\r\n
\r\n {/*\r\n }\r\n label=\"I want to receive inspiration, marketing promotions and updates via email.\"\r\n />\r\n */}\r\n
\r\n \r\n Submit\r\n \r\n {/*\r\n \r\n \r\n Already have an account? Sign in\r\n \r\n \r\n */}\r\n \r\n
\r\n {\r\n this.badAuthModalClosed(newValue);\r\n }}\r\n aria-labelledby=\"simple-modal-title\"\r\n aria-describedby=\"simple-modal-description\"\r\n >\r\n
\r\n {/**/}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

Incorrect Username or Password

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

According to the membership details provided by the FENS Society, you currently do not appear as an active FENS member, or your login details are incorrect. If you forgot your login credentials you may retrieve these here.

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

You may also contact FENS society services at: office@fens.org to verify the status of your membership, or alternatively register as a non-member via the online registration link here

\r\n
\r\n
\r\n
\r\n {\r\n this.closeBadAuthModal(element);\r\n }}\r\n >\r\n Ok\r\n \r\n
\r\n
\r\n \r\n {/*\r\n \r\n */}\r\n
\r\n );\r\n }\r\n\r\n\r\n tbUsernameChanged(newValue) {\r\n\r\n if (newValue == null) {\r\n return;\r\n }\r\n\r\n this.setState(\r\n prevState => {\r\n const {username: prevIsShow} = prevState;\r\n return {\r\n username: newValue.target.value,\r\n };\r\n },\r\n () => {\r\n // this.setSomeOtherState();\r\n }\r\n );\r\n\r\n }\r\n\r\n tbPasswordChanged(newValue) {\r\n\r\n if (newValue == null) {\r\n return;\r\n }\r\n\r\n this.setState(\r\n prevState => {\r\n const {password: prevIsShow} = prevState;\r\n return {\r\n password: newValue.target.value,\r\n };\r\n },\r\n () => {\r\n // this.setSomeOtherState();\r\n }\r\n );\r\n\r\n }\r\n}\r\n\r\n// export default RegistrationForm;\r\n","import React, {Component, useEffect, useState} from \"react\";\r\nimport {CheckMember} from './fetch.js';\r\nimport Autocomplete from '@material-ui/lab/Autocomplete';\r\n\r\nimport {\r\n Avatar, Box, Button, Checkbox,\r\n Container, createMuiTheme,\r\n CssBaseline,\r\n FormControlLabel,\r\n Grid, Hidden, Link,\r\n makeStyles, Modal,\r\n TextField,\r\n Typography\r\n} from \"@material-ui/core\";\r\nimport {Copyright} from \"@material-ui/icons\";\r\n\r\nconst theme = createMuiTheme();\r\n\r\n/*\r\nlet MainContainer = {\r\n position: 'absolute',\r\n background: 'white',\r\n top: '2em',\r\n left: '2em',\r\n bottom: '2em',\r\n}\r\n*/\r\n\r\nconst paper = {\r\n marginTop: '20px',\r\n // marginTop: theme.spacing(8),\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'center',\r\n}\r\nconst avatar = {\r\n margin: theme.spacing(1),\r\n backgroundColor: theme.palette.secondary.main,\r\n}\r\nconst form = {\r\n width: '100%', // Fix IE 11 issue.\r\n marginTop: theme.spacing(3),\r\n}\r\nconst submit = {\r\n margin: theme.spacing(3, 0, 2),\r\n}\r\n\r\nconst countryToFlag = (isoCode) => {\r\n return typeof String.fromCodePoint !== 'undefined'\r\n ? isoCode\r\n .toUpperCase()\r\n .replace(/./g, (char) => String.fromCodePoint(char.charCodeAt(0) + 127397))\r\n : isoCode;\r\n}\r\n\r\nexport default class NonMemberRegistrationForm extends React.PureComponent {\r\n\r\n ModalLabel = {\r\n fontSize: '1.5rem',\r\n fontFamily: '\"Roboto\", \"Helvetica\", \"Arial\", sans-serif',\r\n fontWeight: '400',\r\n lineHeight: '1.334',\r\n letterSpacing: '0em',\r\n margin: '0',\r\n }\r\n\r\n ModalLabelSmall = {\r\n fontSize: '1.2rem',\r\n fontFamily: '\"Roboto\", \"Helvetica\", \"Arial\", sans-serif',\r\n fontWeight: '400',\r\n lineHeight: '1.334',\r\n letterSpacing: '0em',\r\n margin: '0',\r\n }\r\n\r\n ModalBody = {\r\n backgroundColor: 'white',\r\n width: '25vw',\r\n marginLeft: 'auto',\r\n marginRight: 'auto',\r\n left: '0',\r\n right: '0',\r\n textAlign: 'center',\r\n position: 'absolute',\r\n top: '33%',\r\n padding: '10px',\r\n }\r\n\r\n MainContainer = {\r\n position: 'absolute',\r\n background: 'white',\r\n top: '2em',\r\n left: '2em',\r\n bottom: '2em',\r\n }\r\n\r\n\r\n constructor(props) {\r\n super(props);\r\n debugger;\r\n this.state = {\r\n isShowBadAuthModal: false,\r\n isShowTbSfn: false,\r\n countries: []\r\n };\r\n\r\n this.getData('getSfnAllCountryList', {},\r\n (result) => {\r\n this.setState(\r\n prevState => {\r\n const {isShowTbSfn: prevIsShow} = prevState;\r\n return {\r\n countries: result.data,\r\n };\r\n },\r\n () => {\r\n // this.setSomeOtherState();\r\n }\r\n );\r\n },\r\n (error) => {\r\n }\r\n );\r\n\r\n }\r\n\r\n getData = (actionName, data, successCallback, errorCallback) => {\r\n CheckMember(\r\n actionName,\r\n data,\r\n (result) => {\r\n successCallback(result);\r\n },\r\n (error) => {\r\n errorCallback(error);\r\n debugger;\r\n });\r\n }\r\n\r\n badAuthModalClosed(newValue) {\r\n debugger;\r\n if(newValue == 'escapeKeyDown' || newValue == 'backdropClick'){\r\n\r\n this.setState(\r\n prevState => {\r\n const {isShowBadAuthModal: prevIsShowBadAuthModal} = prevState;\r\n return {\r\n isShowBadAuthModal: false,\r\n };\r\n },\r\n () => {\r\n // this.setSomeOtherState();\r\n }\r\n );\r\n\r\n }\r\n\r\n }\r\n\r\n tbSfnChanged(newValue) {\r\n\r\n if (newValue == null) {\r\n return;\r\n }\r\n\r\n this.setState(\r\n prevState => {\r\n const {tbSfnCode: prevIsShow} = prevState;\r\n return {\r\n tbSfnCode: newValue.target.value,\r\n };\r\n },\r\n () => {\r\n // this.setSomeOtherState();\r\n }\r\n );\r\n\r\n }\r\n\r\n countryChanged(newValue) {\r\n\r\n if (newValue == null) {\r\n return;\r\n }\r\n this.getData('checkIfCountryIsSfn', {countryName: newValue.Name},\r\n (result) => {\r\n\r\n this.setState(\r\n prevState => {\r\n const {isShowTbSfn: prevIsShow} = prevState;\r\n return {\r\n isShowTbSfn: result.data,\r\n };\r\n },\r\n () => {\r\n // this.setSomeOtherState();\r\n }\r\n );\r\n\r\n },\r\n (error) => {\r\n });\r\n }\r\n\r\n countryTextChanged(newValue) {\r\n this.setState(\r\n prevState => {\r\n const {isShowTbSfn: prevIsShow} = prevState;\r\n return {\r\n isShowTbSfn: false,\r\n };\r\n },\r\n () => {\r\n // this.setSomeOtherState();\r\n }\r\n );\r\n\r\n }\r\n\r\n askUserIfHeWantsToContinueAsNonMember() {\r\n\r\n this.setState(\r\n prevState => {\r\n const {isShowBadAuthModal: prevIsShowBadAuthModal} = prevState;\r\n return {\r\n isShowBadAuthModal: true,\r\n };\r\n },\r\n () => {\r\n // this.setSomeOtherState();\r\n }\r\n );\r\n\r\n // var r = window.confirm('Incorrect SFN number do you want to continue as non-member?');\r\n // if (r == true) {\r\n // this.redirectToUrl('https://kenes.eventsair.com/KenesSiteRedirect/fens22/appnonmemberredirect/contactpost/data');\r\n // }\r\n\r\n }\r\n\r\n closeBadAuthModal(element) {\r\n this.setState(\r\n prevState => {\r\n const {isShowBadAuthModal: prevIsShowBadAuthModal} = prevState;\r\n return {\r\n isShowBadAuthModal: false,\r\n };\r\n },\r\n () => {\r\n // this.setSomeOtherState();\r\n }\r\n );\r\n\r\n }\r\n\r\n redirectToNoneMemberClicked(element) {\r\n this.redirectToUrl('https://kenes.eventsair.com/KenesSiteRedirect/fens22/appnonmemberredirect/contactpost/data');\r\n }\r\n\r\n redirectToUrl(url) {\r\n const memberDetailsForm = document.getElementById('memberDetailsForm');\r\n memberDetailsForm.setAttribute('action', url);\r\n memberDetailsForm.submit();\r\n }\r\n\r\n submitRegistration(newValue) {\r\n newValue.preventDefault();\r\n if (this.state.tbSfnCode == null || this.state.tbSfnCode == '') {\r\n this.redirectToUrl('https://kenes.eventsair.com/KenesSiteRedirect/fens22/appnonmemberredirect/contactpost/data');\r\n } else {\r\n this.getData('checkFensNonMember', {customerId: this.state.tbSfnCode},\r\n (result) => {\r\n debugger;\r\n if (result.data.FensResponse.SuccessFlag == 'True') {\r\n this.redirectToUrl('https://kenes.eventsair.com/KenesSiteRedirect/fens22/appsfnredirect/contactpost/data');\r\n } else {\r\n this.askUserIfHeWantsToContinueAsNonMember();\r\n }\r\n },\r\n (error) => {\r\n this.askUserIfHeWantsToContinueAsNonMember();\r\n }\r\n );\r\n }\r\n }\r\n\r\n onWindowResize = () => {\r\n if (window.innerWidth < 500 || window.innerHeight < 500) {\r\n this.MainContainer = {\r\n position: 'unset',\r\n background: 'white',\r\n top: '2em',\r\n left: '2em',\r\n bottom: '2em',\r\n }\r\n this.ModalBody = {\r\n backgroundColor: 'white',\r\n width: '77vw',\r\n marginLeft: 'auto',\r\n marginRight: 'auto',\r\n left: '0',\r\n right: '0',\r\n textAlign: 'center',\r\n position: 'absolute',\r\n top: '33%',\r\n padding: '10px',\r\n }\r\n }\r\n }\r\n\r\n render() {\r\n\r\n window.addEventListener( 'resize', this.onWindowResize, false );\r\n\r\n if (window.innerWidth < 500 || window.innerHeight < 500) {\r\n this.MainContainer = {\r\n position: 'unset',\r\n background: 'white',\r\n top: '2em',\r\n left: '2em',\r\n bottom: '2em',\r\n }\r\n this.ModalBody = {\r\n backgroundColor: 'white',\r\n width: '77vw',\r\n marginLeft: 'auto',\r\n marginRight: 'auto',\r\n left: '0',\r\n right: '0',\r\n textAlign: 'center',\r\n position: 'absolute',\r\n top: '33%',\r\n padding: '10px',\r\n }\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 Register\r\n \r\n
{\r\n this.submitRegistration(element);\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n {\r\n this.countryChanged(newValue);\r\n }}\r\n onInputChange={(event, newValue) => {\r\n this.countryTextChanged(newValue);\r\n }}\r\n autoHighlight\r\n getOptionLabel={(option) => option.Name}\r\n renderOption={(option) => (\r\n \r\n {/*{countryToFlag(option.Name)}*/}\r\n {option.Name}\r\n \r\n )}\r\n renderInput={(params) => (\r\n \r\n )}\r\n />\r\n \r\n {this.state.isShowTbSfn == true &&\r\n \r\n {\r\n this.tbSfnChanged(element);\r\n }}\r\n variant=\"outlined\"\r\n required\r\n fullWidth\r\n id=\"snfCode\"\r\n label=\"Sfn Code\"\r\n helperText=\"Please provide your SfN number. If none put '0'\"\r\n name=\"Sfn Code\"\r\n autoComplete=\"Sfn Code\"\r\n />\r\n {/**/}\r\n }\r\n {/*\r\n }\r\n label=\"I want to receive inspiration, marketing promotions and updates via email.\"\r\n />\r\n */}\r\n \r\n \r\n Submit\r\n \r\n {/*\r\n \r\n \r\n Already have an account? Sign in\r\n \r\n \r\n */}\r\n \r\n
\r\n {\r\n this.badAuthModalClosed(newValue);\r\n }}\r\n aria-labelledby=\"simple-modal-title\"\r\n aria-describedby=\"simple-modal-description\"\r\n >\r\n
\r\n {/**/}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

Incorrect SFN number

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

Do you want to continue as non-member?

\r\n
\r\n
\r\n
\r\n {\r\n this.redirectToNoneMemberClicked(element);\r\n }}\r\n >\r\n Yes\r\n \r\n \r\n {\r\n this.closeBadAuthModal(element);\r\n }}\r\n >\r\n No\r\n \r\n
\r\n
\r\n \r\n {/*\r\n \r\n */}\r\n
\r\n );\r\n }\r\n\r\n\r\n\r\n}\r\n\r\n// export default RegistrationForm;\r\n","import React, {Component} from 'react';\r\nimport * as THREE from \"three\";\r\nimport {GLTFLoader} from 'three/examples/jsm/loaders/GLTFLoader';\r\nimport {OrbitControls} from \"three/examples/jsm/controls/OrbitControls\";\r\nimport './index.css';\r\n\r\nclass BrainCanvas extends Component {\r\n\r\n clock = new THREE.Clock();\r\n mixer;\r\n brainMesh;\r\n scene = new THREE.Scene();\r\n camera = new THREE.PerspectiveCamera(\r\n 75,\r\n window.innerWidth / window.innerHeight,\r\n 0.1,\r\n 1000\r\n );\r\n renderer = new THREE.WebGLRenderer({ alpha: true });\r\n\r\n componentDidMount() {\r\n\r\n if (window.innerWidth < 500 || window.innerHeight < 500) {\r\n this.renderer.setSize( window.innerWidth, window.innerHeight/4 );\r\n this.camera = new THREE.PerspectiveCamera(\r\n 75,\r\n window.innerWidth / window.innerHeight*4,\r\n 0.1,\r\n 1000\r\n );\r\n }\r\n else\r\n {\r\n this.renderer.setSize( window.innerWidth, window.innerHeight );\r\n }\r\n this.renderer.autoClear = false;\r\n this.renderer.setClearColor(0x000000, 0.0);\r\n this.mount.appendChild(this.renderer.domElement);\r\n\r\n // this.scene.background = new THREE.Color( 0xb30000 ); // #e60000\r\n\r\n /* const textureLoader = new THREE.TextureLoader();\r\n textureLoader.load(backgroundImage , (texture) =>\r\n {\r\n this.scene.background = texture;\r\n });*/\r\n\r\n window.requestAnimationFrame(() => this.animate());\r\n\r\n // animate();\r\n\r\n const controls = new OrbitControls(this.camera, this.renderer.domElement);\r\n\r\n this.camera.position.z = 120;\r\n // this.camera.position.x = -50;\r\n /*const hemiLight = new THREE.HemisphereLight(0xffffff, 0x444444);\r\n hemiLight.position.set(0, 20, 0);\r\n this.scene.add(hemiLight);*/\r\n\r\n const dirLight = new THREE.DirectionalLight(0xffffff);\r\n dirLight.position.set(0, 0, -90);\r\n this.scene.add(dirLight);\r\n\r\n\r\n const ambient = new THREE.AmbientLight(0x404040, 2);\r\n this.scene.add(ambient);\r\n\r\n const light = new THREE.DirectionalLight(0xffffff, 2);\r\n light.position.set(50, 50, 100);\r\n this.scene.add(light);\r\n\r\n\r\n const loader = new GLTFLoader();\r\n\r\n loader.load(\r\n 'https://onlineforms.kenes.com/assets/models/Brain/scene.gltf',\r\n // '../assets/models/Brain/scene.gltf',\r\n (gltf) => {\r\n\r\n this.brainMesh = gltf.scene;\r\n this.brainMesh.position.set(0, -20, 0);\r\n this.scene.add(this.brainMesh);\r\n\r\n const texture = new THREE.TextureLoader().load(\r\n // './assets/models/' + item.textureFileName\r\n 'https://onlineforms.kenes.com/assets/models/Brain/textures/08_-_Default_baseColor.png',\r\n );\r\n texture.flipY = false;\r\n const material = new THREE.MeshPhongMaterial({\r\n map: texture,\r\n color: 0xffffff,\r\n opacity: 0.7, transparent: true,\r\n skinning: true\r\n });\r\n this.brainMesh.traverse(o => {\r\n if (o.isMesh) {\r\n o.castShadow = true;\r\n o.receiveShadow = true;\r\n o.material = material;\r\n }\r\n });\r\n\r\n this.mixer = new THREE.AnimationMixer(gltf.scene);\r\n gltf.animations.forEach((clip) => {\r\n this.mixer.clipAction(clip).play();\r\n });\r\n\r\n },\r\n (xhr) => {\r\n // called while loading is progressing\r\n // console.log(`${(xhr.loaded / xhr.total * 100)}% loaded`);\r\n },\r\n (error) => {\r\n\r\n // called when loading has errors\r\n console.error('An error happened', error);\r\n },\r\n );\r\n\r\n window.addEventListener( 'resize', this.onWindowResize, false );\r\n\r\n }\r\n\r\n onWindowResize = () => {\r\n\r\n if(this.renderer){\r\n if (window.innerWidth < 500 || window.innerHeight < 500) {\r\n if(this.camera){\r\n this.camera.aspect = window.innerWidth / window.innerHeight*4;\r\n this.camera.updateProjectionMatrix();\r\n }\r\n this.renderer.setSize( window.innerWidth, window.innerHeight/4 );\r\n }\r\n else\r\n {\r\n if(this.camera){\r\n this.camera.aspect = window.innerWidth / window.innerHeight;\r\n this.camera.updateProjectionMatrix();\r\n }\r\n this.renderer.setSize( window.innerWidth, window.innerHeight );\r\n }\r\n }\r\n }\r\n\r\n render() {\r\n return
(this.mount = ref)}/>;\r\n }\r\n\r\n animate() {\r\n\r\n window.requestAnimationFrame(() => this.animate());\r\n\r\n /*if (this.brainMesh) {\r\n this.brainMesh.rotation.x += 0.003;\r\n this.brainMesh.rotation.y += 0.003;\r\n }*/\r\n\r\n var delta = this.clock.getDelta();\r\n // console.log(delta);\r\n if (this.mixer) this.mixer.update(0.005);\r\n\r\n this.renderer.render(this.scene, this.camera);\r\n };\r\n\r\n}\r\n\r\nexport default BrainCanvas;\r\n","import React, {Component, useEffect, useState} from \"react\";\r\nimport {CheckMember} from './fetch.js';\r\nimport Autocomplete from '@material-ui/lab/Autocomplete';\r\n\r\nimport {\r\n Avatar, Box, Button, Checkbox,\r\n Container, createMuiTheme,\r\n CssBaseline,\r\n FormControlLabel,\r\n Grid, Hidden, Link,\r\n makeStyles, Modal,\r\n TextField,\r\n Typography\r\n} from \"@material-ui/core\";\r\nimport {Copyright} from \"@material-ui/icons\";\r\n\r\nconst theme = createMuiTheme();\r\n\r\n/*\r\nlet MainContainer = {\r\n position: 'absolute',\r\n background: 'white',\r\n top: '2em',\r\n left: '2em',\r\n bottom: '2em',\r\n}\r\n*/\r\n\r\nconst paper = {\r\n marginTop: '20px',\r\n // marginTop: theme.spacing(8),\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'center',\r\n}\r\nconst avatar = {\r\n margin: theme.spacing(1),\r\n backgroundColor: theme.palette.secondary.main,\r\n}\r\nconst form = {\r\n width: '100%', // Fix IE 11 issue.\r\n marginTop: theme.spacing(3),\r\n}\r\nconst submit = {\r\n margin: theme.spacing(3, 0, 2),\r\n}\r\n\r\nconst countryToFlag = (isoCode) => {\r\n return typeof String.fromCodePoint !== 'undefined'\r\n ? isoCode\r\n .toUpperCase()\r\n .replace(/./g, (char) => String.fromCodePoint(char.charCodeAt(0) + 127397))\r\n : isoCode;\r\n}\r\n\r\nexport default class MemberEditForm extends React.PureComponent {\r\n\r\n ModalLabel = {\r\n fontSize: '1.5rem',\r\n fontFamily: '\"Roboto\", \"Helvetica\", \"Arial\", sans-serif',\r\n fontWeight: '400',\r\n lineHeight: '1.334',\r\n letterSpacing: '0em',\r\n margin: '0',\r\n }\r\n\r\n ModalLabelSmall = {\r\n fontSize: '1.2rem',\r\n fontFamily: '\"Roboto\", \"Helvetica\", \"Arial\", sans-serif',\r\n fontWeight: '400',\r\n lineHeight: '1.334',\r\n letterSpacing: '0em',\r\n margin: '0',\r\n }\r\n\r\n ModalBody = {\r\n backgroundColor: 'white',\r\n width: '25vw',\r\n marginLeft: 'auto',\r\n marginRight: 'auto',\r\n left: '0',\r\n right: '0',\r\n textAlign: 'center',\r\n position: 'absolute',\r\n top: '33%',\r\n padding: '10px',\r\n }\r\n\r\n MainContainer = {\r\n position: 'absolute',\r\n background: 'white',\r\n top: '2em',\r\n left: '2em',\r\n bottom: '2em',\r\n }\r\n\r\n\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n memberId: '',\r\n memberEmail: '',\r\n isShowBadAuthModal: false,\r\n isShowTbSfn: false,\r\n };\r\n\r\n }\r\n\r\n getData = (actionName, data, successCallback, errorCallback) => {\r\n CheckMember(\r\n actionName,\r\n data,\r\n (result) => {\r\n successCallback(result);\r\n },\r\n (error) => {\r\n errorCallback(error);\r\n });\r\n }\r\n\r\n badAuthModalClosed(newValue) {\r\n\r\n if (newValue == 'escapeKeyDown' || newValue == 'backdropClick') {\r\n\r\n this.setState(\r\n prevState => {\r\n const {isShowBadAuthModal: prevIsShowBadAuthModal} = prevState;\r\n return {\r\n isShowBadAuthModal: false,\r\n };\r\n },\r\n () => {\r\n // this.setSomeOtherState();\r\n }\r\n );\r\n\r\n }\r\n\r\n }\r\n\r\n showBadAuthModal() {\r\n\r\n this.setState(\r\n prevState => {\r\n const {isShowBadAuthModal: prevIsShowBadAuthModal} = prevState;\r\n return {\r\n isShowBadAuthModal: true,\r\n };\r\n },\r\n () => {\r\n // this.setSomeOtherState();\r\n }\r\n );\r\n\r\n }\r\n\r\n closeBadAuthModal(element) {\r\n this.setState(\r\n prevState => {\r\n const {isShowBadAuthModal: prevIsShowBadAuthModal} = prevState;\r\n return {\r\n isShowBadAuthModal: false,\r\n };\r\n },\r\n () => {\r\n // this.setSomeOtherState();\r\n }\r\n );\r\n\r\n }\r\n\r\n submitRegistration(newValue) {\r\n\r\n newValue.preventDefault();\r\n\r\n debugger;\r\n this.getData('getEditMemberUrl', {memberId: this.state.memberId, memberEmail: this.state.memberEmail},\r\n (result) => {\r\n debugger;\r\n if (result.data) {\r\n // const memberDetailsForm = document.getElementById('memberDetailsForm');\r\n // this.state.userDetails = result.data;\r\n\r\n window.location.href = result.data[0].Column1;\r\n\r\n debugger;\r\n\r\n // memberDetailsForm.setAttribute('action', 'https://kenes.eventsair.com/KenesSiteRedirect/fens2021/fensredirect/contactpost/data');\r\n // memberDetailsForm.submit();\r\n } else {\r\n this.showBadAuthModal();\r\n }\r\n },\r\n (error) => {\r\n debugger;\r\n this.showBadAuthModal();\r\n }\r\n );\r\n }\r\n\r\n onWindowResize = () => {\r\n if (window.innerWidth < 500 || window.innerHeight < 500) {\r\n this.MainContainer = {\r\n position: 'unset',\r\n background: 'white',\r\n top: '2em',\r\n left: '2em',\r\n bottom: '2em',\r\n }\r\n this.ModalBody = {\r\n backgroundColor: 'white',\r\n width: '77vw',\r\n marginLeft: 'auto',\r\n marginRight: 'auto',\r\n left: '0',\r\n right: '0',\r\n textAlign: 'center',\r\n position: 'absolute',\r\n top: '33%',\r\n padding: '10px',\r\n }\r\n\r\n }\r\n }\r\n\r\n render() {\r\n\r\n window.addEventListener('resize', this.onWindowResize, false);\r\n\r\n if (window.innerWidth < 500 || window.innerHeight < 500) {\r\n this.MainContainer = {\r\n position: 'unset',\r\n background: 'white',\r\n top: '2em',\r\n left: '2em',\r\n bottom: '2em',\r\n }\r\n this.ModalBody = {\r\n backgroundColor: 'white',\r\n width: '77vw',\r\n marginLeft: 'auto',\r\n marginRight: 'auto',\r\n left: '0',\r\n right: '0',\r\n textAlign: 'center',\r\n position: 'absolute',\r\n top: '33%',\r\n padding: '10px',\r\n }\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 Register\r\n \r\n
{\r\n this.submitRegistration(element);\r\n }}\r\n >\r\n\r\n \r\n \r\n {\r\n this.tbMemberIdChanged(element);\r\n }}\r\n autoComplete=\"memberId\"\r\n variant=\"outlined\"\r\n required\r\n fullWidth\r\n label=\"Member Id\"\r\n autoFocus\r\n />\r\n \r\n \r\n {\r\n this.tbMemberEmailChanged(element);\r\n }}\r\n variant=\"outlined\"\r\n required\r\n fullWidth\r\n label=\"Member Email\"\r\n autoComplete=\"email\"\r\n />\r\n \r\n {/*\r\n }\r\n label=\"I want to receive inspiration, marketing promotions and updates via email.\"\r\n />\r\n */}\r\n \r\n \r\n Submit\r\n \r\n {/*\r\n \r\n \r\n Already have an account? Sign in\r\n \r\n \r\n */}\r\n \r\n
\r\n {\r\n this.badAuthModalClosed(newValue);\r\n }}\r\n aria-labelledby=\"simple-modal-title\"\r\n aria-describedby=\"simple-modal-description\"\r\n >\r\n
\r\n {/**/}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

Member Id and Email dont match

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

Please try again

\r\n
\r\n
\r\n
\r\n {\r\n this.closeBadAuthModal(element);\r\n }}\r\n >\r\n Ok\r\n \r\n
\r\n
\r\n \r\n {/*\r\n \r\n */}\r\n
\r\n );\r\n }\r\n\r\n tbMemberIdChanged(newValue) {\r\n\r\n if (newValue == null) {\r\n return;\r\n }\r\n this.setState(\r\n prevState => {\r\n const {memberId: prevIsShow} = prevState;\r\n return {\r\n memberId: newValue.target.value,\r\n };\r\n },\r\n () => {\r\n // this.setSomeOtherState();\r\n }\r\n );\r\n }\r\n\r\n tbMemberEmailChanged(newValue) {\r\n\r\n if (newValue == null) {\r\n return;\r\n }\r\n this.setState(\r\n prevState => {\r\n const {memberEmail: prevIsShow} = prevState;\r\n return {\r\n memberEmail: newValue.target.value,\r\n };\r\n },\r\n () => {\r\n // this.setSomeOtherState();\r\n }\r\n );\r\n }\r\n\r\n}\r\n\r\n// export default RegistrationForm;\r\n","import React, {Component} from 'react';\nimport ReactDOM from 'react-dom';\nimport MemberRegistrationForm from './MemberRegistrationForm';\nimport NonMemberRegistrationForm from \"./NonMemberRegistrationForm\";\nimport BrainCanvas from './BrainCanvas';\nimport './index.css';\nimport {\n BrowserRouter as Router,\n Switch,\n Route,\n Link,\n useParams\n} from \"react-router-dom\";\nimport MemberEditForm from \"./MemberEditForm\";\n\nclass App extends Component {\n\n /*\n componentDidMount() {\n var brainMesh;\n var scene = new THREE.Scene();\n var camera = new THREE.PerspectiveCamera(\n 75,\n window.innerWidth / window.innerHeight,\n 0.1,\n 1000\n );\n\n var renderer = new THREE.WebGLRenderer();\n renderer.setSize(window.innerWidth, window.innerHeight);\n this.mount.appendChild(renderer.domElement);\n\n\n var animate = function () {\n requestAnimationFrame(animate);\n\n if (brainMesh) {\n brainMesh.rotation.x += 0.01;\n brainMesh.rotation.y += 0.01;\n }\n renderer.render(scene, camera);\n };\n\n animate();\n\n const controls = new OrbitControls(camera, renderer.domElement);\n\n camera.position.z = 100;\n /!*const hemiLight = new THREE.HemisphereLight(0xffffff, 0x444444);\n hemiLight.position.set(0, 20, 0);\n scene.add(hemiLight);*!/\n\n const dirLight = new THREE.DirectionalLight(0xffffff);\n dirLight.position.set(0, 0, -90);\n scene.add(dirLight);\n\n\n const ambient = new THREE.AmbientLight(0x404040, 2);\n scene.add(ambient);\n\n const light = new THREE.DirectionalLight(0xffffff, 2);\n light.position.set(50, 50, 100);\n scene.add(light);\n\n\n const loader = new GLTFLoader();\n\n loader.load(\n 'https://onlineforms.kenes.com/assets/models/Brain/scene.gltf',\n // '../assets/models/Brain/scene.gltf',\n (gltf) => {\n brainMesh = gltf.scene;\n brainMesh.position.set(0, 0, 0);\n scene.add(brainMesh);\n\n const texture = new THREE.TextureLoader().load(\n // './assets/models/' + item.textureFileName\n 'https://onlineforms.kenes.com/assets/models/Brain/textures/08_-_Default_baseColor.png',\n );\n texture.flipY = false;\n const material = new THREE.MeshPhongMaterial({\n map: texture,\n color: 0xffffff,\n skinning: true\n });\n brainMesh.traverse(o => {\n if (o.isMesh) {\n o.castShadow = true;\n o.receiveShadow = true;\n o.material = material;\n }\n });\n\n\n },\n (xhr) => {\n // called while loading is progressing\n console.log(`${(xhr.loaded / xhr.total * 100)}% loaded`);\n },\n (error) => {\n\n // called when loading has errors\n console.error('An error happened', error);\n },\n );\n\n\n }\n */\n\n render() {\n\n return (\n \n
\n {/**/}\n \n {/**/}\n {/*\n \n \n \n */}\n \n
\n
\n );\n }\n}\n\nconst rootElement = document.getElementById(\"root\");\nReactDOM.render(, rootElement);\n"],"sourceRoot":""}