{"version":3,"sources":["store/index.js","images/logow.png","components/frontPage.component.js","images/logo.png","components/signup.component.js","components/imageAnswerUpload.component.js","components/assets.component.js","components/login.component.js","components/forgotPassword.component.js","components/inactive.component.js","components/formWizard.component.js","components/fileUpload.component.js","components/formBuilder.js","components/dashboard.component.js","components/adminForms.component.js","components/adminUsers.component.js","components/organization.component.js","components/thankyou.component.js","components/form.component.js","App.js","reportWebVitals.js","index.js"],"names":["initialState","isLoggedIn","username","accessToken","email","userId","store","createStore","state","action","type","Object","assign","window","__REDUX_DEVTOOLS_EXTENSION__","FrontPage","props","className","src","logo","alt","to","onClick","location","href","React","Component","Signup","handleUsername","event","setState","target","value","handlePassword","password","handleEmail","test","emailValid","handleSignUp","axios","post","apiurl","roles","status","headers","then","res","signUpMessage","console","log","bind","this","userdata","redirect","style","height","width","onKeyPress","onChange","ImageAnswerUpload","images","fileSelectedHandler","files","handleUploadImages","formData","FormData","keys","key","append","get","gallery","data","map","image","push","url","name","setImages","catch","err","id","aria-describedby","multiple","htmlFor","Assets","handleSetImages","handleDeleteImage","imgStyle","objectFit","index","Login","handleUsernameChange","handlePasswordChange","loginMessage","login","ForgotPassword","handleUserEmail","userEmail","handleSubmit","Inactive","margin","padding","formWizard","handleSetQuestion","question","handlePossibleAnswer","possibleAnswer","handlePossibleAnswerKeypress","handleAddPossibleAnswer","handleSelectImage","propIndex","imgs","obj","selected","order","handleAddPossibleImageAnswer","handleChangeImageName","possibleImageAnswers","length","answer","document","getElementById","click","possibleAnswersList","possibleAnswers","deletePossibleAnswer","disabled","entry","multipleChoice","handleMultipleChoice","required","handleRequired","deleteQuestion","role","data-toggle","aria-controls","aria-selected","aria-labelledby","handleYesNo","showImageNames","handleShowImageNames","overflowY","fileUpload","onFileChange","selectedFile","onFileUpload","handlelogo","img","file","logourl","formBuilder","handleRedirectUrl","redirectUrlStatus","redirectUrlMessage","validator","isURL","protocols","require_protocol","redirectUrl","handleDisclaimer","disclaimer","handleCustomField","customField","handleFNameRequire","fNameRequired","fNameShow","handleFNameShow","x","handleLNameRequire","lNameRequired","lNameShow","handleLNameShow","handleEmailRequire","emailRequired","emailShow","handleEmailShow","handlePhoneRequire","phoneRequired","phoneShow","handlePhoneShow","handleAddressRequire","addressRequired","addressShow","handleAddressShow","handleStartDateChange","startDate","handleEndDateChange","endDate","handleBackgroundColor","color","backgroundColor","hex","handleAddEntry","array","handleSetFormName","s","formName","charAt","toUpperCase","slice","includes","trim","filter","handleDeleteQuestion","splice","idx","indexOf","handleLogo","logoUrl","codeGenerator","result","characters","charactersLength","i","Math","floor","random","join","handleSave","editFormData","json","JSON","stringify","formCode","handleCancel","Date","handleEmailResponses","emailResponses","handleResponseEmailOne","responseEmailOne","handleResponseEmailTwo","responseEmailTwo","handleResponseEmailThree","responseEmailThree","handleResponseEmailFour","responseEmailFour","handleResponseEmailFive","responseEmailFive","setTime","time","parse","addressRequire","str","form","emailFields","Capitalize","float","placeholder","onChangeComplete","class","rows","checked","for","Dashboard","handleDeleteForm","forms","handleEditForm","redirectForEdit","handleCopyToClipboard","text","link","navigator","clipboard","writeText","formsApiChecked","body","setHours","now","scope","rel","AdminForms","user","open","AdminUsers","getAllUsers","users","forEach","addUser","changeStatus","callback","changeRole","emai","deleteUser","processRoles","Organization","cap","addOrganization","handleChangeName","handleChangeAddress","address","handleChangeCity","city","handleChangeState","handleChangeZip","zip","brand","ThankYou","formLogo","localStorage","getItem","setTimeout","position","bottom","right","Form","handleReCaptcha","handleAnswer","property","handleMultipleAnswer","a","getElementsByName","formatPhoneNumber","phoneNumber","replace","phoneNumberLength","handlePhoneInput","formatedNumber","phone","handleAddress1Input","address1","handleAddress2Input","address2","handleCityInput","handleStateInput","handleZipInput","handleSingleImageAnswer","formStructureData","o","handleMultipleImageAnswer","submitForm","preventDefault","formIsValid","errors","fname","lname","formErrors","addressKey","handleRedirect","thankYouLink","message","customFieldAnswer","formcode","match","params","search","URLSearchParams","setItem","dateOptions","weekday","year","month","day","toLocaleString","sort","b","questions","successLink","maxWidth","requiredTag","minWidth","borderRadius","onSubmit","size","sitekey","withRouter","App","redirectForNew","setLogoUrl","handleLogin","handleLogout","handleSignup","APIURL","showRedirect","pathname","dispatch","response","removeItem","account","nav","spacer","aria-haspopup","aria-expanded","background","data-target","aria-label","path","exact","signup","connect","reportWebVitals","onPerfEntry","Function","getCLS","getFID","getFCP","getLCP","getTTFB","ReactDOM","render","history","useHistory"],"mappings":"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","file":"static/js/main.293a32fb.chunk.js","sourcesContent":["import { createStore } from 'redux'\r\n\r\nconst initialState = {\r\n isLoggedIn: false,\r\n username: '', \r\n accessToken: '',\r\n email: '',\r\n userId: 0,\r\n}\r\n\r\nconst reducer = (state = initialState, action) => {\r\n switch(action.type){\r\n case 'IS_LOGGED_IN':\r\n return Object.assign({}, state, {\r\n isLoggedIn: true,\r\n username: action.username,\r\n accessToken: action.accessToken,\r\n email: action.email,\r\n userId: action.userId\r\n });\r\n }\r\n\r\n return state\r\n}\r\n\r\nconst store = createStore(\r\n reducer, \r\n window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__()\r\n)\r\n\r\nexport default store","export default \"data:image/png;base64,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\"","import React from 'react'; \r\nimport { Link } from 'react-router-dom';\r\nimport axios from 'axios'; \r\nimport '../styles/frontpage.css';\r\nimport logo from '../images/logow.png';\r\n\r\nclass FrontPage extends React.Component {\r\n constructor(props){\r\n super(props); \r\n\r\n this.state = {}\r\n \r\n }\r\n\r\n render(){\r\n \r\n\r\n return(\r\n
\r\n
\r\n
\r\n
\r\n \"Adapticts.com\"\r\n

QRCode Campaign Support System

\r\n

QR Codes make it easy for customers to interact with your brand and op-in to active campaigns. \r\n Attract new customers, increase list signup, gain valuable customer insight, increase customer retention and conversion, \r\n boost sales, improve customer service, and generate repeat business with the Adapticts QR Code Campaign Support System.

\r\n \r\n

Contact Adapticts to start using QRCodes on your campaigns today.

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

Already A Member?

\r\n Login\r\n \r\n
\r\n
\r\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 FrontPage;\r\n","export default \"data:image/png;base64,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\"","import React from 'react';\r\nimport { Redirect } from 'react-router-dom';\r\nimport axios from 'axios';\r\nimport logo from '../images/logo.png';\r\n\r\n\r\nclass Signup extends React.Component {\r\n constructor(props){\r\n super(props); \r\n\r\n this.state = {\r\n username: '',\r\n email: '',\r\n password: '',\r\n roles: ['user', 'admin'],\r\n status: \"active\",\r\n emailValid: false,\r\n signUpMessage: '',\r\n isLoggedIn: true\r\n }\r\n\r\n this.handleUsername = this.handleUsername.bind(this);\r\n this.handlePassword = this.handlePassword.bind(this);\r\n this.handleEmail = this.handleEmail.bind(this);\r\n }\r\n\r\n componentDidMount() {\r\n if (this.props.userdata.isLoggedIn === false){\r\n this.setState({\r\n isLoggedIn: false\r\n }); \r\n }\r\n }\r\n\r\n handleUsername = (event) => {\r\n this.setState({\r\n username: event.target.value\r\n })\r\n\r\n }\r\n\r\n handlePassword = (event) => {\r\n this.setState({\r\n password: event.target.value\r\n })\r\n }\r\n\r\n handleEmail = (event) => {\r\n if (/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*$/.test(event.target.value)) {\r\n this.setState({\r\n emailValid: true\r\n });\r\n } else {\r\n this.setState({\r\n emailValid: false\r\n });\r\n }\r\n\r\n this.setState({\r\n email: event.target.value\r\n })\r\n }\r\n\r\n handleSignUp = () => {\r\n const headers = {\r\n 'Content-Type': 'application/json;charset=UTF-8',\r\n \"Access-Control-Allow-Origin\": \"*\",\r\n }\r\n\r\n axios.post(this.props.apiurl + '/api/auth/signup', {\r\n username: this.state.username,\r\n password: this.state.password,\r\n email: this.state.email,\r\n roles: this.state.roles,\r\n status: this.state.status\r\n },{headers: headers}).then(res => {\r\n if (res.status === 200) {\r\n this.setState({\r\n signUpMessage: 'Welcome. Proceed to Login.'\r\n }); \r\n console.log(res); \r\n }\r\n });\r\n }\r\n\r\n render() {\r\n let redirect; \r\n if (this.state.isLoggedIn === false){\r\n redirect = \r\n }\r\n\r\n let emailValid;\r\n\r\n if (this.state.emailValid === true) {\r\n emailValid = \"Email address is valid\";\r\n } else {\r\n emailValid = \"Please enter a valid email address\";\r\n }\r\n\r\n\r\n return (\r\n
\r\n {redirect}\r\n
\r\n \"Adapticts.com\"\r\n
\r\n\r\n

Sign up form

\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n {emailValid}\r\n \r\n
\r\n\r\n  \r\n {this.state.signUpMessage}\r\n
\r\n
\r\n
\r\n )\r\n }\r\n\r\n}\r\n\r\nexport default Signup; ","import React from 'react';\r\nimport axios from 'axios';\r\n\r\nclass ImageAnswerUpload extends React.Component {\r\n state = {\r\n images: []\r\n }\r\n\r\n fileSelectedHandler = (event) => {\r\n this.setState({ images: event.target.files })\r\n }\r\n\r\n handleUploadImages = () => {\r\n const formData = new FormData();\r\n for (const key of Object.keys(this.state.images)){\r\n formData.append(\"images\", this.state.images[key])\r\n }\r\n\r\n const headers = {\r\n 'X-Access-Token': this.props.userdata.accessToken\r\n }\r\n\r\n axios.post(this.props.apiurl + \"/api/images/upload\", formData, { headers: headers}).then(res => {\r\n if (res.status === 200){\r\n axios.get(this.props.apiurl + '/api/images/gallery', { headers: headers }).then(res => {\r\n let gallery = []; \r\n res.data.gallery.map((image) => {\r\n gallery.push(\r\n {\r\n url: this.props.apiurl + '/assets/' + this.props.userdata.userId + \"/\" + image,\r\n name: image\r\n }\r\n )\r\n });\r\n this.props.setImages(gallery); \r\n }).catch(err => {\r\n console.log(err);\r\n }) \r\n }\r\n }).catch(err => {\r\n console.log(err); \r\n }); \r\n\r\n\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n
\r\n
\r\n Upload\r\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 ImageAnswerUpload; ","import React from 'react';\r\nimport axios from 'axios';\r\nimport ImageAnswerUpload from './imageAnswerUpload.component';\r\n\r\nclass Assets extends React.Component {\r\n constructor(props) {\r\n super(props)\r\n\r\n this.state = {\r\n images: []\r\n }\r\n }\r\n\r\n componentDidMount() {\r\n const headers = {\r\n 'X-Access-Token': this.props.userdata.accessToken\r\n }\r\n\r\n axios.get(this.props.apiurl + '/api/images/gallery', { headers: headers }).then(res => {\r\n console.log(res);\r\n let gallery = []; \r\n\r\n res.data.gallery.map((image) => {\r\n gallery.push(\r\n {\r\n url: this.props.apiurl + '/assets/' + this.props.userdata.userId + \"/\" + image,\r\n name: image\r\n }\r\n )\r\n });\r\n this.setState({\r\n images: gallery\r\n })\r\n }).catch(err => {\r\n console.log(err);\r\n })\r\n }\r\n\r\n handleSetImages = (images) => {\r\n this.setState({\r\n images: images\r\n })\r\n }\r\n\r\n handleDeleteImage = (image) => {\r\n console.log(image); \r\n const headers = {\r\n 'X-Access-Token': this.props.userdata.accessToken\r\n }\r\n \r\n axios.post(this.props.apiurl + '/api/images/delete', { \r\n image: image.name\r\n },{ \r\n headers: headers \r\n }).then(res => {\r\n let gallery = []; \r\n res.data.gallery.map((image) => {\r\n gallery.push(\r\n {\r\n url: this.props.apiurl + '/assets/' + this.props.userdata.userId + \"/\" + image,\r\n name: image\r\n }\r\n )\r\n });\r\n this.handleSetImages(gallery); \r\n }).catch(err => {\r\n console.log(err);\r\n }); \r\n }\r\n\r\n render() {\r\n\r\n const imgStyle = { \r\n width: 'auto',\r\n height: '18vh',\r\n objectFit: 'contain'\r\n }\r\n\r\n let gallery = []; \r\n this.state.images.map((image, index) => {\r\n gallery.push(\r\n
\r\n \"...\"\r\n
\r\n

{image.name}

\r\n \r\n
\r\n
\r\n )\r\n })\r\n\r\n\r\n return (\r\n
\r\n \r\n
\r\n {gallery}\r\n
\r\n
\r\n )\r\n }\r\n}\r\n\r\nexport default Assets;","import React from 'react'; \r\nimport logo from '../images/logo.png';\r\n\r\nclass Login extends React.Component { \r\n constructor(props){\r\n super(props); \r\n\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n
\r\n \"Adapticts.com\"\r\n
\r\n

Please sign in

\r\n
\r\n \r\n this.props.handleUsernameChange(event) }/>\r\n
\r\n
\r\n \r\n this.props.handlePasswordChange(event) } />\r\n
\r\n

{ this.props.loginMessage }

\r\n \r\n
\r\n
\r\n
\r\n )\r\n }\r\n}\r\n\r\n\r\n\r\nexport default Login;","import React from 'react'; \r\nimport axios from 'axios';\r\nimport logo from '../images/logo.png';\r\n\r\nclass ForgotPassword extends React.Component { \r\n constructor(props){\r\n super(props); \r\n\r\n this.state = {\r\n userEmail: ''\r\n }\r\n \r\n this.handleUserEmail = this.handleUserEmail.bind(this); \r\n\r\n }\r\n\r\n handleUserEmail = (event) => {\r\n this.setState({\r\n userEmail: event.target.value\r\n }); \r\n }\r\n\r\n handleSubmit = () => {\r\n console.log(\"this works\"); \r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n
\r\n \"Adapticts.com\"\r\n
\r\n

Password Recovery

\r\n
\r\n \r\n \r\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 ForgotPassword;","import React from 'react'; \r\nimport '../styles/frontpage.css';\r\n\r\nclass Inactive extends React.Component {\r\n constructor(props){\r\n super(props); \r\n\r\n this.state = {\r\n\r\n }\r\n }\r\n\r\n render() {\r\n return(\r\n
\r\n
\r\n
Account Inactive:
\r\n

Your account is currently set to inactive status. Please contact support at Adapticts.com.

\r\n
\r\n
\r\n )\r\n }\r\n\r\n}\r\n\r\nexport default Inactive; ","import React from 'react'; \r\nimport axios from 'axios';\r\n\r\n\r\nclass formWizard extends React.Component {\r\n constructor(props){\r\n super(props);\r\n\r\n this.state = {\r\n question: '',\r\n possibleAnswer: '',\r\n images: [],\r\n }\r\n\r\n\r\n }\r\n\r\n componentDidMount(){\r\n this.setState({\r\n question: this.props.question || ''\r\n });\r\n\r\n const headers = {\r\n 'X-Access-Token': this.props.userdata.accessToken\r\n }\r\n\r\n axios.get(this.props.apiurl + '/api/images/gallery', { headers: headers }).then(res => {\r\n let gallery = []; \r\n\r\n res.data.gallery.map((image) => {\r\n gallery.push(\r\n {\r\n url: this.props.apiurl + '/assets/' + this.props.userdata.userId + \"/\" + image,\r\n name: '',\r\n selected: false,\r\n order: 0\r\n }\r\n )\r\n });\r\n\r\n \r\n if (this.props.possibleImageAnswers.length > 0){\r\n let answers = this.props.possibleImageAnswers; \r\n // console.log(answers); \r\n answers.map(answer => {\r\n if (answer.selected === true){\r\n gallery.map(image => {\r\n if (image.url === answer.url){\r\n image.selected = true; \r\n image.name = answer.name || \"\";\r\n image.order = answer.order; \r\n }\r\n });\r\n document.getElementById(\"image-tab\" + this.props.index).click(); \r\n }\r\n });\r\n }\r\n \r\n this.setState({\r\n images: gallery\r\n })\r\n }).catch(err => {\r\n console.log(err);\r\n })\r\n }\r\n \r\n \r\n\r\n handleSetQuestion = (event) => {\r\n this.setState({\r\n question: event.target.value\r\n }); \r\n\r\n this.props.handleSetQuestion(event, this.props.index); \r\n }\r\n\r\n handlePossibleAnswer = (event) => {\r\n this.setState({ \r\n possibleAnswer: event.target.value \r\n }); \r\n }\r\n\r\n handlePossibleAnswerKeypress = (event) => {\r\n if (event.key === \"Enter\") {\r\n this.props.handleAddPossibleAnswer(this.state.possibleAnswer, this.props.index);\r\n this.setState({\r\n possibleAnswer: ''\r\n });\r\n }\r\n };\r\n \r\n handleAddPossibleAnswer = () => {\r\n if (this.state.possibleAnswer != ''){\r\n this.props.handleAddPossibleAnswer(this.state.possibleAnswer, this.props.index)\r\n \r\n }\r\n }\r\n\r\n handleUploadImages = () => {\r\n console.log(\"this works\"); \r\n }\r\n\r\n handleSelectImage = (index, propIndex) => {\r\n let imgs = this.state.images.map(obj => {\r\n return Object.assign({}, obj)\r\n });\r\n\r\n imgs[index].selected = !imgs[index].selected; \r\n\r\n let order = 0; \r\n\r\n imgs.map(obj => {\r\n if (obj.selected === false){\r\n obj.order = 0; \r\n }\r\n\r\n if (obj.order > order){\r\n order = obj.order;\r\n }\r\n\r\n }); \r\n\r\n imgs[index].order = order + 1;\r\n \r\n this.setState({\r\n images: imgs\r\n }, () => this.props.handleAddPossibleImageAnswer(this.state.images, propIndex));\r\n }\r\n\r\n handleChangeImageName = (event, index, propIndex) => {\r\n let imgs = this.state.images.map(obj => {\r\n return Object.assign({}, obj); \r\n });\r\n\r\n imgs[index].name = event.target.value; \r\n\r\n this.setState({\r\n images: imgs\r\n }, () => this.props.handleAddPossibleImageAnswer(this.state.images, propIndex)); \r\n\r\n console.log(this.state.images); \r\n }\r\n\r\n render(){\r\n let possibleAnswersList = []; \r\n \r\n this.props.possibleAnswers.map((answer, index) => {\r\n possibleAnswersList.push(\r\n
  • \r\n {answer}\r\n this.props.deletePossibleAnswer(answer, this.props.index) }>✕\r\n
  • \r\n );\r\n });\r\n \r\n let gallery = []; \r\n\r\n this.state.images.map((image, index) => {\r\n if (image.selected){\r\n gallery.push(\r\n\r\n
    \r\n
    Order: {image.order}
    \r\n \"gallery\r\n
    \r\n \r\n \r\n this.handleChangeImageName(event,index, this.props.index) } />\r\n
    \r\n
    \r\n\r\n \r\n )\r\n }else{\r\n gallery.push(\r\n
    \r\n
     
    \r\n \"gallery\r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n )\r\n\r\n }\r\n \r\n \r\n }); \r\n\r\n\r\n\r\n return(\r\n
    \r\n
    \r\n
    \r\n
    Question {this.props.index + 1}
    \r\n
    \r\n
    \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.handleSetQuestion(event, this.props.index) }\r\n onChange={(event) => this.handleSetQuestion(event, this.props.index) } />\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
      \r\n { possibleAnswersList }\r\n
    \r\n
    \r\n\r\n
    \r\n this.handlePossibleAnswerKeypress(event) }\r\n onChange={ (event) => this.handlePossibleAnswer(event) } />\r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n \r\n

    Select images in the order in which you would like for them to be displayed on the form.

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n {gallery}\r\n
    \r\n
    \r\n
    \r\n
    \r\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 formWizard; \r\n\r\n","import axios from 'axios';\r\nimport React from 'react';\r\n\r\nclass fileUpload extends React.Component {\r\n constructor(props){\r\n super(props); \r\n\r\n this.state = {\r\n selectedFile: null,\r\n img: null\r\n }\r\n }\r\n\r\n componentDidMount() {\r\n this.setState({}); \r\n }\r\n\r\n onFileChange = event => {\r\n this.setState({ selectedFile: event.target.files[0] });\r\n };\r\n\r\n onFileUpload = () => {\r\n const formData = new FormData();\r\n formData.append(\r\n \"logo\",\r\n this.state.selectedFile,\r\n this.state.selectedFile.name\r\n );\r\n\r\n const headers = {\r\n 'X-Access-Token': this.props.userdata.accessToken\r\n }\r\n\r\n axios.post(this.props.apiurl + \"/api/logo/upload\", formData, { headers: headers}).then(res => {\r\n this.props.handlelogo(res, this.state); \r\n this.setState({}); \r\n }).catch(err => {\r\n console.log(err); \r\n })\r\n };\r\n\r\n\r\n \r\n render() {\r\n let file = []; \r\n\r\n if (this.props.logourl){\r\n file = \r\n
    \r\n \"logo\"\r\n
    \r\n\r\n }\r\n\r\n \r\n\r\n\r\n return (\r\n
    \r\n
    \r\n
    \r\n \r\n Max width 300 pixels max Height 150 pixels\r\n

    Choose image file, then press \"upload\" button.

    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n {file}\r\n
    \r\n
    \r\n );\r\n }\r\n}\r\n\r\nexport default fileUpload;\r\n{/*\r\n
    \r\n
    File Details:
    \r\n \"logo\"\r\n

    File Name: {this.state.selectedFile.name}

    \r\n

    File Type: {this.state.selectedFile.type}

    \r\n

    \r\n Last Modified:{\" \"}\r\n {this.state.selectedFile.lastModifiedDate.toDateString()}\r\n

    \r\n
    \r\n*/}","import React from 'react';\r\nimport { Redirect } from 'react-router-dom'; \r\nimport axios from 'axios';\r\nimport { ChromePicker } from 'react-color';\r\nimport FormWizard from './formWizard.component'; \r\nimport FileUpload from './fileUpload.component';\r\nimport DatePicker from 'react-datepicker'; \r\nimport validator from 'validator'\r\nimport 'react-datepicker/dist/react-datepicker.css'; \r\n\r\nclass formBuilder extends React.Component {\r\n constructor(props){\r\n super(props); \r\n this.state = {\r\n formName: '',\r\n formData: [],\r\n startDate: new Date(),\r\n endDate: new Date(),\r\n fNameRequired: false,\r\n fNameShow: false,\r\n lNameRequired: false,\r\n lNameShow: false,\r\n emailRequired: false,\r\n emailShow: false,\r\n phoneRequired: false,\r\n phoneShow: false,\r\n addressRequired: false,\r\n addressShow: false,\r\n logoUrl: null,\r\n backgroundColor: '#f1f1f1',\r\n formCode: this.codeGenerator(30),\r\n redirectUrl: '',\r\n redirectUrlStatus: false,\r\n redirectUrlMessage: '',\r\n emailResponses: false,\r\n responseEmailOne: \"\",\r\n responseEmailTwo: \"\",\r\n responseEmailThree: \"\",\r\n responseEmailFour: \"\",\r\n responseEmailFive: \"\",\r\n disclaimer: '', \r\n customField: '',\r\n redirect: '' \r\n }\r\n\r\n this.handleAddEntry = this.handleAddEntry.bind(this); \r\n this.handleSetFormName = this.handleSetFormName.bind(this); \r\n this.handleFNameRequire = this.handleFNameRequire.bind(this);\r\n this.handleFNameShow = this.handleFNameShow.bind(this); \r\n\r\n this.handleLNameRequire = this.handleLNameRequire.bind(this);\r\n this.handleLNameShow = this.handleLNameShow.bind(this); \r\n\r\n this.handleEmailRequire = this.handleEmailRequire.bind(this);\r\n this.handleEmailShow = this.handleEmailShow.bind(this); \r\n\r\n this.handlePhoneRequire = this.handlePhoneRequire.bind(this);\r\n this.handlePhoneShow = this.handlePhoneShow.bind(this); \r\n\r\n this.handleAddressRequire = this.handleAddressRequire.bind(this); \r\n this.handleAddressShow = this.handleAddressShow(this); \r\n\r\n this.handleBackgroundColor = this.handleBackgroundColor.bind(this); \r\n\r\n this.handleSave = this.handleSave.bind(this); \r\n this.handleRedirectUrl = this.handleRedirectUrl.bind(this); \r\n\r\n this.handleDisclaimer = this.handleDisclaimer.bind(this); \r\n this.handleCustomField = this.handleCustomField.bind(this); \r\n\r\n this.handleEmailResponses = this.handleEmailResponses.bind(this); \r\n this.handleResponseEmailOne = this.handleResponseEmailOne.bind(this); \r\n this.handleResponseEmailTwo = this.handleResponseEmailTwo.bind(this); \r\n this.handleResponseEmailThree = this.handleResponseEmailThree.bind(this); \r\n this.handleResponseEmailFour = this.handleResponseEmailFour.bind(this); \r\n this.handleResponseEmailFive = this.handleResponseEmailFive.bind(this); \r\n }\r\n\r\n componentDidMount() {\r\n if (this.props.userdata.editFormData) {\r\n let data = this.props.userdata.editFormData;\r\n\r\n let json = JSON.parse(data.json); \r\n\r\n function setTime(time){\r\n if (time){\r\n return new Date(time); \r\n }\r\n\r\n if (!time){\r\n return new Date(); \r\n }\r\n }\r\n\r\n this.setState({\r\n formName: json.formName,\r\n formData: json.formData,\r\n startDate: setTime(json.startDate),\r\n endDate: setTime(json.endDate),\r\n fNameRequired: json.fNameRequired,\r\n fNameShow: json.fNameShow,\r\n lNameRequired: json.lNameRequired,\r\n lNameShow: json.lNameShow,\r\n emailRequired: json.emailRequired,\r\n emailShow: json.emailShow,\r\n phoneRequired: json.phoneRequired,\r\n phoneShow: json.phoneShow,\r\n addressRequired: json.addressRequire,\r\n addressShow: json.addressShow,\r\n logoUrl: json.logoUrl,\r\n backgroundColor: json.backgroundColor,\r\n formCode: json.formCode,\r\n redirectUrl: json.redirectUrl || '',\r\n disclaimer: json.disclaimer || '',\r\n customField: json.customField || '',\r\n emailResponses: json.emailResponses || false,\r\n responseEmailOne: json.responseEmailOne || \"\",\r\n responseEmailTwo: json.responseEmailTwo || \"\",\r\n responseEmailThree: json.responseEmailThree || \"\",\r\n responseEmailFour: json.responseEmailFour || \"\",\r\n responseEmailFive: json.responseEmailFive || \"\",\r\n });\r\n }\r\n\r\n }\r\n\r\n handleRedirectUrl = (event) => {\r\n let value = event.target.value; \r\n let redirectUrlStatus, redirectUrlMessage; \r\n\r\n if (validator.isURL(value, {\r\n protocols: ['http', 'https'], \r\n require_protocol: true\r\n })) {\r\n console.log(\"url is valid\"); \r\n redirectUrlStatus = true; \r\n redirectUrlMessage = \"URL is valid\"\r\n }else{\r\n console.log(\"url is not valid\"); \r\n redirectUrlStatus = false; \r\n redirectUrlMessage = \"URL must include http:// or https://\"\r\n }\r\n\r\n this.setState({\r\n redirectUrl: event.target.value,\r\n redirectUrlStatus: redirectUrlStatus,\r\n redirectUrlMessage: redirectUrlMessage\r\n }); \r\n }\r\n\r\n handleDisclaimer = (event) => {\r\n this.setState({\r\n disclaimer: event.target.value\r\n })\r\n }\r\n\r\n handleCustomField = (event) => {\r\n this.setState({\r\n customField: event.target.value\r\n })\r\n }\r\n\r\n handleFNameRequire = () => {\r\n if (this.state.fNameRequired === false){\r\n this.setState({\r\n fNameRequired: true,\r\n fNameShow: true\r\n });\r\n }else{\r\n this.setState({\r\n fNameRequired: false,\r\n fNameShow: false\r\n });\r\n }\r\n }\r\n\r\n handleFNameShow = () => {\r\n if (this.state.fNameRequired != true){\r\n let x = !this.state.fNameShow;\r\n this.setState({\r\n fNameShow: x\r\n });\r\n }\r\n }\r\n\r\n handleLNameRequire = () => {\r\n if (this.state.lNameRequired === false) {\r\n this.setState({\r\n lNameRequired: true,\r\n lNameShow: true\r\n });\r\n } else {\r\n this.setState({\r\n lNameRequired: false,\r\n lNameShow: false\r\n });\r\n }\r\n }\r\n\r\n handleLNameShow = () => {\r\n if (this.state.lNameRequired != true) {\r\n let x = !this.state.lNameShow;\r\n this.setState({\r\n lNameShow: x\r\n });\r\n }\r\n }\r\n\r\n handleEmailRequire = () => {\r\n if (this.state.emailRequired === false) {\r\n this.setState({\r\n emailRequired: true,\r\n emailShow: true\r\n });\r\n } else {\r\n this.setState({\r\n emailRequired: false,\r\n emailShow: false\r\n });\r\n }\r\n }\r\n\r\n handleEmailShow = () => {\r\n if (this.state.emailRequired != true) {\r\n let x = !this.state.emailShow;\r\n this.setState({\r\n emailShow: x\r\n });\r\n }\r\n }\r\n\r\n handlePhoneRequire = () => {\r\n if (this.state.phoneRequired === false) {\r\n this.setState({\r\n phoneRequired: true,\r\n phoneShow: true\r\n });\r\n } else {\r\n this.setState({\r\n phoneRequired: false,\r\n phoneShow: false\r\n });\r\n }\r\n }\r\n\r\n handlePhoneShow = () => {\r\n if (this.state.phoneRequired != true) {\r\n let x = !this.state.phoneShow;\r\n this.setState({\r\n phoneShow: x\r\n });\r\n }\r\n }\r\n\r\n handleAddressRequire = () => {\r\n if (this.state.addressRequired != true){\r\n this.setState({\r\n addressRequired: true, \r\n addressShow: true\r\n }); \r\n } else {\r\n this.setState({\r\n addressRequired: false,\r\n addressShow: false\r\n })\r\n }\r\n }\r\n\r\n handleAddressShow = () => {\r\n if (this.state.addressRequired != true){\r\n let x = !this.state.addressShow;\r\n this.setState({\r\n addressShow: x\r\n })\r\n }\r\n }\r\n\r\n handleStartDateChange = (obj) => {\r\n this.setState({\r\n startDate: obj\r\n }); \r\n }\r\n\r\n handleEndDateChange = (obj) => {\r\n this.setState({\r\n endDate: obj\r\n });\r\n }\r\n\r\n handleBackgroundColor = (color) => {\r\n this.setState({\r\n backgroundColor: color.hex\r\n })\r\n }\r\n\r\n handleAddEntry = () => {\r\n let array = this.state.formData; \r\n let entry = {\r\n question: '',\r\n multipleChoice: false,\r\n required: false,\r\n showImageNames: false,\r\n possibleAnswers: [],\r\n possibleImageAnswers: []\r\n }\r\n array.push(entry);\r\n \r\n this.setState({\r\n formData: array\r\n }); \r\n }\r\n\r\n handleSetFormName = (event) => {\r\n const cap = (s) => {\r\n if (typeof s !== 'string') return ''\r\n return s.charAt(0).toUpperCase() + s.slice(1)\r\n }\r\n this.setState({\r\n formName: cap(event.target.value)\r\n })\r\n }\r\n\r\n handleSetQuestion = (event, index) => {\r\n let entry = this.state.formData[index]; \r\n entry.question = event.target.value; \r\n }\r\n\r\n handleMultipleChoice = (index) => {\r\n let entry = this.state.formData[index];\r\n entry.multipleChoice = !entry.multipleChoice;\r\n this.setState({});\r\n }\r\n\r\n handleRequired = (index) => {\r\n let entry = this.state.formData[index];\r\n entry.required = !entry.required;\r\n this.setState({});\r\n }\r\n\r\n handleYesNo = (index) => {\r\n let array = this.state.formData[index].possibleAnswers;\r\n \r\n if (!array.includes('Yes')){\r\n array.push('Yes');\r\n array.push('No'); \r\n }\r\n\r\n this.setState({}); \r\n }\r\n\r\n handleAddPossibleAnswer = (value, index) => {\r\n this.state.formData[index].possibleImageAnswers = [];\r\n let array = this.state.formData[index].possibleAnswers;\r\n let x = value.trim(); \r\n if (!array.includes(x)){\r\n x = x.charAt(0).toUpperCase() + x.slice(1); \r\n array.push(x);\r\n }\r\n\r\n this.setState({});\r\n }\r\n\r\n handleAddPossibleImageAnswer = (images, index) => {\r\n let imgs = images.filter(img => img.selected === true);\r\n this.state.formData[index].possibleAnswers = []; \r\n this.state.formData[index].possibleImageAnswers = imgs; \r\n this.setState({}); \r\n }\r\n\r\n handleDeleteQuestion = (index) => { \r\n let array = [...this.state.formData];\r\n if (index !== -1){\r\n array.splice(index, 1); \r\n this.setState({\r\n formData: array\r\n }); \r\n }\r\n }\r\n\r\n deletePossibleAnswer = (answer, index) => {\r\n let array = this.state.formData[index].possibleAnswers;\r\n let idx = array.indexOf(answer); \r\n\r\n if (idx !== -1){\r\n array.splice(idx, 1);\r\n }\r\n\r\n this.setState({});\r\n }\r\n\r\n Capitalize(str) {\r\n return str.charAt(0).toUpperCase() + str.slice(1);\r\n }\r\n\r\n handleLogo = (res, state) => {\r\n if (res.status === 200){\r\n this.setState({\r\n logoUrl: this.props.apiurl + '/assets/' + this.props.userdata.userId + '/' + state.selectedFile.name\r\n });\r\n }\r\n }\r\n\r\n codeGenerator = (length) => {\r\n var result = [];\r\n var characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\r\n var charactersLength = characters.length;\r\n for (var i = 0; i < length; i++) {\r\n result.push(characters.charAt(Math.floor(Math.random() *\r\n charactersLength)));\r\n }\r\n return result.join('');\r\n }\r\n\r\n handleSave = () => {\r\n\r\n if (this.props.userdata.editFormData !== null){\r\n\r\n //for updating an edit \r\n const headers = {\r\n 'X-Access-Token': this.props.userdata.accessToken\r\n }\r\n\r\n axios.post(this.props.apiurl + '/api/form/update', {\r\n userId: this.props.userdata.userId,\r\n name: this.state.formName,\r\n json: JSON.stringify(this.state),\r\n type: 'QR Code Form',\r\n status: 'active',\r\n formCode: this.state.formCode\r\n }, {\r\n headers: headers\r\n }).then(res => {\r\n if (res.status === 200) {\r\n // console.log(res);\r\n this.setState({\r\n redirect: \r\n });\r\n }\r\n }).catch(err => {\r\n console.log(err);\r\n });\r\n\r\n }else{\r\n\r\n // for initial save\r\n const headers = {\r\n 'X-Access-Token': this.props.userdata.accessToken\r\n }\r\n \r\n axios.post(this.props.apiurl + '/api/form/add', {\r\n userId: this.props.userdata.userId,\r\n name: this.state.formName,\r\n json: JSON.stringify(this.state),\r\n type: 'QR Code Form',\r\n status: 'active',\r\n formCode: this.state.formCode\r\n }, {\r\n headers: headers\r\n }).then(res => {\r\n if (res.status === 200) {\r\n console.log(res);\r\n this.setState({\r\n redirect: \r\n });\r\n }\r\n }).catch(err => {\r\n console.log(err);\r\n });\r\n }\r\n\r\n }\r\n\r\n handleCancel = () => {\r\n this.setState({\r\n formName: '',\r\n formData: [],\r\n startDate: new Date(),\r\n endDate: new Date(),\r\n fNameRequired: false,\r\n fNameShow: false,\r\n lNameRequired: false,\r\n lNameShow: false,\r\n emailRequired: false,\r\n emailShow: false,\r\n phoneRequired: false,\r\n phoneShow: false,\r\n logoUrl: null,\r\n backgroundColor: '#f1f1f1',\r\n formCode: '',\r\n redirectUrl: ''\r\n });\r\n }\r\n\r\n handleShowImageNames = (index) => {\r\n let entry = this.state.formData[index];\r\n entry.showImageNames = !entry.showImageNames;\r\n this.setState({});\r\n }\r\n\r\n handleEmailResponses = (event) => {\r\n let value = !this.state.emailResponses; \r\n\r\n this.setState({\r\n emailResponses: value\r\n }); \r\n console.log(this.state); \r\n }\r\n\r\n handleResponseEmailOne = (event) => {\r\n this.setState({\r\n responseEmailOne: event.target.value\r\n });\r\n }\r\n\r\n handleResponseEmailTwo = (event) => {\r\n this.setState({\r\n responseEmailTwo: event.target.value\r\n });\r\n }\r\n\r\n handleResponseEmailThree = (event) => {\r\n this.setState({\r\n responseEmailThree: event.target.value\r\n });\r\n }\r\n\r\n handleResponseEmailFour = (event) => {\r\n this.setState({\r\n responseEmailFour: event.target.value\r\n });\r\n }\r\n\r\n handleResponseEmailFive = (event) => {\r\n this.setState({\r\n responseEmailFive: event.target.value\r\n });\r\n }\r\n\r\n render(props){\r\n let form = []; \r\n let redirect = this.state.redirect; \r\n\r\n this.state.formData.map((entry, index) =>{\r\n form.push(\r\n
    \r\n \r\n
    \r\n )\r\n })\r\n\r\n let emailFields = \"\"; \r\n if (this.state.emailResponses === true){\r\n emailFields =
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n }else{\r\n emailFields = \"\"; \r\n }\r\n\r\n \r\n return (\r\n
    \r\n

    { this.Capitalize(this.state.formName) }

    \r\n Form Code: { this.state.formCode }\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n
    Logo
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    Background Color
    \r\n
    \r\n
    \r\n
    \r\n

    The form itself will have a white background. You can select a background color for the page that the form sits on. The default is light grey.

    \r\n
    \r\n \r\n \r\n {/* */}\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n\r\n
    \r\n
    Standard Questions
    \r\n
    \r\n
    \r\n
    \r\n First Name\r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n Last Name\r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n Email\r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n Phone\r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n Address\r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n *Optional. To add a custom field to the form, provide a name for the field here.\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n *Optional. If you provide a redirect url, please provide the full url including \"http://\" or \"https://\". \r\n \r\n
    { this.state.redirectUrlMessage }
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n *Optional.\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n {emailFields}\r\n \r\n
    \r\n
    \r\n\r\n { form }\r\n \r\n\r\n \r\n \r\n
    \r\n { redirect }\r\n
    \r\n )\r\n }\r\n}\r\n\r\nexport default formBuilder;","import axios from 'axios';\r\nimport React from 'react'; \r\nimport { NavLink, Link, Redirect } from 'react-router-dom'; \r\n\r\nclass Dashboard extends React.Component {\r\n constructor(props){\r\n super(props); \r\n\r\n this.state = {\r\n forms: [],\r\n formsApiChecked: false,\r\n redirect: ''\r\n }\r\n }\r\n\r\n componentDidMount(){\r\n if (this.props.userdata.isLoggedIn){\r\n const headers = {\r\n 'X-Access-Token': this.props.userdata.accessToken\r\n }\r\n axios.get(this.props.apiurl + '/api/forms', {headers: headers}).then(res => {\r\n this.setState({\r\n forms: res.data.forms\r\n })\r\n }).catch(err => {\r\n console.log(err); \r\n })\r\n }\r\n }\r\n\r\n componentDidUpdate(){\r\n if (this.props.userdata.isLoggedIn && this.state.formsApiChecked === false){\r\n const headers = {\r\n 'X-Access-Token': this.props.userdata.accessToken\r\n }\r\n axios.get(this.props.apiurl + '/api/forms', {headers: headers}).then(res => {\r\n this.setState({\r\n forms: res.data.forms,\r\n formsApiChecked: true\r\n })\r\n }).catch(err => {\r\n console.log(err); \r\n })\r\n }\r\n }\r\n\r\n handleDeleteForm = (formCode, userId) => {\r\n console.log(userId); \r\n const headers = {\r\n 'X-Access-Token': this.props.userdata.accessToken\r\n }\r\n \r\n axios.post(this.props.apiurl + '/api/form/delete', { \r\n formCode: formCode,\r\n userId: userId\r\n },{ \r\n headers: headers \r\n }).then(res => {\r\n this.setState({\r\n forms: res.data.forms\r\n })\r\n }).catch(err => {\r\n console.log(err);\r\n }); \r\n\r\n }\r\n\r\n handleEditForm = (formCode, userId) => {\r\n if (this.props.userdata.isLoggedIn) {\r\n const headers = {\r\n 'X-Access-Token': this.props.userdata.accessToken\r\n }\r\n\r\n axios.post(this.props.apiurl + '/api/forms/getform', {\r\n formCode: formCode,\r\n }, {\r\n headers: headers\r\n }).then(res => {\r\n this.props.redirectForEdit(res.data.form[0]);\r\n this.setState({\r\n redirect: \r\n });\r\n }).catch(err => {\r\n console.log(err);\r\n });\r\n }\r\n }\r\n\r\n handleCopyToClipboard = (text) => {\r\n let link = this.props.url + '/form/' + text; \r\n navigator.clipboard.writeText(link)\r\n }\r\n\r\n\r\n\r\n render(){\r\n let redirect = this.state.redirect; \r\n\r\n let forms = []; \r\n document.body.style.backgroundColor = \"#ffffff\"; \r\n\r\n this.state.forms.map((form, index) => {\r\n const x = JSON.parse(form.json); \r\n const startDate = new Date(Date.parse(x.startDate)).setHours(0,0,0,0); \r\n const endDate = new Date(Date.parse(x.endDate)).setHours(0,0,0,0); \r\n const now = new Date(Date.now()).setHours(0,0,0,0); \r\n let disabled = false; \r\n \r\n if (now > startDate && now < endDate){\r\n if (this.props.userdata.roles != 'admin'){\r\n disabled = true; \r\n }\r\n }\r\n\r\n forms.push(\r\n \r\n \r\n { form.name }\r\n \r\n \r\n Preview\r\n \r\n \r\n \r\n \r\n )\r\n }); \r\n\r\n\r\n return(\r\n
    \r\n
    \r\n
    \r\n

    Forms

    \r\n Add New Form\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n { forms } \r\n { redirect }\r\n \r\n \r\n \r\n
    Form Code Copy to ClipboardName
    \r\n\r\n
    \r\n
    \r\n
    \r\n ); \r\n }\r\n}\r\n\r\nexport default Dashboard; ","import React from 'react'; \r\nimport axios from 'axios'; \r\n\r\n\r\nclass AdminForms extends React.Component {\r\n constructor(props){\r\n super(props); \r\n\r\n this.state = {\r\n forms: [],\r\n }\r\n }\r\n\r\n componentDidMount() {\r\n if (this.props.userdata.isLoggedIn){\r\n const headers = {\r\n 'X-Access-Token': this.props.userdata.accessToken\r\n }\r\n \r\n axios.get(this.props.apiurl + '/api/getAllForms', {headers: headers}).then(res => {\r\n this.setState({\r\n forms: res.data.forms\r\n })\r\n }).catch(err => {\r\n console.log(err); \r\n }); \r\n }\r\n }\r\n\r\n handleCopyToClipboard = (text) => {\r\n let link = this.props.apiurl + '/form/' + text; \r\n navigator.clipboard.writeText(link)\r\n }\r\n\r\n render(){\r\n let forms = []; \r\n\r\n this.state.forms.map((form, index) => {\r\n forms.push(\r\n \r\n \r\n \r\n \r\n { form.name }\r\n { form.user.username }\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n }); \r\n\r\n return(\r\n
    \r\n
    \r\n
    \r\n

    Forms

    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {forms}\r\n \r\n
    Form Code Copy to ClipboardNameUser
    \r\n
    \r\n
    \r\n
    \r\n )\r\n }\r\n}\r\n\r\nexport default AdminForms; \r\n\r\n","import React from 'react'; \r\nimport { Link } from 'react-router-dom';\r\nimport axios from 'axios'; \r\n\r\n\r\nclass AdminUsers extends React.Component {\r\n constructor(props){\r\n super(props) \r\n\r\n this.state = {\r\n users: [],\r\n }\r\n }\r\n\r\n componentDidMount() {\r\n if (this.props.userdata.isLoggedIn){\r\n const headers = {\r\n 'X-Access-Token': this.props.userdata.accessToken\r\n }\r\n\r\n axios.get(this.props.apiurl + '/api/users/all', {headers: headers}).then(res => {\r\n res.data.users.forEach(function(user){\r\n if (user.roles.length === 0 || user.roles.length === 1){\r\n user.role = 'user'; \r\n }\r\n\r\n if (user.roles.length === 2){\r\n user.role = 'admin'; \r\n }\r\n })\r\n this.setState({\r\n users: res.data.users\r\n })\r\n }).catch(err => {\r\n console.log(err); \r\n })\r\n }\r\n }\r\n\r\n getAllUsers = () => {\r\n if (this.props.userdata.isLoggedIn){\r\n const headers = {\r\n 'X-Access-Token': this.props.userdata.accessToken\r\n }\r\n\r\n axios.get(this.props.apiurl + '/api/users/all', {headers: headers}).then(res => {\r\n res.data.users.forEach(function(user){\r\n if (user.roles.length === 0 || user.roles.length === 1){\r\n user.role = 'user'; \r\n }\r\n\r\n if (user.roles.length === 2){\r\n user.role = 'admin'; \r\n }\r\n })\r\n this.setState({\r\n users: res.data.users\r\n })\r\n }).catch(err => {\r\n console.log(err); \r\n })\r\n }\r\n }\r\n\r\n addUser = () => {\r\n console.log(\"adding user\"); \r\n }\r\n\r\n changeStatus = (user, callback) => {\r\n let status = ''; \r\n let roles = []; \r\n\r\n if (user.status === null){\r\n status = 'active';\r\n }\r\n\r\n if (user.status === 'active'){\r\n status = 'inactive';\r\n }\r\n\r\n if (user.status === 'inactive'){\r\n status = 'active';\r\n }\r\n\r\n user.roles.forEach(function(obj){\r\n roles.push(obj.name); \r\n });\r\n\r\n const headers = {\r\n 'X-Access-Token': this.props.userdata.accessToken\r\n }\r\n\r\n axios.post(this.props.apiurl + '/api/user/update', {\r\n id: user.id,\r\n\t\t\tusername: user.username,\r\n email: user.email,\r\n status: status,\r\n roles: roles\r\n\t\t},{headers: headers}).then(res => {\r\n\t\t\tif (res.status === 200) {\r\n callback(); \r\n\t\t\t}\r\n\t\t});\r\n }\r\n\r\n \r\n changeRole = (user, callback) => {\r\n let roles = []; \r\n\r\n if (user.roles.length === 1){\r\n roles = ['user', 'admin'];\r\n }\r\n\r\n if (user.roles.length === 2){\r\n roles = ['user']; \r\n }\r\n\r\n if (user.roles.length === 3){\r\n roles = ['user', 'admin']; \r\n }\r\n\r\n const headers = {\r\n 'X-Access-Token': this.props.userdata.accessToken\r\n }\r\n\r\n axios.post(this.props.apiurl + '/api/user/update', {\r\n id: user.id,\r\n\t\t\tusername: user.username,\r\n emai: user.email,\r\n status: user.status,\r\n roles: roles\r\n\t\t},{headers: headers}).then(res => {\r\n\t\t\tif (res.status === 200) {\r\n callback(); \r\n\t\t\t}\r\n\t\t});\r\n\r\n }\r\n \r\n deleteUser = (user) => {\r\n console.log(user); \r\n }\r\n\r\n render() {\r\n let users = []; \r\n\r\n \r\n\r\n this.state.users.map((user, index) => {\r\n const processRoles = (user) => {\r\n let roles = []; \r\n\r\n user.roles.forEach(function(obj){\r\n roles.push(
  • {obj.name}
  • )\r\n });\r\n \r\n return roles;\r\n }\r\n\r\n users.push(\r\n \r\n { user.username }\r\n { user.email }\r\n { user.status }\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n })\r\n\r\n return(\r\n
    \r\n
    \r\n
    \r\n

    Users

    \r\n Add New User\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {users}\r\n \r\n \r\n
    UserEmailStatusRoleAdministration
    \r\n
    \r\n
    \r\n
    \r\n )\r\n }\r\n}\r\n\r\nexport default AdminUsers; ","import React from 'react';\r\nimport axios from 'axios'; \r\n\r\nclass Organization extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n name: '',\r\n brand: '',\r\n address: '',\r\n city: '', \r\n state: '', \r\n zip: ''\r\n }\r\n }\r\n\r\n cap = (s) => {\r\n if (typeof s !== 'string') return ''\r\n return s.charAt(0).toUpperCase() + s.slice(1)\r\n }\r\n\r\n addOrganization = () => {\r\n if (this.state.formCode) {\r\n this.setState({\r\n formCode: Math.floor(Math.random() * 100000000)\r\n })\r\n }\r\n\r\n const headers = {\r\n 'X-Access-Token': this.props.userdata.accessToken\r\n }\r\n\r\n axios.post(this.props.apiurl + '/api/organization/add', {\r\n userId: this.props.userdata.userId,\r\n name: this.state.formName,\r\n json: JSON.stringify(this.state),\r\n type: 'QR Code Form',\r\n status: 'active',\r\n }, {\r\n headers: headers\r\n }).then(res => {\r\n if (res.status === 200) {\r\n console.log(res);\r\n }\r\n }).catch(err => {\r\n console.log(err);\r\n });\r\n }\r\n\r\n handleChangeName = (event) => {\r\n this.setState({\r\n name: this.cap(event.target.value)\r\n });\r\n }\r\n\r\n handleChangeAddress = (event) => {\r\n this.setState({\r\n address: this.cap(event.target.value)\r\n });\r\n }\r\n\r\n handleChangeCity = (event) => {\r\n this.setState({\r\n city: this.cap(event.target.value)\r\n });\r\n }\r\n\r\n handleChangeState = (event) => {\r\n this.setState({\r\n state: this.cap(event.target.value)\r\n });\r\n }\r\n\r\n handleChangeZip = (event) => {\r\n this.setState({\r\n zip: this.cap(event.target.value)\r\n });\r\n }\r\n\r\n render() {\r\n\r\n return (\r\n
    \r\n
    \r\n
    \r\n

    Add New Organization

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n\r\n
    \r\n \r\n \r\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 Organization;","import React from 'react'; \r\nimport logo from '../images/logo.png';\r\nimport '../styles/frontpage.css';\r\n\r\nclass ThankYou extends React.Component {\r\n constructor(props){\r\n super(props); \r\n\r\n this.state = {\r\n formLogo: \"\"\r\n }\r\n }\r\n\r\n componentDidMount(){\r\n if (localStorage.getItem('formlogo')){\r\n this.setState({\r\n formLogo: localStorage.getItem('formlogo')\r\n });\r\n }\r\n\r\n if (this.props.redirect != ''){\r\n let url = this.props.redirect; \r\n setTimeout(function(){\r\n window.location.href = url;\r\n }, 3000);\r\n }\r\n }\r\n\r\n render() {\r\n let formLogo; \r\n\r\n if (this.state.formLogo.length > 0){\r\n formLogo = \"\";\r\n }\r\n\r\n return(\r\n
    \r\n
    \r\n
    Entry complete.
    \r\n

    Thank you.

    \r\n
    \r\n
    \r\n Powered by
    \r\n \"Adapticts.com\"\r\n
    \r\n
    \r\n )\r\n }\r\n\r\n}\r\n\r\nexport default ThankYou; ","import React from 'react'; \r\nimport { Redirect, withRouter } from 'react-router-dom';\r\nimport logo from '../images/logow.png';\r\nimport '../styles/form.css';\r\nimport ReCAPTCHA from 'react-google-recaptcha';\r\nimport axios from 'axios';\r\n\r\nclass Form extends React.Component {\r\n constructor(props){\r\n super(props); \r\n this.handleAnswer = this.handleAnswer.bind(this); \r\n this.handleMultipleAnswer = this.handleMultipleAnswer.bind(this); \r\n this.handlePhoneInput = this.handlePhoneInput.bind(this); \r\n this.handleAddress1Input = this.handleAddress1Input.bind(this); \r\n this.handleAddress2Input = this.handleAddress2Input.bind(this); \r\n this.handleCityInput = this.handleCityInput.bind(this); \r\n this.handleStateInput = this.handleStateInput.bind(this);\r\n this.handleZipInput = this.handleZipInput.bind(this); \r\n this.handleReCaptcha = this.handleReCaptcha.bind(this); \r\n this.submitForm = this.submitForm.bind(this);\r\n \r\n this.state = {\r\n formStructureData: {},\r\n formErrors: [],\r\n phone: '',\r\n address1: '', \r\n address2: '', \r\n city: '', \r\n state: '', \r\n zip: '',\r\n message: '',\r\n addressKey: 0,\r\n thankYouLink: '',\r\n disclaimer: '',\r\n customFieldAnswer: '',\r\n }\r\n }\r\n\r\n componentDidMount(){\r\n const formcode = this.props.match.params.formcode;\r\n axios.post(this.props.apiurl + '/api/forms/getform', {\r\n formCode: formcode,\r\n }).then(res => {\r\n\r\n let search = window.location.search;\r\n let params = new URLSearchParams(search);\r\n let addressKey = params.get('k');\r\n\r\n this.setState({\r\n formStructureData: JSON.parse(res.data.form[0].json),\r\n addressKey: addressKey\r\n });\r\n\r\n\r\n if (this.state.formStructureData.logoUrl){ \r\n localStorage.setItem(\"formlogo\", this.state.formStructureData.logoUrl); \r\n }else{\r\n localStorage.setItem(\"formlogo\", \"\"); \r\n }\r\n\r\n const startDate = new Date(Date.parse(this.state.formStructureData.startDate)).setHours(0,0,0,0); \r\n const endDate = new Date(Date.parse(this.state.formStructureData.endDate)).setHours(0,0,0,0); \r\n const now = new Date(Date.now()).setHours(0,0,0,0); \r\n\r\n const dateOptions = { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' };\r\n\r\n //Campaign has not started yet \r\n if (now < startDate){\r\n this.setState({\r\n message: \"This campaign will be available on: \" + new Date(Date.parse(this.state.formStructureData.startDate)).toLocaleString('en-US', dateOptions)\r\n });\r\n }\r\n\r\n //Campaign is over \r\n if (now > endDate){\r\n this.setState({\r\n message: \"This campaign expired on: \" + new Date(Date.parse(this.state.formStructureData.endDate)).toLocaleString('en-US', dateOptions)\r\n });\r\n }\r\n\r\n //Right on time...\r\n if (now > startDate && now < endDate) {\r\n this.state.formStructureData.formData.map( (o, i) => {\r\n if (o.multipleChoice === true){\r\n this.setState({\r\n [o.question]: []\r\n })\r\n }else{\r\n this.setState({\r\n [o.question]: ''\r\n })\r\n }\r\n if (o.possibleImageAnswers.length > 0){\r\n o.possibleImageAnswers.map(obj => {\r\n obj.selected = false; \r\n }); \r\n o.possibleImageAnswers.sort((a, b) => (a.order > b.order) ? 1: -1); //sort order here \r\n \r\n }\r\n });\r\n }\r\n\r\n }).catch(err => {\r\n console.log(err);\r\n });\r\n\r\n }\r\n\r\n handleReCaptcha = (event) => {\r\n console.log(event); \r\n }\r\n\r\n\r\n handleAnswer = (property, event) => {\r\n this.setState({\r\n [property]: event.target.value\r\n });\r\n }\r\n\r\n handleMultipleAnswer = (property, event) => {\r\n let a = []; \r\n let values = document.getElementsByName(property);\r\n values.forEach((value) => {\r\n if (value.checked) {\r\n a.push(value.value); \r\n }\r\n });\r\n \r\n this.setState({\r\n [property]: a\r\n })\r\n }\r\n\r\n formatPhoneNumber = (value) => {\r\n if (!value) return value;\r\n\r\n const phoneNumber = value.replace(/[^\\d]/g, \"\");\r\n const phoneNumberLength = phoneNumber.length;\r\n\r\n if (phoneNumberLength < 4) return phoneNumber;\r\n\r\n if (phoneNumberLength < 7) {\r\n return `(${phoneNumber.slice(0, 3)}) ${phoneNumber.slice(3)}`;\r\n }\r\n\r\n return `(${phoneNumber.slice(0, 3)}) ${phoneNumber.slice(3,6)}-${phoneNumber.slice(6, 10)}`;\r\n }\r\n\r\n handlePhoneInput = (event) => { \r\n const formatedNumber = this.formatPhoneNumber(event.target.value); \r\n this.setState({\r\n phone: formatedNumber\r\n });\r\n }\r\n\r\n handleAddress1Input = (event) => { \r\n this.setState({\r\n address1: event.target.value\r\n })\r\n }\r\n\r\n handleAddress2Input = (event) => {\r\n this.setState({\r\n address2: event.target.value\r\n })\r\n }\r\n\r\n handleCityInput = (event) => {\r\n this.setState({\r\n city: event.target.value\r\n })\r\n }\r\n\r\n handleStateInput = (event) => {\r\n this.setState({\r\n state: event.target.value\r\n })\r\n }\r\n\r\n handleZipInput = (event) => {\r\n this.setState({\r\n zip: event.target.value\r\n })\r\n }\r\n\r\n handleSingleImageAnswer = (question, index) => {\r\n this.state.formStructureData.formData.map( (o, i) => {\r\n if (o.question === question) {\r\n o.possibleImageAnswers.map(obj => {\r\n obj.selected = false; \r\n }); \r\n o.possibleImageAnswers[index].selected = true;\r\n }\r\n });\r\n\r\n\r\n this.setState({}); \r\n }\r\n\r\n handleMultipleImageAnswer = (question, index) => {\r\n this.state.formStructureData.formData.map( (o, i) => {\r\n if (o.question === question) {\r\n o.possibleImageAnswers[index].selected = !o.possibleImageAnswers[index].selected; \r\n }\r\n });\r\n\r\n\r\n this.setState({}); \r\n }\r\n\r\n submitForm = (event) => {\r\n event.preventDefault();\r\n let formIsValid = true;\r\n let errors = []; \r\n\r\n if (this.state.formStructureData.redirectUrl.length > 0){\r\n this.props.redirect = this.state.formStructureData.redirectUrl; \r\n }\r\n\r\n //first name\r\n if(this.state.formStructureData.fNameRequired === true && !this.state.fname){\r\n formIsValid = false;\r\n errors.push('First name is required.'); \r\n }\r\n\r\n //last name\r\n if(this.state.formStructureData.lNameRequired === true && !this.state.lname){\r\n formIsValid = false;\r\n errors.push('Last name is required.'); \r\n }\r\n \r\n //email \r\n if(this.state.formStructureData.emailRequired === true && !this.state.email){\r\n formIsValid = false;\r\n errors.push('Email is required.'); \r\n }\r\n\r\n if(this.state.formStructureData.emailRequired === true && this.state.email){\r\n const pattern = /[a-zA-Z0-9]+[\\.]?([a-zA-Z0-9]+)?[\\@][a-z]{2,90}[\\.][a-z]{2,20}/g;\r\n const result = pattern.test(this.state.email);\r\n\r\n if(result === false){\r\n formIsValid = false;\r\n errors.push('Please provide a valid email address.'); \r\n }\r\n }\r\n \r\n //phone \r\n if(this.state.formStructureData.phoneRequired === true && !this.state.phone){\r\n formIsValid = false;\r\n errors.push('Phone is required.'); \r\n }\r\n\r\n if (this.state.formStructureData.addressRequired === true && !this.state.address1){\r\n formIsValid = false; \r\n errors.push('Address 1 is required'); \r\n }\r\n\r\n if (this.state.formStructureData.addressRequired === true && !this.state.city){\r\n formIsValid = false; \r\n errors.push('City is required'); \r\n }\r\n\r\n if (this.state.formStructureData.addressRequired === true && !this.state.state){\r\n formIsValid = false; \r\n errors.push('State is required'); \r\n }\r\n\r\n if (this.state.formStructureData.addressRequired === true && !this.state.zip){\r\n formIsValid = false; \r\n errors.push('Zip is required'); \r\n }\r\n\r\n \r\n\r\n //questions \r\n this.state.formStructureData.formData.map( o => {\r\n if (o.multipleChoice === true){\r\n if (o.required === true && this.state[o.question].length === 0){\r\n formIsValid = false;\r\n errors.push(o.question + ' is required.'); \r\n }\r\n }else{\r\n if (o.required === true && this.state[o.question] === ''){\r\n formIsValid = false;\r\n errors.push(o.question + ' is required.'); \r\n }\r\n }\r\n });\r\n\r\n\r\n\r\n if (formIsValid === false){\r\n this.setState({\r\n formErrors: errors\r\n });\r\n }else{\r\n this.setState({\r\n formErrors: []\r\n }); \r\n\r\n let json = JSON.parse(JSON.stringify(this.state)); \r\n delete json.formStructureData; \r\n delete json.formErrors; \r\n\r\n axios.post(this.props.apiurl +'/api/formresult/submit', {\r\n formCode: this.state.formStructureData.formCode, \r\n json: JSON.stringify(json),\r\n addressKey: this.state.addressKey\r\n }).then(res => {\r\n if (res.status === 200){\r\n if (this.state.formStructureData.redirectUrl.length > 0){\r\n this.props.handleRedirect(this.state.formStructureData.redirectUrl); \r\n }\r\n\r\n this.setState({\r\n thankYouLink: \r\n });\r\n \r\n }\r\n }).catch(err => {\r\n console.log(err); \r\n }); \r\n }\r\n \r\n }\r\n\r\n render(){\r\n let logo, fname, lname, email, phone, address, customField; \r\n let questions = []; \r\n let errors = []; \r\n let successLink = this.state.thankYouLink; \r\n let disclaimer = this.state.formStructureData.disclaimer; \r\n\r\n\r\n let styles = {\r\n display: \"none\"\r\n }\r\n\r\n let imgStyle = { \r\n width: '200px',\r\n height: '200px',\r\n objectFit: 'contain'\r\n }\r\n\r\n let message = this.state.message; \r\n\r\n this.state.formErrors.map( o => {\r\n errors.push(
  • {o}
  • );\r\n }); \r\n\r\n if (this.state.formStructureData.customField != ''){\r\n customField =
    \r\n \r\n this.setState({ customFieldAnswer: this.state.formStructureData.customField + \": \" + event.target.value }) }/>\r\n
    ;\r\n }\r\n\r\n if (this.state.formStructureData.logoUrl){\r\n logo =
    \r\n
    \r\n \"logo\"\r\n
    \r\n
    ;\r\n }\r\n\r\n if (message.length === 0){\r\n document.body.style.backgroundColor = this.state.formStructureData.backgroundColor;\r\n\r\n\r\n if (this.state.formStructureData.fNameShow === true){\r\n fname =
    \r\n \r\n { this.state.formStructureData.fNameRequired ? Required : null }\r\n this.setState({ fname: event.target.value }) }/>\r\n
    ;\r\n }\r\n\r\n if (this.state.formStructureData.lNameShow === true){\r\n lname =
    \r\n \r\n { this.state.formStructureData.lNameRequired ? Required : null }\r\n this.setState({ lname: event.target.value }) }/>\r\n
    ;\r\n }\r\n\r\n if (this.state.formStructureData.emailShow === true){\r\n email =
    \r\n \r\n { this.state.formStructureData.emailRequired ? Required : null }\r\n this.setState({ email: event.target.value }) }/>\r\n
    ;\r\n }\r\n\r\n if (this.state.formStructureData.phoneShow === true){\r\n phone =
    \r\n \r\n { this.state.formStructureData.phoneRequired ? Required : null }\r\n \r\n
    ;\r\n }\r\n\r\n if (this.state.formStructureData.addressShow === true){\r\n address =
    \r\n
    \r\n \r\n { this.state.formStructureData.addressRequired ? Required : null }\r\n \r\n
    \r\n
    \r\n \r\n Optional\r\n \r\n
    \r\n
    \r\n \r\n { this.state.formStructureData.addressRequired ? Required : null }\r\n \r\n
    \r\n
    \r\n \r\n { this.state.formStructureData.addressRequired ? Required : null }\r\n \r\n
    \r\n
    \r\n \r\n { this.state.formStructureData.addressRequired ? Required : null }\r\n \r\n
    \r\n
    \r\n }\r\n\r\n if (this.state.formStructureData.formData){\r\n // console.log(this.state.formStructureData.formData); \r\n this.state.formStructureData.formData.map((entry, index) => {\r\n \r\n\r\n let requiredTag; \r\n\r\n let a = []; \r\n if (entry.required === true){\r\n requiredTag = Required; \r\n }\r\n\r\n // if (entry.possibleImageAnswers.length > 0){\r\n\r\n // }\r\n \r\n if (entry.multipleChoice === false){\r\n if (entry.possibleImageAnswers.length === 0){\r\n //possible answers \r\n questions.push(\r\n
    \r\n { requiredTag }\r\n {\r\n entry.possibleAnswers.forEach( (o, i) => {\r\n a.push(
    \r\n this.handleAnswer(entry.question, event) } />\r\n \r\n
    );\r\n })\r\n }\r\n {a}\r\n
    \r\n )\r\n }else{\r\n //possible image answers\r\n questions.push(\r\n
    \r\n
    \r\n
    \r\n { requiredTag }\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n {\r\n entry.possibleImageAnswers.forEach( (o, i) => {\r\n if (entry.showImageNames && entry.showImageNames === true){\r\n a.push(\r\n
    this.handleSingleImageAnswer(entry.question, i)}>\r\n {o.name}\r\n
    \r\n

    {o.name.replace(/\\.[^/.]+$/, \"\")}

    \r\n
    \r\n
    \r\n );\r\n }else{\r\n a.push(\r\n
    this.handleSingleImageAnswer(entry.question, i)}>\r\n {o.name}\r\n
    \r\n );\r\n }\r\n })\r\n }\r\n {a}\r\n
    \r\n
    \r\n
    \r\n
    \r\n )\r\n }\r\n }else{\r\n if (entry.possibleImageAnswers.length === 0){\r\n //possible answers\r\n questions.push(\r\n
    \r\n { requiredTag }\r\n {\r\n entry.possibleAnswers.forEach( (o, i) => {\r\n a.push(
    \r\n this.handleMultipleAnswer(entry.question, event) } \r\n />\r\n \r\n
    );\r\n })\r\n }\r\n {a}\r\n
    \r\n )\r\n }else{\r\n //possible image answers\r\n questions.push(\r\n
    \r\n { requiredTag }\r\n {\r\n entry.possibleImageAnswers.forEach( (o, i) => {\r\n if (entry.showImageNames && entry.showImageNames === true){\r\n a.push(
    \r\n
    this.handleMultipleImageAnswer(entry.question, i)}>\r\n {o.name}\r\n\r\n
    \r\n

    {o.name.replace(/\\.[^/.]+$/, \"\")}

    \r\n
    \r\n
    \r\n
    );\r\n }else{\r\n a.push(
    \r\n
    this.handleMultipleImageAnswer(entry.question, i)}>\r\n {o.name}\r\n
    \r\n
    );\r\n }\r\n })\r\n }\r\n {a}\r\n
    \r\n )\r\n }\r\n }\r\n \r\n })\r\n\r\n }\r\n\r\n }\r\n return( \r\n \r\n
    \r\n { logo }\r\n

    { this.state.formStructureData.formName }

    \r\n
    \r\n { fname } \r\n { lname }\r\n { email }\r\n { phone }\r\n { address }\r\n { customField }\r\n { questions }\r\n \r\n { message } \r\n \r\n { disclaimer }\r\n\r\n
    \r\n \r\n \r\n \r\n\r\n

    { this.state.message }

    \r\n This site is protected by reCAPTCHA and the Google\r\n Privacy Policy and\r\n Terms of Service apply.\r\n \r\n {successLink}\r\n
    \r\n )\r\n }\r\n}\r\n\r\n\r\n\r\nexport default withRouter(Form); ","import React from 'react';\nimport { Route, Switch, Link, withRouter, Redirect } from 'react-router-dom';\nimport axios from 'axios';\nimport FrontPage from './components/frontPage.component';\nimport Signup from './components/signup.component';\nimport Assets from './components/assets.component'; \nimport Login from './components/login.component';\nimport ForgotPassword from './components/forgotPassword.component';\nimport Inactive from './components/inactive.component';\nimport FormBuilder from './components/formBuilder';\nimport Dashboard from './components/dashboard.component';\nimport AdminForms from './components/adminForms.component'; \nimport AdminUsers from './components/adminUsers.component'; \nimport Organization from './components/organization.component';\nimport Thankyou from './components/thankyou.component'; \nimport Form from './components/form.component'; \nimport { connect } from 'react-redux';\nimport logo from './images/logow.png';\n\nclass App extends React.Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.handleLogin = this.handleLogin.bind(this);\n\t\tthis.handleLogout = this.handleLogout.bind(this);\n\t\tthis.handleSignup = this.handleSignup.bind(this); \n\t\t\n\t\tthis.state = {\n\t\t\tAPIURL: \"https://formsadmin.adapticts.com\", //Production \n\t\t\turl: \"https://forms.adapticts.com\", //Production\n\t\t\t// APIURL: \"https://devformsadmin.adapticts.com\", //Development\n\t\t\t// url: \"https://devforms.adapticts.com\", //Development\n\t\t\tisLoggedIn: false,\n\t\t\tloginMessage: '',\n\t\t\tusername: '',\n\t\t\tpassword: '',\n\t\t\taccessToken: '',\n\t\t\temail: '',\n\t\t\tuserId: 0,\n\t\t\troles: '',\n\t\t\tstatus: '',\n\t\t\tshowRedirect: false,\n\t\t\tredirect: '',\n\t\t\teditFormData: null,\n\t\t\tformLogo: ''\n\t\t};\n\n\t\tlet formcode = this.props.location.pathname.replace(\"/form/\", \"\"); \n\t\t\n\t\t// temp over ride for SCU form \n\t\t// if (formcode === 'QD3ccF085KKlHccDLNrm6xae3rCajW'){\n\t\t// \twindow.location.href=\"https://www.shrevecu.org/connect/\"; \n\t\t// }\n\t}\n\n\tcomponentDidMount(){\n\t\tlet x = JSON.parse(localStorage.getItem(\"state\")); \n\t\tlet formcode = this.props.location.pathname.replace(\"/form/\", \"\") || null;\n\n\t\tif (x === null){\n\n\t\t}else{\n\t\t\tif (formcode === null){\n\t\t\t\tthis.setState({\n\t\t\t\t\tAPIURL: x.APIURL,\n\t\t\t\t\tisLoggedIn: x.isLoggedIn,\n\t\t\t\t\tusername: x.username,\n\t\t\t\t\tpassword: x.password,\n\t\t\t\t\taccessToken: x.accessToken,\n\t\t\t\t\temail: x.email,\n\t\t\t\t\tuserId: x.userId,\n\t\t\t\t\troles: x.roles,\n\t\t\t\t\tstatus: x.status,\n\t\t\t\t\tshowRedirect: x.showRedirect,\n\t\t\t\t\tredirect: x.redirect,\n\t\t\t\t\teditFormData: x.editFormData,\n\t\t\t\t\tformLogo: x.formLogo\n\t\t\t\t}); \n\t\t\t}\n\t\t}\t\n\t}\n\n\tredirect = (location) => {\n\t\tthis.setState({ redirect: location });\n\t\tconsole.log(this.state); \n\t}\n\n\tredirectForEdit = (data) => {\n\t\tthis.setState({ \n\t\t\teditFormData: data,\n\t\t});\n\t}\n\n\tredirectForNew = () => {\n\t\tthis.setState({\n\t\t\tredirect: '/formbuilder',\n\t\t\teditFormData: null\n\t\t});\n\t}\n\n\thandleUsernameChange = (event) => {\n\t\tthis.setState({ username: event.target.value });\n\t}\n\n\thandlePasswordChange = (event) => {\n\t\tthis.setState({ password: event.target.value });\n\t}\n\n\thandleLogin() {\n\t\taxios.post(this.state.APIURL + '/api/auth/signin', {\n\t\t\tusername: this.state.username,\n\t\t\tpassword: this.state.password\n\t\t}).then(res => {\n\t\t\tif (res.status === 200) {\n\t\t\t\tthis.props.dispatch({\n\t\t\t\t\ttype: 'IS_LOGGED_IN',\n\t\t\t\t\tisLoggedIn: true,\n\t\t\t\t\taccessToken: res.data.accessToken,\n\t\t\t\t\temail: res.data.email,\n\t\t\t\t\tuserId: res.data.id,\n\t\t\t\t\tusername: this.state.username\n\t\t\t\t});\n\t\t\t\t\n\t\t\t\tif (res.data.status === 'inactive'){\n\t\t\t\t\tthis.setState({\n\t\t\t\t\t\tisLoggedIn: false,\n\t\t\t\t\t\tshowRedirect: true,\n\t\t\t\t\t\tredirect: '/inactive'\n\t\t\t\t\t}); \n\t\t\t\t}else{\n\t\t\t\t\tlet role; \n\t\t\t\t\tif (res.data.roles.includes(\"ROLE_ADMIN\")){\n\t\t\t\t\t\trole = \"admin\";\n\t\t\t\t\t}else{\n\t\t\t\t\t\trole = \"user\"; \n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tthis.setState({\n\t\t\t\t\t\taccessToken: res.data.accessToken,\n\t\t\t\t\t\temail: res.data.email,\n\t\t\t\t\t\tuserId: res.data.id,\n\t\t\t\t\t\troles: role,\n\t\t\t\t\t\tstatus: res.data.status,\n\t\t\t\t\t\tisLoggedIn: true,\n\t\t\t\t\t\tredirect: '/dashboard'\n\t\t\t\t\t});\n\n\t\t\t\t\tlocalStorage.setItem(\"state\", JSON.stringify(this.state)); \n\t\t\t\t}\n\t\t\t}\n\t\t}).catch(err => {\n\t\t\tthis.setState({\n\t\t\t\tloginMessage: err.response.data.message\n\t\t\t}) \n\t\t})\n\t}\n\n\thandleLogout() {\n\t\tthis.setState({\n\t\t\taccessToken: '',\n\t\t\temail: '',\n\t\t\tisLoggedIn: false,\n\t\t\tshowRedirect: true,\n\t\t\tredirect: '/'\n\t\t});\n\n\t\tlocalStorage.removeItem(\"state\"); \n\t}\n\n\thandleSignup() {\n\t\tthis.setState({\n\t\t\tredirect: '/signup'\n\t\t});\n\t}\n\n\tsetLogoUrl = (url) => {\n\t\tthis.setState({\n\t\t\tformLogo: url\n\t\t})\n\t}\n\n\n\n\trender() {\n\t\n\t\tlet account, nav, spacer, redirect, role, adminLinks; \n\n\t\tif (this.state.showRedirect){\n\t\t\tredirect = \n\t\t}\n\n\n\t\tif (this.state.isLoggedIn){\n\t\t\tif (this.state.roles === 'admin'){\n\t\t\taccount =
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\tAccount\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\tForms Administration\n\t\t\t\t\t\t\tUser Administration\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\tLogout\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    ;\n\n\t\t\t}else{\n\t\t\taccount =
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\tAccount\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\tLogout\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    ;\n\t\t\t}\n\n\t\t\tnav = ;\n\n\t\t\tspacer =
    \n\t\t\t\n\t\t\tredirect = \n\t\t\t\n\t\t}else{\n\t\t\tspacer =
    \n\t\t}\n\n\t\treturn (\n\t\t\t
    \n\t\t\t\t{ nav }\n\t\t\t\t{ spacer }\n\t\t\t\t{ redirect }\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\n\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t)\n\t}\n}\n\nconst mapStateToProps = state => {\n\treturn state;\n}\n\nconst mapDispatchToProps = dispatch => {\n\treturn {\n\t\tdispatch\n\t}\n}\n\nexport default connect(\n\tmapStateToProps,\n\tmapDispatchToProps\n)(withRouter(App))\n","const reportWebVitals = onPerfEntry => {\n if (onPerfEntry && onPerfEntry instanceof Function) {\n import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {\n getCLS(onPerfEntry);\n getFID(onPerfEntry);\n getFCP(onPerfEntry);\n getLCP(onPerfEntry);\n getTTFB(onPerfEntry);\n });\n }\n};\n\nexport default reportWebVitals;\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { Provider } from 'react-redux'; \nimport store from './store'; \nimport App from './App';\nimport { BrowserRouter as Router, useHistory } from \"react-router-dom\";\nimport reportWebVitals from './reportWebVitals';\nimport 'bootstrap/dist/css/bootstrap.min.css';\nimport $ from 'jquery';\nimport 'bootstrap/dist/js/bootstrap.bundle';\n\n\nwindow.store = store;\n\nif (window.location.href.indexOf('QD3ccF085KKlHccDLNrm6xae3rCajW') > -1 ){\n\twindow.location.href = 'https://www.shrevecu.org/connect/';\n}\n\n\nReactDOM.render(\n\t\n\t\t\n\t\t\t\n\t\t\n\t,\n\tdocument.getElementById('root')\n);\n\n\nreportWebVitals();\n"],"sourceRoot":""}