{"version":3,"sources":["assets/img/ico-quick-pay.png","assets/img/ico-register.png","assets/img/ico-faq.png","assets/img/header-bg-hero.png","utils/history.js","assets/jss/xrs.js","assets/jss/xrs/components/buttonStyle.js","components/CustomButtons/Button.js","utils/context.js","assets/jss/xrs/views/landingPageStyle.js","store/actions/action_types.js","store/actions/actions.js","store/redux/redux-actions/redux_action_types.js","store/redux/redux-actions/redux_actions.js","components/Header/AccountItem.js","assets/jss/xrs/views/changePasswordOrPinStyle.js","assets/jss/xrs/components/cardStyle.js","components/Card/Card.js","assets/jss/xrs/components/cardBodyStyle.js","components/Card/CardBody.js","assets/jss/xrs/components/parallaxStyle.js","components/Parallax/Parallax.js","assets/jss/xrs/components/customInputStyle.js","components/CustomInput/CustomInput.js","components/Grid/GridContainer.js","components/Grid/GridItem.js","utils/XRSAPIs.js","assets/jss/xrs/imagesStyles.js","assets/jss/xrs/views/sectionsSections/blueHeaderSectionStyle.js","assets/jss/xrs/components/tableStyle.js","components/Table/Table.js","views/SectionsPage/Sections/BlueHeaderSection.js","utils/apiErrorHandler.js","views/ChangePassworOrPin/ChangePasswordOrPin.js","components/Header/IntercomComponent.js","components/Header/HeaderLoggedIN.js","assets/jss/xrs/components/customDropdownStyle.js","components/CustomDropdown/CustomDropdown.js","assets/jss/xrs/tooltipsStyle.js","assets/jss/xrs/components/headerLinksStyle.js","components/Header/HeaderLinksUser.js","views/SectionsPage/Sections/HeaderSectionLoggedID.js","assets/jss/xrs/views/sectionsSections/welcomeSectionStyle.js","views/SectionsPage/Sections/WellcomeSection.js","views/WellcomePage/WellcomePage.js","assets/jss/xrs/views/documentsPageStyle.js","views/SectionsPage/Sections/DocumentSection.js","views/DocumentsPage/DocumentsPage.js","assets/jss/xrs/views/sectionsSections/viewAccountSectionStyle.js","views/SectionsPage/Sections/ViewAccountSection.js","views/ViewAccountPage/ViewAccountPage.js","assets/jss/xrs/views/createPaymentPlanPageStyle.js","views/SectionsPage/Sections/PayNowSection.js","views/SectionsPage/Sections/WizardSection.js","views/CreatePaymentPage/CreatePaymentPlanPage.js","assets/jss/xrs/components/footerStyle.js","components/Footer/Footer.js","views/SectionsPage/Sections/FooterSection.js","assets/jss/xrs/components/headerStyle.js","components/Header/Header.js","components/Header/HeaderLinksNoUser.js","views/SectionsPage/Sections/HeaderSection.js","views/SectionsPage/Sections/LinksSection.js","views/LandingPage/LandingPage.js","views/LandingPage/LandingPageCreateUser.js","assets/jss/xrs/components/typographyStyle.js","components/Typography/Success.js","assets/jss/xrs/components/fabCameraStyle.js","components/Fab/FabOpenedCamera.js","components/camera/Camera.js","views/QuickPayPage/QuickPayPage.js","assets/jss/xrs/views/quickPaymentStyle.js","views/QuickPayPage/QuickPayPaymentStatus.js","views/PayNowPage/PayNowPaymentStatus.js","views/PayNowPage/PayNowPage.js","assets/jss/xrs/views/sectionsSections/viewOfferSectionsStyle.js","views/SectionsPage/Sections/ViewOfferSection.js","views/ViewOfferPage/ViewOfferPage.js","assets/jss/xrs/components/accordionStyle.js","components/Accordion/Accordion.js","views/FaqPage/FaqPage.js","assets/jss/xrs/views/budgetPageStyle.js","assets/jss/xrs/views/sectionsSections/budgetSectionStyle.js","assets/jss/xrs/views/incomeBudgetFieldsStyle.js","views/BudgetPage/IncomeBudgetFields.js","views/SectionsPage/Sections/BudgetSection.js","components/PdfViewer/PdfViewer.js","assets/jss/xrs/components/fabStyle.js","components/Fab/FabViewDocument.js","views/BudgetPage/BudgetPage.js","views/SectionsPage/Sections/RequestCallBackSection.js","views/RequestCallBackPage/RequestCallBackPageLoggendIn.js","assets/jss/xrs/views/changePasswordOrPinPageStyle.js","views/ChangePassworOrPin/ChangePasswordOrPinPage.js","assets/jss/xrs/views/faqPageLoginStyle.js","assets/jss/xrs/views/sectionsSections/faqSectionStyle.js","views/SectionsPage/Sections/FaqSection.js","views/FaqPageLogin/FaqPageLogin.js","views/IframePage/IframePage.js","views/SectionsPage/Sections/MessagesSection.js","views/MessagesPage/MessagesPage.js","routes.js","store/reducers/accounts_reducer.js","store/reducers/menu_reducer.js","store/reducers/auth_reducer.js","store/reducers/callbacks_reducer.js","store/reducers/customer_reducer.js","store/reducers/drawer_reducer.js","store/reducers/form_reducer.js","store/reducers/offer_reducer.js","store/reducers/plain_reducer.js","store/reducers/selectedAccounts_reducer.js","store/reducers/site_reducer.js","store/reducers/timeout_reducer.js","assets/jss/xrs/views/componentsSections/notificationsStyles.js","store/redux/redux-reducers/apiCalls_reducer.js","store/redux/redux-reducers/getSiteDetailsReducer.js","store/redux/redux-reducers/html_reducer.js","store/redux/redux-reducers/camera_reducer.js","store/redux/redux-reducers/documents_reducer.js","store/redux/redux-reducers/index.js","store/redux/createReduxStore.js","utils/auth.js","components/Fab/Fab.js","context_state_config.js","App.js","index.js"],"names":["module","exports","createBrowserHistory","hexToRgb","input","replace","test","length","Error","first","second","last","toUpperCase","parseInt","document","documentElement","style","setProperty","textVariables","primaryColor","primaryDarkColor","secondaryColor","warningColor","dangerColor","successColor","infoColor","roseColor","grayColor","transition","container","paddingRight","paddingLeft","marginRight","marginLeft","width","maxWidth","defaultFont","fontFamily","fontWeight","lineHeight","boxShadow","primaryBoxShadow","infoBoxShadow","successBoxShadow","warningBoxShadow","dangerBoxShadow","roseBoxShadow","title","color","background","margin","paddingTop","borderTop","height","textDecoration","marginTop","marginBottom","minHeight","main","position","padding","zIndex","mainRaised","borderRadius","mlAuto","btnLink","backgroundColor","boxShdow","buttonStyle","button","minWidth","border","fontSize","textTransform","letterSpacing","willChange","textAlign","whiteSpace","verticalAlign","touchAction","cursor","display","top","transform","left","fullWidth","primary","secondary","info","success","warning","danger","rose","white","twitter","facebook","google","linkedin","pinterest","youtube","tumblr","github","behance","dribbble","reddit","instagram","simple","transparent","disabled","opacity","pointerEvents","lg","sm","round","block","link","justIcon","fileButton","useStyles","makeStyles","styles","RegularButton","React","forwardRef","props","ref","children","size","className","rest","classes","btnClasses","classNames","Button","Context","createContext","landingPageStyle","RightAlign","CenterAlign","LinkHome","middle","middleInput","middleright","centerText","digitText","wordBreak","BoldText","iFrameTop","centerTextBlue","textLabel","centerTextTitle","centerTextSubTitle","whiteText","centerOnlyText","centerButton","cardRadius","paddingBottom","control","controlWhite","footerParagraph","footerTitle","whiteTextField","paper","paperLeft","subtitle","linkButton","login","hide","inlineBlock","shieldText","alignItems","list","float","right","icon","headerLoggedInColor","bodyLoggedIn","FAILURE","set_Customer","customer","type","payload","set_Callbacks","callbacks","set_Site","site","set_Drawer","state","set_selectedAccount","set_Offer","offer","set_Accounts","accounts","set_Registration_method","set_num_accounts","text","set_menu","menu","set_startoveralltimeout","time","API_ACTION_TYPES","GET_SITE_DETAILS_ACTION_TYPES","DOCUMENTS_ACTION_TYPES","HTML_ACTION_TYPES","CAMERA_ACTION_TYPES","apiActions","loading","error","clear","code","getSiteDetailsActions","logo","footerImage","currency","paymentProvider","devNum","convenienceFee","uploadImagesToBudget","setDrawerState","set4week","htmlActions","termsQuickPay","ReactHtmlParser","termsPlan","termsDiscount","viewOfferText","createPlanText","createPlantoc","createBudgetText","viewAccountText","setBurgerAnimation","cameraActions","openCamera","setCapturedImage","addCapturedImage","deleteDocument","resetDocuments","documentsActions","openDocumet","viewDocumet","theme","root","appBar","transitions","create","easing","sharp","duration","leavingScreen","appBarShift","easeOut","enteringScreen","menuButton","spacing","drawer","flexShrink","drawerPaper","drawerHeader","mixins","toolbar","justifyContent","textCenter","textCenterAccNum","content","flexGrow","contentShift","AccountItem","page","useTheme","dispatch","account","useContext","useDispatch","onClick","ACTIONS","createplantext","history","push","accountnumber","balancedesc","Icon","drawerWidth","isMobile","changePasswordOrPinStyle","instructions","whiteInfo","whiteInfoMiddle","whiteRight","blueTitle","blueText","Title","Wellcome","BoxFull","Middle","blueTextMiddle","rightValues","cardStyle","card","flexDirection","wordWrap","cardPlain","cardProfile","cardBlog","cardRaised","cardBackground","backgroundPosition","backgroundSize","whiteColor","cardPricing","listStyle","borderBottom","cardPricingColor","borderColor","cardProduct","Card","plain","profile","blog","raised","pricing","product","testimonial","cardClasses","undefined","cardBodyStyle","cardBody","flex","WebkitBoxFlex","cardBodyBackground","cardBodyPlain","cardBodyFormHorizontal","cardSignup","cardBodyColor","CardBody","formHorizontal","signup","cardBodyClasses","parallaxStyle","parallax","maxHeight","overflow","filter","darkColor","small","Parallax","image","parallaxClasses","customInputStyle","underline","borderBottomColor","borderBottomWidth","underlineError","underlineSuccess","helperTextRoot","labelRoot","labelRootWhite","labelRootError","labelRootSuccess","feedback","bottom","formControl","whiteUnderline","fieldSet","borderStyle","whiteInput","CustomInput","formControlClasses","useSelector","GetSiteDetailsReducer","formControlProps","id","helperText","label","labelProps","inputProps","showCurrency","inputRootCustomClasses","multiline","reg","labelClasses","underlineClasses","rootClasses","inputClasses","FormControl","placeholder","InputLabel","shrink","htmlFor","Hidden","mdUp","smDown","Input","rows","startAdornment","InputAdornment","mind","variant","FormHelperText","grid","GridContainer","Grid","defaultProps","GridItem","item","api","GetSiteDetatilsAPIUrl","GetcreateUserAPIUrl","GetRecreateUserAPIUrl","GetVerifyAPIUrl","GetVerifyByEmailAPIUrl","GetWebOffersAPIUrl","GetWebOffersCardAPIUrl","GetReturnAPIUrl","GetWelcomeDetails","WebOfferResponseNoCard","changePassword","changePin","CreateOfferRequestTabaPay","SetWebOfferTabaPay","imagesStyles","imgFluid","imgRounded","imgRoundedCircle","imgRaised","imgGallery","imgCardTop","borderTopLeftRadius","borderTopRightRadius","imgCardBottom","borderBottomLeftRadius","borderBottomRightRadius","imgCard","imgCardOverlay","blueHeaderSectionStyle","whiteCenter","CardStyle","tableStyle","gray","table","borderSpacing","borderCollapse","tableShoppingHead","tableCell","tableHeadCell","borderTopWidth","tableCellTotal","tableCellAmount","tableResponsive","overflowX","tableStripedRow","tableRowHover","warningRow","dangerRow","successRow","infoRow","BlueHeaderSection","useState","ballance","setBallance","sessionStorage","getItem","phone","setPhone","stateSite","SiteReducer","stateSelectedAccount","SelectedAccountsReducer","deptphonenumber","numOfAccounts","AccountsReducer","stateCustomer","CustomerReducer","useEffect","totalbalance","balance","phonenumber","xs","md","value","displayType","fixedDecimalScale","thousandSeparator","decimalScale","prefix","clientname","href","ApiErrorHandler","from","context","message","MESSAGE","statusText","responseText","parsedError","JSON","parse","error_description","errors","forEach","element","status","stateInfoDialog","SliderSettings","infinite","arrows","touchMove","centerMode","variableWidth","dots","initialSlide","slidesToShow","responsive","breakpoint","settings","slidesToScroll","ChangePasswordAndPin","Set","skipped","setSkipped","topNav","setTopNav","steps","step","setStep","cReference","setReference","cMobileNumber","setMobileNumber","cEmail","setcEmail","cDateOfBirth","setDateOfBirth","CredentialToReset","setCredentialToReset","OldPassword","setOldPassword","NewPassword","setNewPassword","ConfirmPassword","setConfirmPassword","SecurityCode","setSecurityCode","registrationType","registrationMethod","cred","m","cumobilephone","r","custnumber","d","cudob","token","handleBack","newSkipped","has","isStepSkipped","values","delete","prevActiveStep","slickPrev","slider","key","justify","form","name","onSubmit","event","data","preventDefault","stringify","Reference","MobileNumber","DateOfBirth","fetch","method","headers","Authorization","body","then","res","json","slickNext","catch","description","required","onChange","e","target","minwidth","url","URLS","email","OldPIN","NewPIN","ConfirmPIN","autoComplete","pattern","IntercomComponent","user","user_id","setValue","visible","setVisible","authKey","chatvisible","appID","to","animationName","animationDuration","animationDelay","menuLogo","DisplayY","DisplayN","drawerPass","standardButton","accountButton","notificationButton","username","Right","useStyles2","HeaderLoggedIN","classes2","drawers","updateDrawers","setAccounts","logoimageurl","ApiCallsReducer","menuAnimation","setMenuAnimation","stateAccounts","stateMenu","MenuReducer","buttons","setButtons","useBeforeunload","handleLogOut","useRef","handler","listener","current","contains","addEventListener","removeEventListener","useOnClickOutside","resetDrawerState","tmpbuttons","accountMenus","find","x","recNo","recno","menuButtons","activeAccounts","planinplace","setPlanText","contextDrawers","open","openSecond","openThird","lastOpenedDrawer","stateTwo","stateThree","stateOne","arr","Object","keys","dispatchDrawerOne","dispatchDrawer","dispatchDrawerTwo","dispatchDrawerThree","handleDrawerOpen","handleFirtstDrawerOpen","handleSecondDrawerOpen","handleThirdDrawerOpen","fromBackButton","authObj","logout","handleChangePassword","handleChangePin","handlereadMessages","anchorEl","setAnchorEl","handleMenu","currentTarget","handleClose","openp","Boolean","budgetPageButton","buttonName","budgetPageButtonclassName","buttonVisible","CssBaseline","AppBar","elevation","LinearProgress","Toolbar","IconButton","aria-label","edge","clsx","src","alt","unreadmessages","aria-controls","aria-haspopup","Badge","badgeContent","anchorOrigin","vertical","horizontal","cufname","culname","toLowerCase","keepMounted","transformOrigin","onClose","MenuItem","Drawer","anchor","component","Link","renderButton","renderUrlButtons","map","index","path","openInNewTab","buttonFrameURL","textClass","rel","buttonText","fillteredButtons","el","customDropdownStyle","popperClose","pooperNav","breakpoints","down","manager","innerManager","dropdown","backgroundClip","menuList","pooperResponsive","dropdownItem","darkHover","primaryHover","infoHover","successHover","warningHover","dangerHover","roseHover","dropdownItemRTL","dropdownDividerItem","buttonIcon","caret","borderRight","borderLeft","caretActive","caretDropup","caretRTL","dropdownHeader","noLiPadding","tooltipsStyle","tooltip","fontStyle","textShadow","wordSpacing","lineBreak","headerLinksStyle","up","WebkitBoxAlign","MsFlexAlign","WebkitBoxOrient","WebkitBoxDirection","MsFlexDirection","listItem","listItemText","navLink","navLinkJustIcon","navButton","notificationNavLink","registerNavLink","navLinkActive","icons","dropdownIcons","socialIcons","dropdownLink","img","marginRight5","collapse","MsFlexPreferredSize","flexBasis","HeaderLinks","dropdownHoverColor","ListItem","hoverColor","HeaderSectionLoggedID","brand","links","relative","changeColorOnScroll","welcomeSectionStyle","RightText","tableWrapper","tableWrapperMobile","accountRow","groupRow","totalRow","columns","align","format","toFixed","WellcomeSection","window","scrollTo","scrollTop","rowdata","setRowdata","setSite","selectedAccount","response","isAuthenticatedUser","dataRows","i","orgname","arrearsamount","Id","ReadContext","welcomE1","Table","TableHead","TableRow","column","TableCell","TableBody","row","welcomE2","deptofficehours","deptaddress","deptemail","LandingPage","stateDrawer","documentsPageStyle","baseStyle","borderWidth","outline","activeStyle","acceptStyle","rejectStyle","DocumentSection","setText","uploadedDocument","txt","useDropzone","maxFiles","accept","onDrop","acceptedFiles","docs","assign","preview","URL","createObjectURL","itemId","getRootProps","fileRejections","getInputProps","isDragActive","isDragAccept","isDragReject","useMemo","DocumentsPage","CameraReducer","viewAccountSectionStyle","overflowY","fullRow","ViewAccountSection","grouprowdata","setGroupRowdata","total","setTotal","setAccount","HtmlReducer","fnmoment","locale","navigator","language","getdata","newDate","Date","ITEMCODE","itemcode","RECNO","STARTDATE","ENDDATE","Paydate","Description","Amount","amount","paydate","transactionid","groupedItems","groupArray","viewacccounttext","stickyHeader","Math","sign","colSpan","date","index2","ViewAccountPage","createPaymentPlanPageStyle","eventListenerCopy","Hide","cardNOBORDER","radioAlign","PayNowSection","loadingButon","setloadingButon","usesconveniencefee","setUsesconveniencefee","paymentgatewayurl","setPaymentgatewayurl","note","setNote","ifamevisible","setIfamevisible","setSitename","setCompanyname","setAboutus","setAddress","setOfficehours","setPhonenumber","setEmail","screenshot","setScreenstate","showQuickPay","setShowQuickPay","termsClicked","setTermsCliked","setTermsApiText","termsText","setTermsText","cardref","setCardref","setCufphone","paymentDate","setPaymentDate","minPayment","setMinPayment","stateOffer","OfferReducer","setAmmount","quickPayAPIData","setquickPayAPIData","tabaPayMessage","today","source","RealexHpp","script","createElement","async","appendChild","footerimageurl","sitecurrency","usE4WEEKLYFREQUENCY","uploadimagestobudget","conveniencefee","sitename","companyname","aboutus","officehours","address","getMenu","termsquickpay","paynowmin","cuphone","removeChild","formik","useFormik","initialValues","setImageBase64","RedirectResponse","RedirecURL","RelalexInit","oneMonth","setHppUrl","embedded","init","iframe","getElementById","slice","asData","split","quickPayData","NOTE","LASTDIGITS","EXPIRATIONDATE","CARDTOKEN","ok","REDIRECTURL","data1","termsplan","termsdiscount","viewoffertext","createplantoc","createbudgettext","setItem","callbackReasons","handlePayDateChange","html2canvas","canvas","newScreenshot","toDataURL","screen","iremcode","ItemRecno","ItemCode","PAYMENTAMOUNT","ScreenShot","CURRENCYSYMBOL","PAYERREF","cardpayerref","CARDREF","AUTHCODE","RESULTCODE","AMOUNT","PASSREF","submitFormPayNow","Number","postfreq","frequency","OFFERID","WOOFFERID","DOWNPAYMENT","downpayment","REMAINGBAL","balanceToPay","startdate","FREQUENCY","FINALDATE","endDate","FINALAMOUNT","APPLYDISCOUNT","DISCOUNTOPTIONNUMBER","SCREENSHOT","submitFormPaymentPlan","end","dateSetlementOffer","utc","local","add","TERM","OFFERACCEPTEDDECLINED","OFFERDECLINEDREASON","submitFormViewOffer","handleChange","Collapse","in","showdate","paynowtext","handleSubmit","enabled","min","views","MAXPAYDATE","max","maxLength","FormControlLabel","Checkbox","Radio","checked","cardastdigits","RadioGroup","paragraph","redText","blackText","rightRed","rightBlack","WizzardSection","setDuration","setDownpayment","paymentAmount","setPaymentAmount","weekly","biweekly","fourweekly","montly","freqValues","setfreqValues","setEndDate","setFrequency","planInterestapi","planInterest","use4week","setplanInterest","setBalanceToPay","paymentVisible","setPaymentVisible","textMessage","setTextMessage","payNowSectionMessage","setPayNowSectionMessage","paymentType","setpaymentType","newValue","plantype","ammount","parseFloat","WOOFFER1MINPAY","abs","toString","dur","isStepOptional","PMT","ir","np","pv","fv","pmt","pvif","pow","handleCalculation","endDatePar","durationPar","downpaymentPar","frequencyPar","rate","setbalanceToPay","principal","rates","interestrate","weekly4","floor","montdur","formatPaymentAmount","handleText","paymentAmountFormatted","paymentFrequencyFormatted","formatPaymentFrequency","plannowmin","handleDownPaymentChange","planmaxduration","planminpayment","handleDurationChange","handleFreqChange","isNaN","planmaxstart","prevSkipped","forms","checkValidity","footerStyle","rightLinks","footer","big","a","dark","iconSocial","btnTwitter","btnDribbble","btnInstagram","footerBrand","pullCenter","clearFix","Footer","themeType","footerClasses","FooterSection","footerImageUrl","AboutUs","Address","WorkingHours","PhoneNumber","Email","headerStyle","flexFlow","absolute","fixed","flexWrap","appResponsive","appResponsiveRight","transitionProperty","transitionDuration","transitionTimingFunction","visibility","hidden","closeButtonDrawer","Header","mobileOpen","setMobileOpen","headerColorChange","handleDrawerToggle","pageYOffset","getElementsByTagName","classList","remove","appBarClasses","implementation","defaultProp","headerSection","LinksSection","direction","require","firstDigitName","setfirstDigitName","secondDigitName","setsecondDigitName","thirdDigitName","setthirdDigitName","firstDigitValue","setfirstDigitValue","secondDigitValue","setsecondDigitValue","thirdDigitValue","setthirdDigitValue","setRegistrationType","selectedregistrationType","setselectedRegistrationType","NotFound","setNotFound","registerValues","setRegisterValues","setResetValues","retruevedUser","setretruevedUser","mainscreen","setMainScreen","verifyPin","setVerifyPin","registerscreen","setRegisterScreen","resetPinscreen","setResetPinscreen","setPaymentResult","alertOpen","setAlertOpen","alertText","setAlertText","errorMessage","customerCaption","setcustomerCaption","search","location","indexOf","getPINDigits","paymentprovider","registrationtype","custcaption","sessiontimeout","overalltimeout","dispatchIntercomKey","chatauth","loginClick","xhr","XMLHttpRequest","setRequestHeader","onreadystatechange","readyState","digit","third","displayDigits","alert","send","registerForm","customernumber","regusername","dob","pass","passconfirm","scrollToTop","UserName","Password","EmailAddress","submitRegisterForm","resetcustomernumber","resetphone","resetdob","submitResetForm","behavior","registrationmethod","multiplenum","includes","num","targetURL","Logon","firstPosition","secondPosition","thirdPosition","hash","formValues","grant_type","password","validatePIN","client_id","firstValue","secondValue","thirdValue","pairs","encodeURIComponent","timeoutDate","access_token","refresh_token","expires_in_seconds","expires_in","setSeconds","getSeconds","ResetPins","postValues","join","LoginForm","focusUsername","querySelector","focusPass","focusFirst","focusSecond","focusThird","focusButton","activeElement","focus","verifyPinForm","pinnum","record","pin","verifyData","userName","emailComfirmed","emailConfirmed","emailAddress","reference","customerRecordNo","phoneConfirmed","mobileNumber","dateOfBirth","xhrtoken","valuesPost","entries","getPinVerification","OldPin","NewPin","Dialog","aria-labelledby","aria-describedby","DialogTitle","DialogContent","DialogContentText","DialogActions","xl","ml-xl-auto","maxlength","minlength","inputMode","defaultValue","registrationTypeprop","labelPlacement","LandingPageCreateUser","typographyStyle","defaultFontStyle","defaultHeaderMargins","quote","quoteText","quoteAuthor","mutedText","primaryText","infoText","successText","warningText","dangerText","roseText","smallText","fabStyle","fabCameraContainer","fabReturnContainer","fabChangeCameraContainer","fabIconHolder","fab","fabReturn","fabLike","fabDislike","FabOpenedCamera","changeCamera","capturePicture","openFrom","capturedImage","documents","confirmedImages","numberOfCameras","setNumberOfCameras","closeFullscreen","exitFullscreen","webkitExitFullscreen","msExitFullscreen","mediaDevices","getUserMedia","video","enumerateDevices","devices","kind","blob","Blob","exists","videoConstraints","facingMode","useWindowSize","windowSize","setWindowSize","handleResize","innerWidth","innerHeight","CustomCamera","webcamRef","setChangeCamera","ratio","capture","useCallback","imageSrc","getScreenshot","audio","screenshotFormat","aspectRatio","QuickPayPage","query","URLSearchParams","useQuery","disableButton","setdisableButton","useSSN","setSSN","minimumPayAmount","setMinimumPayAmount","minimumDob","setMinimumDob","maximumDob","setMaximumDob","quickPayText","setQuickPayText","termsApiText","quickpaytext","quickpayusessn","minquickpay","maxdate","referencenum","get","SSN","submitForm","ssn","err","tabindex","quickPaymentStyle","blue","green","blueBox","DiscountBlue","DiscountGreen","DiscountItem","Border","DiscountItemRed","AmmountItemRed","Radiusradius","AmmountItem","footerRed","textButton","box","useStyles1","QuickPayPaymentStatus","authcode","setAuthcode","setMessage","setResultCode","setPassref","paymentstatustext","setpaymentstatustext","vissibleSucc","setVissibleSucc","parsed","queryString","classes1","Paper","shown","PayNowPaymentStatus","passref","paymentStatusFrom","red","GreenTick","RedTick","PayNowPage","viewOfferSectionsStyle","ViewOfferSection","termsVisible","setTermsVisible","showDate","setShowDate","setoneMonth","refValues","setrefValues","setValues","termsChosen","WOOFFERMAXFIRSTPAYDATE","WOOFFER1MONTHS","WOOFFER1TOTALPAYABLE","WOOFFER1AMOUNT","WOOFFER2MONTHS","WOOFFER2TOTALPAYABLE","WOOFFER2MINPAY","WOOFFER2AMOUNT","WOOFFER3MONTHS","WOOFFER3TOTALPAYABLE","WOOFFER3MINPAY","WOOFFER3AMOUNT","WOOFFER1TEXT","WOOFFER1DISCOUNTPERCENT","WOOFFER1DISCOUNTVALUE","WOOFFER2TEXT","WOOFFER2DISCOUNTPERCENT","WOOFFER2DISCOUNTVALUE","WOOFFER3TEXT","WOOFFER3DISCOUNTPERCENT","WOOFFER3DISCOUNTVALUE","ViewOfferPage","accordionStyle","expansionPanel","expansionPanelExpanded","expansionPanelSummary","primaryExpansionPanelSummary","secondaryExpansionPanelSummary","warningExpansionPanelSummary","dangerExpansionPanelSummary","successExpansionPanelSummary","infoExpansionPanelSummary","roseExpansionPanelSummary","expansionPanelSummaryExpaned","primaryExpansionPanelSummaryExpaned","secondaryExpansionPanelSummaryExpaned","warningExpansionPanelSummaryExpaned","dangerExpansionPanelSummaryExpaned","successExpansionPanelSummaryExpaned","infoExpansionPanelSummaryExpaned","roseExpansionPanelSummaryExpaned","expansionPanelSummaryContent","expansionPanelSummaryExpandIcon","expansionPanelSummaryExpandIconExpanded","expansionPanelDetails","Accordion","active","setActive","single","setTimeout","collapses","activeColor","prop","ExpansionPanel","expanded","panel","newArray","splice","ExpansionPanelSummary","expandIcon","ExpansionPanelDetails","FaqPage","faqs","header","details","defaultExpanded","budgetPageStyle","budgetSectionStyle","showSummary","hideSummary","Summary","TitleTop","SubTitle","Money","MoneyGreen","Submited","MoneyRed","FinaliseMoney","Line","incomeBudgetFieldsStyle","IncomeBudgetFields","selectedvalue","selected","setSelected","setOpenDocumet","uploadedDocumet","setUploadedDocumet","cameraExist","setcameraExist","incomeId","expenseId","elem","openFullscreen","requestFullscreen","webkitRequestFullscreen","msRequestFullscreen","onhandleChange","Select","handleSelectedChange","canAttachFile","documentToShow","pdf","BudgetSection","showSuccess","setshowSuccess","incomesToDisplay","setincomesToDisplay","expensesToDisplay","setexpensesToDisplay","incomeMonthlyTotal","setIncomeMonthlyTotal","incomeYearlyTotal","setIncomeYearlyTotal","incomeWeeklyTotal","setIncomeWeeklyTotal","expenceMonthlyTotal","setExpenceMonthlyTotal","expenceYearlyTotal","setExpenceYearlyTotal","expenceWeeklyTotal","setExpenceWeeklyTotal","balanceMonthlyTotal","setBalanceMonthlyTotal","balanceYearlyTotal","setBalanceYearlyTotal","balanceWeeklyTotal","setBalanceWeeklyTotal","showpaymentplanbuttonafterbudgetsubmitted","setShowpaymentplanbuttonafterbudgetsubmitted","scroll","incomeslist","flat","expencelist","calculate","incomes","expences","cincomeMonthlyTotal","cincomeYearlyTotal","cincomeWeeklyTotal","cexpenceMonthlyTotal","cexpenceYearlyTotal","cexpenceWeeklyTotal","cbalanceMonthlyTotal","cbalanceYearlyTotal","cbalanceWeeklyTotal","formData","FormData","BudgetInformation","YearlyIncomeTotal","MonthlyIncomeTotal","WeeklyIncomeTotal","YearlyExpenditureTotal","MonthlyExpenditureTotal","WeeklyExpenditureTotal","YearlySavingsTotal","MonthlySavingsTotal","WeeklySavingsTotal","Incomes","Expenditures","append","IncomeName","incomeType","IncomeValue","IncomeFrequency","AttachedFileName","ExpenditureName","expenseType","ExpenditureValue","ExpenditureFrequency","IncomedataRows","ExpencedataRows","incomeCategory","incomeOrder","atachedFileName","createIncomeData","expenseCategory","expenseOrder","createExpenceData","groupedItemse","cat","handleInputChange","handleInputSelectedChange","handleInputExChange","handleInputExSelectedChange","class","browserHistory","PdfViewer","fabContainer","fabOptions","listStyleType","fabLabel","alignSelf","userSelect","FabViewDocument","viewDocument","BudgetPage","DocumentsReducer","documentToBeViewed","RequestCallBackSection","openTime","setopenTime","closeTime","setcloseTime","callbackReason","setCallbackReason","callbackDate","setCallBackDate","callbackDateMax","setCallBackDateMax","callbackTime","setCallBackTime","callbackphone","setCallbackphone","callbackDateTime","setCallbackDateTime","stateCallbacks","CallbacksReducer","closinghours","openinghours","maxcallbackdate","datetime","callBacklDate","DateOfCallBack","Note","PhoneType","handleCallBackDateChange","handleCallBackTimeChange","handlecallbackReasonChange","labelId","callbackid","callbackreason","handleCallBackPhoneChange","CardContent","RequestCallBackLoggedID","changePasswordOrPinPageStyle","faqPageLoginStyle","faqSectionStyle","FaqSection","FaqPageLogin","Iframecontainer","responsiveIframe","IframePage","iframeUrl","defaultTheme","createMuiTheme","getThemePaletteMode","palette","darken","lighten","MessagesSection","columnsDesktop","field","headerName","headerClassName","cellClassName","renderCell","params","HasAttachment","columnsMobile","selectedRow","setSelectedRow","getSiteDetails","ReceivedAt","showDetails","setShowDetails","onRowEvent","MessageId","onRowClick","getRowClassName","getValue","getRowId","density","autoHeight","pageSize","CustomerRecNo","Body","MimeType","Attachment","download","click","revokeObjectURL","MessagesPage","PrivateRoute","Component","auth","render","pathname","Routes","utils","MomentUtils","authState","WellcomePage","CreatePayment","faq","RequestCallBackPage","initialState","action","ACTION_TYPES","is_authenticated","AuthReducer","DrawerReducer","user_textChange","user_textSubmit","FormReducer","stateprop1","stateprop2","Reducer1","sessionTimeout","overallTimeout","startOverallTimeout","burgerButtonAnimation","appReducer","combineReducers","TimeOutReducer","rootReducer","store","createStore","applyMiddleware","thunkMiddleware","Auth","userProfile","makeFormEncoder","getBearerToken","this","RefreshToken","handleAuth","auth0","parseHash","authResult","accessToken","idToken","expiresAt","expiresIn","getTime","getProfile","getAccessToken","client","userInfo","removeItem","isAuthenticated","now","checkToken","enteredPIN","verifydata","isUserAuthenticated","ContextState","IdleOpen","setIdleOpen","InfoOpen","setInfoOpen","FabOpen","setFabOpen","InfoTitle","setInfoTitle","InfoText","setInfoText","InforedirectUrl","setInforedirectUrl","tokenInterval","setTokenInterval","handleVisibilityChange","console","log","checkTimer","clearInterval","tokenTimeout","interval","setInterval","TokenTimer","planText","useReducer","drawerReducer","drawerReducerOne","drawerReducerTwo","drawerReducerThree","handleDispatchDrawer","handleDispatchDrawerOne","handleDispatchDrawerTwo","handleDispatchDrawerThree","offerReducer","dispatchOfferReducer","menuReducer","dispatchMenuReducer","handleDispatchOffer","customerReducer","dispatchCustomerReducer","handleDispatchCustomer","accountsReducer","dispatchAccountsReducer","selectAccountReducer","dispatchsSlectAccountReducer","handleDispatchSite","dispatchSiteReducer","siteReducer","handleDispatchCallbacks","dispatchCallbacksReducer","callbacksReducer","numAccounts","setNumAccounts","handleDispatchAccounts","handleMenuReducer","stateReducer1","dispatchReducer1","handleDispatchFalse","stateAuthReducer","dispatchAuthReducer","stateFormReducer","dispatchFormReducer","handleIdleOpen","selectedValue","IntercomKey","setIntercomKey","IntercomVisible","setIntercomVisible","Provider","stateProp1","stateProp2","dispatchContextTrue","dispatchContextFalse","handleIntercomKey","statePlanText","setstatePlanText","redirectUrl","OpenInfoDialog","dispatchSelectAccountReducer","handleDispatchSelectAccountReducer","stateNumAcctions","useContextChangeState","useContextSubmitState","useContextSubmit","persist","handleFormSubmit","useContextChange","handleFormChange","profileState","handleUserLogin","handleUserLogout","handleUserAddProfile","handleAddProfile","handleUserRemoveProfile","handleAuthentication","loggedID","IdleDialog","timeoutvalue","InfoDialog","redirect","handleInfoClose","onActive","onIdle","onAction","debounce","timeout","setAutoLogout","disableBackdropClick","intervalDelay","precision","onComplete","renderer","minutes","seconds","autoFocus","performance","navigation","App","trackingCode","settrackingCode","trackingCodeInit","settrackingCodeInit","trackingcode","ReactGA","initialize","unlisten","listen","pageview","ReactDOM"],"mappings":"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AU,GAC3Be,UACE,0BACArC,EAASsB,EAAU,IACnB,gCACAtB,ED0FW,QCzFX,iCACAA,EAASsB,EAAU,IACnB,WAGNgE,QAAS,CACPvB,gBAAiB1C,EAAa,GAC9BgB,UACE,oBACArC,EAASqB,EAAa,IACtB,gCACArB,EAASqB,EAAa,IACtB,4BACArB,EAASqB,EAAa,IACtB,UACF,kBAAmB,CACjB0C,gBAAiB1C,EAAa,GAC9BgB,UACE,0BACArC,EAASqB,EAAa,IACtB,gCACArB,EDoEW,QCnEX,iCACAA,EAASqB,EAAa,IACtB,WAGNkE,QAAS,CACPxB,gBAAiB5C,EAAa,GAC9BkB,UACE,oBACArC,EAASmB,EAAa,IACtB,gCACAnB,EAASmB,EAAa,IACtB,4BACAnB,EAASmB,EAAa,IACtB,UACF,kBAAmB,CACjB4C,gBAAiB5C,EAAa,GAC9BkB,UACE,0BACArC,EAASmB,EAAa,IACtB,gCACAnB,ED8CW,QC7CX,iCACAA,EAASmB,EAAa,IACtB,WAGNqE,OAAQ,CACNzB,gBAAiB3C,EAAY,GAC7BiB,UACE,oBACArC,EAASoB,EAAY,IACrB,gCACApB,EAASoB,EAAY,IACrB,4BACApB,EAASoB,EAAY,IACrB,UACF,kBAAmB,CACjB2C,gBAAiB3C,EAAY,GAC7BiB,UACE,0BACArC,EAASoB,EAAY,IACrB,gCACApB,EDwBW,QCvBX,iCACAA,EAASoB,EAAY,IACrB,WAGNqE,KAAM,CACJ1B,gBAAiBxC,EAAU,GAC3Bc,UACE,oBACArC,EAASuB,EAAU,IACnB,gCACAvB,EAASuB,EAAU,IACnB,4BACAvB,EAASuB,EAAU,IACnB,UACF,kBAAmB,CACjBwC,gBAAiBxC,EAAU,GAC3Bc,UACE,0BACArC,EAASuB,EAAU,IACnB,gCACAvB,EDEW,QCDX,iCACAA,EAASuB,EAAU,IACnB,WAGNmE,MAAO,CACL,oBAAqB,CACnB3B,gBDPa,OCQblB,MAAOrB,EAAU,KAGrBmE,QAAS,CACP5B,gBDViB,UCWjBlB,MDbe,OCcfR,UACE,oBACArC,EDde,WCef,gCACAA,EDhBe,WCiBf,4BACAA,EDlBe,WCmBf,UACF,4BAA6B,CAC3B+D,gBDrBe,UCsBflB,MDxBa,OCyBbR,UACE,0BACArC,EDzBa,WC0Bb,gCACAA,ED5BW,QC6BX,iCACAA,ED7Ba,WC8Bb,WAGN4F,SAAU,CACR7B,gBDjCkB,UCkClBlB,MDrCe,OCsCfR,UACE,oBACArC,EDrCgB,WCsChB,gCACAA,EDvCgB,WCwChB,4BACAA,EDzCgB,WC0ChB,UACF,kBAAmB,CACjB+D,gBD5CgB,UC6ChBlB,MDhDa,OCiDbR,UACE,0BACArC,EDhDc,WCiDd,gCACAA,EDpDW,QCqDX,iCACAA,EDpDc,WCqDd,WAGN6F,OAAQ,CACN9B,gBDxDgB,UCyDhBlB,MD7De,OC8DfR,UACE,oBACArC,ED5Dc,WC6Dd,gCACAA,ED9Dc,WC+Dd,4BACAA,EDhEc,WCiEd,UACF,kBAAmB,CACjB+D,gBDnEc,UCoEdlB,MDxEa,OCyEbR,UACE,0BACArC,EDvEY,WCwEZ,gCACAA,ED5EW,QC6EX,iCACAA,ED3EY,WC4EZ,WAGN8F,SAAU,CACR/B,gBD/EkB,UCgFlBlB,MDrFe,OCsFfR,UACE,oBACArC,EDnFgB,WCoFhB,gCACAA,EDrFgB,WCsFhB,4BACAA,EDvFgB,WCwFhB,UACF,kBAAmB,CACjB+D,gBD1FgB,UC2FhBlB,MDhGa,OCiGbR,UACE,0BACArC,ED9Fc,WC+Fd,gCACAA,EDpGW,QCqGX,iCACAA,EDlGc,WCmGd,WAGN+F,UAAW,CACThC,gBDtGmB,UCuGnBlB,MD7Ge,OC8GfR,UACE,oBACArC,ED1GiB,WC2GjB,gCACAA,ED5GiB,WC6GjB,4BACAA,ED9GiB,WC+GjB,UACF,kBAAmB,CACjB+D,gBDjHiB,UCkHjBlB,MDxHa,OCyHbR,UACE,0BACArC,EDrHe,WCsHf,gCACAA,ED5HW,QC6HX,iCACAA,EDzHe,WC0Hf,WAGNgG,QAAS,CACPjC,gBD7HiB,UC8HjBlB,MDrIe,OCsIfR,UACE,oBACArC,EDjIe,WCkIf,gCACAA,EDnIe,WCoIf,4BACAA,EDrIe,WCsIf,UACF,kBAAmB,CACjB+D,gBDxIe,UCyIflB,MDhJa,OCiJbR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","file":"static/js/main.673814f0.chunk.js","sourcesContent":["module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAEg0lEQVRogeWaa4hVVRTHf6OWMzXkpQdBJmlZ9oLmU0XM1JSVRUWRlZAUam/oYU8Swl72ID+kpESRBNEEWkHQVFhBD6GgPmRPmspKUIKUMkzTHrNiD/8Tu7P3uXPuPefMvdEPNufMWnvv2Wuvtfde55yLmRUtXWa21My2WjVsNLPbzKwjNs4RYQE6gNeAWcAHwIfAn0U6TDEROA04AlgOLAxqxKxqoMzSnK8swZNZZU8zW2tmw2Y2LV1nXGBRY/Sp9tISZz3N78AyefvEtLKoAd26bgs05fKbeptYtgEtZ0JJA1gH/BVIy6M7q6e0AecAewS1sjlMml9K3n1ykzZgAJjURD/nVrwO+oG3AmnEALSfPxRI41yhwbeMmAE/AC8BM4Auyb5TmMRmJuEAYDIw5O0alVNvF1oNfKRyaqANmau6MwJNhcQ84LMBWAF8GmhC3gFuBjYHmhYZsB3YpFMwD87YnzNCrTLqhVBfgwt0gdbK0YGmQup5oAz2B64D9ivY18G6Xgr06N5tFM86A972KroTrzclq8f0OjrH48BFgbR5zlBJuNwZcAqwVYvvMylqOf9FkFylOFx99gWa4riz6tokhAaiDwuj4xb4TaPU2heYF0iLM7LWYqnE3rq/y/MImu2ZwMmKSZf7HJdjGAcBjwbSkoglc86AHV4YuZ3qGuBu4EDJ/tA1T+L3FTAnkBbndreoY7vQK8AFut8LeAE4G/geuB4YBDbqCekJ4Kqgh3/T5e0cZeJSl8ADD2ugaIBrNPgngRuB3dItBn4CduYY0BTg6UBaEjEDEuYrpFYphHwWyND1OYbhTugrA2lxXDTMjoWQYzxwr7bWGzz5xcBKue8Q4KSgZcivDZwrjTAS5lmpRK92muVeauwedJ7R34/JkO1ByzEmywPJzL7qyZxBncBzwCLJhlMeahsDJuv6rSf7UuVO5TfDWuh5mZZ6XP1G4TUa0xXSQ+qj20/vswzYpWunF0LurcPpwK3AoQq/mUHLbNxhdr6ndQ9JedbGUzqTetRHv5/qZBmwSdejgPd077zyAPAycItkbk1cFrSOsyq1mJ0H8rDCy7lcH2v9NlkGvK7rbM+ALZrxuQqlcTlz//GasXUqPnmSxjd1rXnta/8YpZezyyIvVt83s51mNsWTHWlmq81sl5ltM7MNal8zs4W67/HqP1/RK/eEzVkecNwBvAu8qHjdoZmfo0MsOcjqZaNusX9S0gONi4Y3gC8kG3mgSXtg0MyWeDO4WPr1ZnaMJz/TzHrVrp4Hyir96nteur+0B3qVjfZokd2nHelB4GO9LxqUrkMfHlpKLIT6vXdBbtd4RBnq/cB5cmXbkDZgkbdl+dvc58CFOoiO15bqzoVL2uXV4j7AVH3v8nVTgxbwtQqpN3YD8thQ0KJCEgPmqxRhi8qYMkFpc7OcBZww1oP2cQbcE0jzU5MBgxV/4Mg8sWO7UDNMapdPTM3S105faMrmWGBJjj6vBn4MpKNQ1IDkgaRWxwO11JecLDoz5HhfinYHmv/6Tw3+9z/2aO3Pbcz4G73UfsklkkdCAAAAAElFTkSuQmCC\"","module.exports = \"data:image/png;base64,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\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAFIUlEQVRogdVae4hWRRT/7UNdbZe2WjbXUsvVMqJCTSPo5RZCsGlF0QNi0aggivKPsgdkRZGSQaZR+VfRO0l7QGwSuwYlFFGGRkGtGm6tK5lfj3V97i+m/d119s7c+33ffaz4g8O938w5Z+bcmXPmzMxXQRIjhEoAcwFcA+ASAFMBnBhq+hCAHQC+A7ABwPsACrHdMwbkTJUkF5L8hcNxhGQhRP0hHvP7BZKNUX10CjKmM0lusjq0leQDJGeSHONpy8yISSRvIbmO5GHJ7SV5s4c/VwMuJrlHHegiea066OONomaSa60P8HRYR5RgWppF8m81+i7J2pT6biO53zIiVwMaSHarsVcSfPUoarGMGJpOUcxp6E01soFkVRE9Y0neSPJ+kgtIjvbwhEci8InGPAyYpQbM9Gny1Ns0h2RPKOqYSDXdw2tT4BMr8zDgbSlf6qmzqZ5kr3g3klxGcrN+/1xkJJoVnUyIrfcxJKVaKT0oP4jTc6c62275yGjLiFaPjE3rxXd7pbOyJcelAGoAdAL4o4iWyXquN2up3g8C+FTvUx2J4VirX/OqnarkmCnJL0vQ8BKAvQDessqqAFyh952OxHB8oV8zfMOTlNaEQ1wZNI9kp+RNCB5XRLYimK5ZjkCNnvudmnhcDeATcfQCuB7AvliJwWl3wCSDWfrAYT2rnJp4XKTa1wCcDeDrWO6jGAXgSJYG/K7nGU5NadgM4K8SeRsAjAOwKzyFTtAQXgZgojUt4mCc9lEAP4hndgyvDwMqO+Spi8KFKt9qO0arZ2UsBbslP95a5n2pchSdTvIxkidH1PvoRbX1YLAjuxXAGwAqAHTo/ScA/RFfwMYukcFGAJcDWAjgVYczG9QC+A1AHYBp0AZinyy612NtOXSdldPUlCh3HsnXSU721PnoSbXxcZALrVLBGg9zuWS2j19J34oSZReL/yZPXZhmkDyg7ej5gQHbpGCaRyAJXWDl7W0lyFcriy22bzC+skN6nwnKocyuzyOQhtrUkPlSd2egb7r1oc0+Y1RQZ6ym4m+95WKNACYkdLkftUreA2CVyt4DcJ/l7OWiC8AUAJ/rWOafIXlZVQhZ/GuCcBpgpaVngcIqFShWk5wtX/F96YAmkDzN+l2QDmefEDUCj1uZYTkw6cQKAO2WTBOA5QrVQZph2tsCYI91cGVW1lMANCvdNiG8VWG9oEOwCqcvESOQB00h+RTJ750xc/GnNWot1gg4/YoagbwxuAgNftXgeLFfX7pbC9UyAEtUbhK3at8IHCsDSkVgxFB/w3JR+4HPrIQpK5hd2MMeXQ0xW9CH9FyiLaeDKAPgOTlOg4EI2bsAvKxNTbtTe9SI7qhsNcqAq5ySfNAkreOLaF/tlAhZbmiOCY57A6Km0NL/jyzSYTuAxQDGyIHNjcs7I2XAIgCTnNLy0KfoYfKqNm1ERsyAOQDOcUrLQ5dC304tWruz7rxtQNgXekVZYVuEnjo9E980mo73SFGxUJYHzpXOnjQGdOj9Dqc2X5iss0UneZsSt6QbwwEdi1/py/hyoJNIfqMM8/k0+oOXJ6TMGPGcNs9jfQIpyFw3TSS5iOR2tWeuXeuyMMBkpY9Y97JxMKP1rOTMbcm/MbxxMDczp/o6VQ6F/2pwlhKsuKPFOvnOciVgndqJ9TmcwzGgyLZF9wIfpok+tg+US/M11Qw69PxghHzHoSS50EcAblB6O9epHWEkTeZsI6BjlOPKAIPACLNn/TbDPpUOAP8BuRcyNk+ZJv4AAAAASUVORK5CYII=\"","module.exports = __webpack_public_path__ + \"static/media/header-bg-hero.656d635b.png\";","import { createBrowserHistory } from \"history\";\r\n\r\nexport default createBrowserHistory();\r\n","const hexToRgb = (input) => {\r\n input = input + \"\";\r\n input = input.replace(\"#\", \"\");\r\n let hexRegex = /[0-9A-Fa-f]/g;\r\n if (!hexRegex.test(input) || (input.length !== 3 && input.length !== 6)) {\r\n throw new Error(\"input is not a valid hex color.\");\r\n }\r\n if (input.length === 3) {\r\n let first = input[0];\r\n let second = input[1];\r\n let last = input[2];\r\n input = first + first + second + second + last + last;\r\n }\r\n input = input.toUpperCase(input);\r\n let first = input[0] + input[1];\r\n let second = input[2] + input[3];\r\n let last = input[4] + input[5];\r\n return (\r\n parseInt(first, 16) +\r\n \", \" +\r\n parseInt(second, 16) +\r\n \", \" +\r\n parseInt(last, 16)\r\n );\r\n};\r\n\r\n// ##############################\r\n// // // Variables - Styles that are used on more than one component\r\n// #############################\r\n\r\nconst drawerWidth = 260;\r\n//Deelopment\r\n\r\nconst unatorizedFooterLightColor = \"#FFF\";\r\n\r\nconst unatorizedFooterDarkColor = \"#444\";\r\n\r\nconst UnautorizedBodyBackground = \"white\";\r\n\r\nconst MenuItemsTextColor = \"black\";\r\n\r\nconst MenuFontFamily = `\"Rubik\", \"Helvetica\", sans-serif\"`;\r\n\r\nconst UnutorizedMenuColor = \"white\";\r\n\r\nconst primaryBackground = \"#4d0b4d\";\r\n\r\nconst primaryHover = \"#827a85\";\r\n\r\nconst primaryBorderColor = \"#ffd966\";\r\n\r\nconst primarylayoutleftColor = \"#711471\";\r\n\r\nconst primarylayoutRightColor = \"#611461\";\r\n\r\nconst primaryDarklayoutLeftColor = \"#711471\";\r\n\r\nconst primaryDarklayoutRightColor = \"#430b43\";\r\n\r\nconst paralaxBackground = \"black\";\r\n\r\nconst autorizedPageHeaderFontFamily = `\"Rubik\", \"Helvetica\", sans-serif\"`;\r\n\r\nconst autorizedPageHeaderTextSize = \"17px\";\r\nconst MenuFontSize = \"17px\";\r\n\r\nconst autorizedPageHeaderTextColor = \"white\";\r\n\r\nconst autorizedPageHeaderBackgroundColor = \"#711471\";\r\n\r\nconst autorizedCardBackground = \"white\";\r\n\r\nconst autorizedBodyBackground = \"lightgrey\";\r\n\r\nconst AuthorizedMenuColor = \"white\";\r\nconst primaryTextColor = \"#4d0b4d\";\r\n\r\nconst UploadDocumentsURL = null;\r\n\r\nconst primaryTextColorActive = \"#827a85\";\r\n\r\n//textVariables\r\nconst HeaderTotal = \"Total Balance\";\r\n\r\nconst MainGridHeading1 = \"Description\";\r\nconst MainGridHeading2 = \"Account #\";\r\nconst MainGridHeading3 = \"Balance\";\r\nconst MainGridHeading4 = \"Arrears\";\r\nconst RighthandDetails1 = \"Account Number\";\r\nconst RighthandDetails2 = \"Opening Hours\";\r\nconst mobileNumberText = \"Mobile number\";\r\nconst socialSecurityNumberText = \"NIN\";\r\n\r\n// production;\r\n// {\r\n// const UploadDocumentsURL = `#{UploadDocumentsURL}#`;\r\n\r\n// const autorizedPageHeaderFontFamily = `#{autorizedPageHeaderFontFamily}#`;\r\n// const autorizedPageHeaderTextSize = \"#{autorizedPageHeaderTextSize}#\";\r\n// const autorizedPageHeaderTextColor = \"#{autorizedPageHeaderTextColor}#\";\r\n// const autorizedPageHeaderBackgroundColor =\r\n// \"#{autorizedPageHeaderBackgroundColor}#\";\r\n// const autorizedCardBackground = \"#{autorizedCardBackground}#\";\r\n// const autorizedBodyBackground = \"#{autorizedBodyBackground}#\";\r\n// const AuthorizedMenuColor = \"#{AuthorizedMenuColor}#\";\r\n// const unatorizedFooterLightColor = \"#{unatorizedFooterLightColor}#\";\r\n// const unatorizedFooterDarkColor = \"#{unatorizedFooterDarkColor}#\";\r\n// const UnautorizedBodyBackground = \"#{UnautorizedBodyBackground}#\";\r\n// const MenuItemsTextColor = \"#{MenuItemsTextColor}#\";\r\n// const MenuFontSize = \"#{MenuFontSize}#\";\r\n// const MenuFontFamily = `#{MenuFontFamily}#`;\r\n// const paralaxBackground = \"#{paralaxBackground}#\";\r\n// const UnutorizedMenuColor = \"#{UnutorizedMenuColor}#\";\r\n// const primaryBackground = \"#{primaryBackground}#\";\r\n// const primaryHover = \"#{primaryHover}#\";\r\n// const primaryBorderColor = \"#{primaryBorderColor}#\";\r\n// const primarylayoutleftColor = \"#{primarylayoutleftColor}#\";\r\n// const primarylayoutRightColor = \"#{primarylayoutRightColor}#\";\r\n// const primaryDarklayoutLeftColor = \"#{primaryDarklayoutLeftColor}#\";\r\n// const primaryDarklayoutRightColor = \"#{primaryDarklayoutRightColor}#\";\r\n// const primaryTextColor = \"#{primaryTextColor}#\";\r\n// const primaryTextColorActive = \"#{primaryTextColorActive}#\";\r\n\r\n// //textVariables\r\n// const HeaderTotal = \"#{HeaderTotal}#\";\r\n\r\n// const MainGridHeading1 = \"#{MainGridHeading1}#\";\r\n// const MainGridHeading2 = \"#{MainGridHeading2}#\";\r\n// const MainGridHeading3 = \"#{MainGridHeading3}#\";\r\n// const MainGridHeading4 = \"#{MainGridHeading4}#\";\r\n// const RighthandDetails1 = \"#{RighthandDetails1}#\";\r\n// const RighthandDetails2 = \"#{RighthandDetails2}#\";\r\n// const mobileNumberText = \"#{mobileNumberText}#\";\r\n// const socialSecurityNumberText = \"#{socialSecurityNumberText}#\";\r\n\r\ndocument.documentElement.style.setProperty(\r\n \"--primary-background\",\r\n primarylayoutRightColor\r\n);\r\ndocument.documentElement.style.setProperty(\r\n \"--primary-border-color\",\r\n primarylayoutleftColor\r\n);\r\n\r\nconst textVariables = [\r\n HeaderTotal,\r\n MainGridHeading1,\r\n MainGridHeading2,\r\n MainGridHeading3,\r\n MainGridHeading4,\r\n RighthandDetails1,\r\n RighthandDetails2,\r\n mobileNumberText,\r\n socialSecurityNumberText,\r\n];\r\nconst primaryColor = [\r\n primaryBorderColor,\r\n primaryBackground,\r\n primaryHover,\r\n paralaxBackground,\r\n primarylayoutleftColor,\r\n primarylayoutRightColor,\r\n UnutorizedMenuColor,\r\n AuthorizedMenuColor,\r\n MenuFontFamily,\r\n MenuFontSize,\r\n MenuItemsTextColor,\r\n UnautorizedBodyBackground,\r\n unatorizedFooterDarkColor,\r\n unatorizedFooterLightColor,\r\n autorizedBodyBackground,\r\n autorizedPageHeaderBackgroundColor,\r\n autorizedPageHeaderTextColor,\r\n autorizedPageHeaderFontFamily,\r\n autorizedPageHeaderTextSize,\r\n autorizedCardBackground,\r\n primaryTextColor,\r\n primaryTextColorActive,\r\n];\r\nconst primaryDarkColor = [\r\n \"#005380\",\r\n \"#005380\",\r\n \"#005380\",\r\n \"#005380\",\r\n primaryDarklayoutLeftColor,\r\n primaryDarklayoutRightColor,\r\n];\r\nconst secondaryColor = [\"#fafafa\"];\r\nconst warningColor = [\r\n \"#ff9800\",\r\n \"#ffa726\",\r\n \"#fb8c00\",\r\n \"#ffa21a\",\r\n \"#fcf8e3\",\r\n \"#faf2cc\",\r\n \"#ffe0b2\",\r\n \"#ffb74d\",\r\n];\r\nconst dangerColor = [\r\n \"#f44336\",\r\n \"#ef5350\",\r\n \"#e53935\",\r\n \"#f55a4e\",\r\n \"#f2dede\",\r\n \"#ebcccc\",\r\n \"ef9a9a\",\r\n \"#ef5350\",\r\n];\r\nconst successColor = [\r\n \"#4caf50\",\r\n \"#66bb6a\",\r\n \"#43a047\",\r\n \"#5cb860\",\r\n \"#dff0d8\",\r\n \"#d0e9c6\",\r\n \"#a5d6a7\",\r\n \"#66bb6a\",\r\n];\r\nconst infoColor = [\r\n \"#00acc1\",\r\n \"#26c6da\",\r\n \"#00acc1\",\r\n \"#00d3ee\",\r\n \"#d9edf7\",\r\n \"#c4e3f3\",\r\n \"#b2ebf2\",\r\n \"#4dd0e1\",\r\n];\r\nconst roseColor = [\"#e91e63\", \"#ec407a\", \"#d81b60\", \"#f8bbd0\", \"#f06292\"];\r\nconst grayColor = [\r\n \"#999\",\r\n \"#3C4858\",\r\n \"#eee\",\r\n \"#343434\",\r\n \"#585858\",\r\n \"#232323\",\r\n \"#ddd\",\r\n \"#6c757d\",\r\n \"#333\",\r\n \"#212121\",\r\n \"#777\",\r\n \"#D2D2D2\",\r\n \"#AAA\",\r\n \"#495057\",\r\n \"#e5e5e5\",\r\n \"#555\",\r\n \"#f9f9f9\",\r\n \"#ccc\",\r\n \"#444\",\r\n \"#f2f2f2\",\r\n \"#89229b\",\r\n \"#c0c1c2\",\r\n \"#9a9a9a\",\r\n \"#f5f5f5\",\r\n \"#505050\",\r\n \"#1f1f1f\",\r\n];\r\n\r\nconst whiteColor = \"#FFF\";\r\nconst blackColor = \"#000\";\r\nconst twitterColor = \"#55acee\";\r\nconst facebookColor = \"#3b5998\";\r\nconst googleColor = \"#dd4b39\";\r\nconst linkedinColor = \"#828fa2\";\r\nconst pinterestColor = \"#cc2127\";\r\nconst youtubeColor = \"#e52d27\";\r\nconst tumblrColor = \"#35465c\";\r\nconst behanceColor = \"#1769ff\";\r\nconst dribbbleColor = \"#ea4c89\";\r\nconst redditColor = \"#ff4500\";\r\nconst instagramColor = \"#125688\";\r\n\r\nconst transition = {\r\n transition: \"all 0.33s cubic-bezier(0.685, 0.0473, 0.346, 1)\",\r\n};\r\n\r\nconst containerFluid = {\r\n paddingRight: \"10px\",\r\n paddingLeft: \"10px\",\r\n marginRight: \"auto\",\r\n marginLeft: \"auto\",\r\n width: \"100%\",\r\n};\r\nconst blackColorText = {\r\n color: { blackColor },\r\n};\r\nconst container = {\r\n ...containerFluid,\r\n \"@media (min-width: 576px)\": {\r\n maxWidth: \"540px\",\r\n },\r\n \"@media (min-width: 768px)\": {\r\n maxWidth: \"720px\",\r\n },\r\n \"@media (min-width: 992px)\": {\r\n maxWidth: \"960px\",\r\n },\r\n \"@media (min-width: 1200px)\": {\r\n maxWidth: \"1140px\",\r\n },\r\n};\r\n\r\nconst card = {\r\n display: \"inline-block\",\r\n position: \"relative\",\r\n width: \"100%\",\r\n margin: \"25px 0\",\r\n boxShadow: \"0 1px 4px 0 rgba(\" + hexToRgb(blackColor) + \", 0.14)\",\r\n borderRadius: \"3px\",\r\n color: \"rgba(\" + hexToRgb(blackColor) + \", 0.87)\",\r\n background: whiteColor,\r\n};\r\n\r\nconst defaultFont = {\r\n fontFamily: '\"Rubik\", \"Helvetica\", sans-serif',\r\n fontWeight: \"300\",\r\n lineHeight: \"1.5em\",\r\n};\r\n\r\nconst boxShadow = {\r\n boxShadow:\r\n \"0 10px 30px -12px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.42), 0 4px 25px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.2)\",\r\n};\r\nconst primaryBoxShadow = {\r\n boxShadow:\r\n \"0 12px 20px -10px rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.28), 0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 7px 8px -5px rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.2)\",\r\n};\r\nconst infoBoxShadow = {\r\n boxShadow:\r\n \"0 12px 20px -10px rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.28), 0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 7px 8px -5px rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.2)\",\r\n};\r\nconst successBoxShadow = {\r\n boxShadow:\r\n \"0 12px 20px -10px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.28), 0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 7px 8px -5px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.2)\",\r\n};\r\nconst warningBoxShadow = {\r\n boxShadow:\r\n \"0 12px 20px -10px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.28), 0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 7px 8px -5px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.2)\",\r\n};\r\nconst dangerBoxShadow = {\r\n boxShadow:\r\n \"0 12px 20px -10px rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.28), 0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 7px 8px -5px rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.2)\",\r\n};\r\nconst roseBoxShadow = {\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.4)\",\r\n};\r\n\r\nconst warningCardHeader = {\r\n color: whiteColor,\r\n background:\r\n \"linear-gradient(60deg, \" + warningColor[1] + \", \" + warningColor[2] + \")\",\r\n ...warningBoxShadow,\r\n};\r\nconst successCardHeader = {\r\n color: whiteColor,\r\n background:\r\n \"linear-gradient(60deg, \" + successColor[1] + \", \" + successColor[2] + \")\",\r\n ...successBoxShadow,\r\n};\r\nconst dangerCardHeader = {\r\n color: whiteColor,\r\n background:\r\n \"linear-gradient(60deg, \" + dangerColor[1] + \", \" + dangerColor[2] + \")\",\r\n ...dangerBoxShadow,\r\n};\r\nconst infoCardHeader = {\r\n color: whiteColor,\r\n background:\r\n \"linear-gradient(60deg, \" + infoColor[1] + \", \" + infoColor[2] + \")\",\r\n ...infoBoxShadow,\r\n};\r\nconst primaryCardHeader = {\r\n color: whiteColor,\r\n background:\r\n \"linear-gradient(60deg, \" + primaryColor[1] + \", \" + primaryColor[2] + \")\",\r\n ...primaryBoxShadow,\r\n};\r\nconst roseCardHeader = {\r\n color: whiteColor,\r\n background:\r\n \"linear-gradient(60deg, \" + roseColor[1] + \", \" + roseColor[2] + \")\",\r\n ...roseBoxShadow,\r\n};\r\nconst cardActions = {\r\n margin: \"0 20px 10px\",\r\n paddingTop: \"10px\",\r\n borderTop: \"1px solid \" + grayColor[2],\r\n height: \"auto\",\r\n ...defaultFont,\r\n};\r\n\r\nconst cardHeader = {\r\n margin: \"-30px 15px 0\",\r\n borderRadius: \"3px\",\r\n padding: \"15px\",\r\n};\r\n\r\nconst defaultBoxShadow = {\r\n border: \"0\",\r\n borderRadius: \"3px\",\r\n boxShadow:\r\n \"0 10px 20px -12px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.42), 0 3px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.2)\",\r\n padding: \"10px 0\",\r\n transition: \"all 150ms ease 0s\",\r\n};\r\n\r\nconst title = {\r\n color: grayColor[1],\r\n textDecoration: \"none\",\r\n fontWeight: \"400\",\r\n marginTop: \"30px\",\r\n marginBottom: \"25px\",\r\n minHeight: \"32px\",\r\n fontFamily: `\"Arial\"`,\r\n};\r\n\r\nconst cardTitle = {\r\n \"&, & a\": {\r\n ...title,\r\n marginTop: \".625rem\",\r\n marginBottom: \"0.75rem\",\r\n minHeight: \"auto\",\r\n },\r\n};\r\n\r\nconst cardLink = {\r\n \"& + $cardLink\": {\r\n marginLeft: \"1.25rem\",\r\n },\r\n};\r\n\r\nconst cardSubtitle = {\r\n marginBottom: \"0\",\r\n marginTop: \"-.375rem\",\r\n};\r\n\r\nconst mainresposive = {\r\n background: grayColor,\r\n};\r\n\r\nconst main = {\r\n background: whiteColor,\r\n position: \"relative\",\r\n padding: 50,\r\n zIndex: \"3\",\r\n};\r\n\r\nconst mainbuttons = {\r\n background: whiteColor,\r\n position: \"relative\",\r\n padding: 10,\r\n zIndex: \"3\",\r\n};\r\n\r\nconst mainRaised = {\r\n \"@media (max-width: 576px)\": {\r\n marginTop: \"0px\",\r\n },\r\n \"@media (max-width: 830px)\": {\r\n marginLeft: \"0x\",\r\n marginRight: \"0px\",\r\n },\r\n margin: \"0px 0px 0px\",\r\n borderRadius: \"0px\",\r\n boxShadow:\r\n \"0 16px 24px 2px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 6px 30px 5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.2)\",\r\n};\r\n\r\nconst section = {\r\n backgroundPosition: \"50%\",\r\n backgroundSize: \"cover\",\r\n};\r\n\r\nconst sectionDark = {\r\n backgroundColor: grayColor[3],\r\n background:\r\n \"radial-gradient(ellipse at center,\" +\r\n grayColor[4] +\r\n \" 0,\" +\r\n grayColor[5] +\r\n \" 100%)\",\r\n};\r\n\r\nconst sectionDescription = {\r\n marginTop: \"130px\",\r\n};\r\n\r\nconst description = {\r\n color: grayColor[0],\r\n};\r\n\r\nconst mlAuto = {\r\n marginLeft: \"auto\",\r\n};\r\n\r\nconst mrAuto = {\r\n marginRight: \"auto\",\r\n};\r\n\r\nconst btnLink = {\r\n backgroundColor: \"transparent\",\r\n boxShdow: \"none\",\r\n marginTop: \"5px\",\r\n marginBottom: \"5px\",\r\n};\r\nconst coloredShadow = {\r\n // some jss/css to make the cards look a bit better on Internet Explorer\r\n \"@media all and (-ms-high-contrast: none), (-ms-high-contrast: active)\": {\r\n display: \"none !important\",\r\n },\r\n transform: \"scale(0.94)\",\r\n top: \"12px\",\r\n filter: \"blur(12px)\",\r\n position: \"absolute\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n backgroundSize: \"cover\",\r\n zIndex: \"-1\",\r\n transition: \"opacity .45s\",\r\n opacity: \"0\",\r\n};\r\n\r\nexport {\r\n //variables\r\n textVariables,\r\n UploadDocumentsURL,\r\n drawerWidth,\r\n transition,\r\n mainbuttons,\r\n container,\r\n containerFluid,\r\n boxShadow,\r\n card,\r\n defaultFont,\r\n primaryColor,\r\n primaryDarkColor,\r\n secondaryColor,\r\n warningColor,\r\n dangerColor,\r\n successColor,\r\n infoColor,\r\n roseColor,\r\n grayColor,\r\n whiteColor,\r\n blackColor,\r\n twitterColor,\r\n facebookColor,\r\n googleColor,\r\n linkedinColor,\r\n pinterestColor,\r\n youtubeColor,\r\n tumblrColor,\r\n behanceColor,\r\n dribbbleColor,\r\n redditColor,\r\n instagramColor,\r\n primaryBoxShadow,\r\n infoBoxShadow,\r\n successBoxShadow,\r\n warningBoxShadow,\r\n dangerBoxShadow,\r\n roseBoxShadow,\r\n warningCardHeader,\r\n successCardHeader,\r\n dangerCardHeader,\r\n infoCardHeader,\r\n primaryCardHeader,\r\n roseCardHeader,\r\n cardActions,\r\n cardHeader,\r\n defaultBoxShadow,\r\n blackColorText,\r\n title,\r\n cardTitle,\r\n description,\r\n cardLink,\r\n cardSubtitle,\r\n main,\r\n mainRaised,\r\n mainresposive,\r\n section,\r\n sectionDark,\r\n sectionDescription,\r\n mlAuto,\r\n mrAuto,\r\n btnLink,\r\n coloredShadow,\r\n hexToRgb,\r\n};\r\n","import {\r\n grayColor,\r\n roseColor,\r\n primaryColor,\r\n secondaryColor,\r\n infoColor,\r\n successColor,\r\n warningColor,\r\n dangerColor,\r\n blackColor,\r\n whiteColor,\r\n twitterColor,\r\n facebookColor,\r\n googleColor,\r\n linkedinColor,\r\n pinterestColor,\r\n youtubeColor,\r\n tumblrColor,\r\n behanceColor,\r\n dribbbleColor,\r\n redditColor,\r\n instagramColor,\r\n hexToRgb\r\n} from \"assets/jss/xrs.js\";\r\n\r\nconst buttonStyle = {\r\n button: {\r\n minHeight: \"auto\",\r\n minWidth: \"auto\",\r\n backgroundColor: grayColor[0],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(grayColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(grayColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(grayColor[0]) +\r\n \", 0.12)\",\r\n border: \"none\",\r\n borderRadius: \"3px\",\r\n position: \"relative\",\r\n padding: \"15px 15px\",\r\n margin: \".3125rem 1px\",\r\n fontSize: \"14px\",\r\n fontWeight: \"400\",\r\n textTransform: \"uppercase\",\r\n letterSpacing: \"0\",\r\n willChange: \"box-shadow, transform\",\r\n transition:\r\n \"box-shadow 0.2s cubic-bezier(0.4, 0, 1, 1), background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1)\",\r\n lineHeight: \"1.42857143\",\r\n textAlign: \"center\",\r\n whiteSpace: \"nowrap\",\r\n verticalAlign: \"middle\",\r\n touchAction: \"manipulation\",\r\n cursor: \"pointer\",\r\n \"&:hover,&:focus\": {\r\n color: whiteColor,\r\n backgroundColor: grayColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(grayColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(grayColor[0]) +\r\n \", 0.2)\"\r\n },\r\n \"& .fab,& .fas,& .far,& .fal,& .material-icons\": {\r\n position: \"relative\",\r\n display: \"inline-block\",\r\n top: \"0\",\r\n marginTop: \"-1em\",\r\n marginBottom: \"-1em\",\r\n fontSize: \"1.1rem\",\r\n marginRight: \"4px\",\r\n verticalAlign: \"middle\"\r\n },\r\n \"& svg\": {\r\n position: \"relative\",\r\n display: \"inline-block\",\r\n top: \"0\",\r\n width: \"18px\",\r\n height: \"18px\",\r\n marginRight: \"4px\",\r\n verticalAlign: \"middle\"\r\n },\r\n \"&$justIcon\": {\r\n \"& .fab,& .fas,& .far,& .fal,& .material-icons\": {\r\n marginTop: \"0px\",\r\n marginRight: \"0px\",\r\n position: \"absolute\",\r\n width: \"100%\",\r\n transform: \"none\",\r\n left: \"0px\",\r\n top: \"0px\",\r\n height: \"100%\",\r\n lineHeight: \"41px\",\r\n fontSize: \"20px\"\r\n }\r\n }\r\n },\r\n\r\n fullWidth: {\r\n width: \"100%\"\r\n },\r\n primary: {\r\n backgroundColor: primaryColor[1],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: primaryColor[2],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(primaryColor[2]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(primaryColor[2]) +\r\n \", 0.2)\"\r\n }\r\n },\r\n secondary: {\r\n color: \"rgba(\" + hexToRgb(blackColor) + \",.87)\",\r\n backgroundColor: secondaryColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(secondaryColor[0]) +\r\n \",.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(secondaryColor[0]) +\r\n \",.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(secondaryColor[0]) +\r\n \",.12)\",\r\n \"&:hover,&:focus\": {\r\n boxShdow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(secondaryColor[0]) +\r\n \",.42), 0 4px 23px 0 rgba(\" +\r\n hexToRgb(blackColor) +\r\n \",.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(secondaryColor[0]) +\r\n \",.2)\",\r\n color: \"rgba(\" + hexToRgb(blackColor) + \",.87)\",\r\n backgroundColor: grayColor[19]\r\n }\r\n },\r\n info: {\r\n backgroundColor: infoColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: infoColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.2)\"\r\n }\r\n },\r\n success: {\r\n backgroundColor: successColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: successColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.2)\"\r\n }\r\n },\r\n warning: {\r\n backgroundColor: warningColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: warningColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.2)\"\r\n }\r\n },\r\n danger: {\r\n backgroundColor: dangerColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: dangerColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.2)\"\r\n }\r\n },\r\n rose: {\r\n backgroundColor: roseColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: roseColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.2)\"\r\n }\r\n },\r\n white: {\r\n \"&,&:focus,&:hover\": {\r\n backgroundColor: whiteColor,\r\n color: grayColor[0]\r\n }\r\n },\r\n twitter: {\r\n backgroundColor: twitterColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(twitterColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(twitterColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(twitterColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus,&:visited\": {\r\n backgroundColor: twitterColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(twitterColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(twitterColor) +\r\n \", 0.2)\"\r\n }\r\n },\r\n facebook: {\r\n backgroundColor: facebookColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(facebookColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(facebookColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(facebookColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: facebookColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(facebookColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(facebookColor) +\r\n \", 0.2)\"\r\n }\r\n },\r\n google: {\r\n backgroundColor: googleColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(googleColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(googleColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(googleColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: googleColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(googleColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(googleColor) +\r\n \", 0.2)\"\r\n }\r\n },\r\n linkedin: {\r\n backgroundColor: linkedinColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(linkedinColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(linkedinColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(linkedinColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: linkedinColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(linkedinColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(linkedinColor) +\r\n \", 0.2)\"\r\n }\r\n },\r\n pinterest: {\r\n backgroundColor: pinterestColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(pinterestColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(pinterestColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(pinterestColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: pinterestColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(pinterestColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(pinterestColor) +\r\n \", 0.2)\"\r\n }\r\n },\r\n youtube: {\r\n backgroundColor: youtubeColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(youtubeColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(youtubeColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(youtubeColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: youtubeColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(youtubeColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(youtubeColor) +\r\n \", 0.2)\"\r\n }\r\n },\r\n tumblr: {\r\n backgroundColor: tumblrColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(tumblrColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(tumblrColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(tumblrColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: tumblrColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(tumblrColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(tumblrColor) +\r\n \", 0.2)\"\r\n }\r\n },\r\n github: {\r\n backgroundColor: grayColor[8],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(grayColor[8]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(grayColor[8]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(grayColor[8]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: grayColor[8],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(grayColor[8]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(grayColor[8]) +\r\n \", 0.2)\"\r\n }\r\n },\r\n behance: {\r\n backgroundColor: behanceColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(behanceColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(behanceColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(behanceColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: behanceColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(behanceColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(behanceColor) +\r\n \", 0.2)\"\r\n }\r\n },\r\n dribbble: {\r\n backgroundColor: dribbbleColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(dribbbleColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(dribbbleColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(dribbbleColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: dribbbleColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(dribbbleColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(dribbbleColor) +\r\n \", 0.2)\"\r\n }\r\n },\r\n reddit: {\r\n backgroundColor: redditColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(redditColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(redditColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(redditColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: redditColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(redditColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(redditColor) +\r\n \", 0.2)\"\r\n }\r\n },\r\n instagram: {\r\n backgroundColor: instagramColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(instagramColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(instagramColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(instagramColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: instagramColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(instagramColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(instagramColor) +\r\n \", 0.2)\"\r\n }\r\n },\r\n simple: {\r\n \"&,&:focus,&:hover\": {\r\n color: whiteColor,\r\n background: \"transparent\",\r\n boxShadow: \"none\"\r\n },\r\n \"&$primary\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: primaryColor[0]\r\n }\r\n },\r\n \"&$info\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: infoColor[0]\r\n }\r\n },\r\n \"&$success\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: successColor[0]\r\n }\r\n },\r\n \"&$warning\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: warningColor[0]\r\n }\r\n },\r\n \"&$rose\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: roseColor[0]\r\n }\r\n },\r\n \"&$danger\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: dangerColor[0]\r\n }\r\n },\r\n \"&$twitter\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: twitterColor\r\n }\r\n },\r\n \"&$facebook\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: facebookColor\r\n }\r\n },\r\n \"&$google\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: googleColor\r\n }\r\n },\r\n \"&$linkedin\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: linkedinColor\r\n }\r\n },\r\n \"&$pinterest\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: pinterestColor\r\n }\r\n },\r\n \"&$youtube\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: youtubeColor\r\n }\r\n },\r\n \"&$tumblr\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: tumblrColor\r\n }\r\n },\r\n \"&$github\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: grayColor[8]\r\n }\r\n },\r\n \"&$behance\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: behanceColor\r\n }\r\n },\r\n \"&$dribbble\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: dribbbleColor\r\n }\r\n },\r\n \"&$reddit\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: redditColor\r\n }\r\n },\r\n \"&$instagram\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: instagramColor\r\n }\r\n }\r\n },\r\n transparent: {\r\n \"&,&:focus,&:hover\": {\r\n color: \"inherit\",\r\n background: \"transparent\",\r\n boxShadow: \"none\"\r\n }\r\n },\r\n disabled: {\r\n opacity: \"0.65\",\r\n pointerEvents: \"none\"\r\n },\r\n lg: {\r\n \"&$justIcon\": {\r\n \"& .fab,& .fas,& .far,& .fal,& svg,& .material-icons\": {\r\n marginTop: \"-4px\"\r\n }\r\n },\r\n padding: \"1.125rem 2.25rem\",\r\n fontSize: \"0.875rem\",\r\n lineHeight: \"1.333333\",\r\n borderRadius: \"0.2rem\"\r\n },\r\n sm: {\r\n \"&$justIcon\": {\r\n \"& .fab,& .fas,& .far,& .fal,& svg,& .material-icons\": {\r\n marginTop: \"1px\"\r\n }\r\n },\r\n padding: \"0.40625rem 1.25rem\",\r\n fontSize: \"0.6875rem\",\r\n lineHeight: \"1.5\",\r\n borderRadius: \"0.2rem\"\r\n },\r\n round: {\r\n borderRadius: \"25px\"\r\n },\r\n block: {\r\n width: \"100% !important\"\r\n },\r\n link: {\r\n \"&,&:hover,&:focus\": {\r\n backgroundColor: \"transparent\",\r\n color: grayColor[0],\r\n boxShadow: \"none\"\r\n }\r\n },\r\n justIcon: {\r\n paddingLeft: \"12px\",\r\n paddingRight: \"12px\",\r\n fontSize: \"20px\",\r\n height: \"41px\",\r\n minWidth: \"41px\",\r\n width: \"41px\",\r\n \"& .fab,& .fas,& .far,& .fal,& svg,& .material-icons\": {\r\n marginRight: \"0px\"\r\n },\r\n \"&$lg\": {\r\n height: \"57px\",\r\n minWidth: \"57px\",\r\n width: \"57px\",\r\n lineHeight: \"56px\",\r\n \"& .fab,& .fas,& .far,& .fal,& .material-icons\": {\r\n fontSize: \"32px\",\r\n lineHeight: \"56px\"\r\n },\r\n \"& svg\": {\r\n width: \"32px\",\r\n height: \"32px\"\r\n }\r\n },\r\n \"&$sm\": {\r\n height: \"30px\",\r\n minWidth: \"30px\",\r\n width: \"30px\",\r\n \"& .fab,& .fas,& .far,& .fal,& .material-icons\": {\r\n fontSize: \"17px\",\r\n lineHeight: \"29px\"\r\n },\r\n \"& svg\": {\r\n width: \"17px\",\r\n height: \"17px\"\r\n }\r\n }\r\n },\r\n fileButton: {\r\n // display: \"inline-block\"\r\n }\r\n};\r\n\r\nexport default buttonStyle;\r\n","import React from \"react\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Button from \"@material-ui/core/Button\";\r\n\r\nimport styles from \"assets/jss/xrs/components/buttonStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nconst RegularButton = React.forwardRef((props, ref) => {\r\n const {\r\n color,\r\n round,\r\n children,\r\n fullWidth,\r\n disabled,\r\n simple,\r\n size,\r\n block,\r\n link,\r\n justIcon,\r\n fileButton,\r\n className,\r\n ...rest\r\n } = props;\r\n const classes = useStyles();\r\n const btnClasses = classNames({\r\n [classes.button]: true,\r\n [classes[size]]: size,\r\n [classes[color]]: color,\r\n [classes.round]: round,\r\n [classes.fullWidth]: fullWidth,\r\n [classes.disabled]: disabled,\r\n [classes.simple]: simple,\r\n [classes.block]: block,\r\n [classes.link]: link,\r\n [classes.justIcon]: justIcon,\r\n [classes.fileButton]: fileButton,\r\n [className]: className\r\n });\r\n return (\r\n \r\n );\r\n});\r\n\r\nRegularButton.propTypes = {\r\n color: PropTypes.oneOf([\r\n \"primary\",\r\n \"secondary\",\r\n \"info\",\r\n \"dark\",\r\n \"success\",\r\n \"warning\",\r\n \"danger\",\r\n \"rose\",\r\n \"white\",\r\n \"twitter\",\r\n \"facebook\",\r\n \"google\",\r\n \"linkedin\",\r\n \"pinterest\",\r\n \"youtube\",\r\n \"tumblr\",\r\n \"github\",\r\n \"behance\",\r\n \"dribbble\",\r\n \"reddit\",\r\n \"instagram\",\r\n \"transparent\"\r\n ]),\r\n size: PropTypes.oneOf([\"sm\", \"lg\"]),\r\n simple: PropTypes.bool,\r\n round: PropTypes.bool,\r\n fullWidth: PropTypes.bool,\r\n disabled: PropTypes.bool,\r\n block: PropTypes.bool,\r\n link: PropTypes.bool,\r\n justIcon: PropTypes.bool,\r\n fileButton: PropTypes.bool,\r\n children: PropTypes.node,\r\n className: PropTypes.string\r\n};\r\n\r\nexport default RegularButton;\r\n","import React from \"react\";\r\n\r\nconst Context = React.createContext();\r\n\r\nexport default Context;\r\n","import {\r\n container,\r\n title,\r\n main,\r\n whiteColor,\r\n mainRaised,\r\n} from \"assets/jss/xrs.js\";\r\nimport { blackColor, primaryColor } from \"assets/jss/xrs\";\r\nimport { fontStyle } from \"@material-ui/system\";\r\n\r\nconst landingPageStyle = {\r\n container: {\r\n color: blackColor,\r\n ...container,\r\n zIndex: \"2\",\r\n },\r\n RightAlign: {\r\n textAlign: \"right\",\r\n position: \"right\",\r\n },\r\n CenterAlign: {\r\n textAlign: \"center\",\r\n position: \"ricenterght\",\r\n },\r\n LinkHome: {\r\n color: whiteColor,\r\n textDecoration: \"underline\",\r\n },\r\n middle: {\r\n \"@media (min-width: 576px)\": {\r\n paddingLeft: 10,\r\n },\r\n \"@media (min-width: 768px)\": {\r\n paddingLeft: 30,\r\n },\r\n \"@media (min-width: 992px)\": {\r\n paddingLeft: 50,\r\n },\r\n \"@media (min-width: 1200px)\": {\r\n paddingLeft: 120,\r\n },\r\n },\r\n middleInput: {\r\n \"@media (min-width: 576px)\": {\r\n paddingLeft: 10,\r\n paddingRight: 10,\r\n },\r\n \"@media (min-width: 768px)\": {\r\n paddingLeft: 30,\r\n paddingRight: 30,\r\n },\r\n \"@media (min-width: 992px)\": {\r\n paddingLeft: 50,\r\n paddingRight: 50,\r\n },\r\n \"@media (min-width: 1200px)\": {\r\n paddingLeft: 120,\r\n paddingRight: 120,\r\n },\r\n },\r\n middleright: {\r\n paddingLeft: 20,\r\n },\r\n centerText: {\r\n textAlign: \"center\",\r\n fontWeight: 400,\r\n fontSize: 14,\r\n },\r\n digitText: {\r\n \"@media (min-width: 300px)\": {\r\n textAlign: \"center\",\r\n wordBreak: \"break-word\",\r\n fontSize: 14,\r\n },\r\n \"@media (min-width: 400px)\": {\r\n textAlign: \"center\",\r\n wordBreak: \"break-word\",\r\n fontSize: 14,\r\n },\r\n \"@media (min-width: 576px)\": {\r\n textAlign: \"center\",\r\n wordBreak: \"break-word\",\r\n fontSize: 14,\r\n },\r\n \"@media (min-width: 768px)\": {\r\n textAlign: \"center\",\r\n wordBreak: \"break-word\",\r\n fontSize: 14,\r\n },\r\n \"@media (min-width: 992px)\": {\r\n textAlign: \"center\",\r\n textAlign: \"-webkit-center\",\r\n wordBreak: \"break-word\",\r\n fontSize: 14,\r\n },\r\n \"@media (min-width: 1200px)\": {\r\n textAlign: \"center\",\r\n textAlign: \"-webkit-center\",\r\n wordBreak: \"break-word\",\r\n fontSize: 14,\r\n },\r\n },\r\n BoldText: {\r\n fontWeight: 400,\r\n },\r\n iFrameTop: {\r\n marginTop: 30,\r\n borderRadius: 3,\r\n border: 0,\r\n backgroundColor: \"white\",\r\n },\r\n centerTextBlue: {\r\n textAlign: \"center\",\r\n fontWeight: 400,\r\n fontSize: 18,\r\n color: \"rgba(0, 105, 162, 1)\",\r\n },\r\n textLabel: {\r\n fontWeight: 600,\r\n },\r\n centerTextTitle: {\r\n textAlign: \"center\",\r\n fontWeight: 400,\r\n fontSize: 30,\r\n },\r\n centerTextSubTitle: {\r\n textAlign: \"center\",\r\n fontWeight: 400,\r\n fontSize: 16,\r\n opacity: 0.5,\r\n },\r\n whiteText: {\r\n fontWeight: 400,\r\n fontSize: 14,\r\n color: whiteColor,\r\n },\r\n centerOnlyText: {\r\n textAlign: \"center\",\r\n fontWeight: 500,\r\n fontSize: 32,\r\n },\r\n centerButton: {\r\n textAlign: \"center\",\r\n fontSize: 16,\r\n fontFamily: '\"Rubik\", \"Helvetica\", sans-serif',\r\n fontWeight: \"400\",\r\n lineHeight: \"1.5em\",\r\n },\r\n\r\n cardRadius: {\r\n borderRadius: 4,\r\n margin: 0,\r\n padding: \"1px\",\r\n paddingBottom: \"1px !important\",\r\n },\r\n control: {\r\n margin: 5,\r\n },\r\n controlWhite: {\r\n margin: 0,\r\n height: 40,\r\n borderRadius: 2,\r\n backgroundColor: whiteColor,\r\n color: \"blackColor\",\r\n },\r\n footerParagraph: {\r\n fontSize: 14,\r\n color: \"#fff\",\r\n fontWeight: 400,\r\n },\r\n footerTitle: {\r\n fontSize: 26,\r\n color: \"#fff\",\r\n fontWeight: 400,\r\n },\r\n whiteTextField: {\r\n backgroundColor: \"white\",\r\n },\r\n paper: {\r\n textAlign: \"center\",\r\n backgroundColor: \"yellow\",\r\n },\r\n paperLeft: {\r\n textAlign: \"Left\",\r\n },\r\n title: {\r\n ...title,\r\n display: \"inline-block\",\r\n position: \"relative\",\r\n marginTop: \"0px\",\r\n minHeight: \"32px\",\r\n color: whiteColor,\r\n textDecoration: \"none\",\r\n },\r\n subtitle: {\r\n fontSize: \"1.313rem\",\r\n maxWidth: \"500px\",\r\n margin: \"10px auto 0\",\r\n },\r\n main: {\r\n ...main,\r\n backgroundColor: primaryColor[11],\r\n },\r\n linkButton: {\r\n padding: \"30px 30px\",\r\n },\r\n mainRaised: {\r\n ...mainRaised,\r\n },\r\n\r\n login: {\r\n backgroundColor: \"transparent\",\r\n },\r\n hide: {\r\n display: \"none\",\r\n },\r\n block: {\r\n color: \"inherit\",\r\n padding: \"0.9375rem\",\r\n fontWeight: \"500\",\r\n fontSize: \"12px\",\r\n textTransform: \"uppercase\",\r\n borderRadius: \"3px\",\r\n textDecoration: \"none\",\r\n position: \"relative\",\r\n display: \"block\",\r\n },\r\n inlineBlock: {\r\n display: \"inline-block\",\r\n padding: \"0px\",\r\n width: \"auto\",\r\n },\r\n shieldText: {\r\n \"@media (min-width: 300px)\": {\r\n wordBreak: \"break-word\",\r\n fontSize: 16,\r\n fontWeight: 400,\r\n\r\n display: \"inline-flex\",\r\n alignItems: \"center\",\r\n },\r\n \"@media (min-width: 400px)\": {\r\n wordBreak: \"break-word\",\r\n fontSize: 18,\r\n fontWeight: 400,\r\n\r\n display: \"inline-flex\",\r\n alignItems: \"center\",\r\n },\r\n \"@media (min-width: 576px)\": {\r\n wordBreak: \"break-word\",\r\n fontSize: 20,\r\n fontWeight: 400,\r\n\r\n display: \"inline-flex\",\r\n alignItems: \"center\",\r\n },\r\n \"@media (min-width: 768px)\": {\r\n wordBreak: \"break-word\",\r\n fontSize: 20,\r\n fontWeight: 400,\r\n },\r\n \"@media (min-width: 992px)\": {\r\n wordBreak: \"break-word\",\r\n fontSize: 20,\r\n fontWeight: 400,\r\n paddingTop: 7,\r\n },\r\n \"@media (min-width: 1200px)\": {\r\n wordBreak: \"break-word\",\r\n fontSize: 20,\r\n fontWeight: 400,\r\n paddingTop: 7,\r\n },\r\n },\r\n list: {\r\n marginBottom: \"0\",\r\n padding: \"0\",\r\n marginTop: \"0\",\r\n },\r\n left: {\r\n float: \"left!important\",\r\n display: \"block\",\r\n },\r\n right: {\r\n padding: \"15px 0\",\r\n margin: \"0\",\r\n float: \"right\",\r\n },\r\n icon: {\r\n width: \"18px\",\r\n height: \"18px\",\r\n top: \"3px\",\r\n position: \"relative\",\r\n },\r\n headerLoggedInColor: {\r\n backgroundColor: primaryColor[7],\r\n },\r\n bodyLoggedIn: {\r\n backgroundColor: primaryColor[14],\r\n },\r\n};\r\n\r\nexport default landingPageStyle;\r\n","export const SUCCESS = \"SUCCESS\";\r\nexport const IFRAME_URL = \"IFRAME_URL\";\r\n\r\nexport const FAILURE = \"FAILURE\";\r\n\r\nexport const LOGIN_SUCCESS = \"LOGIN_SUCCESS\";\r\n\r\nexport const LOGIN_FAILURE = \"LOGIN_FAILURE\";\r\n\r\nexport const ADD_PROFILE = \"ADD_PROFILE\";\r\n\r\nexport const REMOVE_PROFILE = \"REMOVE_PROFILE\";\r\n\r\nexport const USER_INPUT_CHANGE = \"USER_INPUT_CHANGE\";\r\n\r\nexport const USER_INPUT_SUBMIT = \"USER_INPUT_SUBMIT\";\r\n\r\nexport const SET_CUSTOMER = \"SET_CUSTOMER\";\r\n\r\nexport const SET_ACCOUNTS = \"SET_ACCOUNTS\";\r\n\r\nexport const REGISTRTION_METHOD = \"REGISTRTION_METHOD\";\r\n\r\nexport const SET_CALLBACKS = \"SET_CALLBACKS\";\r\n\r\nexport const SET_SITE = \"SET_SITE\";\r\n\r\nexport const SET_OFFER = \"SET_OFFER\";\r\n\r\nexport const SET_MENU = \"SET_MENU\";\r\n\r\nexport const SET_DRAWER = \"SET_DRAWER\";\r\n\r\nexport const SET_DRAWER1 = \"SET_DRAWER1\";\r\n\r\nexport const SET_DRAWER2 = \"SET_DRAWER2\";\r\n\r\nexport const SET_DRAWER3 = \"SET_DRAWER3\";\r\n\r\nexport const SET_NUMACCOUNTS = \"SET_NUMACCOUNTS\";\r\n\r\nexport const SET_SELECTEDACCOUNT = \"SET_SELECTEDACCOUNT\";\r\n\r\nexport const SET_SESSIONTIMEOUT = \"SET_SESSIONTIMEOUT\";\r\n\r\nexport const SET_OVERALLTIMEOUT = \"SET_OVERALLTIMEOUT\";\r\n\r\nexport const SET_STARTOVERALLTIMEOUT = \"SET_STARTOVERALLTIMEOUT\";\r\n\r\nexport const PAYMENT_STATUS_FORM = \"PAYMENT_STATUS_FORM\";\r\n","import * as ACTION_TYPES from \"./action_types\";\r\n\r\nexport const SUCCESS = {\r\n type: ACTION_TYPES.SUCCESS,\r\n};\r\n\r\nexport const FAILURE = {\r\n type: ACTION_TYPES.FAILURE,\r\n};\r\n\r\nexport const success = () => {\r\n return {\r\n type: ACTION_TYPES.SUCCESS,\r\n };\r\n};\r\n\r\nexport const failure = () => {\r\n return {\r\n type: ACTION_TYPES.FAILURE,\r\n };\r\n};\r\n\r\nexport const login_success = () => {\r\n return {\r\n type: ACTION_TYPES.LOGIN_SUCCESS,\r\n };\r\n};\r\n\r\nexport const login_failure = () => {\r\n return {\r\n type: ACTION_TYPES.LOGIN_FAILURE,\r\n };\r\n};\r\n\r\nexport const add_profile = (profile) => {\r\n return {\r\n type: ACTION_TYPES.ADD_PROFILE,\r\n payload: profile,\r\n };\r\n};\r\n\r\nexport const set_Customer = (customer) => {\r\n return {\r\n type: ACTION_TYPES.SET_CUSTOMER,\r\n payload: customer,\r\n };\r\n};\r\n\r\nexport const set_Callbacks = (callbacks) => {\r\n return {\r\n type: ACTION_TYPES.SET_CALLBACKS,\r\n payload: callbacks,\r\n };\r\n};\r\n\r\nexport const set_Site = (site) => {\r\n return {\r\n type: ACTION_TYPES.SET_SITE,\r\n payload: site,\r\n };\r\n};\r\n\r\nexport const set_Drawer = (state) => {\r\n return {\r\n type: ACTION_TYPES.SET_DRAWER,\r\n payload: state,\r\n };\r\n};\r\nexport const set_Drawer1 = (state) => {\r\n return {\r\n type: ACTION_TYPES.SET_DRAWER,\r\n payload: state,\r\n num: 1,\r\n };\r\n};\r\nexport const set_Drawer2 = (state) => {\r\n return {\r\n type: ACTION_TYPES.SET_DRAWER,\r\n payload: state,\r\n num: 2,\r\n };\r\n};\r\nexport const set_selectedAccount = (state) => {\r\n return {\r\n type: ACTION_TYPES.SET_SELECTEDACCOUNT,\r\n payload: state,\r\n };\r\n};\r\nexport const set_Drawer3 = (state) => {\r\n return {\r\n type: ACTION_TYPES.SET_DRAWER,\r\n payload: state,\r\n num: 3,\r\n };\r\n};\r\n\r\nexport const set_Offer = (offer) => {\r\n return {\r\n type: ACTION_TYPES.SET_OFFER,\r\n payload: offer,\r\n };\r\n};\r\n\r\nexport const set_Accounts = (accounts) => {\r\n return {\r\n type: ACTION_TYPES.SET_ACCOUNTS,\r\n payload: accounts,\r\n };\r\n};\r\nexport const set_Registration_method = (payload) => {\r\n return {\r\n type: ACTION_TYPES.REGISTRTION_METHOD,\r\n payload: payload,\r\n };\r\n};\r\n\r\nexport const remove_profile = () => {\r\n return {\r\n type: ACTION_TYPES.REMOVE_PROFILE,\r\n };\r\n};\r\n\r\nexport const user_input_change = (text) => {\r\n return {\r\n type: ACTION_TYPES.USER_INPUT_CHANGE,\r\n payload: text,\r\n };\r\n};\r\n\r\nexport const user_input_submit = (text) => {\r\n return {\r\n type: ACTION_TYPES.USER_INPUT_SUBMIT,\r\n payload: text,\r\n };\r\n};\r\nexport const set_num_accounts = (text) => {\r\n return {\r\n type: ACTION_TYPES.SET_NUMACCOUNTS,\r\n payload: text,\r\n };\r\n};\r\nexport const set_menu = (menu) => {\r\n return {\r\n type: ACTION_TYPES.SET_MENU,\r\n payload: menu,\r\n };\r\n};\r\nexport const set_sessiontimeout = (time) => {\r\n return {\r\n type: ACTION_TYPES.SET_SESSIONTIMEOUT,\r\n payload: time,\r\n };\r\n};\r\nexport const set_overalltimeout = (time) => {\r\n return {\r\n type: ACTION_TYPES.SET_OVERALLTIMEOUT,\r\n payload: time,\r\n };\r\n};\r\nexport const set_startoveralltimeout = (time) => {\r\n return {\r\n type: ACTION_TYPES.SET_STARTOVERALLTIMEOUT,\r\n payload: time,\r\n };\r\n};\r\nexport const set_iframeUrl = (url) => {\r\n return {\r\n type: ACTION_TYPES.IFRAME_URL,\r\n payload: url,\r\n };\r\n};\r\nexport const set_PaymentStatusFrom = (status) => {\r\n return {\r\n type: ACTION_TYPES.PAYMENT_STATUS_FORM,\r\n payload: status,\r\n };\r\n};\r\n","export const API_ACTION_TYPES = {\r\n ERROR: \"ERROR\",\r\n LOADING: \"LOADING\",\r\n ERROR_MESSAGE: \"ERROR_MESSAGE\",\r\n CLEAR: \"CLEAR\",\r\n CODE: \"CODE\",\r\n};\r\n\r\nexport const GET_SITE_DETAILS_ACTION_TYPES = {\r\n UPLOAD_IMAGE_TO_BUDGET: \"UPLOAD_IMAGE_TO_BUDGET\",\r\n CONVENIENCE_FEE: \"CONVENIENCE_FEE\",\r\n DEPT_NUM: \"DEPT_NUM\",\r\n USE4WEEK: \"USE4WEEK\",\r\n\r\n LOGO: \"LOGO\",\r\n FOOTER_IMAGE: \"FOOTER_IMAGE\",\r\n TERMS_QUICK_PAY: \"TERMS_QUICK_PAY\",\r\n TERMS_PLAN: \"TERMS_PLAN\",\r\n TERMS_DISCOUNT: \"TERMS_DISCOUNT\",\r\n CURRENCY: \"CURRENCY\",\r\n PAYMENT_PROVIDER: \"PAYMENT_PROVIDER\",\r\n DRAWER_STATE: \"DRAWER_STATE\",\r\n};\r\nexport const DOCUMENTS_ACTION_TYPES = {\r\n OPEN: \"OPEN\",\r\n DOCUMENT_TO_BE_VIEWED: \"DOCUMENT_TO_BE_VIEWED\",\r\n};\r\n\r\nexport const HTML_ACTION_TYPES = {\r\n TERMS_QUICK_PAY: \"TERMS_QUICK_PAY\",\r\n TERMS_PLAN: \"TERMS_PLAN\",\r\n TERMS_DISCOUNT: \"TERMS_DISCOUNT\",\r\n\r\n VIEW_OFFER_TEXT: \"VIEW_OFFER_TEXT\",\r\n CREATE_PLAN_TEXT: \"CREATE_PLAN_TEXT\",\r\n CREATE_PLANTOC: \"CREATE_PLANTOC\",\r\n CREATE_BUDGET_TEXT: \"CREATE_BUDGET_TEXT\",\r\n VIEW_ACCOUNT_TEXT: \"VIEW_ACCOUNT_TEXT\",\r\n\r\n BURGER_BUTTON_ANIMATION: \"BURGER_BUTTON_ANIMATION\",\r\n};\r\nexport const CAMERA_ACTION_TYPES = {\r\n OPEN_CAMERA: \"OPEN_CAMERA\",\r\n SET_IMAGE: \"SET_IMAGE\",\r\n ADD_CONFIRMED_IMAGE: \"ADD_CONFIRMED_IMAGE\",\r\n REMOVE_CONFIRMED_IMAGE: \"REMOVE_CONFIRMED_IMAGE\",\r\n RESET_CONFIRMET_IMAGES: \"RESET_CONFIRMET_IMAGES\",\r\n};\r\nexport const RESET_STORE = \"RESET_STORE\";\r\n","import {\r\n API_ACTION_TYPES,\r\n GET_SITE_DETAILS_ACTION_TYPES,\r\n HTML_ACTION_TYPES,\r\n CAMERA_ACTION_TYPES,\r\n DOCUMENTS_ACTION_TYPES,\r\n RESET_STORE,\r\n} from \"./redux_action_types\";\r\nimport ReactHtmlParser from \"react-html-parser\";\r\n\r\nexport const apiActions = {\r\n loading,\r\n error,\r\n clear,\r\n code,\r\n};\r\n\r\nfunction loading(payload) {\r\n return { type: API_ACTION_TYPES.LOADING, payload };\r\n}\r\n\r\nfunction code(payload) {\r\n return { type: API_ACTION_TYPES.CODE, payload };\r\n}\r\n\r\nfunction error(payload) {\r\n return { type: API_ACTION_TYPES.ERROR, payload };\r\n}\r\n\r\nfunction clear() {\r\n return { type: API_ACTION_TYPES.CLEAR };\r\n}\r\n\r\nexport const getSiteDetailsActions = {\r\n logo,\r\n footerImage,\r\n currency,\r\n paymentProvider,\r\n devNum,\r\n convenienceFee,\r\n uploadImagesToBudget,\r\n setDrawerState,\r\n set4week,\r\n};\r\n\r\nfunction set4week(payload) {\r\n return { type: GET_SITE_DETAILS_ACTION_TYPES.USE4WEEK, payload };\r\n}\r\nfunction currency(payload) {\r\n return { type: GET_SITE_DETAILS_ACTION_TYPES.CURRENCY, payload };\r\n}\r\nfunction logo(payload) {\r\n return { type: GET_SITE_DETAILS_ACTION_TYPES.LOGO, payload };\r\n}\r\nfunction footerImage(payload) {\r\n return { type: GET_SITE_DETAILS_ACTION_TYPES.FOOTER_IMAGE, payload };\r\n}\r\nfunction devNum(payload) {\r\n return { type: GET_SITE_DETAILS_ACTION_TYPES.DEPT_NUM, payload };\r\n}\r\nfunction convenienceFee(payload) {\r\n return { type: GET_SITE_DETAILS_ACTION_TYPES.CONVENIENCE_FEE, payload };\r\n}\r\nfunction uploadImagesToBudget(payload) {\r\n return {\r\n type: GET_SITE_DETAILS_ACTION_TYPES.UPLOAD_IMAGE_TO_BUDGET,\r\n payload,\r\n };\r\n}\r\n\r\nfunction paymentProvider(payload) {\r\n return { type: GET_SITE_DETAILS_ACTION_TYPES.PAYMENT_PROVIDER, payload };\r\n}\r\nfunction setDrawerState(payload) {\r\n return { type: GET_SITE_DETAILS_ACTION_TYPES.DRAWER_STATE, payload };\r\n}\r\n\r\nexport const htmlActions = {\r\n termsQuickPay,\r\n termsPlan,\r\n termsDiscount,\r\n viewOfferText,\r\n createPlanText,\r\n createPlantoc,\r\n createBudgetText,\r\n viewAccountText,\r\n setBurgerAnimation,\r\n};\r\nfunction termsDiscount(payload) {\r\n payload = ReactHtmlParser(payload);\r\n return { type: HTML_ACTION_TYPES.TERMS_DISCOUNT, payload };\r\n}\r\nfunction termsQuickPay(payload) {\r\n payload = ReactHtmlParser(payload);\r\n return { type: HTML_ACTION_TYPES.TERMS_QUICK_PAY, payload };\r\n}\r\nfunction termsPlan(payload) {\r\n payload = ReactHtmlParser(payload);\r\n return { type: HTML_ACTION_TYPES.TERMS_PLAN, payload };\r\n}\r\nfunction viewOfferText(payload) {\r\n payload = ReactHtmlParser(payload);\r\n return { type: HTML_ACTION_TYPES.VIEW_OFFER_TEXT, payload };\r\n}\r\nfunction createPlanText(payload) {\r\n payload = ReactHtmlParser(payload);\r\n return { type: HTML_ACTION_TYPES.CREATE_PLAN_TEXT, payload };\r\n}\r\nfunction createPlantoc(payload) {\r\n payload = ReactHtmlParser(payload);\r\n return { type: HTML_ACTION_TYPES.CREATE_PLANTOC, payload };\r\n}\r\nfunction createBudgetText(payload) {\r\n payload = ReactHtmlParser(payload);\r\n return { type: HTML_ACTION_TYPES.CREATE_BUDGET_TEXT, payload };\r\n}\r\nfunction viewAccountText(payload) {\r\n payload = ReactHtmlParser(payload);\r\n return { type: HTML_ACTION_TYPES.VIEW_ACCOUNT_TEXT, payload };\r\n}\r\n\r\nfunction setBurgerAnimation(payload) {\r\n return { type: HTML_ACTION_TYPES.BURGER_BUTTON_ANIMATION, payload };\r\n}\r\n//Camera Actions\r\nexport const cameraActions = {\r\n openCamera,\r\n setCapturedImage,\r\n addCapturedImage,\r\n deleteDocument,\r\n resetDocuments,\r\n};\r\nfunction openCamera(payload) {\r\n return { type: CAMERA_ACTION_TYPES.OPEN_CAMERA, payload };\r\n}\r\nfunction setCapturedImage(payload) {\r\n return { type: CAMERA_ACTION_TYPES.SET_IMAGE, payload };\r\n}\r\nfunction addCapturedImage(payload) {\r\n return { type: CAMERA_ACTION_TYPES.ADD_CONFIRMED_IMAGE, payload };\r\n}\r\nfunction deleteDocument(payload) {\r\n return { type: CAMERA_ACTION_TYPES.REMOVE_CONFIRMED_IMAGE, payload };\r\n}\r\nfunction resetDocuments() {\r\n return { type: CAMERA_ACTION_TYPES.RESET_CONFIRMET_IMAGES };\r\n}\r\n\r\nexport const documentsActions = {\r\n openDocumet,\r\n viewDocumet,\r\n};\r\n\r\nfunction viewDocumet(payload) {\r\n return { type: DOCUMENTS_ACTION_TYPES.DOCUMENT_TO_BE_VIEWED, payload };\r\n}\r\nfunction openDocumet(payload) {\r\n return { type: DOCUMENTS_ACTION_TYPES.OPEN, payload };\r\n}\r\n\r\n// to reset the state of redux store\r\nexport const resetStore = () => {\r\n return {\r\n type: RESET_STORE,\r\n };\r\n};\r\n","import Icon from \"@material-ui/core/Icon\";\r\nimport { makeStyles, useTheme } from \"@material-ui/core/styles\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport React, { useContext } from \"react\";\r\nimport Context from \"../../utils/context\";\r\nimport history from \"../../utils/history\";\r\nimport * as ACTIONS from \"../../store/actions/actions\";\r\n\r\nimport { useSelector, useDispatch } from \"react-redux\";\r\nimport { htmlActions } from \"store/redux/redux-actions/redux_actions\";\r\n\r\nconst drawerWidth = 150;\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n display: \"flex\",\r\n },\r\n appBar: {\r\n border: \"none\",\r\n transition: theme.transitions.create([\"margin\", \"width\"], {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n },\r\n appBarShift: {\r\n width: `calc(100% - ${drawerWidth}px)`,\r\n marginLeft: drawerWidth,\r\n transition: theme.transitions.create([\"margin\", \"width\"], {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n },\r\n menuButton: {\r\n marginLeft: theme.spacing(1.5),\r\n marginRight: theme.spacing(3),\r\n },\r\n hide: {\r\n display: \"none\",\r\n },\r\n drawer: {\r\n width: drawerWidth,\r\n flexShrink: 0,\r\n border: \"none\",\r\n },\r\n drawerPaper: {\r\n width: drawerWidth,\r\n top: 60,\r\n border: 0,\r\n paddingTop: 30,\r\n },\r\n linkButton: {\r\n padding: \"25px 25px\",\r\n width: 35,\r\n textAlign: \"center\",\r\n },\r\n drawerHeader: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n padding: theme.spacing(0, 1),\r\n ...theme.mixins.toolbar,\r\n justifyContent: \"flex-end\",\r\n },\r\n textCenter: {\r\n textAlign: \"center\",\r\n fontSize: 13,\r\n fontWeight: 400,\r\n marginTop: 1,\r\n marginBottom: 0,\r\n },\r\n textCenterAccNum: {\r\n textAlign: \"center\",\r\n fontSize: 11,\r\n fontWeight: 400,\r\n marginTop: 1,\r\n },\r\n content: {\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: -drawerWidth,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n}));\r\n\r\nexport default function AccountItem(props) {\r\n const classes = useStyles();\r\n const theme = useTheme();\r\n const page = props.page;\r\n const account = props.account;\r\n const context = useContext(Context);\r\n const dispatch = useDispatch();\r\n\r\n const onClickHandler = () => {\r\n dispatch(ACTIONS.set_selectedAccount(props.account));\r\n props.onClick();\r\n dispatch(htmlActions.createPlanText(props.account.createplantext));\r\n history.push(`/viewAccount?acc=` + props.account.accountnumber);\r\n };\r\n return (\r\n
\r\n \r\n \r\n \r\n\r\n

{props.account.balancedesc}

\r\n\r\n

\r\n {props.account.accountnumber}\r\n

\r\n
\r\n );\r\n}\r\n","import { isMobile } from \"react-device-detect\";\r\nlet drawerWidth = 0;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\n\r\nconst changePasswordOrPinStyle = (theme) => ({\r\n root: {\r\n width: \"100%\",\r\n margin: 0,\r\n padding: 0,\r\n },\r\n button: {\r\n marginRight: theme.spacing(1),\r\n padding: 13,\r\n },\r\n content: {\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n hide: {\r\n display: \"none\",\r\n },\r\n instructions: {\r\n marginTop: theme.spacing(1),\r\n marginBottom: theme.spacing(1),\r\n },\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 30,\r\n },\r\n whiteInfo: {\r\n color: \"white\",\r\n fontWeight: 400,\r\n paddingLeft: 0,\r\n paddingTop: 10,\r\n },\r\n whiteInfoMiddle: {\r\n color: \"white\",\r\n fontWeight: 400,\r\n paddingLeft: 0,\r\n\r\n textAlign: \"center\",\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n },\r\n blueText: {\r\n color: \"#0065a4\",\r\n fontWeight: 300,\r\n },\r\n Title: {\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n BoxFull: {\r\n width: \"100%\",\r\n paddingLeft: 0,\r\n paddingRight: 0,\r\n },\r\n Middle: {\r\n justifyContent: \"center\",\r\n width: \"100%\",\r\n alignItems: \"center\",\r\n textAlign: \"center\",\r\n border: 0,\r\n },\r\n blueTextMiddle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n justifyContent: \"center\",\r\n width: \"100%\",\r\n alignItems: \"center\",\r\n textAlign: \"center\",\r\n border: 0,\r\n },\r\n\r\n rightValues: {\r\n textAlign: \"right\",\r\n fontWeight: 300,\r\n },\r\n});\r\n\r\nexport default changePasswordOrPinStyle;\r\n","import {\r\n blackColor,\r\n whiteColor,\r\n grayColor,\r\n roseColor,\r\n primaryColor,\r\n successColor,\r\n dangerColor,\r\n warningColor,\r\n infoColor,\r\n hexToRgb\r\n} from \"assets/jss/xrs.js\";\r\n\r\nconst cardStyle = {\r\n card: {\r\n border: \"0\",\r\n marginBottom: \"30px\",\r\n marginTop: \"30px\",\r\n borderRadius: \"6px\",\r\n color: \"rgba(\" + hexToRgb(blackColor) + \", 0.87)\",\r\n background: whiteColor,\r\n width: \"100%\",\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12)\",\r\n position: \"relative\",\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n minWidth: \"0\",\r\n wordWrap: \"break-word\",\r\n fontSize: \".875rem\",\r\n // some jss/css to make the cards look a bit better on Internet Explorer\r\n \"@media all and (-ms-high-contrast: none), (-ms-high-contrast: active)\": {\r\n display: \"inline-block !important\"\r\n }\r\n },\r\n cardPlain: {\r\n background: \"transparent\",\r\n boxShadow: \"none\"\r\n },\r\n cardProfile: {\r\n marginTop: \"30px\",\r\n textAlign: \"center\"\r\n },\r\n cardBlog: {\r\n marginTop: \"60px\"\r\n },\r\n cardRaised: {\r\n boxShadow:\r\n \"0 16px 38px -12px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.56), 0 4px 25px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.2)\"\r\n },\r\n cardBackground: {\r\n backgroundPosition: \"50%\",\r\n backgroundSize: \"cover\",\r\n textAlign: \"center\",\r\n color: whiteColor,\r\n \"& h3\": {\r\n color: whiteColor + \" !important\"\r\n },\r\n \"& p\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \",0.7)!important\"\r\n },\r\n \"&:after\": {\r\n position: \"absolute\",\r\n zIndex: \"1\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n display: \"block\",\r\n left: \"0\",\r\n top: \"0\",\r\n content: '\"\"',\r\n backgroundColor: \"rgba(\" + hexToRgb(blackColor) + \", 0.56)\",\r\n borderRadius: \"6px\"\r\n },\r\n \"& small\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.7) !important\"\r\n }\r\n },\r\n cardPricing: {\r\n textAlign: \"center\",\r\n \"&:after\": {\r\n backgroundColor: \"rgba(\" + hexToRgb(blackColor) + \", 0.7) !important\"\r\n },\r\n \"& ul\": {\r\n listStyle: \"none\",\r\n padding: 0,\r\n maxWidth: \"240px\",\r\n margin: \"10px auto\"\r\n },\r\n \"& ul li\": {\r\n color: grayColor[0],\r\n textAlign: \"center\",\r\n padding: \"12px 0px\",\r\n borderBottom: \"1px solid rgba(\" + hexToRgb(grayColor[0]) + \",0.3)\"\r\n },\r\n \"& ul li:last-child\": {\r\n border: 0\r\n },\r\n \"& ul li b\": {\r\n color: grayColor[1]\r\n },\r\n \"& h1\": {\r\n marginTop: \"30px\"\r\n },\r\n \"& h1 small\": {\r\n display: \"inline-flex\",\r\n height: 0,\r\n fontSize: \"18px\"\r\n },\r\n \"& h1 small:first-child\": {\r\n position: \"relative\",\r\n top: \"-17px\",\r\n fontSize: \"26px\"\r\n },\r\n \"& ul li svg,& ul li .fab,& ul li .fas,& ul li .far,& ul li .fal,& ul li .material-icons\": {\r\n position: \"relative\",\r\n top: \"7px\"\r\n }\r\n },\r\n cardPricingColor: {\r\n \"& ul li\": {\r\n color: whiteColor,\r\n borderColor: \"rgba(\" + hexToRgb(whiteColor) + \",0.3)\",\r\n \"& b, & svg,& .fab,& .fas,& .far,& .fal,& .material-icons\": {\r\n color: whiteColor,\r\n fontWeight: \"700\"\r\n }\r\n }\r\n },\r\n cardProduct: {\r\n marginTop: \"30px\"\r\n },\r\n primary: {\r\n background:\r\n \"linear-gradient(60deg,\" + primaryColor[1] + \", \" + primaryColor[2] + \")\",\r\n \"& h1 small\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.8)\"\r\n },\r\n color: whiteColor\r\n },\r\n info: {\r\n background:\r\n \"linear-gradient(60deg,\" + infoColor[1] + \",\" + infoColor[2] + \")\",\r\n \"& h1 small\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.8)\"\r\n },\r\n color: whiteColor\r\n },\r\n success: {\r\n background:\r\n \"linear-gradient(60deg,\" + successColor[1] + \",\" + successColor[2] + \")\",\r\n \"& h1 small\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.8)\"\r\n },\r\n color: whiteColor\r\n },\r\n warning: {\r\n background:\r\n \"linear-gradient(60deg,\" + warningColor[1] + \",\" + warningColor[2] + \")\",\r\n \"& h1 small\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.8)\"\r\n },\r\n color: whiteColor\r\n },\r\n danger: {\r\n background:\r\n \"linear-gradient(60deg,\" + dangerColor[1] + \",\" + dangerColor[2] + \")\",\r\n \"& h1 small\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.8)\"\r\n },\r\n color: whiteColor\r\n },\r\n rose: {\r\n background:\r\n \"linear-gradient(60deg,\" + roseColor[1] + \",\" + roseColor[2] + \")\",\r\n \"& h1 small\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.8)\"\r\n },\r\n color: whiteColor\r\n }\r\n};\r\n\r\nexport default cardStyle;\r\n","import React from \"react\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n// @material-ui/icons\r\n\r\n// core components\r\nimport styles from \"assets/jss/xrs/components/cardStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Card(props) {\r\n const {\r\n className,\r\n children,\r\n plain,\r\n profile,\r\n blog,\r\n raised,\r\n background,\r\n pricing,\r\n color,\r\n product,\r\n testimonial,\r\n ...rest\r\n } = props;\r\n const classes = useStyles();\r\n const cardClasses = classNames({\r\n [classes.card]: true,\r\n [classes.cardPlain]: plain,\r\n [classes.cardProfile]: profile || testimonial,\r\n [classes.cardBlog]: blog,\r\n [classes.cardRaised]: raised,\r\n [classes.cardBackground]: background,\r\n [classes.cardPricingColor]:\r\n (pricing && color !== undefined) || (pricing && background !== undefined),\r\n [classes[color]]: color,\r\n [classes.cardPricing]: pricing,\r\n [classes.cardProduct]: product,\r\n [className]: className !== undefined\r\n });\r\n return (\r\n
\r\n {children}\r\n
\r\n );\r\n}\r\n\r\nCard.propTypes = {\r\n className: PropTypes.string,\r\n plain: PropTypes.bool,\r\n profile: PropTypes.bool,\r\n blog: PropTypes.bool,\r\n raised: PropTypes.bool,\r\n background: PropTypes.bool,\r\n pricing: PropTypes.bool,\r\n testimonial: PropTypes.bool,\r\n color: PropTypes.oneOf([\r\n \"primary\",\r\n \"info\",\r\n \"success\",\r\n \"warning\",\r\n \"danger\",\r\n \"rose\"\r\n ]),\r\n product: PropTypes.bool,\r\n children: PropTypes.node\r\n};\r\n","import { whiteColor, hexToRgb } from \"assets/jss/xrs.js\";\r\n\r\nconst cardBodyStyle = {\r\n cardBody: {\r\n padding: \"0.9375rem 1.875rem\",\r\n flex: \"1 1 auto\",\r\n WebkitBoxFlex: \"1\"\r\n },\r\n cardBodyBackground: {\r\n position: \"relative\",\r\n zIndex: \"2\",\r\n minHeight: \"280px\",\r\n paddingTop: \"40px\",\r\n paddingBottom: \"40px\",\r\n maxWidth: \"440px\",\r\n margin: \"0 auto\"\r\n },\r\n cardBodyPlain: {\r\n paddingLeft: \"5px\",\r\n paddingRight: \"5px\"\r\n },\r\n cardBodyFormHorizontal: {\r\n paddingLeft: \"15px\",\r\n paddingRight: \"15px\",\r\n \"& form\": {\r\n margin: \"0\"\r\n }\r\n },\r\n cardPricing: {\r\n padding: \"15px!important\",\r\n margin: \"0px!important\"\r\n },\r\n cardSignup: {\r\n padding: \"0px 30px 0px 30px\"\r\n },\r\n cardBodyColor: {\r\n borderRadius: \"6px\",\r\n \"& h1,& h2,& h3\": {\r\n \"& small\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.8)\"\r\n }\r\n }\r\n }\r\n};\r\n\r\nexport default cardBodyStyle;\r\n","import React from \"react\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n// @material-ui/icons\r\n\r\n// core components\r\nimport styles from \"assets/jss/xrs/components/cardBodyStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function CardBody(props) {\r\n const {\r\n className,\r\n children,\r\n background,\r\n plain,\r\n formHorizontal,\r\n pricing,\r\n signup,\r\n color,\r\n ...rest\r\n } = props;\r\n const classes = useStyles();\r\n const cardBodyClasses = classNames({\r\n [classes.cardBody]: true,\r\n [classes.cardBodyBackground]: background,\r\n [classes.cardBodyPlain]: plain,\r\n [classes.cardBodyFormHorizontal]: formHorizontal,\r\n [classes.cardPricing]: pricing,\r\n [classes.cardSignup]: signup,\r\n [classes.cardBodyColor]: color,\r\n [className]: className !== undefined\r\n });\r\n return (\r\n
\r\n {children}\r\n
\r\n );\r\n}\r\n\r\nCardBody.propTypes = {\r\n className: PropTypes.string,\r\n background: PropTypes.bool,\r\n plain: PropTypes.bool,\r\n formHorizontal: PropTypes.bool,\r\n pricing: PropTypes.bool,\r\n signup: PropTypes.bool,\r\n color: PropTypes.bool,\r\n children: PropTypes.node\r\n};\r\n","import {\r\n blackColor,\r\n primaryColor,\r\n primaryDarkColor,\r\n roseColor,\r\n infoColor,\r\n successColor,\r\n warningColor,\r\n dangerColor,\r\n hexToRgb\r\n} from \"assets/jss/xrs.js\";\r\n\r\nconst parallaxStyle = {\r\n parallax: {\r\n minHeight: \"600px\",\r\n maxHeight: \"1600px\",\r\n overflow: \"hidden\",\r\n position: \"relative\",\r\n backgroundPosition: \"50%\",\r\n backgroundSize: \"cover\",\r\n margin: \"0\",\r\n padding: \"0\",\r\n border: \"0\",\r\n display: \"flex\",\r\n alignItems: \"center\"\r\n },\r\n filter: {},\r\n primaryColor: {\r\n \"&:before\": {\r\n background: \"rgba(\" + hexToRgb(primaryColor[4]) + \", 1)\"\r\n },\r\n \"&:after\": {\r\n background:\r\n \"linear-gradient(60deg,rgba(\" +\r\n hexToRgb(primaryColor[4]) +\r\n \",.56),rgba(\" +\r\n hexToRgb(primaryColor[5]) +\r\n \",.95))\"\r\n },\r\n \"&:after,&:before\": {\r\n position: \"absolute\",\r\n zIndex: \"1\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n display: \"block\",\r\n left: \"0\",\r\n top: \"0\",\r\n content: \"''\"\r\n }\r\n },\r\n primaryDarkColor: {\r\n \"&:before\": {\r\n background: \"rgba(\" + hexToRgb(primaryDarkColor[4]) + \", 1)\"\r\n },\r\n \"&:after\": {\r\n background:\r\n \"linear-gradient(60deg,rgba(\" +\r\n hexToRgb(primaryDarkColor[4]) +\r\n \",.56),rgba(\" +\r\n hexToRgb(primaryDarkColor[5]) +\r\n \",.95))\"\r\n },\r\n \"&:after,&:before\": {\r\n position: \"absolute\",\r\n zIndex: \"1\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n display: \"block\",\r\n left: \"0\",\r\n top: \"0\",\r\n content: \"''\"\r\n }\r\n },\r\n roseColor: {\r\n \"&:before\": {\r\n background: \"rgba(\" + hexToRgb(blackColor) + \", 0.5)\"\r\n },\r\n \"&:after\": {\r\n background:\r\n \"linear-gradient(60deg,rgba(\" +\r\n hexToRgb(roseColor[3]) +\r\n \",.56),rgba(\" +\r\n hexToRgb(roseColor[4]) +\r\n \",.95))\"\r\n },\r\n \"&:after,&:before\": {\r\n position: \"absolute\",\r\n zIndex: \"1\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n display: \"block\",\r\n left: \"0\",\r\n top: \"0\",\r\n content: \"''\"\r\n }\r\n },\r\n darkColor: {\r\n \"&:before\": {\r\n background: \"rgba(\" + hexToRgb(blackColor) + \", 0.5)\"\r\n },\r\n \"&:after,&:before\": {\r\n position: \"absolute\",\r\n zIndex: \"1\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n display: \"block\",\r\n left: \"0\",\r\n top: \"0\",\r\n content: \"''\"\r\n }\r\n },\r\n infoColor: {\r\n \"&:before\": {\r\n background: \"rgba(\" + hexToRgb(blackColor) + \", 0.5)\"\r\n },\r\n \"&:after\": {\r\n background:\r\n \"linear-gradient(60deg,rgba(\" +\r\n hexToRgb(infoColor[6]) +\r\n \",.56),rgba(\" +\r\n hexToRgb(infoColor[7]) +\r\n \",.95))\"\r\n },\r\n \"&:after,&:before\": {\r\n position: \"absolute\",\r\n zIndex: \"1\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n display: \"block\",\r\n left: \"0\",\r\n top: \"0\",\r\n content: \"''\"\r\n }\r\n },\r\n successColor: {\r\n \"&:before\": {\r\n background: \"rgba(\" + hexToRgb(blackColor) + \", 0.5)\"\r\n },\r\n \"&:after\": {\r\n background:\r\n \"linear-gradient(60deg,rgba(\" +\r\n hexToRgb(successColor[6]) +\r\n \",.56),rgba(\" +\r\n hexToRgb(successColor[7]) +\r\n \",.95))\"\r\n },\r\n \"&:after,&:before\": {\r\n position: \"absolute\",\r\n zIndex: \"1\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n display: \"block\",\r\n left: \"0\",\r\n top: \"0\",\r\n content: \"''\"\r\n }\r\n },\r\n warningColor: {\r\n \"&:before\": {\r\n background: \"rgba(\" + hexToRgb(blackColor) + \", 0.5)\"\r\n },\r\n \"&:after\": {\r\n background:\r\n \"linear-gradient(60deg,rgba(\" +\r\n hexToRgb(warningColor[6]) +\r\n \",.56),rgba(\" +\r\n hexToRgb(warningColor[7]) +\r\n \",.95))\"\r\n },\r\n \"&:after,&:before\": {\r\n position: \"absolute\",\r\n zIndex: \"1\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n display: \"block\",\r\n left: \"0\",\r\n top: \"0\",\r\n content: \"''\"\r\n }\r\n },\r\n dangerColor: {\r\n \"&:before\": {\r\n background: \"rgba(\" + hexToRgb(blackColor) + \", 0.5)\"\r\n },\r\n \"&:after\": {\r\n background:\r\n \"linear-gradient(60deg,rgba(\" +\r\n hexToRgb(dangerColor[6]) +\r\n \",.56),rgba(\" +\r\n hexToRgb(dangerColor[7]) +\r\n \",.95))\"\r\n },\r\n \"&:after,&:before\": {\r\n position: \"absolute\",\r\n zIndex: \"1\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n display: \"block\",\r\n left: \"0\",\r\n top: \"0\",\r\n content: \"''\"\r\n }\r\n },\r\n small: {\r\n height: \"65vh\",\r\n minHeight: \"65vh\",\r\n maxHeight: \"650px\"\r\n }\r\n};\r\n\r\nexport default parallaxStyle;\r\n","import React from \"react\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\n// core components\r\nimport styles from \"assets/jss/xrs/components/parallaxStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Parallax(props) {\r\n const { filter, className, children, style, image, small } = props;\r\n const classes = useStyles();\r\n const parallaxClasses = classNames({\r\n [classes.parallax]: true,\r\n [classes[filter + \"Color\"]]: filter !== undefined,\r\n [classes.small]: small,\r\n [className]: className !== undefined\r\n });\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n}\r\n\r\nParallax.propTypes = {\r\n className: PropTypes.string,\r\n filter: PropTypes.oneOf([\r\n \"primary\",\r\n \"primaryDark\",\r\n \"rose\",\r\n \"dark\",\r\n \"info\",\r\n \"success\",\r\n \"warning\",\r\n \"danger\"\r\n ]),\r\n children: PropTypes.node,\r\n style: PropTypes.string,\r\n image: PropTypes.string,\r\n small: PropTypes.bool\r\n};\r\n","import {\r\n primaryColor,\r\n dangerColor,\r\n successColor,\r\n whiteColor,\r\n grayColor,\r\n defaultFont,\r\n blackColor,\r\n} from \"assets/jss/xrs.js\";\r\n\r\nconst customInputStyle = {\r\n disabled: {\r\n \"&:before\": {\r\n backgroundColor: \"white\",\r\n },\r\n },\r\n underline: {\r\n \"&:hover:not($disabled):before,&:before\": {\r\n borderBottomColor: primaryColor[0] + \" !important\",\r\n borderBottomWidth: \"1px !important\",\r\n },\r\n \"&:after\": {\r\n borderBottomColor: primaryColor[0],\r\n },\r\n },\r\n underlineError: {\r\n \"&:after\": {\r\n borderBottomColor: dangerColor[0],\r\n },\r\n },\r\n underlineSuccess: {\r\n \"&:after\": {\r\n borderBottomColor: successColor[0],\r\n },\r\n },\r\n helperTextRoot: {\r\n ...defaultFont,\r\n fontFamily: '\"Roboto\", \"Helvetica\", \"Arial\", sans-serif',\r\n color: \"rgba(0, 0, 0, 0.87)\",\r\n fontSize: \"13.4px\",\r\n marginTop: \"8px\" + \" !important\",\r\n width: \"360px\",\r\n lineHeight: \"0\",\r\n fontWeight: 300,\r\n zIndex: 1000,\r\n padding: 5,\r\n letterSpacing: \"unset\",\r\n },\r\n labelRoot: {\r\n ...defaultFont,\r\n color: \"rgba(0, 0, 0, 0.87)\",\r\n fontFamily: '\"Roboto\", \"Helvetica\", \"Arial\", sans-serif',\r\n fontSize: \"18px\",\r\n width: \"400px\",\r\n lineHeight: \"0\",\r\n fontWeight: 300,\r\n\r\n zIndex: 1000,\r\n padding: 5,\r\n letterSpacing: \"unset\",\r\n position: \"relative\",\r\n },\r\n labelRootWhite: {\r\n ...defaultFont,\r\n color: whiteColor + \" !important\",\r\n fontSize: \"18px\",\r\n position: \"relative\",\r\n\r\n width: \"400px\",\r\n lineHeight: \"0\",\r\n zIndex: 1000,\r\n padding: 5,\r\n letterSpacing: \"unset\",\r\n },\r\n labelRootError: {\r\n color: dangerColor[0] + \" !important\",\r\n },\r\n labelRootSuccess: {\r\n color: successColor[0] + \" !important\",\r\n },\r\n feedback: {\r\n position: \"absolute\",\r\n bottom: \"4px\",\r\n right: \"0\",\r\n zIndex: \"2\",\r\n display: \"block\",\r\n width: \"24px\",\r\n height: \"24px\",\r\n textAlign: \"center\",\r\n pointerEvents: \"none\",\r\n },\r\n formControl: {\r\n margin: \"0 0 17px 0\",\r\n paddingTop: \"0px\",\r\n position: \"relative\",\r\n \"& svg,& .fab,& .far,& .fal,& .fas,& .material-icons\": {\r\n color: grayColor[13],\r\n },\r\n },\r\n whiteUnderline: {\r\n \"&:hover:not($disabled):before,&:before\": {\r\n borderBottomColor: whiteColor,\r\n },\r\n \"&:after\": {\r\n borderBottomColor: whiteColor,\r\n },\r\n },\r\n input: {\r\n color: grayColor[13],\r\n // borderRadius: 3,\r\n // border: 1,\r\n padding: 10,\r\n\r\n // borderBottomColor: whiteColor,\r\n // borderColor: primaryColor[0],\r\n // borderStyle: \"solid\",\r\n height: \"unset\",\r\n \"&,&::placeholder\": {\r\n fontSize: \"16px\",\r\n fontFamily: '\"Rubik\", \"Helvetica\", \"Arial\", sans-serif',\r\n fontWeight: \"500\",\r\n color: blackColor,\r\n lineHeight: \"1.42857\",\r\n opacity: \"1\",\r\n },\r\n \"&::placeholder\": {\r\n color: grayColor[12],\r\n opacity: \"0.2\",\r\n },\r\n },\r\n\r\n fieldSet: {\r\n borderRadius: 3,\r\n border: 1,\r\n backgroundColor: \"#f5f9ff\",\r\n margin: 0 + \" !important\",\r\n borderColor: primaryColor[0],\r\n borderStyle: \"solid\",\r\n },\r\n currency: {\r\n paddingLeft: 10,\r\n },\r\n\r\n whiteInput: {\r\n \"&,&::placeholder\": {\r\n opacity: \"1\",\r\n },\r\n \"&::placeholder\": {\r\n color: whiteColor,\r\n opacity: \"0.5\",\r\n },\r\n },\r\n};\r\n\r\nexport default customInputStyle;\r\n","import React from \"react\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport FormHelperText from \"@material-ui/core/FormHelperText\";\r\nimport Hidden from \"@material-ui/core/Hidden\";\r\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport Input from \"@material-ui/core/Input\";\r\n// @material-ui/icons\r\nimport Clear from \"@material-ui/icons/Clear\";\r\nimport Check from \"@material-ui/icons/Check\";\r\n\r\n// core components\r\n\r\nimport styles from \"assets/jss/xrs/components/customInputStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function CustomInput(props) {\r\n const currency = useSelector((state) => state.GetSiteDetailsReducer.currency);\r\n\r\n const {\r\n formControlProps,\r\n id,\r\n helperText,\r\n label,\r\n labelProps,\r\n inputProps,\r\n error,\r\n white,\r\n showCurrency,\r\n inputRootCustomClasses,\r\n success,\r\n multiline,\r\n reg,\r\n } = props;\r\n const classes = useStyles();\r\n const labelClasses = classNames({\r\n [\" \" + classes.labelRootError]: error,\r\n [\" \" + classes.labelRootSuccess]: success && !error,\r\n });\r\n const underlineClasses = classNames({\r\n [classes.underlineError]: error,\r\n [classes.underlineSuccess]: success && !error,\r\n [classes.underline]: true,\r\n [classes.whiteUnderline]: white,\r\n });\r\n const rootClasses = classNames({\r\n [classes.fieldSet]: true,\r\n });\r\n const inputClasses = classNames({\r\n [classes.input]: true,\r\n [classes.whiteInput]: white,\r\n });\r\n\r\n var formControlClasses;\r\n if (formControlProps !== undefined) {\r\n formControlClasses = classNames(\r\n formControlProps.className,\r\n classes.formControl\r\n );\r\n } else {\r\n formControlClasses = classes.formControl;\r\n }\r\n return (\r\n \r\n {inputProps.placeholder !== undefined || label !== undefined ? (\r\n \r\n \r\n {label !== undefined ? label : inputProps.placeholder}\r\n \r\n \r\n {inputProps.placeholder !== undefined\r\n ? inputProps.placeholder\r\n : label !== undefined\r\n ? label\r\n : null}\r\n \r\n \r\n ) : null}\r\n \r\n {currency}\r\n \r\n ) : (\r\n false\r\n )\r\n }\r\n mind=\"ters\"\r\n variant=\"outlined\"\r\n ref={reg}\r\n inputProps={{ ...inputProps }}\r\n />\r\n {helperText !== undefined ? (\r\n \r\n \r\n {helperText}\r\n \r\n \r\n ) : null}\r\n {error ? (\r\n \r\n ) : success ? (\r\n \r\n ) : null}\r\n \r\n );\r\n}\r\n\r\nCustomInput.propTypes = {\r\n label: PropTypes.string,\r\n helperText: PropTypes.string,\r\n labelText: PropTypes.node,\r\n labelProps: PropTypes.object,\r\n id: PropTypes.string,\r\n inputProps: PropTypes.object,\r\n formControlProps: PropTypes.object,\r\n showCurrency: PropTypes.bool,\r\n inputRootCustomClasses: PropTypes.string,\r\n error: PropTypes.bool,\r\n success: PropTypes.bool,\r\n white: PropTypes.bool,\r\n reg: PropTypes.object,\r\n multiline: PropTypes.bool,\r\n};\r\n","import React from \"react\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\n\r\nconst styles = {\r\n grid: {\r\n marginRight: \"-15px\",\r\n marginLeft: \"-15px\",\r\n width: \"auto\"\r\n }\r\n};\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function GridContainer(props) {\r\n const { children, className, ...rest } = props;\r\n const classes = useStyles();\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n}\r\n\r\nGridContainer.defaultProps = {\r\n className: \"\"\r\n};\r\n\r\nGridContainer.propTypes = {\r\n children: PropTypes.node,\r\n className: PropTypes.string\r\n};\r\n","import React from \"react\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\n\r\nconst styles = {\r\n grid: {\r\n position: \"relative\",\r\n width: \"100%\",\r\n minHeight: \"1px\",\r\n paddingRight: \"15px\",\r\n paddingLeft: \"15px\"\r\n /* flexBasis: \"auto\" */\r\n }\r\n};\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function GridItem(props) {\r\n const { children, className, ...rest } = props;\r\n const classes = useStyles();\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n}\r\n\r\nGridItem.defaultProps = {\r\n className: \"\"\r\n};\r\n\r\nGridItem.propTypes = {\r\n children: PropTypes.node,\r\n className: PropTypes.string\r\n};\r\n","// const api = \"https://endpoint.xrscollector.com\";\r\n// const api = \"http://api.xrs.ie/xrspaymentportal\";\r\n// const api = \"https://api.xrscollector.com/cssp\";\r\nconst api = \"https://api.xrscollector.com/wexfordcocoupdates\";\r\n\r\nexport const AuthenticationAPIUrl = api + \"/oauth/token\";\r\nexport const GetOfferAPIUrl = api + \"/api/WebOffers/ReturnWebOffer\";\r\nexport const GetSiteDetatilsAPIUrl = api + \"/api/getSiteDetails\";\r\nexport const GetcreateUserAPIUrl = api + \"/api/auth/create\";\r\nexport const GetcreateUserViaEmailAPIUrl = api + \"/api/auth/createViaEmail\";\r\n\r\nexport const GetCreateBusinesUserAPIUrl = api + \"/api/auth/createbusiness\";\r\nexport const GetCreatePersonalUserAPIUrl = api + \"/api/auth/createpersonal\";\r\n\r\nexport const GetRecreateUserAPIUrl = api + \"/api/auth/recreate\";\r\nexport const GetRecreateUserViaEmailAPIUrl = api + \"/api/auth/recreateViaEmail\";\r\n\r\nexport const GetReCreateBusinesUserAPIUrl = api + \"/api/auth/recreatebusiness\";\r\nexport const GetReCreatePersonalUserAPIUrl = api + \"/api/auth/recreatepersonal\";\r\n\r\nexport const GetPINDigitsAPIUrl = api + \"/api/auth/PINDigit\";\r\nexport const GetTokenURLAPI = api + \"/oauth/token\";\r\nexport const GetVerifyAPIUrl = api + \"/api/auth/verify\";\r\nexport const GetVerifyByEmailAPIUrl = api + \"/api/auth/verifybyemail\";\r\n\r\nexport const GetQuickPayAPIUrl = api + \"/api/QuickPay\";\r\nexport const GetQuickPaySSNAPIUrl = api + \"/api/QuickPaySSN\";\r\nexport const QuickPayPersonal = api + \"/api/QuickPayPersonal\";\r\nexport const QuickPayBusiness = api + \"/api/QuickPayBusiness\";\r\n\r\nexport const GetWebOffersAPIUrl = api + \"/Api/WebOffers/SetWebOffer\";\r\nexport const GetWebOffersCardAPIUrl =\r\n api + \"/Api/WebOfferUseExistingCard/SetWebOffer\";\r\nexport const GetReturnAPIUrl = api + \"/api/WebOffers/ReturnWebOffer\";\r\nexport const GetTransactionsAPIURL = api + \"/Api/accounts/GetTransactions\";\r\nexport const GetCardPaymentAPIURL = api + \"/Api/WebOffers/CardPayment\";\r\n\r\nexport const GetRelexPostBackAPIURL = api + \"/api/HppResponse/RealexResult\";\r\nexport const GetRealexPayURLAPI = \"https://pay.sandbox.realexpayments.com/pay\";\r\n\r\nexport const GetWelcomeDetails = api + \"/Api/WelcomeDetail/GetWelcomeDetails\";\r\nexport const GetReset = api + \"/api/auth/SendResetCredentialCode\";\r\nexport const GetBugetColumns = api + \"/Api/Budgets/getBudgetColumns\";\r\nexport const CreateBudget = api + \"/Api/Budgets/CreateBudget\";\r\nexport const CreateBudgetAndAttachDocuments =\r\n api + \"/Api/Budgets/CreateBudgetAndAttachDocuments\";\r\n\r\nexport const OnePaymentURLSettlementOfferNoCard =\r\n api + \"/Api/WebOffers/SettlementOffer\";\r\nexport const OnePaymentPayNowURLWebOfferUseExistingCard =\r\n api + \"/Api/WebOfferUseExistingCard/SettlementOffer\";\r\nexport const OnePaymentWebOfferResponseNoCard =\r\n api + \"/Api/HppCreateCard/RealexSettlementResult\";\r\n\r\nexport const PayNowURLNoCard = api + \"/Api/WebOffers/CardPayment\";\r\nexport const PayNowURLCard = api + \"/Api/CardPayments/UseExistingCard\";\r\nexport const PayNowResponseNoCard =\r\n api + \"/Api/HppCreateCardPayNow/RealexResult\";\r\nexport const WebOfferResponseNoCard = api + \"/Api/HppCreateCard/RealexResult\";\r\n\r\nexport const SaveCallBack = api + \"/Api/Callback/CreateCallBackLoggedOn\";\r\n\r\nexport const changePassword = api + \"/api/auth/ChangePassword\";\r\nexport const ChangeBusinessPassword = api + \"/api/auth/ChangeBusinessPassword\";\r\nexport const ChangePersonalPassword = api + \"/api/auth/ChangePersonalPassword\";\r\n\r\nexport const changePin = api + \"/api/auth/ChangePIN\";\r\nexport const ChangePersonalPIN = api + \"/api/auth/ChangePersonalPIN\";\r\nexport const ChangeBusinessPIN = api + \"/api/auth/ChangeBusinessPIN\";\r\n\r\nexport const sendCode = api + \"/api/auth/sendcode\";\r\n\r\nexport const ErrorRedirectURL = api + \"/Api/HppCreateCard/RealexResult\";\r\n\r\nexport const GetWelcomeNavigation =\r\n api + \"/Api/WelcomeDetail/getWelcomeNavigation\";\r\n\r\nexport const GetUserMessages = api + \"/Api/Messages/GetUserMessages\";\r\nexport const GetUserMessageDetails =\r\n api + \"/Api/Messages/GetUserMessageDetails?\";\r\n//TabaPay\r\nexport const QuickPayResultTabaPay = api + \"/Api/SSOResponse/QuickPayResult\";\r\n\r\nexport const CreateCardRequestTabaPay =\r\n api + \"/Api/SSORequest/CreateCardRequest\";\r\nexport const PayNowAndSaveCardResultTabaPay =\r\n api + \"/Api/SSOResponse/PayNowAndSaveCardResult\";\r\nexport const UseExistingCardTabaPay =\r\n api + \"/Api/SSOCardPayments/UseExistingCard\";\r\n\r\nexport const CreateOfferRequestTabaPay =\r\n api + \"/Api/SSORequest/CreateOfferRequest\";\r\nexport const SaveOfferResultTabaPay = api + \"/Api/SSOResponse/SaveOfferResult\";\r\nexport const SetWebOfferTabaPay = api + \"/Api/SSOCardPayments/SetWebOffer\";\r\n\r\nexport const CreateSettlementOfferRequestTabaPay =\r\n api + \"/Api/SSORequest/CreateSettlementOfferRequest\";\r\nexport const SaveSettlementOfferResultabaPay =\r\n api + \"/Api/SSOResponse/SaveSettlementOfferResult\";\r\nexport const SetWebSettlementOfferTabaPay =\r\n api + \"/Api/SSOCardPayments/SetWebSettlementOffer\";\r\n","import { blackColor, hexToRgb } from \"assets/jss/xrs.js\";\r\n\r\nconst imagesStyles = {\r\n imgFluid: {\r\n maxWidth: \"100%\",\r\n height: \"auto\",\r\n },\r\n imgRounded: {\r\n borderRadius: \"6px !important\",\r\n },\r\n imgRoundedCircle: {\r\n borderRadius: \"50% !important\",\r\n },\r\n imgRaised: {\r\n boxShadow:\r\n \"0 5px 15px -8px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.24), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.2)\",\r\n },\r\n imgGallery: {\r\n width: \"100%\",\r\n marginBottom: \"2.142rem\",\r\n },\r\n imgCardTop: {\r\n width: \"100%\",\r\n borderTopLeftRadius: \"calc(.25rem - 1px)\",\r\n borderTopRightRadius: \"calc(.25rem - 1px)\",\r\n },\r\n imgCardBottom: {\r\n width: \"100%\",\r\n borderBottomLeftRadius: \"calc(.25rem - 1px)\",\r\n borderBottomRightRadius: \"calc(.25rem - 1px)\",\r\n },\r\n imgCard: {\r\n width: \"100%\",\r\n borderRadius: \"calc(.25rem - 1px)\",\r\n },\r\n imgCardOverlay: {\r\n position: \"absolute\",\r\n top: \"0\",\r\n right: \"0\",\r\n bottom: \"0\",\r\n left: \"0\",\r\n padding: \"1.25rem\",\r\n },\r\n};\r\n\r\nexport default imagesStyles;\r\n","import imagesStyles from \"../../imagesStyles\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\nconst blueHeaderSectionStyle = {\r\n ...imagesStyles,\r\n white: {\r\n color: primaryColor[16],\r\n fontWeight: 500,\r\n paddingLeft: 10,\r\n fontFamily: primaryColor[17],\r\n fontSize: primaryColor[18],\r\n\r\n paddingTop: 5,\r\n },\r\n whiteCenter: {\r\n color: primaryColor[16],\r\n fontFamily: primaryColor[17],\r\n fontSize: primaryColor[18],\r\n fontWeight: 500,\r\n textAlign: \"center\",\r\n paddingRight: 10,\r\n paddingTop: 5,\r\n \"@media (max-width: 600px)\": {\r\n textAlign: \"left\",\r\n paddingLeft: 10,\r\n },\r\n },\r\n whiteRight: {\r\n color: primaryColor[16],\r\n fontFamily: primaryColor[17],\r\n fontSize: primaryColor[18],\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n paddingRight: 10,\r\n paddingTop: 5,\r\n \"@media (max-width: 600px)\": {\r\n textAlign: \"left\",\r\n\r\n paddingLeft: 10,\r\n },\r\n },\r\n blueTitle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n },\r\n Title: {\r\n fontWeight: 500,\r\n paddingTop: 40,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n CardStyle: {\r\n backgroundColor: primaryColor[15],\r\n padding: \"3px\",\r\n },\r\n};\r\n\r\nexport default blueHeaderSectionStyle;\r\n","import {\r\n warningColor,\r\n primaryColor,\r\n dangerColor,\r\n successColor,\r\n infoColor,\r\n roseColor,\r\n grayColor,\r\n defaultFont\r\n} from \"assets/jss/xrs.js\";\r\n\r\nconst tableStyle = {\r\n warning: {\r\n color: warningColor[0]\r\n },\r\n primary: {\r\n color: primaryColor[0]\r\n },\r\n danger: {\r\n color: dangerColor[0]\r\n },\r\n success: {\r\n color: successColor[0]\r\n },\r\n info: {\r\n color: infoColor[0]\r\n },\r\n rose: {\r\n color: roseColor[0]\r\n },\r\n gray: {\r\n color: grayColor[0]\r\n },\r\n right: {\r\n textAlign: \"right\"\r\n },\r\n table: {\r\n marginBottom: \"0\",\r\n width: \"100%\",\r\n maxWidth: \"100%\",\r\n backgroundColor: \"transparent\",\r\n borderSpacing: \"0\",\r\n borderCollapse: \"collapse\",\r\n overflow: \"auto\",\r\n \"& > tbody > tr, & > thead > tr\": {\r\n height: \"auto\"\r\n }\r\n },\r\n tableShoppingHead: {\r\n fontSize: \"0.75em !important\",\r\n textTransform: \"uppercase !important\"\r\n },\r\n tableCell: {\r\n ...defaultFont,\r\n lineHeight: \"1.5em\",\r\n padding: \"12px 8px!important\",\r\n verticalAlign: \"middle\",\r\n fontSize: \"0.875rem\",\r\n borderBottom: \"none\",\r\n borderTop: \"1px solid \" + grayColor[6],\r\n position: \"relative\",\r\n color: grayColor[1]\r\n },\r\n tableHeadCell: {\r\n fontSize: \"1.063rem\",\r\n borderBottomWidth: \"1px\",\r\n fontWeight: \"300\",\r\n color: grayColor[15],\r\n borderTopWidth: \"0 !important\"\r\n },\r\n tableCellTotal: {\r\n fontWeight: \"500\",\r\n fontSize: \"1.0625rem\",\r\n paddingTop: \"20px\",\r\n textAlign: \"right\"\r\n },\r\n tableCellAmount: {\r\n fontSize: \"26px\",\r\n fontWeight: \"300\",\r\n marginTop: \"5px\",\r\n textAlign: \"right\"\r\n },\r\n tableResponsive: {\r\n minHeight: \"0.1%\",\r\n overflowX: \"auto\"\r\n },\r\n tableStripedRow: {\r\n backgroundColor: grayColor[16]\r\n },\r\n tableRowHover: {\r\n \"&:hover\": {\r\n backgroundColor: grayColor[23]\r\n }\r\n },\r\n warningRow: {\r\n backgroundColor: warningColor[4],\r\n \"&:hover\": {\r\n backgroundColor: warningColor[5]\r\n }\r\n },\r\n dangerRow: {\r\n backgroundColor: dangerColor[4],\r\n \"&:hover\": {\r\n backgroundColor: dangerColor[5]\r\n }\r\n },\r\n successRow: {\r\n backgroundColor: successColor[4],\r\n \"&:hover\": {\r\n backgroundColor: successColor[5]\r\n }\r\n },\r\n infoRow: {\r\n backgroundColor: infoColor[4],\r\n \"&:hover\": {\r\n backgroundColor: infoColor[5]\r\n }\r\n }\r\n};\r\n\r\nexport default tableStyle;\r\n","import React from \"react\";\r\nimport cx from \"classnames\";\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Table from \"@material-ui/core/Table\";\r\nimport TableBody from \"@material-ui/core/TableBody\";\r\nimport TableCell from \"@material-ui/core/TableCell\";\r\nimport TableHead from \"@material-ui/core/TableHead\";\r\nimport TableRow from \"@material-ui/core/TableRow\";\r\n\r\nimport styles from \"assets/jss/xrs/components/tableStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function CustomTable(props) {\r\n const {\r\n tableHead,\r\n tableData,\r\n tableHeaderColor,\r\n hover,\r\n colorsColls,\r\n coloredColls,\r\n customCellClasses,\r\n customClassesForCells,\r\n striped,\r\n tableShopping,\r\n customHeadCellClasses,\r\n customHeadClassesForCells\r\n } = props;\r\n const classes = useStyles();\r\n return (\r\n
\r\n \r\n {tableHead !== undefined ? (\r\n \r\n \r\n {tableHead.map((prop, key) => {\r\n const tableCellClasses =\r\n classes.tableHeadCell +\r\n \" \" +\r\n classes.tableCell +\r\n \" \" +\r\n cx({\r\n [customHeadCellClasses[\r\n customHeadClassesForCells.indexOf(key)\r\n ]]: customHeadClassesForCells.indexOf(key) !== -1,\r\n [classes.tableShoppingHead]: tableShopping\r\n });\r\n return (\r\n \r\n {prop}\r\n \r\n );\r\n })}\r\n \r\n \r\n ) : null}\r\n \r\n {tableData.map((prop, key) => {\r\n var rowColor = \"\";\r\n var rowColored = false;\r\n if (prop.color !== undefined) {\r\n rowColor = prop.color;\r\n rowColored = true;\r\n prop = prop.data;\r\n }\r\n const tableRowClasses = cx({\r\n [classes.tableRowHover]: hover,\r\n [classes[rowColor + \"Row\"]]: rowColored,\r\n [classes.tableStripedRow]: striped && key % 2 === 0\r\n });\r\n if (prop.total) {\r\n return (\r\n \r\n \r\n \r\n Total\r\n \r\n \r\n {prop.amount}\r\n \r\n {tableHead.length - (prop.colspan - 0 + 2) > 0 ? (\r\n \r\n ) : null}\r\n \r\n );\r\n }\r\n if (prop.purchase) {\r\n return (\r\n \r\n \r\n \r\n Total\r\n \r\n \r\n {prop.amount}\r\n \r\n \r\n {prop.col.text}\r\n \r\n \r\n );\r\n }\r\n return (\r\n \r\n {prop.map((prop, key) => {\r\n const tableCellClasses =\r\n classes.tableCell +\r\n \" \" +\r\n cx({\r\n [classes[colorsColls[coloredColls.indexOf(key)]]]:\r\n coloredColls.indexOf(key) !== -1,\r\n [customCellClasses[customClassesForCells.indexOf(key)]]:\r\n customClassesForCells.indexOf(key) !== -1\r\n });\r\n return (\r\n \r\n {prop}\r\n \r\n );\r\n })}\r\n \r\n );\r\n })}\r\n \r\n
\r\n
\r\n );\r\n}\r\n\r\nCustomTable.defaultProps = {\r\n tableHeaderColor: \"gray\",\r\n hover: false,\r\n colorsColls: [],\r\n coloredColls: [],\r\n striped: false,\r\n customCellClasses: [],\r\n customClassesForCells: [],\r\n customHeadCellClasses: [],\r\n customHeadClassesForCells: []\r\n};\r\n\r\nCustomTable.propTypes = {\r\n tableHeaderColor: PropTypes.oneOf([\r\n \"warning\",\r\n \"primary\",\r\n \"danger\",\r\n \"success\",\r\n \"info\",\r\n \"rose\",\r\n \"gray\"\r\n ]),\r\n tableHead: PropTypes.arrayOf(PropTypes.string),\r\n // Of(PropTypes.arrayOf(PropTypes.node)) || Of(PropTypes.object),\r\n tableData: PropTypes.array,\r\n hover: PropTypes.bool,\r\n coloredColls: PropTypes.arrayOf(PropTypes.number),\r\n // Of([\"warning\",\"primary\",\"danger\",\"success\",\"info\",\"rose\",\"gray\"]) - colorsColls\r\n colorsColls: PropTypes.array,\r\n customCellClasses: PropTypes.arrayOf(PropTypes.string),\r\n customClassesForCells: PropTypes.arrayOf(PropTypes.number),\r\n customHeadCellClasses: PropTypes.arrayOf(PropTypes.string),\r\n customHeadClassesForCells: PropTypes.arrayOf(PropTypes.number),\r\n striped: PropTypes.bool,\r\n // this will cause some changes in font\r\n tableShopping: PropTypes.bool\r\n};\r\n","import Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport Button from \"components/CustomButtons/Button\";\r\nimport React, { useContext } from \"react\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport blueHeaderSectionStyle from \"assets/jss/xrs/views/sectionsSections/blueHeaderSectionStyle\";\r\nimport Context from \"../../../utils/context\";\r\nimport Table from \"components/Table/Table.js\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport NumberFormat from \"react-number-format\";\r\nimport * as URLS from \"../../../utils/XRSAPIs\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport {\r\n BrowserView,\r\n MobileView,\r\n isBrowser,\r\n isMobile,\r\n} from \"react-device-detect\";\r\n\r\nconst useStyles = makeStyles(blueHeaderSectionStyle);\r\nexport default function BlueHeaderSection(props) {\r\n const context = useContext(Context);\r\n const classes = useStyles();\r\n const [ballance, setBallance] = React.useState(0);\r\n const [site, setSite] = React.useState(\"\");\r\n const token = sessionStorage.getItem(\"access_token\");\r\n const [phone, setPhone] = React.useState(\"\");\r\n const stateSite = useSelector((state) => state.SiteReducer.site);\r\n const stateSelectedAccount = useSelector(\r\n (state) => state.SelectedAccountsReducer.account\r\n );\r\n const currency = useSelector((state) => state.GetSiteDetailsReducer.currency);\r\n const deptphonenumber = useSelector(\r\n (state) => state.GetSiteDetailsReducer.deptphonenumber\r\n );\r\n const numOfAccounts = useSelector(\r\n (state) => state.AccountsReducer.numOfAccounts\r\n );\r\n const stateCustomer = useSelector((state) => state.CustomerReducer.customer);\r\n\r\n React.useEffect(() => {\r\n if (stateSelectedAccount == \"NoAccount\") {\r\n setBallance(stateCustomer.totalbalance);\r\n } else {\r\n setBallance(stateSelectedAccount.balance);\r\n }\r\n\r\n if (deptphonenumber != \"\") {\r\n setPhone(deptphonenumber);\r\n } else {\r\n setPhone(stateSite.phonenumber);\r\n }\r\n }, [stateSelectedAccount]);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n

\r\n {\" \"}\r\n {numOfAccounts > 1 && stateSelectedAccount != \"NoAccount\"\r\n ? \"Balance: \"\r\n : \"Total Balance: \"}\r\n \r\n

\r\n
\r\n\r\n \r\n {numOfAccounts > 1 && stateSelectedAccount != \"NoAccount\" ? (\r\n

\r\n {\" \" +\r\n stateSelectedAccount.clientname +\r\n \": \" +\r\n stateSelectedAccount.accountnumber}\r\n

\r\n ) : null}\r\n
\r\n \r\n

\r\n Call us now:\r\n {isMobile ? (\r\n \r\n {phone}\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","import React, { useContext } from \"react\";\r\nimport Context from \"./context\";\r\nimport * as ACTIONS from \"../store/actions/actions\";\r\nimport { useSelector, useDispatch } from \"react-redux\";\r\nexport const ApiErrorHandler = (from, error, context) => {\r\n let message = \"\";\r\n if (error.message != undefined) {\r\n message = error.message;\r\n }\r\n if (error.MESSAGE != undefined) {\r\n message = error.MESSAGE;\r\n }\r\n\r\n if (error.statusText != undefined) {\r\n message = error.statusText;\r\n }\r\n\r\n if (error.responseText != undefined) {\r\n let parsedError = JSON.parse(error.responseText);\r\n if (parsedError.message != undefined) {\r\n message = parsedError.message;\r\n }\r\n\r\n if (parsedError.error_description != undefined) {\r\n message = parsedError.error_description;\r\n }\r\n if (parsedError.errors != undefined) {\r\n var errors = parsedError.errors;\r\n message = \"\";\r\n errors.forEach((element) => (message += element + \"\\n\"));\r\n }\r\n }\r\n\r\n switch (error.status) {\r\n case 401 || 403:\r\n message =\r\n \"You have been logged out of this session. Please close and restart the browser to log in again\";\r\n context.stateInfoDialog(from, message, \"/landing-page\");\r\n break;\r\n\r\n default:\r\n context.stateInfoDialog(from, message);\r\n break;\r\n }\r\n};\r\n","import { Collapse } from \"@material-ui/core\";\r\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\r\nimport Link from \"@material-ui/core/Link\";\r\nimport Radio from \"@material-ui/core/Radio\";\r\nimport RadioGroup from \"@material-ui/core/RadioGroup\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport changePasswordOrPinStyle from \"../../assets/jss/xrs/views/changePasswordOrPinStyle\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport Parallax from \"components/Parallax/Parallax.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport TextField from \"components/CustomInput/CustomInput.js\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport fnmoment from \"moment\";\r\nimport React, { useContext } from \"react\";\r\nimport Moment from \"react-moment\";\r\nimport NumberFormat from \"react-number-format\";\r\nimport Context from \"utils/context\";\r\nimport * as URLS from \"utils/XRSAPIs\";\r\nimport history from \"utils/history\";\r\nimport Slider from \"react-slick\";\r\nimport BlueHeader from \"../SectionsPage/Sections/BlueHeaderSection.js\";\r\nimport clsx from \"clsx\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport { primaryColor } from \"assets/jss/xrs\";\r\n\r\nlet drawerWidth = 0;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\n\r\nconst useStyles = makeStyles(changePasswordOrPinStyle);\r\n\r\nfunction getSteps() {\r\n return [\"Instructions\", \"Payments\", \"Summary\"];\r\n}\r\n\r\nconst SliderSettings = {\r\n infinite: false,\r\n arrows: false,\r\n touchMove: false,\r\n\r\n centerMode: false,\r\n variableWidth: false,\r\n dots: false,\r\n initialSlide: 0,\r\n slidesToShow: 3,\r\n responsive: [\r\n {\r\n breakpoint: 1024,\r\n settings: {\r\n slidesToShow: 3,\r\n slidesToScroll: 1,\r\n dots: false,\r\n },\r\n },\r\n {\r\n breakpoint: 600,\r\n settings: {\r\n slidesToShow: 2,\r\n slidesToScroll: 1,\r\n initialSlide: 1,\r\n },\r\n },\r\n {\r\n breakpoint: 480,\r\n settings: {\r\n slidesToShow: 1,\r\n slidesToScroll: 1,\r\n },\r\n },\r\n ],\r\n};\r\n\r\nexport default function ChangePasswordAndPin(props) {\r\n const context = useContext(Context);\r\n const classes = useStyles();\r\n const [skipped, setSkipped] = React.useState(new Set());\r\n const [topNav, setTopNav] = React.useState(null);\r\n const steps = getSteps();\r\n const [step, setStep] = React.useState(0);\r\n\r\n const [cReference, setReference] = React.useState(\"\");\r\n const [cMobileNumber, setMobileNumber] = React.useState(\"\");\r\n const [cEmail, setcEmail] = React.useState(\"\");\r\n\r\n const [cDateOfBirth, setDateOfBirth] = React.useState(\"\");\r\n const [CredentialToReset, setCredentialToReset] = React.useState(\"Password\");\r\n\r\n const [OldPassword, setOldPassword] = React.useState(\"\");\r\n const [NewPassword, setNewPassword] = React.useState(\"\");\r\n const [ConfirmPassword, setConfirmPassword] = React.useState(\"\");\r\n const [SecurityCode, setSecurityCode] = React.useState(\"\");\r\n const stateCustomer = useSelector((state) => state.CustomerReducer.customer);\r\n const registrationType = useSelector(\r\n (state) => state.AccountsReducer.registrationMethod\r\n );\r\n\r\n const isStepOptional = (step) => {\r\n return step === 9;\r\n };\r\n const isStepSkipped = (step) => {\r\n return skipped.has(step);\r\n };\r\n\r\n const handleChange = (newValue) => {\r\n setStep(newValue);\r\n };\r\n function getSteps() {\r\n return [\"Instructions\", \"Payments\", \"Summary\"];\r\n }\r\n\r\n React.useEffect(() => {\r\n setCredentialToReset(props.cred);\r\n var m = stateCustomer.cumobilephone;\r\n setMobileNumber(m);\r\n var r = stateCustomer.custnumber;\r\n setReference(r);\r\n var d = stateCustomer.cudob;\r\n setDateOfBirth(d);\r\n setStep(0);\r\n }, []);\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n\r\n const submitPinFormEvent = (event) => {\r\n event.preventDefault();\r\n if (ConfirmPassword != NewPassword) {\r\n context.stateInfoDialog(\r\n \"Change pin\",\r\n \"New Pin and Confirm pin do not match!\"\r\n );\r\n return;\r\n }\r\n var data;\r\n data = JSON.stringify({\r\n Reference: cReference,\r\n MobileNumber: cMobileNumber,\r\n DateOfBirth: cDateOfBirth,\r\n CredentialToReset: CredentialToReset,\r\n });\r\n\r\n fetch(URLS.sendCode, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n body: data,\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Change Password\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data) => {\r\n setStep((prevActiveStep) => prevActiveStep + 1);\r\n topNav.slickNext();\r\n }, [])\r\n\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Change Password\", error, context);\r\n }\r\n });\r\n };\r\n\r\n const submitChangePassFormEvent = (event) => {\r\n event.preventDefault();\r\n if (ConfirmPassword != NewPassword) {\r\n context.stateInfoDialog(\r\n \"Change password\",\r\n \"New password and confirm password do not match!\"\r\n );\r\n return;\r\n }\r\n var data;\r\n var url =\r\n CredentialToReset == \"password\" ? URLS.changePassword : URLS.changePin;\r\n if (CredentialToReset == \"password\") {\r\n if (registrationType == \"email\") {\r\n var url = URLS.ChangeBusinessPassword;\r\n\r\n data = JSON.stringify({\r\n OldPassword: OldPassword,\r\n NewPassword: NewPassword,\r\n ConfirmPassword: ConfirmPassword,\r\n SecurityCode: SecurityCode,\r\n Reference: cReference,\r\n email: cEmail,\r\n CredentialToReset: \"Password\",\r\n });\r\n } else if (registrationType == \"phone\") {\r\n var url = URLS.ChangePersonalPassword;\r\n\r\n data = JSON.stringify({\r\n OldPassword: OldPassword,\r\n NewPassword: NewPassword,\r\n ConfirmPassword: ConfirmPassword,\r\n SecurityCode: SecurityCode,\r\n Reference: cReference,\r\n MobileNumber: cMobileNumber,\r\n CredentialToReset: \"Password\",\r\n });\r\n } else {\r\n var url = URLS.changePassword;\r\n data = JSON.stringify({\r\n OldPassword: OldPassword,\r\n NewPassword: NewPassword,\r\n ConfirmPassword: ConfirmPassword,\r\n SecurityCode: SecurityCode,\r\n Reference: cReference,\r\n MobileNumber: cMobileNumber,\r\n DateOfBirth: cDateOfBirth,\r\n CredentialToReset: \"Password\",\r\n });\r\n }\r\n } else {\r\n if (registrationType == \"email\") {\r\n var url = URLS.ChangeBusinessPIN;\r\n\r\n data = JSON.stringify({\r\n OldPIN: OldPassword,\r\n NewPIN: NewPassword,\r\n ConfirmPIN: ConfirmPassword,\r\n SecurityCode: SecurityCode,\r\n Reference: cReference,\r\n email: cEmail,\r\n CredentialToReset: \"Password\",\r\n });\r\n } else if (registrationType == \"phone\") {\r\n var url = URLS.ChangePersonalPIN;\r\n\r\n data = JSON.stringify({\r\n OldPIN: OldPassword,\r\n NewPIN: NewPassword,\r\n ConfirmPIN: ConfirmPassword,\r\n SecurityCode: SecurityCode,\r\n Reference: cReference,\r\n MobileNumber: cMobileNumber,\r\n CredentialToReset: \"Password\",\r\n });\r\n } else {\r\n var url = URLS.changePin;\r\n\r\n data = JSON.stringify({\r\n OldPIN: OldPassword,\r\n NewPIN: NewPassword,\r\n ConfirmPIN: ConfirmPassword,\r\n SecurityCode: SecurityCode,\r\n Reference: cReference,\r\n MobileNumber: cMobileNumber,\r\n DateOfBirth: cDateOfBirth,\r\n CredentialToReset: \"Password\",\r\n });\r\n }\r\n }\r\n\r\n fetch(url, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n body: data,\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Change Password\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data) => {\r\n setStep((prevActiveStep) => prevActiveStep + 1);\r\n topNav.slickNext();\r\n }, [])\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Change Password\", error, context);\r\n }\r\n });\r\n };\r\n\r\n const handleFinish = () => {};\r\n\r\n async function handleErrors(response) {\r\n // ;\r\n if (!response.ok) {\r\n var data = await response.json();\r\n throw Error(data.message);\r\n }\r\n\r\n if (response.status == 401) {\r\n context.authObj.logout();\r\n }\r\n\r\n return response;\r\n }\r\n const handleBack = () => {\r\n let newSkipped = skipped;\r\n if (isStepSkipped(step)) {\r\n newSkipped = new Set(newSkipped.values());\r\n newSkipped.delete(step);\r\n }\r\n setStep((prevActiveStep) => prevActiveStep - 1);\r\n setSkipped(newSkipped);\r\n topNav.slickPrev();\r\n };\r\n\r\n return (\r\n
\r\n \r\n\r\n \r\n \r\n {\r\n setTopNav(slider);\r\n }}\r\n {...SliderSettings}\r\n >\r\n
\r\n
\r\n Verify 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 Change {CredentialToReset == \"password\" ? \"Password\" : \"Pin\"}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Confirmation\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n

\r\n

Verify by SMS

\r\n\r\n {\r\n setReference(e.target.value);\r\n },\r\n }}\r\n />\r\n {registrationType == \"phone\" ? (\r\n {\r\n setMobileNumber(e.target.value);\r\n },\r\n }}\r\n />\r\n ) : registrationType == \"email\" ? (\r\n {\r\n setcEmail(e.target.value);\r\n },\r\n }}\r\n />\r\n ) : (\r\n <>\r\n {\r\n setMobileNumber(e.target.value);\r\n },\r\n }}\r\n />\r\n {\r\n setDateOfBirth(e.target.value);\r\n },\r\n }}\r\n />\r\n \r\n )}\r\n\r\n
\r\n
\r\n \r\n Back\r\n \r\n \r\n {step === steps.length - 1 ? \"Finish\" : \"Next\"}\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n

\r\n

\r\n A once off token has been sent to your Mobile. Please\r\n provide{\" \"}\r\n {CredentialToReset == \"password\" ? \"password\" : \"pin\"} and\r\n once off token details below\r\n

\r\n\r\n {\r\n setOldPassword(e.target.value);\r\n },\r\n }}\r\n />\r\n {\r\n setNewPassword(e.target.value);\r\n },\r\n }}\r\n />\r\n {\r\n setConfirmPassword(e.target.value);\r\n },\r\n }}\r\n />\r\n {\r\n setSecurityCode(e.target.value);\r\n },\r\n }}\r\n />\r\n
\r\n
\r\n \r\n Back\r\n \r\n \r\n {step === steps.length - 1 ? \"Finish\" : \"Next\"}\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n

\r\n You have successfully changed your{\" \"}\r\n {CredentialToReset == \"password\" ? \"password\" : \"pin\"}\r\n

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","/* eslint-disable react/prop-types */\r\nimport { datePickerDefaultProps } from '@material-ui/pickers/constants/prop-types';\r\nimport React from 'react';\r\nimport Intercom from 'react-intercom';\r\n\r\nexport default function IntercomComponent(props) {\r\n\r\n const user = {\r\n user_id: props.id,\r\n email: props.email,\r\n name: props.name\r\n };\r\n const [value, setValue] = React.useState(\"\");\r\n const [visible, setVisible] = React.useState(false);\r\n React.useEffect(() => {\r\n setValue(props.authKey);\r\n setVisible(props.chatvisible);\r\n },[props.chatvisible])\r\n\r\n if (visible)\r\n {\r\n return (\r\n \r\n )\r\n }else\r\n {\r\n return (\"\")\r\n }\r\n}","import { Link } from \"react-router-dom\";\r\nimport {\r\n primaryDarkColor,\r\n secondaryColor,\r\n blackColor,\r\n hexToRgb,\r\n primaryColor,\r\n} from \"assets/jss/xrs.js\";\r\nimport clsx from \"clsx\";\r\nimport { makeStyles, useTheme } from \"@material-ui/core/styles\";\r\nimport Badge from \"@material-ui/core/Badge\";\r\nimport MailIcon from \"@material-ui/icons/Mail\";\r\nimport Drawer from \"@material-ui/core/Drawer\";\r\nimport CssBaseline from \"@material-ui/core/CssBaseline\";\r\nimport AppBar from \"@material-ui/core/AppBar\";\r\nimport Toolbar from \"@material-ui/core/Toolbar\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport MenuIcon from \"@material-ui/icons/Menu\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport Menu from \"@material-ui/core/Menu\";\r\nimport Icon from \"@material-ui/core/Icon\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport React, { useContext, useRef } from \"react\";\r\nimport Context from \"../../utils/context\";\r\nimport AccountItem from \"./AccountItem.js\";\r\nimport ChangePasswordAndPin from \"../../views/ChangePassworOrPin/ChangePasswordOrPin.js\";\r\nimport AccountCircle from \"@material-ui/icons/AccountBox\";\r\n\r\nimport Parallax from \"components/Parallax/Parallax.js\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport CustomTextField from \"components/CustomInput/CustomInput\";\r\nimport { Collapse } from \"@material-ui/core\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport { useFormik, Formik } from \"formik\";\r\nimport history from \"../../utils/history\";\r\nimport IntercomComponent from \"./IntercomComponent.js\";\r\nimport classNames from \"classnames\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport { useBeforeunload } from \"react-beforeunload\";\r\nimport * as ACTIONS from \"../../store/actions/actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport LinearProgress from \"@material-ui/core/LinearProgress\";\r\n\r\nimport {\r\n BrowserView,\r\n MobileView,\r\n isBrowser,\r\n isMobile,\r\n} from \"react-device-detect\";\r\nimport { getSiteDetailsActions } from \"store/redux/redux-actions/redux_actions\";\r\n\r\nconst drawerWidth = 150;\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n display: \"flex\",\r\n },\r\n \"@keyframes burgerTransition\": {\r\n marginLeft: theme.spacing(1.5),\r\n marginRight: theme.spacing(3),\r\n from: {\r\n color: primaryDarkColor[0],\r\n width: 50,\r\n height: 50,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(primaryDarkColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(primaryDarkColor[0]) +\r\n \", 0.2)\",\r\n },\r\n to: { color: \"black\", width: 22, height: 22, boxShadow: \"none\" },\r\n },\r\n menuButton: {\r\n animationName: \"$burgerTransition\",\r\n animationDuration: \"1s\",\r\n animationDelay: \"0s\",\r\n marginLeft: theme.spacing(1.5),\r\n marginRight: theme.spacing(3),\r\n },\r\n menuLogo: {\r\n marginLeft: theme.spacing(1.5),\r\n marginRight: theme.spacing(3),\r\n },\r\n hide: {\r\n display: \"none\",\r\n },\r\n drawer: {\r\n width: drawerWidth,\r\n flexShrink: 0,\r\n border: \"none\",\r\n },\r\n DisplayY: {\r\n textAlign: \"center\",\r\n fontSize: 13,\r\n fontWeight: 400,\r\n marginTop: 1,\r\n },\r\n DisplayN: {\r\n textAlign: \"center\",\r\n fontSize: 13,\r\n fontWeight: 400,\r\n marginTop: 1,\r\n display: \"none\",\r\n },\r\n drawerPass: {\r\n width: drawerWidth,\r\n flexShrink: 0,\r\n border: \"none\",\r\n },\r\n\r\n standardButton: {\r\n backgroundColor: primaryColor[7],\r\n color: \"black\",\r\n margin: \"8px 0\",\r\n border: \"none\",\r\n cursor: \"pointer\",\r\n opacity: \"1\",\r\n borderRadius: 0,\r\n width: 10,\r\n zIndex: 999999,\r\n },\r\n accountButton: {\r\n cursor: \"pointer\",\r\n opacity: \"1\",\r\n borderRadius: 0,\r\n zIndex: 999999,\r\n },\r\n notificationButton: {\r\n cursor: \"pointer\",\r\n opacity: \"1\",\r\n borderRadius: 0,\r\n width: 50,\r\n zIndex: 999999,\r\n },\r\n drawerPaper: {\r\n height: \"-webkit-fill-available\",\r\n zIndex: 999999,\r\n width: drawerWidth,\r\n top: 56,\r\n border: 0,\r\n paddingTop: 30,\r\n backgroundColor: primaryColor[7],\r\n },\r\n linkButton: {\r\n padding: \"25px 25px\",\r\n width: 35,\r\n textAlign: \"center\",\r\n },\r\n drawerHeader: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n padding: theme.spacing(0, 1),\r\n ...theme.mixins.toolbar,\r\n justifyContent: \"flex-end\",\r\n },\r\n title: {\r\n textAlign: \"center\",\r\n fontSize: 19,\r\n fontWeight: 400,\r\n marginTop: 40,\r\n color: \"white\",\r\n },\r\n textCenter: {\r\n textAlign: \"center\",\r\n fontSize: 13,\r\n fontWeight: 400,\r\n marginTop: 1,\r\n },\r\n content: {\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: -drawerWidth,\r\n },\r\n username: {\r\n fontSize: 14,\r\n width: \"fit-content\",\r\n textTransform: \"capitalize\",\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n Right: {\r\n marginLeft: \"auto\",\r\n marginRight: 20,\r\n textAlign: \"right\",\r\n },\r\n}));\r\n\r\nconst useStyles2 = makeStyles(landingPageStyle);\r\nexport default function HeaderLoggedIN(props) {\r\n const classes = useStyles();\r\n const classes2 = useStyles2();\r\n\r\n const drawers = useSelector((state) => state.GetSiteDetailsReducer.drawers);\r\n\r\n // const [drawers, setDrawers] = React.useState({\r\n // open: false,\r\n // openSecond: false,\r\n // openThird: false,\r\n // lastOpenedDrawer: null, // add a new state variable to store the last opened drawer\r\n // });\r\n\r\n const updateDrawers = (values) => {\r\n dispatch(getSiteDetailsActions.setDrawerState(values));\r\n // setDrawers((prevState) => ({ ...prevState, ...values }));\r\n };\r\n\r\n const [accounts, setAccounts] = React.useState([]);\r\n const dispatch = useDispatch();\r\n const logo = useSelector((state) => state.GetSiteDetailsReducer.logoimageurl);\r\n const loading = useSelector((state) => state.ApiCallsReducer.loading);\r\n const [menuAnimation, setMenuAnimation] = React.useState(false);\r\n React.useEffect(() => {\r\n setMenuAnimation(true);\r\n }, []);\r\n\r\n const stateAccounts = useSelector((state) => state.AccountsReducer.accounts);\r\n\r\n const stateSelectedAccount = useSelector(\r\n (state) => state.SelectedAccountsReducer.account\r\n );\r\n const stateCustomer = useSelector((state) => state.CustomerReducer.customer);\r\n const stateMenu = useSelector((state) => state.MenuReducer.menu);\r\n const numOfAccounts = useSelector(\r\n (state) => state.AccountsReducer.numOfAccounts\r\n );\r\n const [buttons, setButtons] = React.useState([]);\r\n const page = props.page;\r\n\r\n useBeforeunload(() => {\r\n handleLogOut();\r\n });\r\n const ref = useRef();\r\n useOnClickOutside(ref, () => {\r\n resetDrawerState();\r\n });\r\n\r\n React.useEffect(() => {\r\n if (stateMenu != null && stateMenu != \"no items\") {\r\n var tmpbuttons = stateMenu.accountMenus.find(\r\n (x) => x.recNo == stateSelectedAccount.recno\r\n );\r\n if (tmpbuttons != null) {\r\n setButtons(tmpbuttons.menuButtons);\r\n } else {\r\n setButtons([]);\r\n }\r\n }\r\n }, [stateSelectedAccount]);\r\n\r\n React.useEffect(() => {\r\n if (stateSelectedAccount == \"NoAccount\") {\r\n fetch(URLS.GetWelcomeDetails, {\r\n method: \"GET\",\r\n headers: { Authorization: \"Bearer \" + token },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n ApiErrorHandler(\"Get Welcome Details\", res, context);\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data) => {\r\n if (data.activeAccounts.length == 1) {\r\n if (data.activeAccounts[0].planinplace == \"Y\") {\r\n setPlanText(\"Amend\");\r\n } else {\r\n setPlanText(\"Create\");\r\n }\r\n }\r\n })\r\n\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Welcome Details\", error, context);\r\n }\r\n });\r\n } else {\r\n if (stateSelectedAccount.planinplace == \"Y\") {\r\n setPlanText(\"Amend\");\r\n } else {\r\n setPlanText(\"Create\");\r\n }\r\n }\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n let contextDrawers = {\r\n open: false,\r\n openSecond: false,\r\n openThird: false,\r\n lastOpenedDrawer: \"drawerOne\", // set the last opened drawer to drawerOne when opening\r\n };\r\n // if (isMobile) {\r\n // if (page == \"welcome\") contextDrawers.open = true;\r\n // if (page == \"viewAccount\") contextDrawers.openSecond = true;\r\n // } else {\r\n\r\n if (!context.stateTwo) {\r\n contextDrawers.openSecond = false;\r\n } else {\r\n contextDrawers.openSecond = context.stateTwo;\r\n contextDrawers.lastOpenedDrawer = \"drawerTwo\";\r\n }\r\n if (!context.stateThree) {\r\n contextDrawers.openThird = false;\r\n } else {\r\n contextDrawers.openThird = context.stateThree;\r\n contextDrawers.lastOpenedDrawer = \"drawerTree\";\r\n }\r\n if (!context.stateOne) {\r\n contextDrawers.open = false;\r\n } else {\r\n contextDrawers.open = context.stateOne;\r\n contextDrawers.lastOpenedDrawer = \"drawerOne\";\r\n }\r\n // }\r\n if (isMobile) {\r\n debugger;\r\n if (page == \"welcome\" && drawers.lastOpenedDrawer == \"mobileOne\")\r\n contextDrawers.open = true;\r\n else if (contextDrawers.lastOpenedDrawer == \"drawerTwo\")\r\n contextDrawers.openSecond = true;\r\n else if (\r\n contextDrawers.lastOpenedDrawer == \"drawerTree\" &&\r\n page == \"viewAccount\"\r\n )\r\n contextDrawers.openThird = false;\r\n else {\r\n contextDrawers.open = false;\r\n contextDrawers.openSecond = false;\r\n contextDrawers.openThird = false;\r\n }\r\n }\r\n updateDrawers(contextDrawers);\r\n var arr = [];\r\n\r\n if (stateAccounts == \"NoAccount\") {\r\n Object.keys(stateAccounts).forEach(function(key) {\r\n arr.push(stateAccounts[key]);\r\n });\r\n setAccounts(arr);\r\n } else {\r\n arr = Object.values(stateAccounts);\r\n setAccounts(arr);\r\n }\r\n }, []);\r\n const resetDrawerState = () => {\r\n if (isMobile) {\r\n updateDrawers({\r\n open: false,\r\n openSecond: false,\r\n openThird: false,\r\n lastOpenedDrawer: drawers.lastOpenedDrawer, // set the last opened drawer to drawerOne when opening\r\n });\r\n context.dispatchDrawerOne(false);\r\n context.dispatchDrawer(false);\r\n\r\n context.dispatchDrawerTwo(false);\r\n context.dispatchDrawerThree(false);\r\n context.dispatchDrawerOne(false);\r\n } else {\r\n updateDrawers({\r\n open: true,\r\n openSecond: false,\r\n openThird: false,\r\n lastOpenedDrawer: drawers.lastOpenedDrawer, // set the last opened drawer to drawerOne when opening\r\n });\r\n context.dispatchDrawerOne(true);\r\n }\r\n };\r\n const handleDrawerOpen = () => {\r\n if (drawers.open || drawers.openSecond || drawers.openThird) {\r\n resetDrawerState();\r\n } else {\r\n context.dispatchDrawer(true);\r\n debugger;\r\n if (drawers.lastOpenedDrawer === \"drawerOne\" || numOfAccounts == 1) {\r\n handleFirtstDrawerOpen();\r\n } else if (drawers.lastOpenedDrawer === \"drawerTwo\") {\r\n handleSecondDrawerOpen();\r\n } else if (drawers.lastOpenedDrawer === \"drawerTree\") {\r\n handleThirdDrawerOpen();\r\n }\r\n }\r\n };\r\n const handleFirtstDrawerOpen = (fromBackButton = false) => {\r\n debugger;\r\n if (numOfAccounts > 1) {\r\n dispatch(ACTIONS.set_selectedAccount(\"NoAccount\"));\r\n } else {\r\n dispatch(ACTIONS.set_selectedAccount(accounts[0]));\r\n }\r\n\r\n updateDrawers({\r\n open: true,\r\n openSecond: false,\r\n openThird: false,\r\n lastOpenedDrawer: fromBackButton ? \"mobileOne\" : \"drawerOne\", // set the last opened drawer to drawerOne when opening\r\n });\r\n context.dispatchDrawer(true);\r\n context.dispatchDrawerTwo(false);\r\n context.dispatchDrawerThree(false);\r\n context.dispatchDrawerOne(true);\r\n if (numOfAccounts > 1 && fromBackButton) {\r\n history.push(`/welcome`);\r\n }\r\n };\r\n const handleSecondDrawerOpen = () => {\r\n var arr = Object.values(stateAccounts);\r\n setAccounts(arr);\r\n\r\n updateDrawers({\r\n open: false,\r\n openSecond: true,\r\n openThird: false,\r\n lastOpenedDrawer: \"drawerTwo\", // set the last opened drawer to drawerTwo when opening\r\n });\r\n context.dispatchDrawer(true);\r\n\r\n context.dispatchDrawerTwo(true);\r\n context.dispatchDrawerThree(false);\r\n context.dispatchDrawerOne(false);\r\n if (stateSelectedAccount == \"NoAccount\") {\r\n dispatch(ACTIONS.set_selectedAccount(accounts[0]));\r\n\r\n history.push(`/viewAccount`);\r\n }\r\n };\r\n const handleThirdDrawerOpen = (e) => {\r\n updateDrawers({\r\n open: false,\r\n openSecond: false,\r\n openThird: true,\r\n lastOpenedDrawer: \"drawerTree\", // set the last opened drawer to drawerTwo when opening\r\n });\r\n context.dispatchDrawer(true);\r\n\r\n context.dispatchDrawerTwo(false);\r\n context.dispatchDrawerThree(true);\r\n context.dispatchDrawerOne(false);\r\n };\r\n\r\n const handlebacktosecond = () => {\r\n updateDrawers({\r\n openThird: false,\r\n openSecond: true,\r\n open: false,\r\n lastOpenedDrawer: \"drawerTwo\", // set the last opened drawer to drawerTwo when going back\r\n });\r\n context.dispatchDrawerTwo(true);\r\n context.dispatchDrawerThree(false);\r\n context.dispatchDrawerOne(false);\r\n };\r\n\r\n const handleLogOut = () => {\r\n context.authObj.logout();\r\n };\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n\r\n const handleChangePassword = () => {\r\n history.push(\"/changePassword\");\r\n };\r\n const handleChangePin = () => {\r\n history.push(\"/changePin\");\r\n };\r\n const handlereadMessages = () => {\r\n history.push(\"/messages\");\r\n };\r\n\r\n const context = useContext(Context);\r\n\r\n const [anchorEl, setAnchorEl] = React.useState(null);\r\n const handleMenu = (event) => {\r\n setAnchorEl(event.currentTarget);\r\n };\r\n\r\n const handleClose = () => {\r\n setAnchorEl(null);\r\n };\r\n\r\n const [planText, setPlanText] = React.useState(\"\");\r\n const openp = Boolean(anchorEl);\r\n const budgetPageButton = buttons.find((x) => x.buttonName === \"budgetPage\");\r\n\r\n const budgetPageButtonisVisible =\r\n budgetPageButton && budgetPageButton.buttonVisible === \"Y\";\r\n\r\n const budgetPageButtonclassName = budgetPageButtonisVisible\r\n ? classes.DisplayY\r\n : classes.DisplayN;\r\n\r\n if (numOfAccounts == 1) {\r\n return (\r\n \r\n \r\n\r\n \r\n {loading == true ? : null}\r\n\r\n \r\n \r\n \r\n \r\n\r\n {logo === \"\" ? null : (\r\n \r\n )}\r\n\r\n
\r\n {stateCustomer.unreadmessages == 0 ? null : (\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n\r\n \r\n \r\n \r\n \r\n \r\n {\" \"}\r\n {stateCustomer.cufname\r\n ? stateCustomer.cufname\r\n : stateCustomer.culname.toLowerCase()}\r\n \r\n \r\n\r\n \r\n {/* \r\n Messages ({stateCustomer.unreadmessages}){\" \"}\r\n */}\r\n Log Out\r\n \r\n Change Password\r\n \r\n Change Pin\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n\r\n

Welcome

\r\n {buttons.length === 0 ? null : (\r\n <>\r\n {\" \"}\r\n {renderButton(\r\n \"viewOffer\",\r\n \"/viewoffer\",\r\n \"fa fa-suitcase\",\r\n buttons,\r\n classes,\r\n page,\r\n resetDrawerState\r\n )}\r\n {renderButton(\r\n \"createPayment\",\r\n \"/createPayment\",\r\n \"fa fa-credit-card\",\r\n buttons,\r\n classes,\r\n page,\r\n resetDrawerState\r\n )}\r\n {renderButton(\r\n \"payNow\",\r\n \"/payNow\",\r\n \"fa fa-credit-card-alt\",\r\n buttons,\r\n classes,\r\n page,\r\n resetDrawerState\r\n )}\r\n {renderButton(\r\n \"viewAccount\",\r\n \"/viewAccount\",\r\n \"fa fa-user-circle-o\",\r\n buttons,\r\n classes,\r\n page,\r\n resetDrawerState\r\n )}\r\n {renderButton(\r\n \"budgetPage\",\r\n \"/budgetPage\",\r\n \"fa fa-handshake-o\",\r\n buttons,\r\n classes,\r\n page,\r\n resetDrawerState\r\n )}\r\n {renderButton(\r\n \"faq\",\r\n \"/faq\",\r\n \"fa fa-question-circle-o\",\r\n buttons,\r\n classes,\r\n page,\r\n resetDrawerState\r\n )}\r\n {renderButton(\r\n \"requestcallback-page\",\r\n \"/requestcallback-page\",\r\n \"fa fa-phone\",\r\n buttons,\r\n classes,\r\n page,\r\n resetDrawerState\r\n )}\r\n {renderUrlButtons(buttons, classes)}\r\n \r\n )}\r\n \r\n \r\n );\r\n } else if (numOfAccounts > 1) {\r\n return (\r\n
\r\n \r\n \r\n {loading == true ? : null}\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n\r\n {logo === \"\" ? null : (\r\n \r\n )}\r\n
\r\n {stateCustomer.unreadmessages == 0 ? null : (\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n {\" \"}\r\n {stateCustomer.cufname\r\n ? stateCustomer.cufname\r\n : stateCustomer.culname.toLowerCase()}\r\n \r\n \r\n \r\n Log Out\r\n \r\n Change Password\r\n \r\n Change Pin\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n\r\n

Welcome

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

Accounts ({numOfAccounts})

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

Buget Planner

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

Faq

\r\n \r\n \r\n {accounts.map((account, index) => (\r\n \r\n ))}\r\n\r\n
\r\n handleFirtstDrawerOpen(true)}\r\n className={classes.linkButton}\r\n color={page == \"back\" ? \"primary\" : \"linkedin\"}\r\n >\r\n \r\n \r\n
\r\n\r\n

back

\r\n \r\n \r\n {buttons.length === 0 ? null : (\r\n <>\r\n {\" \"}\r\n {renderButton(\r\n \"viewOffer\",\r\n \"/viewoffer\",\r\n \"fa fa-suitcase\",\r\n buttons,\r\n classes,\r\n page\r\n )}\r\n {renderButton(\r\n \"createPayment\",\r\n \"/createPayment\",\r\n \"fa fa-credit-card\",\r\n buttons,\r\n classes,\r\n page\r\n )}\r\n {renderButton(\r\n \"payNow\",\r\n \"/payNow\",\r\n \"fa fa-credit-card-alt\",\r\n buttons,\r\n classes,\r\n page\r\n )}\r\n {renderButton(\r\n \"viewAccount\",\r\n \"/viewAccount\",\r\n \"fa fa-user-circle-o\",\r\n buttons,\r\n classes,\r\n page\r\n )}\r\n {renderButton(\r\n \"budgetPage\",\r\n \"/budgetPage\",\r\n \"fa fa-handshake-o\",\r\n buttons,\r\n classes,\r\n page\r\n )}\r\n {renderButton(\r\n \"faq\",\r\n \"/faq\",\r\n \"fa fa-question-circle-o\",\r\n buttons,\r\n classes,\r\n page\r\n )}\r\n {renderButton(\r\n \"requestcallback-page\",\r\n \"/requestcallback-page\",\r\n \"fa fa-phone\",\r\n buttons,\r\n classes,\r\n page\r\n )}\r\n {renderUrlButtons(buttons, classes)}\r\n \r\n )}\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n

back

\r\n \r\n
\r\n );\r\n } else if (numOfAccounts == 0) {\r\n return \"loading...\";\r\n }\r\n}\r\n\r\nfunction useOnClickOutside(ref, handler) {\r\n React.useEffect(() => {\r\n if (isMobile) {\r\n const listener = (event) => {\r\n // Do nothing if clicking ref's element or descendent elements\r\n if (!ref.current || ref.current.contains(event.target)) {\r\n return;\r\n }\r\n handler(event);\r\n };\r\n document.addEventListener(\"mousedown\", listener);\r\n document.addEventListener(\"touchstart\", listener);\r\n return () => {\r\n document.removeEventListener(\"mousedown\", listener);\r\n document.removeEventListener(\"touchstart\", listener);\r\n };\r\n\r\n // Add ref and handler to effect dependencies\r\n // It's worth noting that because passed in handler is a new ...\r\n // ... function on every render that will cause this effect ...\r\n // ... callback/cleanup to run every render. It's not a big deal ...\r\n // ... but to optimize you can wrap handler in useCallback before ...\r\n // ... passing it into this hook.\r\n }\r\n }, [ref, handler]);\r\n}\r\n\r\nfunction renderButton(name, path, icon, buttons, classes, page, handleClose) {\r\n const button = buttons.find((x) => x.buttonName === name);\r\n // console.log(button.buttonName);\r\n // console.log(button.buttonVisible);\r\n if (!button || button.buttonVisible !== \"Y\") {\r\n return null;\r\n }\r\n const openInNewTab = button.buttonFrameURL;\r\n\r\n return (\r\n <>\r\n
\r\n \r\n \r\n \r\n
\r\n

{button.buttonText}

\r\n \r\n );\r\n}\r\nfunction renderUrlButtons(buttons, classes) {\r\n const fillteredButtons = buttons.filter(\r\n (x) => x.buttonFrameURL && x.buttonVisible == \"Y\"\r\n );\r\n // console.log(button.buttonName);\r\n // console.log(button.buttonVisible);\r\n\r\n return (\r\n <>\r\n {fillteredButtons.map((el) => (\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n

{el.buttonText}

\r\n
\r\n ))}\r\n \r\n );\r\n}\r\n\r\nfunction textClass(button) {\r\n return button.buttonVisible === \"Y\" ? \"DisplayY\" : \"DisplayN\";\r\n}\r\n","import {\r\n defaultFont,\r\n primaryColor,\r\n primaryBoxShadow,\r\n infoColor,\r\n infoBoxShadow,\r\n successColor,\r\n successBoxShadow,\r\n warningColor,\r\n warningBoxShadow,\r\n dangerColor,\r\n dangerBoxShadow,\r\n roseColor,\r\n roseBoxShadow,\r\n blackColor,\r\n whiteColor,\r\n grayColor,\r\n hexToRgb,\r\n} from \"assets/jss/xrs.js\";\r\n\r\nconst customDropdownStyle = (theme) => ({\r\n popperClose: {\r\n pointerEvents: \"none\",\r\n display: \"none !important\",\r\n },\r\n pooperNav: {\r\n [theme.breakpoints.down(\"sm\")]: {\r\n position: \"static !important\",\r\n left: \"unset !important\",\r\n top: \"unset !important\",\r\n transform: \"none !important\",\r\n willChange: \"none !important\",\r\n \"& > div\": {\r\n boxShadow: \"none !important\",\r\n marginLeft: \"1.5rem\",\r\n marginRight: \"1.5rem\",\r\n transition: \"none !important\",\r\n marginTop: \"0px !important\",\r\n marginBottom: \"5px !important\",\r\n padding: \"0px !important\",\r\n },\r\n },\r\n },\r\n manager: {\r\n \"& > div > button:first-child > span:first-child, & > div > a:first-child > span:first-child\": {\r\n width: \"100%\",\r\n },\r\n },\r\n innerManager: {\r\n display: \"block\",\r\n \"& > div > button,& > div > a\": {\r\n margin: \"0px !important\",\r\n color: \"inherit !important\",\r\n padding: \"10px 20px !important\",\r\n \"& > span:first-child\": {\r\n width: \"100%\",\r\n justifyContent: \"flex-start\",\r\n },\r\n },\r\n },\r\n target: {\r\n \"& > button:first-child > span:first-child, & > a:first-child > span:first-child\": {\r\n display: \"inline-block\",\r\n },\r\n \"& $caret\": {\r\n marginLeft: \"0px\",\r\n },\r\n },\r\n dropdown: {\r\n borderRadius: \"3px\",\r\n border: \"0\",\r\n boxShadow: \"0 2px 5px 0 rgba(\" + hexToRgb(blackColor) + \", 0.26)\",\r\n top: \"100%\",\r\n zIndex: \"1000\",\r\n minWidth: \"160px\",\r\n padding: \"5px 0\",\r\n margin: \"2px 0 0\",\r\n fontSize: \"14px\",\r\n textAlign: \"left\",\r\n listStyle: \"none\",\r\n backgroundColor: whiteColor,\r\n backgroundClip: \"padding-box\",\r\n },\r\n menuList: {\r\n padding: \"0\",\r\n },\r\n pooperResponsive: {\r\n zIndex: \"1200\",\r\n [theme.breakpoints.down(\"sm\")]: {\r\n zIndex: \"1640\",\r\n position: \"static\",\r\n float: \"none\",\r\n width: \"auto\",\r\n marginTop: \"0\",\r\n backgroundColor: \"transparent\",\r\n border: \"0\",\r\n boxShadow: \"none\",\r\n color: \"black\",\r\n },\r\n },\r\n dropdownItem: {\r\n ...defaultFont,\r\n fontSize: \"13px\",\r\n padding: \"10px 20px\",\r\n margin: \"0 5px\",\r\n borderRadius: \"2px\",\r\n position: \"relative\",\r\n transition: \"all 150ms linear\",\r\n display: \"block\",\r\n clear: \"both\",\r\n fontWeight: \"400\",\r\n height: \"100%\",\r\n color: grayColor[8],\r\n whiteSpace: \"nowrap\",\r\n minHeight: \"unset\",\r\n },\r\n darkHover: {\r\n \"&:hover\": {\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(grayColor[9]) +\r\n \", 0.4)\",\r\n backgroundColor: grayColor[9],\r\n color: whiteColor,\r\n },\r\n },\r\n primaryHover: {\r\n \"&:hover\": {\r\n backgroundColor: primaryColor[0],\r\n color: whiteColor,\r\n ...primaryBoxShadow,\r\n },\r\n },\r\n infoHover: {\r\n \"&:hover\": {\r\n backgroundColor: infoColor[0],\r\n color: whiteColor,\r\n ...infoBoxShadow,\r\n },\r\n },\r\n successHover: {\r\n \"&:hover\": {\r\n backgroundColor: successColor[0],\r\n color: whiteColor,\r\n ...successBoxShadow,\r\n },\r\n },\r\n warningHover: {\r\n \"&:hover\": {\r\n backgroundColor: warningColor[0],\r\n color: whiteColor,\r\n ...warningBoxShadow,\r\n },\r\n },\r\n dangerHover: {\r\n \"&:hover\": {\r\n backgroundColor: dangerColor[0],\r\n color: whiteColor,\r\n ...dangerBoxShadow,\r\n },\r\n },\r\n roseHover: {\r\n \"&:hover\": {\r\n backgroundColor: roseColor[0],\r\n color: whiteColor,\r\n ...roseBoxShadow,\r\n },\r\n },\r\n dropdownItemRTL: {\r\n textAlign: \"right\",\r\n },\r\n dropdownDividerItem: {\r\n margin: \"5px 0\",\r\n backgroundColor: \"rgba(\" + hexToRgb(blackColor) + \", 0.12)\",\r\n height: \"1px\",\r\n overflow: \"hidden\",\r\n },\r\n buttonIcon: {\r\n width: \"20px\",\r\n height: \"20px\",\r\n },\r\n caret: {\r\n transition: \"all 150ms ease-in\",\r\n display: \"inline-block\",\r\n width: \"0\",\r\n height: \"0\",\r\n marginLeft: \"4px\",\r\n verticalAlign: \"middle\",\r\n borderTop: \"4px solid\",\r\n borderRight: \"4px solid transparent\",\r\n borderLeft: \"4px solid transparent\",\r\n },\r\n caretActive: {\r\n transform: \"rotate(180deg)\",\r\n },\r\n caretDropup: {\r\n transform: \"rotate(180deg)\",\r\n },\r\n caretRTL: {\r\n marginRight: \"4px\",\r\n },\r\n dropdownHeader: {\r\n display: \"block\",\r\n padding: \"0.1875rem 1.25rem\",\r\n fontSize: \"0.75rem\",\r\n lineHeight: \"1.428571\",\r\n color: grayColor[10],\r\n whiteSpace: \"nowrap\",\r\n fontWeight: \"inherit\",\r\n marginTop: \"10px\",\r\n minHeight: \"24px\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: \"transparent\",\r\n cursor: \"auto\",\r\n },\r\n },\r\n noLiPadding: {\r\n padding: \"0\",\r\n },\r\n});\r\n\r\nexport default customDropdownStyle;\r\n","import React from \"react\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport MenuList from \"@material-ui/core/MenuList\";\r\nimport ClickAwayListener from \"@material-ui/core/ClickAwayListener\";\r\nimport Paper from \"@material-ui/core/Paper\";\r\nimport Grow from \"@material-ui/core/Grow\";\r\nimport Divider from \"@material-ui/core/Divider\";\r\nimport Popper from \"@material-ui/core/Popper\";\r\n// core components\r\nimport Button from \"components/CustomButtons/Button.js\";\r\n\r\nimport styles from \"assets/jss/xrs/components/customDropdownStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function CustomDropdown(props) {\r\n const [anchorEl, setAnchorEl] = React.useState(null);\r\n\r\n const handleClick = event => {\r\n if (anchorEl && anchorEl.contains(event.target)) {\r\n setAnchorEl(null);\r\n } else {\r\n setAnchorEl(event.currentTarget);\r\n }\r\n };\r\n const handleClose = event => {\r\n if (anchorEl.contains(event.target)) {\r\n return;\r\n }\r\n setAnchorEl(null);\r\n };\r\n const handleCloseMenu = param => {\r\n setAnchorEl(null);\r\n if (props && props.onClick) {\r\n props.onClick(param);\r\n }\r\n };\r\n const {\r\n buttonText,\r\n buttonIcon,\r\n dropdownList,\r\n buttonProps,\r\n dropup,\r\n dropdownHeader,\r\n caret,\r\n hoverColor,\r\n dropPlacement,\r\n rtlActive,\r\n noLiPadding,\r\n innerDropDown,\r\n navDropdown\r\n } = props;\r\n const classes = useStyles();\r\n const caretClasses = classNames({\r\n [classes.caret]: true,\r\n [classes.caretDropup]: dropup && !anchorEl,\r\n [classes.caretActive]: Boolean(anchorEl) && !dropup,\r\n [classes.caretRTL]: rtlActive\r\n });\r\n const dropdownItem = classNames({\r\n [classes.dropdownItem]: true,\r\n [classes[hoverColor + \"Hover\"]]: true,\r\n [classes.noLiPadding]: noLiPadding,\r\n [classes.dropdownItemRTL]: rtlActive\r\n });\r\n const dropDownMenu = (\r\n \r\n {dropdownHeader !== undefined ? (\r\n handleCloseMenu(dropdownHeader)}\r\n className={classes.dropdownHeader}\r\n >\r\n {dropdownHeader}\r\n \r\n ) : null}\r\n {dropdownList.map((prop, key) => {\r\n if (prop.divider) {\r\n return (\r\n handleCloseMenu(\"divider\")}\r\n className={classes.dropdownDividerItem}\r\n />\r\n );\r\n } else if (\r\n prop.props !== undefined &&\r\n prop.props[\"data-ref\"] === \"multi\"\r\n ) {\r\n return (\r\n \r\n {prop}\r\n \r\n );\r\n }\r\n return (\r\n handleCloseMenu(prop)}\r\n className={dropdownItem}\r\n >\r\n {prop}\r\n \r\n );\r\n })}\r\n \r\n );\r\n return (\r\n
\r\n
\r\n \r\n {buttonIcon !== undefined ? (\r\n \r\n ) : null}\r\n {buttonText !== undefined ? buttonText : null}\r\n {caret ? : null}\r\n \r\n
\r\n \r\n {() => (\r\n \r\n \r\n {innerDropDown ? (\r\n dropDownMenu\r\n ) : (\r\n \r\n {dropDownMenu}\r\n \r\n )}\r\n \r\n \r\n )}\r\n \r\n
\r\n );\r\n}\r\n\r\nCustomDropdown.defaultProps = {\r\n caret: true,\r\n dropup: false,\r\n hoverColor: \"primary\"\r\n};\r\n\r\nCustomDropdown.propTypes = {\r\n hoverColor: PropTypes.oneOf([\r\n \"dark\",\r\n \"primary\",\r\n \"info\",\r\n \"success\",\r\n \"warning\",\r\n \"danger\",\r\n \"rose\"\r\n ]),\r\n buttonText: PropTypes.node,\r\n buttonIcon: PropTypes.object,\r\n dropdownList: PropTypes.array,\r\n buttonProps: PropTypes.object,\r\n dropup: PropTypes.bool,\r\n dropdownHeader: PropTypes.node,\r\n rtlActive: PropTypes.bool,\r\n caret: PropTypes.bool,\r\n dropPlacement: PropTypes.oneOf([\r\n \"bottom\",\r\n \"top\",\r\n \"right\",\r\n \"left\",\r\n \"bottom-start\",\r\n \"bottom-end\",\r\n \"top-start\",\r\n \"top-end\",\r\n \"right-start\",\r\n \"right-end\",\r\n \"left-start\",\r\n \"left-end\"\r\n ]),\r\n noLiPadding: PropTypes.bool,\r\n innerDropDown: PropTypes.bool,\r\n navDropdown: PropTypes.bool,\r\n // This is a function that returns the clicked menu item\r\n onClick: PropTypes.func\r\n};\r\n","import { whiteColor, blackColor, grayColor, hexToRgb } from \"assets/jss/xrs.js\";\r\n\r\nconst tooltipsStyle = {\r\n tooltip: {\r\n padding: \"10px 15px\",\r\n minWidth: \"130px\",\r\n color: whiteColor,\r\n lineHeight: \"1.7em\",\r\n background: \"rgba(\" + hexToRgb(grayColor[15]) + \",0.9)\",\r\n border: \"none\",\r\n borderRadius: \"3px\",\r\n boxShadow:\r\n \"0 8px 10px 1px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 3px 14px 2px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 5px 5px -3px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.2)\",\r\n maxWidth: \"200px\",\r\n textAlign: \"center\",\r\n fontFamily: '\"Helvetica Neue\",Helvetica,Arial,sans-serif',\r\n fontSize: \"0.875em\",\r\n fontStyle: \"normal\",\r\n fontWeight: \"400\",\r\n textShadow: \"none\",\r\n textTransform: \"none\",\r\n letterSpacing: \"normal\",\r\n wordBreak: \"normal\",\r\n wordSpacing: \"normal\",\r\n wordWrap: \"normal\",\r\n whiteSpace: \"normal\",\r\n lineBreak: \"auto\"\r\n }\r\n};\r\n\r\nexport default tooltipsStyle;\r\n","import {\r\n grayColor,\r\n whiteColor,\r\n mlAuto,\r\n hexToRgb,\r\n primaryColor,\r\n} from \"assets/jss/xrs.js\";\r\n\r\nimport tooltip from \"assets/jss/xrs/tooltipsStyle.js\";\r\n\r\nconst headerLinksStyle = (theme) => ({\r\n list: {\r\n [theme.breakpoints.up(\"md\")]: {\r\n WebkitBoxAlign: \"center\",\r\n MsFlexAlign: \"center\",\r\n alignItems: \"center\",\r\n WebkitBoxOrient: \"horizontal\",\r\n WebkitBoxDirection: \"normal\",\r\n MsFlexDirection: \"row\",\r\n flexDirection: \"row\",\r\n },\r\n [theme.breakpoints.down(\"sm\")]: {\r\n display: \"block\",\r\n },\r\n marginTop: \"0px\",\r\n display: \"flex\",\r\n paddingLeft: \"0\",\r\n marginBottom: \"0\",\r\n listStyle: \"none\",\r\n padding: \"0\",\r\n },\r\n listItem: {\r\n float: \"left\",\r\n color: \"inherit\",\r\n position: \"relative\",\r\n display: \"block\",\r\n width: \"auto\",\r\n margin: \"0\",\r\n padding: \"0\",\r\n fontFamily: primaryColor[8],\r\n fontSize: primaryColor[9],\r\n [theme.breakpoints.down(\"sm\")]: {\r\n \"& ul\": {\r\n maxHeight: \"400px\",\r\n overflow: \"scroll\",\r\n },\r\n width: \"100%\",\r\n \"&:not(:last-child)\": {\r\n \"&:after\": {\r\n width: \"calc(100% - 30px)\",\r\n content: '\"\"',\r\n display: \"block\",\r\n height: \"1px\",\r\n marginLeft: \"15px\",\r\n backgroundColor: grayColor[14],\r\n },\r\n },\r\n },\r\n },\r\n listItemText: {\r\n padding: \"0 !important\",\r\n },\r\n navLink: {\r\n color: \"inherit\",\r\n position: \"relative\",\r\n padding: \"0.9375rem\",\r\n fontWeight: \"500\",\r\n fontSize: \"12px\",\r\n textTransform: \"uppercase\",\r\n lineHeight: \"20px\",\r\n textDecoration: \"none\",\r\n margin: \"0px\",\r\n display: \"inline-flex\",\r\n \"&:hover,&:focus\": {\r\n color: \"inherit\",\r\n },\r\n \"& .fab,& .far,& .fal,& .fas,& .material-icons\": {\r\n position: \"relative\",\r\n top: \"2px\",\r\n marginTop: \"-4px\",\r\n marginRight: \"4px\",\r\n marginBottom: \"0px\",\r\n fontSize: \"1.25rem\",\r\n },\r\n [theme.breakpoints.down(\"sm\")]: {\r\n width: \"calc(100% - 30px)\",\r\n marginLeft: \"15px\",\r\n marginBottom: \"8px\",\r\n marginTop: \"8px\",\r\n textAlign: \"left\",\r\n \"& > span:first-child\": {\r\n justifyContent: \"flex-start\",\r\n },\r\n },\r\n \"& svg\": {\r\n marginRight: \"3px\",\r\n width: \"20px\",\r\n height: \"20px\",\r\n },\r\n },\r\n navLinkJustIcon: {\r\n \"& .fab,& .far,& .fal,& .fas,& .material-icons\": {\r\n marginRight: \"0px\",\r\n },\r\n \"& svg\": {\r\n marginRight: \"0px\",\r\n },\r\n },\r\n navButton: {\r\n position: \"relative\",\r\n fontWeight: \"400\",\r\n fontSize: \"12px\",\r\n textTransform: \"uppercase\",\r\n lineHeight: \"20px\",\r\n textDecoration: \"none\",\r\n margin: \"0px\",\r\n display: \"inline-flex\",\r\n [theme.breakpoints.down(\"sm\")]: {\r\n width: \"calc(100% - 30px)\",\r\n marginLeft: \"15px\",\r\n marginBottom: \"5px\",\r\n marginTop: \"5px\",\r\n textAlign: \"left\",\r\n \"& > span:first-child\": {\r\n justifyContent: \"flex-start\",\r\n },\r\n },\r\n \"& $icons\": {\r\n marginRight: \"3px\",\r\n },\r\n },\r\n notificationNavLink: {\r\n color: \"inherit\",\r\n padding: \"0.9375rem\",\r\n fontWeight: \"400\",\r\n fontSize: \"12px\",\r\n textTransform: \"uppercase\",\r\n lineHeight: \"20px\",\r\n textDecoration: \"none\",\r\n margin: \"0px\",\r\n display: \"inline-flex\",\r\n },\r\n registerNavLink: {\r\n position: \"relative\",\r\n fontWeight: \"400\",\r\n fontSize: \"12px\",\r\n textTransform: \"uppercase\",\r\n lineHeight: \"20px\",\r\n textDecoration: \"none\",\r\n margin: \"0px\",\r\n display: \"inline-flex\",\r\n },\r\n navLinkActive: {\r\n \"&, &:hover, &:focus,&:active \": {\r\n color: \"inherit\",\r\n backgroundColor: \"rgba(\" + hexToRgb(whiteColor) + \", 0.1)\",\r\n },\r\n },\r\n icons: {\r\n width: \"20px\",\r\n height: \"20px\",\r\n marginRight: \"14px\",\r\n },\r\n dropdownIcons: {\r\n width: \"24px\",\r\n height: \"24px\",\r\n marginRight: \"14px\",\r\n opacity: \"0.5\",\r\n marginTop: \"-4px\",\r\n top: \"1px\",\r\n verticalAlign: \"middle\",\r\n fontSize: \"24px\",\r\n position: \"relative\",\r\n },\r\n socialIcons: {\r\n position: \"relative\",\r\n fontSize: \"1.25rem\",\r\n maxWidth: \"24px\",\r\n },\r\n dropdownLink: {\r\n \"&,&:hover,&:focus\": {\r\n color: primaryColor[10],\r\n textDecoration: \"none\",\r\n fontWeight: 400,\r\n display: \"flex\",\r\n padding: \"0.75rem 1.25rem 0.75rem 0.75rem\",\r\n },\r\n },\r\n img: {\r\n paddingLeft: \"10px\",\r\n },\r\n ...tooltip,\r\n marginRight5: {\r\n marginRight: \"5px\",\r\n },\r\n collapse: {\r\n [theme.breakpoints.up(\"md\")]: {\r\n display: \"flex !important\",\r\n MsFlexPreferredSize: \"auto\",\r\n flexBasis: \"auto\",\r\n },\r\n WebkitBoxFlex: \"1\",\r\n MsFlexPositive: \"1\",\r\n flexGrow: \"1\",\r\n WebkitBoxAlign: \"center\",\r\n MsFlexAlign: \"center\",\r\n alignItems: \"center\",\r\n },\r\n mlAuto,\r\n});\r\n\r\nexport default headerLinksStyle;\r\n","/* eslint-disable */\r\nimport React from \"react\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// react components for routing our app without refresh\r\nimport { Link } from \"react-router-dom\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport List from \"@material-ui/core/List\";\r\nimport ListItem from \"@material-ui/core/ListItem\";\r\nimport Icon from \"@material-ui/core/Icon\";\r\n\r\n// @material-ui/icons\r\nimport Apps from \"@material-ui/icons/Apps\";\r\nimport ShoppingCart from \"@material-ui/icons/ShoppingCart\";\r\nimport ViewDay from \"@material-ui/icons/ViewDay\";\r\nimport Dns from \"@material-ui/icons/Dns\";\r\nimport Build from \"@material-ui/icons/Build\";\r\nimport ListIcon from \"@material-ui/icons/List\";\r\nimport People from \"@material-ui/icons/People\";\r\nimport Assignment from \"@material-ui/icons/Assignment\";\r\nimport MonetizationOn from \"@material-ui/icons/MonetizationOn\";\r\nimport Chat from \"@material-ui/icons/Chat\";\r\nimport Call from \"@material-ui/icons/Call\";\r\nimport ViewCarousel from \"@material-ui/icons/ViewCarousel\";\r\nimport Home from \"@material-ui/icons/Home\";\r\nimport ArtTrack from \"@material-ui/icons/ArtTrack\";\r\nimport ViewQuilt from \"@material-ui/icons/ViewQuilt\";\r\nimport LocationOn from \"@material-ui/icons/LocationOn\";\r\nimport Fingerprint from \"@material-ui/icons/Fingerprint\";\r\nimport AttachMoney from \"@material-ui/icons/AttachMoney\";\r\nimport Store from \"@material-ui/icons/Store\";\r\nimport AccountCircle from \"@material-ui/icons/AccountCircle\";\r\nimport PersonAdd from \"@material-ui/icons/PersonAdd\";\r\nimport Layers from \"@material-ui/icons/Layers\";\r\nimport ShoppingBasket from \"@material-ui/icons/ShoppingBasket\";\r\nimport LineStyle from \"@material-ui/icons/LineStyle\";\r\nimport Error from \"@material-ui/icons/Error\";\r\n\r\n// core components\r\nimport CustomDropdown from \"components/CustomDropdown/CustomDropdown.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\n\r\nimport styles from \"assets/jss/xrs/components/headerLinksStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function HeaderLinks(props) {\r\n const easeInOutQuad = (t, b, c, d) => {\r\n t /= d / 2;\r\n if (t < 1) return (c / 2) * t * t + b;\r\n t--;\r\n return (-c / 2) * (t * (t - 2) - 1) + b;\r\n };\r\n\r\n const smoothScroll = (e, target) => {\r\n if (window.location.pathname === \"/sections\") {\r\n var isMobile = navigator.userAgent.match(\r\n /(iPad)|(iPhone)|(iPod)|(android)|(webOS)/i\r\n );\r\n if (isMobile) {\r\n // if we are on mobile device the scroll into view will be managed by the browser\r\n } else {\r\n e.preventDefault();\r\n var targetScroll = document.getElementById(target);\r\n scrollGo(document.documentElement, targetScroll.offsetTop, 1250);\r\n }\r\n }\r\n };\r\n const scrollGo = (element, to, duration) => {\r\n var start = element.scrollTop,\r\n change = to - start,\r\n currentTime = 0,\r\n increment = 20;\r\n\r\n var animateScroll = function() {\r\n currentTime += increment;\r\n var val = easeInOutQuad(currentTime, start, change, duration);\r\n element.scrollTop = val;\r\n if (currentTime < duration) {\r\n setTimeout(animateScroll, increment);\r\n }\r\n };\r\n animateScroll();\r\n };\r\n var onClickSections = {};\r\n\r\n const { dropdownHoverColor } = props;\r\n const classes = useStyles();\r\n return (\r\n
\r\n \r\n \r\n Welcome\r\n \r\n \r\n \r\n \r\n Accounts\r\n \r\n \r\n \r\n \r\n Budget Planer\r\n \r\n \r\n \r\n \r\n Request Call Back\r\n \r\n \r\n \r\n \r\n FAQ\r\n \r\n \r\n
\r\n );\r\n}\r\n\r\nHeaderLinks.defaultProps = {\r\n hoverColor: \"primary\",\r\n};\r\n\r\nHeaderLinks.propTypes = {\r\n dropdownHoverColor: PropTypes.oneOf([\r\n \"dark\",\r\n \"primary\",\r\n \"info\",\r\n \"success\",\r\n \"warning\",\r\n \"danger\",\r\n \"rose\",\r\n ]),\r\n};\r\n","/*eslint-disable*/ import React from \"react\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport HeaderLoggedIN from \"components/Header/HeaderLoggedIN.js\";\r\nimport HeaderLinks from \"components/Header/HeaderLinksUser\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\n\r\nexport default function HeaderSectionLoggedID(props) {\r\n const page = props.page;\r\n document.title = props.title;\r\n const classes = useStyles();\r\n return (\r\n
\r\n }\r\n relative\r\n changeColorOnScroll={{\r\n height: 0,\r\n color: \"white\",\r\n }}\r\n />\r\n
\r\n );\r\n}\r\n","import imagesStyles from \"../../imagesStyles\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nconst welcomeSectionStyle = {\r\n ...imagesStyles,\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 20,\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: primaryColor[20],\r\n fontWeight: 400,\r\n marginBottom: 0,\r\n },\r\n RightText: {\r\n marginBottom: 5,\r\n },\r\n Title: {\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n },\r\n tableWrapper: {\r\n maxHeight: 270,\r\n overflow: \"auto\",\r\n maxWidth: 600,\r\n },\r\n tableWrapperMobile: {\r\n maxHeight: 270,\r\n overflow: \"auto\",\r\n maxWidth: 400,\r\n marginTop: 10,\r\n marginBottom: 0,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n accountRow: {\r\n paddingRight: 15,\r\n marginLeft: 15,\r\n marginRight: -15,\r\n paddingTop: 3,\r\n paddingBottom: 3,\r\n },\r\n groupRow: {\r\n backgroundColor: \"#D3F3F3\",\r\n width: \"100%\",\r\n marginLeft: 30,\r\n marginRight: 0,\r\n borderBottom: \"1px solid\",\r\n borderColor: \"black\",\r\n fontWeight: 600,\r\n paddingLeft: 0,\r\n },\r\n totalRow: {\r\n paddingRight: 0,\r\n marginLeft: 0,\r\n marginRight: 15,\r\n fontWeight: 600,\r\n },\r\n};\r\n\r\nexport default welcomeSectionStyle;\r\n","import Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport Button from \"components/CustomButtons/Button\";\r\nimport React, { useContext } from \"react\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport welcomeSectionStyle from \"assets/jss/xrs/views/sectionsSections/welcomeSectionStyle\";\r\nimport Context from \"../../../utils/context\";\r\nimport * as URLS from \"../../../utils/XRSAPIs\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport BlueHeader from \"./BlueHeaderSection.js\";\r\nimport ReactHtmlParser from \"react-html-parser\";\r\nimport Table from \"@material-ui/core/Table\";\r\nimport TableBody from \"@material-ui/core/TableBody\";\r\nimport TableCell from \"@material-ui/core/TableCell\";\r\nimport TableHead from \"@material-ui/core/TableHead\";\r\nimport TableRow from \"@material-ui/core/TableRow\";\r\nimport NumberFormat from \"react-number-format\";\r\nimport Moment from \"react-moment\";\r\nimport { isClassExpression } from \"typescript\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport * as ACTIONS from \"../../../store/actions/actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nimport {\r\n BrowserView,\r\n MobileView,\r\n isBrowser,\r\n isMobile,\r\n} from \"react-device-detect\";\r\nimport { textVariables } from \"assets/jss/xrs\";\r\n\r\nconst columns = [\r\n { id: textVariables[1], label: textVariables[1], minWidth: 50 },\r\n { id: textVariables[2], label: textVariables[2], minWidth: 50 },\r\n {\r\n id: textVariables[3],\r\n label: textVariables[3],\r\n minWidth: 50,\r\n align: \"right\",\r\n format: (value) => value.toFixed(2),\r\n },\r\n {\r\n id: textVariables[4],\r\n label: textVariables[4],\r\n minWidth: 50,\r\n align: \"right\",\r\n format: (value) => value.toFixed(2),\r\n },\r\n];\r\n\r\nconst MobileColumns = [\r\n { id: \"Account #\", label: \"Account #\", minWidth: 50 },\r\n {\r\n id: \"Balance\",\r\n label: \"Balance\",\r\n minWidth: 50,\r\n align: \"right\",\r\n format: (value) => value.toFixed(2),\r\n },\r\n {\r\n id: \"Arrears\",\r\n label: \"Arrears\",\r\n minWidth: 50,\r\n align: \"right\",\r\n format: (value) => value.toFixed(2),\r\n },\r\n];\r\n\r\nconst useStyles = makeStyles(welcomeSectionStyle);\r\nexport default function WellcomeSection(props) {\r\n const context = useContext(Context);\r\n const classes = useStyles();\r\n const createData = (orgname, accountnumber, balance, arrearsamount, Id) => {\r\n return { Id, orgname, accountnumber, balance, arrearsamount };\r\n };\r\n const dispatch = useDispatch();\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n document.body.scrollTop = 0;\r\n }, []);\r\n const [render, setRender] = React.useState(0);\r\n const [rowdata, setRowdata] = React.useState([]);\r\n const [site, setSite] = React.useState(\"\");\r\n const stateAccounts = useSelector((state) => state.AccountsReducer.accounts);\r\n const stateCustomer = useSelector((state) => state.CustomerReducer.customer);\r\n const currency = useSelector((state) => state.GetSiteDetailsReducer.currency);\r\n const selectedAccount = useSelector(\r\n (state) => state.SelectedAccountsReducer.account\r\n );\r\n\r\n const ReadContext = (accounts) => {\r\n const dataRows = [];\r\n var data = accounts;\r\n if (data != \"NoAccounts\") {\r\n var i = 1;\r\n data.forEach((item) => {\r\n dataRows.push(\r\n createData(\r\n item.orgname,\r\n item.accountnumber,\r\n item.balance,\r\n item.arrearsamount,\r\n i\r\n )\r\n );\r\n i++;\r\n });\r\n setRowdata(dataRows);\r\n }\r\n };\r\n var token = sessionStorage.getItem(\"access_token\");\r\n\r\n React.useEffect(() => {\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Site Detatils\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n dispatch(ACTIONS.set_Site(response));\r\n\r\n setSite(response);\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get SiteDetatils\", error, context);\r\n }\r\n });\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n if (!context.authObj.isAuthenticatedUser()) {\r\n context.authObj.logout();\r\n } else {\r\n setBallance(stateCustomer.totalbalance);\r\n ReadContext(stateAccounts);\r\n }\r\n }, [ballance]);\r\n const [ballance, setBallance] = React.useState(0);\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {ReactHtmlParser(stateCustomer.welcomE1)}\r\n \r\n
\r\n \r\n \r\n \r\n {columns.map((column) => (\r\n \r\n {column.label}\r\n \r\n ))}\r\n \r\n \r\n \r\n {rowdata.map((row) => (\r\n \r\n {row.orgname}\r\n \r\n {row.accountnumber}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ))}\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n {rowdata.map(function(row, index) {\r\n return (\r\n \r\n \r\n {row.orgname} ({row.accountnumber})\r\n
\r\n \r\n \r\n \r\n \r\n Arrears\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n })}\r\n \r\n \r\n\r\n {ReactHtmlParser(stateCustomer.welcomE2)}\r\n \r\n \r\n
{textVariables[5]}
\r\n

\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.accountnumber\r\n : stateCustomer.custnumber}\r\n

\r\n
{textVariables[6]}
\r\n

\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.deptofficehours\r\n : stateAccounts[0].deptofficehours}\r\n

\r\n
Address
\r\n

\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.deptaddress\r\n : stateAccounts[0].deptaddress}\r\n

\r\n
Phone
\r\n

\r\n {\" \"}\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.deptphonenumber\r\n : stateAccounts[0].deptphonenumber}\r\n

\r\n
Email
\r\n

\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.deptemail\r\n : stateAccounts[0].deptemail}\r\n

\r\n
\r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import React, { useContext } from \"react\";\r\nimport classNames from \"classnames\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport WellcomeSection from \"../SectionsPage/Sections/WellcomeSection.js\";\r\nimport Context from \"../../utils/context\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport clsx from \"clsx\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport { isMobile } from \"react-device-detect\";\r\nconst useStyles = makeStyles(landingPageStyle);\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles2 = makeStyles((theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n}));\r\n\r\nexport default function LandingPage(props) {\r\n const context = useContext(Context);\r\n\r\n const classes = useStyles();\r\n const classes2 = useStyles2();\r\n const [page, setPage] = React.useState(1);\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n}\r\n","import { isMobile } from \"react-device-detect\";\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\n\r\nconst documentsPageStyle = (theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n});\r\n\r\nexport default documentsPageStyle;\r\n","import React, { useContext, useMemo } from \"react\";\r\nimport {\r\n primaryColor,\r\n primaryDarkColor,\r\n successColor,\r\n dangerColor,\r\n primaryBoxShadow,\r\n} from \"assets/jss/xrs.js\";\r\nimport { cameraActions } from \"../../../store/redux/redux-actions/redux_actions\";\r\nimport { useDropzone } from \"react-dropzone\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { isMobile } from \"react-device-detect\";\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\n\r\nconst baseStyle = {\r\n flex: 1,\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n alignItems: \"center\",\r\n padding: \"10px\",\r\n marginBottom: \"17px\",\r\n borderWidth: 2,\r\n borderRadius: 2,\r\n borderColor: primaryDarkColor[3],\r\n borderStyle: \"dashed\",\r\n backgroundColor: primaryDarkColor[3],\r\n color: \"white\",\r\n outline: \"none\",\r\n cursor: \"pointer\",\r\n transition: \"color .24s ease-in-out\",\r\n};\r\n\r\nconst activeStyle = {\r\n borderColor: primaryColor[0],\r\n color: primaryColor[0],\r\n};\r\n\r\nconst acceptStyle = {\r\n borderColor: successColor[0],\r\n color: successColor[0],\r\n};\r\n\r\nconst rejectStyle = {\r\n color: dangerColor[0],\r\n borderColor: dangerColor[0],\r\n};\r\n\r\nexport default function DocumentSection(props) {\r\n const [text, setText] = React.useState(\r\n isMobile\r\n ? \"Tap to upload\"\r\n : \"Drag 'n' drop some files here, or click to select files\"\r\n );\r\n\r\n React.useEffect(() => {\r\n if (props.uploadedDocument != \"\") {\r\n let txt = \"Uploaded documents: \";\r\n\r\n if (props.uploadedDocument.name !== undefined) {\r\n txt = txt + props.uploadedDocument.name;\r\n }\r\n //from documents\r\n else {\r\n txt = txt + props.uploadedDocument.document.name;\r\n }\r\n\r\n setText(txt);\r\n } else {\r\n setText(\r\n isMobile\r\n ? \"Tap to upload\"\r\n : \"Drag 'n' drop some files here, or click to select file\"\r\n );\r\n }\r\n }, [props]);\r\n\r\n const dispatch = useDispatch();\r\n\r\n const {\r\n acceptedFiles,\r\n fileRejections,\r\n getRootProps,\r\n getInputProps,\r\n isDragActive,\r\n isDragAccept,\r\n isDragReject,\r\n } = useDropzone({\r\n maxFiles: 1,\r\n accept: \".pdf, image/jpeg, image/png\",\r\n onDrop: (acceptedFiles) => {\r\n // window.open(URL.createObjectURL(acceptedFiles[0]));\r\n if (acceptedFiles[0]) {\r\n let docs = Object.assign(acceptedFiles[0], {\r\n preview: URL.createObjectURL(acceptedFiles[0]),\r\n });\r\n\r\n let document = {\r\n from: props.item.from,\r\n itemId: props.item.itemId,\r\n document: docs,\r\n };\r\n if (props.uploadedDocument != \"\") {\r\n dispatch(cameraActions.deleteDocument(props.uploadedDocument));\r\n }\r\n dispatch(cameraActions.addCapturedImage(document));\r\n }\r\n },\r\n });\r\n\r\n const style = useMemo(\r\n () => ({\r\n ...baseStyle,\r\n ...(isDragActive ? activeStyle : {}),\r\n ...(isDragAccept ? acceptStyle : {}),\r\n ...(isDragReject ? rejectStyle : {}),\r\n ...(props.uploadedDocument != \"\" ? acceptStyle : {}),\r\n }),\r\n [isDragActive, isDragReject, props.uploadedDocument]\r\n );\r\n\r\n return (\r\n
\r\n \r\n

{text}

\r\n
\r\n );\r\n}\r\n","import React, { useContext } from \"react\";\r\nimport classNames from \"classnames\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport documentsPageStyle from \"../../assets/jss/xrs/views/documentsPageStyle\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport DocumentSection from \"../SectionsPage/Sections/DocumentSection.js\";\r\nimport Context from \"../../utils/context\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport clsx from \"clsx\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport { isMobile } from \"react-device-detect\";\r\nconst useStyles = makeStyles(landingPageStyle);\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles2 = makeStyles(documentsPageStyle);\r\n\r\nexport default function DocumentsPage(props) {\r\n const context = useContext(Context);\r\n const openCamera = useSelector((state) => state.CameraReducer.open);\r\n\r\n const classes = useStyles();\r\n const classes2 = useStyles2();\r\n const [page, setPage] = React.useState(1);\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n if (openCamera) {\r\n return ;\r\n }\r\n return (\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n}\r\n","import imagesStyles from \"../../imagesStyles\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nconst viewAccountSectionStyle = {\r\n ...imagesStyles,\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 60,\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: primaryColor[20],\r\n fontWeight: 400,\r\n marginBottom: 0,\r\n },\r\n RightText: {\r\n marginBottom: 5,\r\n },\r\n Title: {\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n tableWrapper: {\r\n maxHeight: 270,\r\n overflow: \"auto\",\r\n },\r\n tableWrapperMobile: {\r\n overflowX: \"hidden\",\r\n overflowY: \"scroll\",\r\n maxHeight: 270,\r\n marginLeft: 0,\r\n marginRight: 0,\r\n marginBottom: 10,\r\n },\r\n fullRow: {\r\n width: \"100%\",\r\n },\r\n accountRow: {\r\n paddingRight: 0,\r\n marginLeft: 0,\r\n marginRight: 0,\r\n },\r\n\r\n groupRow: {\r\n backgroundColor: \"#D3F3F3\",\r\n width: \"100%\",\r\n marginLeft: 0,\r\n marginRight: 0,\r\n borderBottom: \"1px solid\",\r\n borderColor: \"gray\",\r\n },\r\n totalRow: {\r\n paddingRight: 0,\r\n marginLeft: 0,\r\n marginRight: 15,\r\n fontWeight: 600,\r\n },\r\n};\r\n\r\nexport default viewAccountSectionStyle;\r\n","import { makeStyles } from \"@material-ui/core/styles\";\r\nimport Table from \"@material-ui/core/Table\";\r\nimport TableBody from \"@material-ui/core/TableBody\";\r\nimport TableCell from \"@material-ui/core/TableCell\";\r\nimport TableHead from \"@material-ui/core/TableHead\";\r\nimport TableRow from \"@material-ui/core/TableRow\";\r\nimport viewAccountSectionStyle from \"assets/jss/xrs/views/sectionsSections/viewAccountSectionStyle\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport * as ACTIONS from \"store/actions/actions\";\r\n\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport React, { useContext } from \"react\";\r\nimport Moment from \"react-moment\";\r\nimport fnmoment from \"moment/min/moment-with-locales\";\r\nimport NumberFormat from \"react-number-format\";\r\nimport Context from \"../../../utils/context\";\r\nimport * as URLS from \"../../../utils/XRSAPIs\";\r\nimport BlueHeader from \"./BlueHeaderSection.js\";\r\nimport groupArray from \"group-array\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\nimport ReactHtmlParser from \"react-html-parser\";\r\nimport {\r\n apiActions,\r\n getSiteDetailsActions,\r\n htmlActions,\r\n cameraActions,\r\n} from \"../../../store/redux/redux-actions/redux_actions\";\r\nimport {\r\n BrowserView,\r\n MobileView,\r\n isBrowser,\r\n isMobile,\r\n} from \"react-device-detect\";\r\nimport { BorderBottom, BorderColor } from \"@material-ui/icons\";\r\nimport { textVariables } from \"assets/jss/xrs\";\r\n\r\nconst useStyles = makeStyles(viewAccountSectionStyle);\r\nexport default function ViewAccountSection(props) {\r\n const context = useContext(Context);\r\n const classes = useStyles();\r\n const [site, setSite] = React.useState(\"\");\r\n const [page, setPage] = React.useState(1);\r\n const [rowdata, setRowdata] = React.useState([]);\r\n const [grouprowdata, setGroupRowdata] = React.useState([]);\r\n const [total, setTotal] = React.useState(0);\r\n const stateSelectedAccount = useSelector(\r\n (state) => state.SelectedAccountsReducer.account\r\n );\r\n const selectedAccount = useSelector(\r\n (state) => state.SelectedAccountsReducer.account\r\n );\r\n const stateAccounts = useSelector((state) => state.AccountsReducer.accounts);\r\n const dispatch = useDispatch();\r\n\r\n const [account, setAccount] = React.useState([]);\r\n const currency = useSelector((state) => state.GetSiteDetailsReducer.currency);\r\n\r\n const viewAccountText = useSelector(\r\n (state) => state.HtmlReducer.viewAccountText\r\n );\r\n const stateSite = useSelector((state) => state.SiteReducer.site);\r\n\r\n const createData = (Paydate, Description, Amount, Id) => {\r\n return { Id, Paydate, Description, Amount };\r\n };\r\n const stateCustomer = useSelector((state) => state.CustomerReducer.customer);\r\n React.useEffect(() => {\r\n fnmoment.locale(window.navigator.language.toLowerCase());\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n setSite(stateSite);\r\n setAccount(stateSelectedAccount);\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n var getdata;\r\n var newDate = new Date();\r\n getdata = JSON.stringify({\r\n ITEMCODE: stateSelectedAccount.itemcode,\r\n RECNO: stateSelectedAccount.recno,\r\n STARTDATE: \"2020-01-01\",\r\n ENDDATE: newDate,\r\n });\r\n fetch(URLS.GetTransactionsAPIURL, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n body: getdata,\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Transactions\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then(\r\n (data) => {\r\n const dataRows = [];\r\n var tmptotal = 0;\r\n data.forEach((item, i) => {\r\n tmptotal += item.amount;\r\n dataRows.push(\r\n createData(\r\n fnmoment(item.paydate).format(\"L\"),\r\n item.description,\r\n item.amount,\r\n item.transactionid\r\n )\r\n );\r\n });\r\n setRowdata(dataRows);\r\n\r\n if (stateSelectedAccount == \"NoAccount\") {\r\n setTotal(stateCustomer.totalbalance);\r\n } else {\r\n setTotal(stateSelectedAccount.balance);\r\n }\r\n\r\n var groupedItems = groupArray(dataRows, \"Paydate\");\r\n setGroupRowdata(groupedItems);\r\n },\r\n [page]\r\n )\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Transactions\", error, context);\r\n }\r\n });\r\n // getMenu();\r\n }, [stateSelectedAccount]);\r\n const getMenu = () => {\r\n var url = URLS.GetWelcomeNavigation;\r\n var token = sessionStorage.getItem(\"access_token\");\r\n\r\n fetch(url, {\r\n method: \"GET\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Welcome Navigation\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data1) => {\r\n dispatch(ACTIONS.set_menu(data1));\r\n\r\n fetch(URLS.GetWelcomeDetails, {\r\n method: \"GET\",\r\n headers: { Authorization: \"Bearer \" + token },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n ApiErrorHandler(\"Welcome Details\", res, context);\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data) => {\r\n dispatch(htmlActions.termsQuickPay(data.customer.termsquickpay));\r\n dispatch(htmlActions.termsPlan(data.customer.termsplan));\r\n dispatch(htmlActions.termsDiscount(data.customer.termsdiscount));\r\n\r\n dispatch(\r\n htmlActions.viewOfferText(data.activeAccounts[0].viewoffertext)\r\n );\r\n dispatch(\r\n htmlActions.createPlanText(data.activeAccounts[0].createplantext)\r\n );\r\n dispatch(\r\n htmlActions.createPlantoc(data.activeAccounts[0].createplantoc)\r\n );\r\n dispatch(\r\n htmlActions.createBudgetText(\r\n data.activeAccounts[0].createbudgettext\r\n )\r\n );\r\n dispatch(\r\n htmlActions.viewAccountText(\r\n data.activeAccounts[0].viewacccounttext\r\n )\r\n );\r\n dispatch(ACTIONS.set_Customer(data.customer));\r\n\r\n sessionStorage.setItem(\"user\", data.customer.cufname);\r\n\r\n dispatch(ACTIONS.set_Accounts(data.activeAccounts));\r\n\r\n dispatch(ACTIONS.set_Callbacks(data.callbackReasons));\r\n dispatch(ACTIONS.set_num_accounts(data.activeAccounts.length));\r\n if (data.activeAccounts.length == 1) {\r\n dispatch(ACTIONS.set_selectedAccount(data.activeAccounts[0]));\r\n }\r\n dispatch(apiActions.clear());\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Welcome Details\", error, context);\r\n }\r\n });\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Welcome Navigation\", error, context);\r\n }\r\n });\r\n };\r\n const columns = [\r\n { id: \"Paydate\", label: \"Date\", minWidth: 50 },\r\n { id: \"Description\", label: \"Description\", minWidth: 50 },\r\n {\r\n id: \"Ammount\",\r\n label: \"Amount\",\r\n minWidth: 50,\r\n align: \"right\",\r\n format: (value) => value.toFixed(2),\r\n },\r\n ];\r\n const MobileColumns = [\r\n {\r\n id: \"Description\",\r\n label: \"Description\",\r\n minWidth: 10,\r\n align: \"left\",\r\n paddingLeft: \"0\",\r\n },\r\n {\r\n id: \"Ammount\",\r\n label: \"Amount\",\r\n minWidth: 50,\r\n align: \"right\",\r\n paddingLeft: \"10\",\r\n format: (value) => value.toFixed(2),\r\n },\r\n ];\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
{ReactHtmlParser(selectedAccount.viewacccounttext)}
\r\n {}\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n {columns.map((column) => (\r\n \r\n {column.label}\r\n \r\n ))}\r\n \r\n \r\n \r\n {rowdata.map((row) => (\r\n \r\n {row.Paydate}\r\n \r\n {row.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 {MobileColumns.map((column) => (\r\n \r\n {column.label}\r\n
\r\n ))}\r\n {Object.keys(grouprowdata).map(function(date, index) {\r\n return (\r\n \r\n \r\n {date}\r\n
\r\n {grouprowdata[date].map(function(row, index2) {\r\n return (\r\n \r\n \r\n {row.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
{textVariables[5]}
\r\n

\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.accountnumber\r\n : stateCustomer.custnumber}\r\n

\r\n
{textVariables[6]}
\r\n

\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.deptofficehours\r\n : stateAccounts[0].deptofficehours}\r\n

\r\n
Address
\r\n

\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.deptaddress\r\n : stateAccounts[0].deptaddress}\r\n

\r\n
Phone
\r\n

\r\n {\" \"}\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.deptphonenumber\r\n : stateAccounts[0].deptphonenumber}\r\n

\r\n
Email
\r\n

\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.deptemail\r\n : stateAccounts[0].deptemail}\r\n

\r\n
\r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import React, { useContext } from \"react\";\r\nimport classNames from \"classnames\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport ViewAccountSection from \"../SectionsPage/Sections/ViewAccountSection.js\";\r\nimport Context from \"../../utils/context\";\r\nimport clsx from \"clsx\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport {\r\n BrowserView,\r\n MobileView,\r\n isBrowser,\r\n isMobile,\r\n} from \"react-device-detect\";\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles = makeStyles(landingPageStyle);\r\nconst useStyles2 = makeStyles((theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n}));\r\n\r\nexport default function ViewAccountPage(props) {\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n document.body.scrollTop = 0;\r\n }, []);\r\n\r\n const context = useContext(Context);\r\n\r\n const classes = useStyles();\r\n const classes2 = useStyles2();\r\n const [page, setPage] = React.useState(1);\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n}\r\n","import { isMobile } from \"react-device-detect\";\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\n\r\nconst createPaymentPlanPageStyle = (theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n});\r\n\r\nexport default createPaymentPlanPageStyle;\r\n","import React, { useContext } from \"react\";\r\nimport history from \"../../../utils/history\";\r\nimport {\r\n apiActions,\r\n getSiteDetailsActions,\r\n htmlActions,\r\n} from \"store/redux/redux-actions/redux_actions\";\r\nimport * as ACTIONS from \"store/actions/actions\";\r\nimport RadioGroup from \"@material-ui/core/RadioGroup\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport FormLabel from \"@material-ui/core/FormLabel\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\r\n\r\nimport classNames from \"classnames\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Parallax from \"components/Parallax/Parallax.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport { useFormik } from \"formik\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\r\nimport Radio from \"@material-ui/core/Radio\";\r\n\r\nimport fnmoment from \"moment/min/moment-with-locales\";\r\n\r\nimport TextField from \"components/CustomInput/CustomInput.js\";\r\nimport Iframe from \"react-iframe\";\r\nimport { Collapse } from \"@material-ui/core\";\r\nimport clsx from \"clsx\";\r\nimport Link from \"@material-ui/core/Link\";\r\nimport ReactHtmlParser, {\r\n processNodes,\r\n convertNodeToElement,\r\n htmlparser2,\r\n} from \"react-html-parser\";\r\n\r\nimport html2canvas from \"html2canvas\";\r\nimport Context from \"../../..//utils/context\";\r\nimport * as URLS from \"../../../utils/XRSAPIs\";\r\nimport {\r\n BrowserView,\r\n MobileView,\r\n isBrowser,\r\n isMobile,\r\n} from \"react-device-detect\";\r\nimport { el } from \"date-fns/locale\";\r\n\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\n// const useStyles2 = makeStyles((theme) => ({\r\n// content: {\r\n// paddingTop: 60,\r\n// paddingBottom: 38,\r\n// flexGrow: 1,\r\n// padding: theme.spacing(3),\r\n// transition: theme.transitions.create(\"margin\", {\r\n// easing: theme.transitions.easing.sharp,\r\n// duration: theme.transitions.duration.leavingScreen,\r\n// }),\r\n// marginLeft: 0,\r\n// },\r\n// contentShift: {\r\n// transition: theme.transitions.create(\"margin\", {\r\n// easing: theme.transitions.easing.easeOut,\r\n// duration: theme.transitions.duration.enteringScreen,\r\n// }),\r\n// marginLeft: drawerWidth,\r\n// },\r\n// }));\r\nlet eventListenerCopy = null;\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n width: \"100%\",\r\n },\r\n Hide: {\r\n display: \"none\",\r\n },\r\n button: {\r\n marginRight: theme.spacing(1),\r\n padding: 13,\r\n },\r\n instructions: {\r\n marginTop: theme.spacing(1),\r\n marginBottom: theme.spacing(1),\r\n },\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 60,\r\n },\r\n hide: {\r\n display: \"none\",\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n },\r\n cardNOBORDER: {\r\n border: 0,\r\n },\r\n Middle: {\r\n justifyContent: \"center\",\r\n width: \"100%\",\r\n alignItems: \"center\",\r\n textAlign: \"center\",\r\n border: 0,\r\n },\r\n radioAlign: {\r\n marginLeft: \"-10px\",\r\n },\r\n blueText: {\r\n color: \"#0065a4\",\r\n fontWeight: 300,\r\n },\r\n Title: {\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n BoxFull: {\r\n width: \"100%\",\r\n },\r\n rightValues: {\r\n textAlign: \"right\",\r\n fontWeight: 300,\r\n },\r\n}));\r\nconst useStyles2 = makeStyles(landingPageStyle);\r\n\r\nexport default function PayNowSection(props) {\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n document.body.scrollTop = 0;\r\n }, []);\r\n\r\n const dispatch = useDispatch();\r\n const loading = useSelector((state) => state.ApiCallsReducer.loading);\r\n const [loadingButon, setloadingButon] = React.useState(false);\r\n const currency = useSelector((state) => state.GetSiteDetailsReducer.currency);\r\n const convenienceFee = useSelector(\r\n (state) => state.GetSiteDetailsReducer.convenienceFee\r\n );\r\n\r\n const termsQuickPay = useSelector((state) => state.HtmlReducer.termsQuickPay);\r\n const termsPlan = useSelector((state) => state.HtmlReducer.termsPlan);\r\n const termsDiscount = useSelector((state) => state.HtmlReducer.termsDiscount);\r\n const [usesconveniencefee, setUsesconveniencefee] = React.useState(false);\r\n\r\n const [paymentgatewayurl, setPaymentgatewayurl] = React.useState(\"\");\r\n\r\n const [note, setNote] = React.useState(\"\");\r\n\r\n const classes2 = useStyles2();\r\n const context = useContext(Context);\r\n const [page, setPage] = React.useState(1);\r\n const [ifamevisible, setIfamevisible] = React.useState(false);\r\n const [sitename, setSitename] = React.useState(\"\");\r\n const [companyname, setCompanyname] = React.useState(\"\");\r\n const [aboutus, setAboutus] = React.useState(\"\");\r\n const [address, setAddress] = React.useState(\"\");\r\n const [officehours, setOfficehours] = React.useState(\"\");\r\n const [phonenumber, setPhonenumber] = React.useState(\"\");\r\n const [email, setEmail] = React.useState(\"\");\r\n const [selectedDate, handleDateChange] = React.useState(new Date());\r\n const [screenstate, setScreenstate] = React.useState({ screenshot: \"\" });\r\n const [showQuickPay, setShowQuickPay] = React.useState(true);\r\n const [termsClicked, setTermsCliked] = React.useState(false);\r\n const [termsApiText, setTermsApiText] = React.useState(\"\");\r\n const [termsText, setTermsText] = React.useState(\"\");\r\n const [cardref, setCardref] = React.useState(\"\");\r\n const [cufphone, setCufphone] = React.useState(\"\");\r\n const [paymentDate, setPaymentDate] = React.useState(\"\");\r\n const [minPayment, setMinPayment] = React.useState(1);\r\n const stateCustomer = useSelector((state) => state.CustomerReducer.customer);\r\n const stateOffer = useSelector((state) => state.OfferReducer.offer);\r\n\r\n const [value, setValue] = React.useState(\"new\");\r\n\r\n const [amount, setAmmount] = React.useState(\"\");\r\n\r\n const stateSelectedAccount = useSelector(\r\n (state) => state.SelectedAccountsReducer.account\r\n );\r\n\r\n const paymentProvider = useSelector(\r\n (state) => state.GetSiteDetailsReducer.paymentProvider\r\n );\r\n\r\n const ChangeNote = (event) => {\r\n setNote(event.target.value);\r\n };\r\n const HideIframe = () => {\r\n setIfamevisible(false);\r\n };\r\n const ShowIframe = () => {\r\n setIfamevisible(true);\r\n };\r\n const handleTermsMobile = () => {\r\n setShowQuickPay(false);\r\n };\r\n const [quickPayAPIData, setquickPayAPIData] = React.useState(undefined);\r\n\r\n React.useEffect(() => {\r\n if (quickPayAPIData) {\r\n window.addEventListener(\"message\", tabaPayMessage, false);\r\n }\r\n return () => {\r\n window.removeEventListener(\"message\", tabaPayMessage);\r\n };\r\n }, [quickPayAPIData]);\r\n React.useEffect(() => {\r\n fnmoment.locale(window.navigator.language.toLowerCase());\r\n let today = fnmoment().format(\"YYYY-MM-DD\");\r\n setPaymentDate(today);\r\n dispatch(ACTIONS.set_PaymentStatusFrom(props.source === \"PayNow\"));\r\n }, []);\r\n React.useEffect(() => {\r\n window.RealexHpp = null;\r\n\r\n const script = document.createElement(\"script\");\r\n script.src = \"rxp-js.js\";\r\n script.async = true;\r\n document.body.appendChild(script);\r\n\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Site Detatils\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n dispatch(getSiteDetailsActions.logo(response.logoimageurl));\r\n dispatch(getSiteDetailsActions.footerImage(response.footerimageurl));\r\n dispatch(getSiteDetailsActions.currency(response.sitecurrency));\r\n dispatch(getSiteDetailsActions.set4week(response.usE4WEEKLYFREQUENCY));\r\n\r\n dispatch(\r\n getSiteDetailsActions.uploadImagesToBudget(\r\n response.uploadimagestobudget\r\n )\r\n );\r\n if (response.usesconveniencefee) {\r\n dispatch(\r\n getSiteDetailsActions.convenienceFee(response.conveniencefee)\r\n );\r\n }\r\n setSitename(response.sitename);\r\n setCompanyname(response.companyname);\r\n setAboutus(response.aboutus);\r\n setOfficehours(response.officehours);\r\n setPhonenumber(response.phonenumber);\r\n setAddress(response.address);\r\n setEmail(response.email);\r\n getMenu();\r\n setTermsApiText(response.termsquickpay);\r\n setCardref(stateCustomer.cardref);\r\n stateCustomer.cardref ? setValue(\"card\") : setValue(\"new\");\r\n setMinPayment(stateCustomer.paynowmin);\r\n setUsesconveniencefee(response.usesconveniencefee);\r\n setPaymentgatewayurl(response.paymentgatewayurl);\r\n\r\n setCufphone(stateCustomer.cuphone);\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Site Detatils\", error, context);\r\n }\r\n });\r\n return () => {\r\n dispatch(apiActions.clear());\r\n\r\n document.body.removeChild(script);\r\n window.RealexHpp = null;\r\n if (eventListenerCopy != null) {\r\n window.removeEventListener(\"message\", eventListenerCopy, false);\r\n }\r\n };\r\n }, []);\r\n const formik = useFormik({\r\n initialValues: {\r\n amount: value,\r\n },\r\n onSubmit: (values) => {\r\n if (!isMobile) {\r\n dispatch(apiActions.loading(true));\r\n setImageBase64();\r\n }\r\n\r\n if (isMobile) {\r\n if (termsClicked) {\r\n dispatch(apiActions.loading(true));\r\n setImageBase64();\r\n } else {\r\n setShowQuickPay(false);\r\n }\r\n }\r\n },\r\n });\r\n\r\n const RedirectResponse = (RedirecURL) => {\r\n getMenu();\r\n\r\n history.push(RedirecURL);\r\n };\r\n const RelalexInit = (values) => {\r\n var url = URLS.PayNowResponseNoCard;\r\n // ;\r\n if (props.source == \"CreatePaymentPlan\" || props.source == \"ViewOffer\") {\r\n url = URLS.WebOfferResponseNoCard;\r\n }\r\n if (props.oneMonth) {\r\n url = URLS.OnePaymentWebOfferResponseNoCard;\r\n }\r\n\r\n window.RealexHpp.setHppUrl(paymentgatewayurl);\r\n eventListenerCopy = window.RealexHpp.embedded.init(\r\n \"payButtonId\",\r\n \"paymentIframeID\",\r\n url,\r\n values,\r\n RedirectResponse\r\n );\r\n };\r\n const HandleTermsClicked = (e) => {\r\n if (e.target.checked) {\r\n setTermsText(\"I agree \");\r\n } else {\r\n setTermsText(\"I don't agree \");\r\n }\r\n setTermsCliked(e.target.checked);\r\n setShowQuickPay(true);\r\n };\r\n const submitFormPayNow = (values, screen) => {\r\n const token = sessionStorage.getItem(\"access_token\");\r\n setloadingButon(true);\r\n var url;\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n url = URLS.CreateCardRequestTabaPay;\r\n } else {\r\n url = URLS.PayNowURLNoCard;\r\n }\r\n var Amount = values;\r\n\r\n var data;\r\n var iremcode = stateSelectedAccount.itemcode;\r\n var recno = stateSelectedAccount.recno;\r\n var cardref = stateCustomer.cardref;\r\n if (value == \"card\") {\r\n data = {\r\n ItemRecno: recno,\r\n ItemCode: iremcode,\r\n PAYMENTAMOUNT: Amount,\r\n ScreenShot: screen,\r\n CURRENCYSYMBOL: \"EUR\",\r\n PAYERREF: stateCustomer.cardpayerref,\r\n CARDREF: cardref,\r\n };\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n url = URLS.UseExistingCardTabaPay;\r\n if (usesconveniencefee) {\r\n data.NOTE = note;\r\n }\r\n } else {\r\n url = URLS.PayNowURLCard;\r\n }\r\n data = JSON.stringify(data);\r\n } else {\r\n data = JSON.stringify({\r\n ItemRecno: recno,\r\n ItemCode: iremcode,\r\n Amount: Amount,\r\n ScreenShot: screen,\r\n });\r\n }\r\n\r\n fetch(url, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n body: data,\r\n })\r\n .then((res) => {\r\n return res.json();\r\n })\r\n .then(\r\n (data) => {\r\n dispatch(apiActions.loading(false));\r\n if (\r\n (data.MESSAGE != undefined || data.message != undefined) &&\r\n data.AUTHCODE == null\r\n ) {\r\n setloadingButon(false);\r\n ApiErrorHandler(\"Pay Now\", data, context);\r\n } else {\r\n if (value == \"card\") {\r\n history.push(\r\n \"/paynow-paymentstatus?AUTHCODE=\" +\r\n data.AUTHCODE +\r\n \"&MESSAGE=\" +\r\n data.MESSAGE +\r\n \"&RESULTCODE=\" +\r\n data.RESULTCODE +\r\n \"&AMOUNT=\" +\r\n data.AMOUNT +\r\n \"&PASSREF=\" +\r\n data.PASSREF\r\n );\r\n } else {\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n setquickPayAPIData(data);\r\n } else {\r\n RelalexInit(data);\r\n }\r\n if (isMobile) {\r\n setShowQuickPay(false);\r\n }\r\n setIfamevisible(true);\r\n }\r\n }\r\n },\r\n [page]\r\n )\r\n .catch((error) => {\r\n dispatch(apiActions.loading(false));\r\n setloadingButon(false);\r\n if (error.AUTHCODE) {\r\n if (error.message == \"\") {\r\n } else {\r\n if (stateCustomer.cardref) {\r\n history.push(\r\n \"/paynow-paymentstatus?AUTHCODE=\" +\r\n data.AUTHCODE +\r\n \"&MESSAGE=\" +\r\n data.MESSAGE +\r\n \"&RESULTCODE=\" +\r\n data.RESULTCODE +\r\n \"&AMOUNT=\" +\r\n data.AMOUNT +\r\n \"&PASSREF=\" +\r\n data.PASSREF\r\n );\r\n }\r\n }\r\n\r\n ApiErrorHandler(\"Pay Now \", error, context);\r\n }\r\n });\r\n };\r\n var tabaPayMessage = function(event) {\r\n //Check if it is from TabaPay\r\n let iframe = document.getElementById(\"SSO\");\r\n\r\n if (typeof event.data === \"string\") {\r\n if (event.data != \"Close\") {\r\n if (event.data.slice(0, 7) == \"Error: \") {\r\n // Error\r\n } else {\r\n var asData = event.data.split(\"|\");\r\n if (asData.length == 3) {\r\n let quickPayData = quickPayAPIData;\r\n let url;\r\n\r\n if (\r\n props.source == \"CreatePaymentPlan\" ||\r\n props.source == \"ViewOffer\"\r\n ) {\r\n url = URLS.SaveOfferResultTabaPay;\r\n\r\n if (props.oneMonth || props.source == \"ViewOffer\") {\r\n url = URLS.SaveSettlementOfferResultabaPay;\r\n }\r\n }\r\n if (props.source == \"PayNow\") {\r\n url = URLS.PayNowAndSaveCardResultTabaPay;\r\n if (usesconveniencefee) {\r\n quickPayData.NOTE = note;\r\n }\r\n }\r\n\r\n quickPayData.LASTDIGITS = asData[0];\r\n quickPayData.EXPIRATIONDATE = asData[1];\r\n quickPayData.CARDTOKEN = asData[2];\r\n var token = sessionStorage.getItem(\"access_token\");\r\n\r\n fetch(url, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n body: JSON.stringify(quickPayData),\r\n })\r\n .then((res) => {\r\n if (res.ok) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Pay now\", data, context);\r\n });\r\n setIfamevisible(false);\r\n setloadingButon(false);\r\n window.removeEventListener(\"message\", tabaPayMessage);\r\n iframe.src = iframe.src;\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n history.push(response.REDIRECTURL);\r\n })\r\n .catch((error) => {\r\n // if (error.message == \"\") {\r\n // ;\r\n // } else {\r\n // ApiErrorHandler(\"Get Site Detatils\", error, context);\r\n // }\r\n });\r\n } else {\r\n // Data Error\r\n }\r\n }\r\n } else {\r\n setIfamevisible(false);\r\n setloadingButon(false);\r\n window.removeEventListener(\"message\", tabaPayMessage);\r\n iframe.src = iframe.src;\r\n }\r\n }\r\n };\r\n const getMenu = () => {\r\n var url = URLS.GetWelcomeNavigation;\r\n var token = sessionStorage.getItem(\"access_token\");\r\n\r\n fetch(url, {\r\n method: \"GET\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Welcome Navigation\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data1) => {\r\n dispatch(ACTIONS.set_menu(data1));\r\n\r\n fetch(URLS.GetWelcomeDetails, {\r\n method: \"GET\",\r\n headers: { Authorization: \"Bearer \" + token },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n ApiErrorHandler(\"Welcome Details\", res, context);\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data) => {\r\n dispatch(htmlActions.termsQuickPay(data.customer.termsquickpay));\r\n dispatch(htmlActions.termsPlan(data.customer.termsplan));\r\n dispatch(htmlActions.termsDiscount(data.customer.termsdiscount));\r\n\r\n dispatch(\r\n htmlActions.viewOfferText(data.activeAccounts[0].viewoffertext)\r\n );\r\n dispatch(\r\n htmlActions.createPlanText(data.activeAccounts[0].createplantext)\r\n );\r\n dispatch(\r\n htmlActions.createPlantoc(data.activeAccounts[0].createplantoc)\r\n );\r\n dispatch(\r\n htmlActions.createBudgetText(\r\n data.activeAccounts[0].createbudgettext\r\n )\r\n );\r\n dispatch(\r\n htmlActions.viewAccountText(\r\n data.activeAccounts[0].viewacccounttext\r\n )\r\n );\r\n dispatch(ACTIONS.set_Customer(data.customer));\r\n\r\n sessionStorage.setItem(\"user\", data.customer.cufname);\r\n\r\n dispatch(ACTIONS.set_Accounts(data.activeAccounts));\r\n\r\n dispatch(ACTIONS.set_Callbacks(data.callbackReasons));\r\n dispatch(ACTIONS.set_num_accounts(data.activeAccounts.length));\r\n if (data.activeAccounts.length == 1) {\r\n dispatch(ACTIONS.set_selectedAccount(data.activeAccounts[0]));\r\n }\r\n dispatch(apiActions.clear());\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Welcome Details\", error, context);\r\n }\r\n });\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Welcome Navigation\", error, context);\r\n }\r\n });\r\n };\r\n const submitFormPaymentPlan = (values, screen) => {\r\n dispatch(apiActions.loading(true));\r\n setloadingButon(true);\r\n debugger;\r\n var url;\r\n const token = sessionStorage.getItem(\"access_token\");\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n url = URLS.CreateOfferRequestTabaPay;\r\n } else {\r\n url = URLS.GetWebOffersAPIUrl;\r\n }\r\n\r\n var cardref = stateCustomer.cardref;\r\n var postfreq =\r\n values.frequency == \"Week\"\r\n ? \"Weekly\"\r\n : values.frequency == \"FORT\"\r\n ? \"FORT\"\r\n : values.frequency == \"4WEEKLY\"\r\n ? \"4WEEKLY\"\r\n : \"Monthly\";\r\n\r\n var data;\r\n if (value == \"card\") {\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n url = URLS.SetWebOfferTabaPay;\r\n } else {\r\n url = URLS.GetWebOffersCardAPIUrl;\r\n }\r\n data = JSON.stringify({\r\n OFFERID: stateOffer.WOOFFERID,\r\n DOWNPAYMENT: values.downpayment,\r\n REMAINGBAL: values.balanceToPay,\r\n STARTDATE: values.startdate,\r\n FREQUENCY: postfreq,\r\n AMOUNT: Number(values.amount).toFixed(2),\r\n FINALDATE: values.endDate,\r\n FINALAMOUNT: Number(values.amount).toFixed(2),\r\n APPLYDISCOUNT: \"N\",\r\n DISCOUNTOPTIONNUMBER: \"0\",\r\n SCREENSHOT: screen,\r\n PAYERREF: stateCustomer.cardpayerref,\r\n CARDREF: cardref,\r\n });\r\n } else {\r\n data = JSON.stringify({\r\n OFFERID: stateOffer.WOOFFERID,\r\n DOWNPAYMENT: values.downpayment,\r\n REMAINGBAL: values.balanceToPay,\r\n STARTDATE: values.startdate,\r\n FREQUENCY: postfreq,\r\n AMOUNT: Number(values.amount).toFixed(2),\r\n FINALDATE: values.endDate,\r\n FINALAMOUNT: Number(values.amount).toFixed(2),\r\n APPLYDISCOUNT: \"N\",\r\n DISCOUNTOPTIONNUMBER: \"0\",\r\n SCREENSHOT: screen,\r\n });\r\n }\r\n\r\n fetch(url, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n body: data,\r\n })\r\n .then((res) => {\r\n dispatch(apiActions.loading(false));\r\n\r\n return res.json();\r\n })\r\n .then((data) => {\r\n if (\r\n (data.MESSAGE != undefined || data.message != undefined) &&\r\n data.AUTHCODE == null\r\n ) {\r\n ApiErrorHandler(\"Payment Plan\", data, context);\r\n } else {\r\n getMenu();\r\n if (value == \"card\") {\r\n history.push(\r\n \"/paynow-paymentstatus?AUTHCODE=\" +\r\n data.AUTHCODE +\r\n \"&MESSAGE=\" +\r\n data.MESSAGE +\r\n \"&RESULTCODE=\" +\r\n data.RESULTCODE +\r\n \"&AMOUNT=\" +\r\n data.AMOUNT +\r\n \"&PASSREF=\" +\r\n data.PASSREF\r\n );\r\n } else {\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n setquickPayAPIData(data);\r\n } else {\r\n RelalexInit(data);\r\n }\r\n if (isMobile) {\r\n setShowQuickPay(false);\r\n }\r\n setIfamevisible(true);\r\n }\r\n }\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n dispatch(apiActions.loading(false));\r\n\r\n ApiErrorHandler(\"Payment Plan\", error, context);\r\n }\r\n });\r\n };\r\n const submitFormViewOffer = (values, screen) => {\r\n const token = sessionStorage.getItem(\"access_token\");\r\n\r\n var url;\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n url = URLS.CreateOfferRequestTabaPay;\r\n } else {\r\n url = URLS.GetWebOffersAPIUrl;\r\n }\r\n dispatch(apiActions.loading(true));\r\n setloadingButon(true);\r\n var data;\r\n var end = paymentDate;\r\n var dateSetlementOffer = fnmoment\r\n .utc(fnmoment.utc().format())\r\n .local()\r\n .format();\r\n end = fnmoment(end)\r\n .add(values.TERM * 1, \"M\")\r\n .format(\"YYYY-MM-DD\");\r\n if (value == \"card\") {\r\n if (props.oneMonth) {\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n url = URLS.SetWebSettlementOfferTabaPay;\r\n } else {\r\n url = URLS.OnePaymentPayNowURLWebOfferUseExistingCard;\r\n }\r\n data = JSON.stringify({\r\n OFFERID: values.OFFERID,\r\n DOWNPAYMENT: values.DOWNPAYMENT,\r\n REMAINGBAL: values.REMAINGBAL,\r\n OFFERACCEPTEDDECLINED: \"A\",\r\n OFFERDECLINEDREASON: \"OK\",\r\n STARTDATE: dateSetlementOffer,\r\n FREQUENCY: \"ONCEOFF\",\r\n AMOUNT: Number(values.AMOUNT).toFixed(2),\r\n FINALDATE: dateSetlementOffer,\r\n FINALAMOUNT: Number(values.FINALAMOUNT).toFixed(2),\r\n APPLYDISCOUNT: \"Y\",\r\n DISCOUNTOPTIONNUMBER: values.DISCOUNTOPTIONNUMBER,\r\n SCREENSHOT: screen,\r\n PAYERREF: stateCustomer.cardpayerref,\r\n CARDREF: stateCustomer.cardref,\r\n });\r\n } else {\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n url = URLS.SetWebOfferTabaPay;\r\n } else {\r\n url = URLS.GetWebOffersCardAPIUrl;\r\n }\r\n data = JSON.stringify({\r\n OFFERID: values.OFFERID,\r\n DOWNPAYMENT: values.DOWNPAYMENT,\r\n REMAINGBAL: values.REMAINGBAL,\r\n OFFERACCEPTEDDECLINED: \"A\",\r\n OFFERDECLINEDREASON: \"OK\",\r\n STARTDATE: paymentDate,\r\n FREQUENCY: values.FREQUENCY,\r\n AMOUNT: Number(values.AMOUNT).toFixed(2),\r\n FINALDATE: end,\r\n FINALAMOUNT: Number(values.FINALAMOUNT).toFixed(2),\r\n APPLYDISCOUNT: \"Y\",\r\n DISCOUNTOPTIONNUMBER: values.DISCOUNTOPTIONNUMBER,\r\n SCREENSHOT: screen,\r\n PAYERREF: stateCustomer.cardpayerref,\r\n CARDREF: stateCustomer.cardref,\r\n });\r\n }\r\n } else {\r\n if (props.oneMonth) {\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n url = URLS.CreateSettlementOfferRequestTabaPay;\r\n } else {\r\n url = URLS.OnePaymentURLSettlementOfferNoCard;\r\n }\r\n data = JSON.stringify({\r\n OFFERID: values.OFFERID,\r\n DOWNPAYMENT: values.DOWNPAYMENT,\r\n REMAINGBAL: values.REMAINGBAL,\r\n OFFERACCEPTEDDECLINED: \"A\",\r\n OFFERDECLINEDREASON: \"OK\",\r\n STARTDATE: dateSetlementOffer,\r\n FREQUENCY: \"ONCEOFF\",\r\n AMOUNT: Number(values.AMOUNT).toFixed(2),\r\n FINALDATE: dateSetlementOffer,\r\n FINALAMOUNT: Number(values.FINALAMOUNT).toFixed(2),\r\n APPLYDISCOUNT: \"Y\",\r\n DISCOUNTOPTIONNUMBER: values.DISCOUNTOPTIONNUMBER,\r\n SCREENSHOT: screen,\r\n });\r\n } else {\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n url = URLS.CreateOfferRequestTabaPay;\r\n } else {\r\n url = URLS.GetWebOffersCardAPIUrl;\r\n }\r\n data = JSON.stringify({\r\n OFFERID: values.OFFERID,\r\n DOWNPAYMENT: values.DOWNPAYMENT,\r\n REMAINGBAL: values.REMAINGBAL,\r\n OFFERACCEPTEDDECLINED: \"A\",\r\n OFFERDECLINEDREASON: \"OK\",\r\n STARTDATE: paymentDate,\r\n FREQUENCY: values.FREQUENCY,\r\n AMOUNT: Number(values.AMOUNT).toFixed(2),\r\n FINALDATE: end,\r\n FINALAMOUNT: Number(values.FINALAMOUNT).toFixed(2),\r\n APPLYDISCOUNT: \"Y\",\r\n DISCOUNTOPTIONNUMBER: values.DISCOUNTOPTIONNUMBER,\r\n SCREENSHOT: screen,\r\n });\r\n }\r\n }\r\n\r\n fetch(url, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n body: data,\r\n })\r\n .then((res) => {\r\n dispatch(apiActions.loading(false));\r\n\r\n return res.json();\r\n })\r\n .then((data) => {\r\n if (\r\n (data.MESSAGE != undefined || data.message != undefined) &&\r\n data.AUTHCODE == null\r\n ) {\r\n ApiErrorHandler(\"Offer Plan\", data, context);\r\n } else {\r\n if (value == \"card\") {\r\n getMenu();\r\n history.push(\r\n \"/paynow-paymentstatus?AUTHCODE=\" +\r\n data.AUTHCODE +\r\n \"&MESSAGE=\" +\r\n data.MESSAGE +\r\n \"&RESULTCODE=\" +\r\n data.RESULTCODE +\r\n \"&AMOUNT=\" +\r\n data.AMOUNT +\r\n \"&PASSREF=\" +\r\n data.PASSREF\r\n );\r\n } else {\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n setquickPayAPIData(data);\r\n } else {\r\n RelalexInit(data);\r\n }\r\n if (isMobile) {\r\n setShowQuickPay(false);\r\n }\r\n setIfamevisible(true);\r\n }\r\n }\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Offer Plan\", error, context);\r\n }\r\n });\r\n };\r\n\r\n const handlePayDateChange = (e) => {\r\n if (e.target.value == \"\") {\r\n setPaymentDate(\"0.00\");\r\n } else {\r\n setPaymentDate(e.target.value);\r\n }\r\n };\r\n\r\n const setImageBase64 = () => {\r\n html2canvas(document.getElementById(\"screen\"), {\r\n width: 800,\r\n height: 600,\r\n }).then(function(canvas) {\r\n const newScreenshot = canvas.toDataURL(\"image/png\");\r\n setScreenstate({ newScreenshot });\r\n if (props.source == \"PayNow\") {\r\n submitFormPayNow(\r\n convenienceFee == 0\r\n ? amount\r\n : (Number(amount) + convenienceFee).toFixed(2),\r\n newScreenshot\r\n );\r\n } else if (props.source == \"CreatePaymentPlan\") {\r\n submitFormPaymentPlan(props.value, newScreenshot);\r\n } else if (props.source == \"ViewOffer\") {\r\n submitFormViewOffer(props.value, newScreenshot);\r\n }\r\n });\r\n };\r\n\r\n const handleChange = (event) => {\r\n setValue(event.target.value);\r\n };\r\n\r\n const handleChangeAmmount = (event) => {\r\n setAmmount(event.target.value);\r\n };\r\n\r\n const classes = useStyles();\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {props.source != \"PayNow\" ? (\r\n

Payment

\r\n ) : (\r\n

Pay Now

\r\n )}\r\n\r\n {props.message ? (\r\n \r\n {props.message}\r\n {props.showdate\r\n ? paymentDate\r\n ? \" \" + fnmoment(paymentDate).format(\"L\")\r\n : \"\"\r\n : null}\r\n
\r\n ) : (\r\n ReactHtmlParser(stateSelectedAccount.paynowtext)\r\n )}\r\n\r\n \r\n {props.enabled == \"true\" ? (\r\n \r\n ) : null}\r\n {convenienceFee == 0 ||\r\n props.enabled != \"true\" ? null : (\r\n \r\n \r\n Debit amount is{\" \"}\r\n \r\n \r\n {currency + \" \"}{\" \"}\r\n {amount != \"\"\r\n ? (Number(amount) + convenienceFee).toFixed(\r\n 2\r\n )\r\n : 0}\r\n \r\n
\r\n )}\r\n {props.showdate ? (\r\n {\r\n handlePayDateChange(e);\r\n },\r\n pattern: \"d{4}-d{2}-d{2}\",\r\n name: \"paydate\",\r\n value: paymentDate,\r\n }\r\n : {\r\n type: \"date\",\r\n required: \"required\",\r\n min: fnmoment().format(\"YYYY-MM-DD\"),\r\n onChange: (e) => {\r\n handlePayDateChange(e);\r\n },\r\n pattern: \"d{4}-d{2}-d{2}\",\r\n name: \"paydate\",\r\n value: paymentDate,\r\n }\r\n }\r\n className={classes.control}\r\n >\r\n ) : null}\r\n {usesconveniencefee ? (\r\n {\r\n ChangeNote(e);\r\n },\r\n }}\r\n className={classes.control}\r\n >\r\n ) : null}\r\n \r\n \r\n }\r\n label=\"I agree with the Terms and Conditions\"\r\n />\r\n \r\n \r\n \r\n {\" \"}\r\n {termsText}\r\n {termsText == \"\" ? \"\" : \"with the\"} Terms and\r\n Conditions {termsText == \"\" ? \"Apply\" : \"\"}\r\n \r\n \r\n\r\n {cardref ? (\r\n
\r\n \r\n \r\n Use existing {stateCustomer.cardastdigits}{\" \"}\r\n \r\n Use New Card{\" \"}\r\n \r\n \r\n {/* \r\n Use existing {stateCustomer.cardastdigits}\r\n
\r\n \r\n Use New Card{\" \"} */}\r\n \r\n \r\n }\r\n label={\r\n \"Use existing \" +\r\n stateCustomer.cardastdigits\r\n }\r\n />\r\n \r\n }\r\n label=\"Use New Card\"\r\n />\r\n \r\n
\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n\r\n
\r\n \r\n Proceed to pay\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n\r\n {props.source === \"PayNow\"\r\n ? termsQuickPay\r\n : props.source === \"CreatePaymentPlan\"\r\n ? termsPlan\r\n : props.source === \"ViewOffer\"\r\n ? termsDiscount\r\n : termsQuickPay}\r\n
\r\n
\r\n \r\n \r\n

\r\n\r\n {props.source === \"PayNow\"\r\n ? termsQuickPay\r\n : props.source === \"CreatePaymentPlan\"\r\n ? termsPlan\r\n : props.source === \"ViewOffer\"\r\n ? termsDiscount\r\n : null}\r\n\r\n \r\n \r\n \r\n }\r\n label=\"I agree with the Terms and Conditions\"\r\n />\r\n \r\n \r\n
\r\n
\r\n \r\n {paymentProvider.toUpperCase() == \"TABAPAY\" ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n \r\n REALEX NOW\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import { Collapse, Divider, Hidden } from \"@material-ui/core\";\r\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\r\nimport Link from \"@material-ui/core/Link\";\r\nimport Radio from \"@material-ui/core/Radio\";\r\nimport RadioGroup from \"@material-ui/core/RadioGroup\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport TextField from \"components/CustomInput/CustomInput.js\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport fnmoment from \"moment/min/moment-with-locales\";\r\nimport React, { useContext } from \"react\";\r\nimport Moment from \"react-moment\";\r\nimport NumberFormat from \"react-number-format\";\r\nimport Context from \"../../../utils/context\";\r\nimport * as URLS from \"../../../utils/XRSAPIs\";\r\nimport Paynow from \"../../SectionsPage/Sections/PayNowSection.js\";\r\nimport history from \"./../../../utils/history\";\r\nimport BlueHeader from \"./BlueHeaderSection.js\";\r\nimport Slider from \"react-slick\";\r\nimport * as ACTIONS from \"../../../store/actions/actions\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\n\r\nimport { useSelector, useDispatch } from \"react-redux\";\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n width: \"100%\",\r\n margin: 0,\r\n padding: 0,\r\n },\r\n paragraph: {\r\n marginTop: \"27px !important\",\r\n },\r\n button: {\r\n marginRight: theme.spacing(1),\r\n padding: 13,\r\n },\r\n hide: {\r\n display: \"none\",\r\n },\r\n instructions: {\r\n marginTop: theme.spacing(1),\r\n marginBottom: theme.spacing(1),\r\n },\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 30,\r\n },\r\n whiteInfo: {\r\n color: \"white\",\r\n fontWeight: 400,\r\n paddingLeft: 0,\r\n paddingTop: 10,\r\n },\r\n whiteInfoMiddle: {\r\n color: \"white\",\r\n fontWeight: 400,\r\n paddingLeft: 0,\r\n\r\n textAlign: \"center\",\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n },\r\n blueText: {\r\n color: \"#0065a4\",\r\n fontWeight: 300,\r\n },\r\n redText: {\r\n color: \"red\",\r\n fontWeight: 300,\r\n },\r\n blackText: {\r\n color: \"black\",\r\n fontWeight: 500,\r\n },\r\n Title: {\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n BoxFull: {\r\n width: \"100%\",\r\n paddingLeft: 0,\r\n paddingRight: 0,\r\n },\r\n Middle: {\r\n justifyContent: \"center\",\r\n width: \"100%\",\r\n alignItems: \"center\",\r\n textAlign: \"center\",\r\n border: 0,\r\n },\r\n blueTextMiddle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n justifyContent: \"center\",\r\n width: \"100%\",\r\n alignItems: \"center\",\r\n textAlign: \"center\",\r\n border: 0,\r\n },\r\n\r\n rightValues: {\r\n textAlign: \"right\",\r\n fontWeight: 300,\r\n },\r\n rightRed: {\r\n textAlign: \"right\",\r\n color: \"red\",\r\n fontWeight: 300,\r\n },\r\n rightBlack: {\r\n textAlign: \"right\",\r\n color: \"black\",\r\n\r\n fontWeight: 500,\r\n },\r\n}));\r\n\r\nfunction getSteps() {\r\n return [\"Instructions\", \"Payments\", \"Summary\"];\r\n}\r\n\r\nconst SliderSettings = {\r\n infinite: false,\r\n touchMove: false,\r\n arrows: false,\r\n centerMode: false,\r\n variableWidth: false,\r\n dots: false,\r\n initialSlide: 0,\r\n slidesToShow: 3,\r\n responsive: [\r\n {\r\n breakpoint: 1024,\r\n settings: {\r\n slidesToShow: 3,\r\n slidesToScroll: 1,\r\n dots: false,\r\n },\r\n },\r\n {\r\n breakpoint: 600,\r\n settings: {\r\n slidesToShow: 2,\r\n slidesToScroll: 1,\r\n initialSlide: 1,\r\n },\r\n },\r\n {\r\n breakpoint: 480,\r\n settings: {\r\n slidesToShow: 1,\r\n slidesToScroll: 1,\r\n },\r\n },\r\n ],\r\n};\r\n\r\nexport default function WizzardSection() {\r\n const context = useContext(Context);\r\n const classes = useStyles();\r\n const dispatch = useDispatch();\r\n\r\n const createPlanText = useSelector(\r\n (state) => state.HtmlReducer.createPlanText\r\n );\r\n const createPlantoc = useSelector((state) => state.HtmlReducer.createPlantoc);\r\n\r\n const [site, setSite] = React.useState();\r\n const [topNav, setTopNav] = React.useState(null);\r\n const [duration, setDuration] = React.useState(\"\");\r\n const [downpayment, setDownpayment] = React.useState();\r\n const [paymentDate, setPaymentDate] = React.useState(0);\r\n const [paymentAmount, setPaymentAmount] = React.useState(\"0\");\r\n\r\n const [freqValues, setfreqValues] = React.useState({\r\n weekly: 0,\r\n biweekly: 0,\r\n fourweekly: 0,\r\n montly: 0,\r\n });\r\n\r\n const [endDate, setEndDate] = React.useState(\"\");\r\n const [frequency, setFrequency] = React.useState(\"week\");\r\n const stateAccounts = useSelector((state) => state.AccountsReducer.accounts);\r\n const stateCustomer = useSelector((state) => state.CustomerReducer.customer);\r\n const stateOffer = useSelector((state) => state.OfferReducer.offer);\r\n const stateSite = useSelector((state) => state.SiteReducer.site);\r\n const planInterestapi = useSelector(\r\n (state) => state.AccountsReducer.planInterest\r\n );\r\n const currency = useSelector((state) => state.GetSiteDetailsReducer.currency);\r\n const use4week = useSelector((state) => state.GetSiteDetailsReducer.use4week);\r\n\r\n const [planInterest, setplanInterest] = React.useState(0);\r\n const [balanceToPay, setBalanceToPay] = React.useState(0);\r\n\r\n const [latestStartDate, setLatestStartDate] = React.useState(\"\");\r\n\r\n const [paymentVisible, setPaymentVisible] = React.useState(false);\r\n\r\n const [textMessage, setTextMessage] = React.useState(\"\");\r\n const [payNowSectionMessage, setPayNowSectionMessage] = React.useState(\"\");\r\n const convenienceFee = useSelector(\r\n (state) => state.GetSiteDetailsReducer.convenienceFee\r\n );\r\n const [skipped, setSkipped] = React.useState(new Set());\r\n const steps = getSteps();\r\n\r\n const [step, setStep] = React.useState(0);\r\n const stateSelectedAccount = useSelector(\r\n (state) => state.SelectedAccountsReducer.account\r\n );\r\n const [paymentType, setpaymentType] = React.useState(null);\r\n\r\n const handleChange = (newValue) => {\r\n setStep(newValue);\r\n };\r\n\r\n React.useEffect(() => {\r\n fnmoment.locale(window.navigator.language.toLowerCase());\r\n setplanInterest(planInterestapi);\r\n setpaymentType(stateSelectedAccount.plantype);\r\n\r\n setSite(stateSite);\r\n }, []);\r\n const token = sessionStorage.getItem(\"access_token\");\r\n React.useEffect(() => {\r\n var account;\r\n var newDate = new Date();\r\n account = JSON.stringify({\r\n ITEMCODE: stateSelectedAccount.itemcode,\r\n RECNO: stateSelectedAccount.recno,\r\n STARTDATE: newDate,\r\n ENDDATE: newDate,\r\n });\r\n\r\n fetch(URLS.GetReturnAPIUrl, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n body: account,\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Return API\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data) => {\r\n dispatch(ACTIONS.set_Offer(data));\r\n\r\n // setDownpayment(stateSelectedAccount.plannowmin);\r\n\r\n var ammount =\r\n (Number.parseFloat(stateSelectedAccount.balance) -\r\n Number.parseFloat(data.WOOFFER1MINPAY)) /\r\n (duration === 0 ? 1 : duration);\r\n setPaymentAmount(Math.abs(ammount.toFixed(2).toString()));\r\n if (stateSelectedAccount.plantype == \"MONTHLY\") {\r\n setFrequency(\"Month\");\r\n } else {\r\n setFrequency(\"Week\");\r\n }\r\n }, [])\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Return API\", error, context);\r\n }\r\n });\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n setPaymentDate(fnmoment(fnmoment()).format(\"YYYY-MM-DD\"));\r\n var dur = duration == \"\" ? 1 : duration;\r\n\r\n var end = fnmoment(fnmoment()).format(\"YYYY-MM-DD\");\r\n if (frequency == \"Week\") {\r\n end = fnmoment(end)\r\n .add(7 * dur * (52 / 12) - 7, \"Days\")\r\n .format(\"YYYY-MM-DD\");\r\n }\r\n //Bi weekly\r\n else if (frequency == \"FORT\") {\r\n end = fnmoment(end)\r\n .add(14 * dur * (26 / 12) - 14, \"Days\")\r\n .format(\"YYYY-MM-DD\");\r\n } else {\r\n end = fnmoment(end)\r\n .add(dur - 1, \"M\")\r\n .format(\"YYYY-MM-DD\");\r\n }\r\n setEndDate(end);\r\n }, []);\r\n\r\n const isStepOptional = (step) => {\r\n return step === 9;\r\n };\r\n\r\n const submitForm = (screen) => {\r\n const xhr = new XMLHttpRequest();\r\n var url = URLS.GetWebOffersAPIUrl;\r\n var end = paymentDate;\r\n if (frequency == \"Week\") {\r\n end = fnmoment(end).add(7 * (duration - 1), \"Days\");\r\n } else {\r\n end = fnmoment(end).add((duration - 1) * 1, \"M\");\r\n }\r\n\r\n var cardref = stateCustomer.cardref;\r\n\r\n var data;\r\n if (cardref) {\r\n url = URLS.GetWebOffersCardAPIUrl;\r\n data = JSON.stringify({\r\n OFFERID: stateOffer.WOOFFERID,\r\n DOWNPAYMENT: downpayment,\r\n REMAINGBAL: 1,\r\n STARTDATE: paymentDate,\r\n FREQUENCY: frequency,\r\n AMOUNT: (\r\n (stateAccounts[0].balance - downpayment) /\r\n (duration == 0 ? 1 : duration)\r\n )\r\n .toFixed(2)\r\n .toString(),\r\n FINALDATE: end,\r\n FINALAMOUNT: (\r\n (stateAccounts[0].balance - downpayment) /\r\n (duration == 0 ? 1 : duration)\r\n )\r\n .toFixed(2)\r\n .toString(),\r\n APPLYDISCOUNT: \"N\",\r\n DISCOUNTOPTIONNUMBER: \"0\",\r\n SCREENSHOT: screen,\r\n PAYERREF: stateCustomer.cardpayerref,\r\n CARDREF: cardref,\r\n });\r\n } else {\r\n data = JSON.stringify({\r\n OFFERID: stateOffer.WOOFFERID,\r\n DOWNPAYMENT: downpayment,\r\n REMAINGBAL: 1,\r\n STARTDATE: paymentDate,\r\n FREQUENCY: frequency,\r\n AMOUNT: (\r\n (stateAccounts[0].balance - downpayment) /\r\n (duration == 0 ? 1 : duration)\r\n )\r\n .toFixed(2)\r\n .toString(),\r\n FINALDATE: end,\r\n FINALAMOUNT: (\r\n (stateAccounts[0].balance - downpayment) /\r\n (duration == 0 ? 1 : duration)\r\n )\r\n .toFixed(2)\r\n .toString(),\r\n APPLYDISCOUNT: \"N\",\r\n DISCOUNTOPTIONNUMBER: \"0\",\r\n SCREENSHOT: screen,\r\n });\r\n }\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n xhr.setRequestHeader(\"Authorization\", \"Bearer \" + token);\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n switch (xhr.status) {\r\n case 200:\r\n if (stateCustomer.cardref) {\r\n var data = JSON.parse(xhr.responseText);\r\n history.push(\r\n \"/paynow-paymentstatus?AUTHCODE=\" +\r\n data.AUTHCODE +\r\n \"&MESSAGE=\" +\r\n data.MESSAGE +\r\n \"&RESULTCODE=\" +\r\n data.RESULTCODE +\r\n \"&AMOUNT=\" +\r\n data.AMOUNT +\r\n \"&PASSREF=\" +\r\n data.PASSREF\r\n );\r\n } else {\r\n var json = JSON.parse(xhr.responseText);\r\n RelalexInit(json);\r\n }\r\n\r\n //setIfamevisible(true);\r\n break;\r\n case 401:\r\n context.authObj.logout();\r\n case 404:\r\n alert(\"Opps Unexpected... \" + xhr.responseText);\r\n break;\r\n case 400:\r\n var data = JSON.parse(xhr.responseText);\r\n history.push(\r\n \"/paynow-paymentstatus?AUTHCODE=\" +\r\n data.AUTHCODE +\r\n \"&MESSAGE=\" +\r\n data.MESSAGE +\r\n \"&RESULTCODE=\" +\r\n data.RESULTCODE +\r\n \"&AMOUNT=\" +\r\n data.AMOUNT +\r\n \"&PASSREF=\" +\r\n data.PASSREF\r\n );\r\n break;\r\n case 500:\r\n var data = JSON.parse(xhr.responseText);\r\n history.push(\r\n \"/paynow-paymentstatus?AUTHCODE=\" +\r\n data.AUTHCODE +\r\n \"&MESSAGE=\" +\r\n data.MESSAGE +\r\n \"&RESULTCODE=\" +\r\n data.RESULTCODE +\r\n \"&AMOUNT=\" +\r\n data.AMOUNT +\r\n \"&PASSREF=\" +\r\n data.PASSREF\r\n );\r\n break;\r\n default:\r\n alert(\"Opps Unexpected... \" + xhr.responseText);\r\n }\r\n }\r\n };\r\n try {\r\n xhr.send(data);\r\n } catch (err) {\r\n alert(err.description);\r\n }\r\n };\r\n\r\n const RelalexInit = (values) => {\r\n window.RealexHpp.setHppUrl(URLS.GetRealexPayURLAPI);\r\n window.RealexHpp.embedded.init(\r\n \"payButtonId\",\r\n \"paymentIframeID\",\r\n URLS.WebOfferResponseNoCard,\r\n values\r\n );\r\n };\r\n\r\n const isStepSkipped = (step) => {\r\n return skipped.has(step);\r\n };\r\n\r\n const PMT = (ir, np, pv, fv, type) => {\r\n /*\r\n * ir - interest rate per month\r\n * np - number of periods (months)\r\n * pv - present value\r\n * fv - future value\r\n * type - when the payments are due:\r\n * 0: end of the period, e.g. end of month (default)\r\n * 1: beginning of period\r\n */\r\n var pmt, pvif;\r\n\r\n fv || (fv = 0);\r\n type || (type = 0);\r\n\r\n if (ir === 0) return -(pv + fv) / np;\r\n\r\n pvif = Math.pow(1 + ir, np);\r\n pmt = (-ir * (pv * pvif + fv)) / (pvif - 1);\r\n\r\n if (type === 1) pmt /= 1 + ir;\r\n pmt = pmt * -1;\r\n return pmt.toFixed(2);\r\n };\r\n const handleCalculation = (\r\n endDatePar,\r\n durationPar,\r\n downpaymentPar,\r\n frequencyPar\r\n ) => {\r\n debugger;\r\n let rate;\r\n var end = endDatePar;\r\n let principal = stateSelectedAccount.balance - downpaymentPar;\r\n let dur;\r\n let rates = {\r\n weekly: stateSelectedAccount.interestrate / 52 / 100,\r\n biweekly: stateSelectedAccount.interestrate / 26 / 100,\r\n montly: stateSelectedAccount.interestrate / 12 / 100,\r\n weekly4: stateSelectedAccount.interestrate / 13 / 100,\r\n };\r\n let freqValues = {\r\n weekly: Math.abs(\r\n (\r\n Number.parseFloat(\r\n (\r\n PMT(rates.weekly, Math.floor(durationPar * 4.34), principal) *\r\n Math.floor(durationPar * 4.34)\r\n ).toFixed(2)\r\n ) / Math.floor(durationPar * 4.34)\r\n )\r\n .toFixed(2)\r\n .toString()\r\n ),\r\n biweekly: Math.abs(\r\n (\r\n Number.parseFloat(\r\n (\r\n PMT(rates.biweekly, Math.floor(durationPar * 2.17), principal) *\r\n Math.floor(durationPar * 2.17)\r\n ).toFixed(2)\r\n ) / Math.floor(durationPar * 2.17)\r\n )\r\n .toFixed(2)\r\n .toString()\r\n ),\r\n montly: Math.abs(\r\n (\r\n Number.parseFloat(\r\n PMT(rates.montly, durationPar, principal) * durationPar\r\n ) / durationPar\r\n ).toFixed(2)\r\n ),\r\n fourweekly: Math.abs(\r\n (\r\n Number.parseFloat(\r\n (\r\n PMT(rates.weekly4, Math.floor(durationPar * 1.085), principal) *\r\n Math.floor(durationPar * 1.085)\r\n ).toFixed(2)\r\n ) / Math.floor(durationPar * 1.085)\r\n )\r\n .toFixed(2)\r\n .toString()\r\n ),\r\n };\r\n if (paymentType == \"MONTHLY\" || paymentType == \"MINPAYMENT\") {\r\n if (frequencyPar == \"Week\") {\r\n let montdur = (((principal / Number(durationPar)) * 12) / 52).toFixed(\r\n 0\r\n );\r\n end = fnmoment(end)\r\n .add(montdur - 1, \"M\")\r\n .format(\"YYYY-MM-DD\");\r\n } else if (frequencyPar == \"FORT\") {\r\n let montdur = (((principal / Number(durationPar)) * 12) / 26).toFixed(\r\n 0\r\n );\r\n end = fnmoment(end)\r\n .add(montdur - 1, \"M\")\r\n .format(\"YYYY-MM-DD\");\r\n } else if (frequencyPar == \"4WEEKLY\") {\r\n let montdur = (((principal / Number(durationPar)) * 12) / 13).toFixed(\r\n 0\r\n );\r\n end = fnmoment(end)\r\n .add(montdur - 1, \"M\")\r\n .format(\"YYYY-MM-DD\");\r\n } else {\r\n let montdur = (principal / Number(durationPar)).toFixed(0);\r\n end = fnmoment(end)\r\n .add(montdur - 1, \"M\")\r\n .format(\"YYYY-MM-DD\");\r\n }\r\n } else {\r\n if (frequencyPar == \"Week\") {\r\n dur = Math.floor(durationPar * 4.34);\r\n rate = rates.weekly;\r\n end = fnmoment(end)\r\n .add(7 * dur - 7, \"Days\")\r\n .format(\"YYYY-MM-DD\");\r\n } else if (frequencyPar == \"FORT\") {\r\n dur = Math.floor(durationPar * 2.17);\r\n rate = rates.biweekly;\r\n end = fnmoment(end)\r\n .add(14 * dur * (26 / 12) - 14, \"Days\")\r\n .format(\"YYYY-MM-DD\");\r\n } else if (frequencyPar == \"4WEEKLY\") {\r\n dur = Math.floor(durationPar * 1.085);\r\n rate = rates.biweekly;\r\n end = fnmoment(end)\r\n .add(28 * dur * (13 / 12) - 28, \"Days\")\r\n .format(\"YYYY-MM-DD\");\r\n } else {\r\n dur = durationPar;\r\n rate = rates.montly;\r\n end = fnmoment(end)\r\n .add(dur - 1, \"M\")\r\n .format(\"YYYY-MM-DD\");\r\n }\r\n }\r\n let ammount;\r\n let setbalanceToPay;\r\n if (stateSelectedAccount.interestrate > 0 && paymentType == \"STANDARD\") {\r\n let payment = PMT(rate, dur, principal);\r\n setbalanceToPay = (payment * dur).toFixed(2);\r\n setBalanceToPay(setbalanceToPay);\r\n setplanInterest(setbalanceToPay - principal);\r\n ammount =\r\n Number.parseFloat(setbalanceToPay) / (durationPar == 0 ? 1 : dur);\r\n } else {\r\n setbalanceToPay = principal;\r\n setBalanceToPay(principal);\r\n ammount = Number.parseFloat(principal) / (durationPar == 0 ? 1 : dur);\r\n }\r\n\r\n ammount = paymentType !== \"STANDARD\" ? durationPar : ammount;\r\n setPaymentAmount(\r\n Math.abs(\r\n ammount !== \"\"\r\n ? Number(ammount)\r\n .toFixed(2)\r\n .toString()\r\n : ammount\r\n )\r\n );\r\n setfreqValues(freqValues);\r\n setEndDate(end);\r\n };\r\n\r\n const handleDurationChange = (e) => {\r\n setDuration(e.target.value);\r\n handleCalculation(paymentDate, e.target.value, downpayment, frequency);\r\n };\r\n\r\n const handleFreqChange = (e) => {\r\n setFrequency(e.target.value);\r\n\r\n handleCalculation(paymentDate, duration, downpayment, e.target.value);\r\n };\r\n const handleDownPaymentChange = (e) => {\r\n if (\r\n e.target.value > stateSelectedAccount.balance &&\r\n paymentType == \"STANDARD\" &&\r\n (stateSelectedAccount.clientname != \"RATES\" &&\r\n stateSelectedAccount.clientname != \"RENTS\")\r\n ) {\r\n e.target.value = stateSelectedAccount.balance;\r\n }\r\n\r\n var value = e.target.value;\r\n setDownpayment(value);\r\n var dur = duration == \"\" ? 1 : duration;\r\n handleCalculation(paymentDate, dur, value, frequency);\r\n };\r\n\r\n const handlePayDateChange = (e) => {\r\n setPaymentDate(e.target.value);\r\n\r\n handleCalculation(e.target.value, duration, downpayment, frequency);\r\n };\r\n\r\n const submitFormEvent = (event) => {\r\n event.preventDefault();\r\n };\r\n\r\n const handleNext = () => {\r\n let newSkipped = skipped;\r\n if (isStepSkipped(step)) {\r\n newSkipped = new Set(newSkipped.values());\r\n newSkipped.delete(step);\r\n }\r\n if (step == 1) {\r\n handleText();\r\n if (document.forms[0].checkValidity()) {\r\n setStep((prevActiveStep) => prevActiveStep + 1);\r\n setSkipped(newSkipped);\r\n topNav.slickNext();\r\n }\r\n } else {\r\n setStep((prevActiveStep) => prevActiveStep + 1);\r\n setSkipped(newSkipped);\r\n topNav.slickNext();\r\n }\r\n };\r\n\r\n const values = {\r\n downpayment:\r\n convenienceFee != 0 ? Number(downpayment) + convenienceFee : downpayment,\r\n frequency: frequency,\r\n duration: duration,\r\n startdate: paymentDate,\r\n balanceToPay: balanceToPay,\r\n amount:\r\n convenienceFee != 0 ? paymentAmount + convenienceFee : paymentAmount,\r\n endDate: endDate,\r\n };\r\n\r\n const formatPaymentAmount = (amount) => {\r\n return Number.parseFloat(amount).toFixed(\"2\");\r\n };\r\n\r\n const formatPaymentFrequency = (frequency) => {\r\n switch (frequency) {\r\n case \"Month\":\r\n return \"monthly\";\r\n case \"FORT\":\r\n return \"bi-weekly\";\r\n case \"4WEEKLY\":\r\n return \"four-weekly\";\r\n default:\r\n return \"weekly\";\r\n }\r\n };\r\n\r\n const handleText = () => {\r\n const paymentAmountFormatted = formatPaymentAmount(\r\n paymentType !== \"STANDARD\"\r\n ? convenienceFee != 0\r\n ? Number(duration) + convenienceFee\r\n : duration\r\n : convenienceFee != 0\r\n ? paymentAmount + convenienceFee\r\n : paymentAmount\r\n );\r\n const paymentFrequencyFormatted = `recurring ${formatPaymentFrequency(\r\n frequency\r\n )} payments of \r\n ${currency + paymentAmountFormatted}`;\r\n\r\n const payNowSectionMessage = `I agree to pay ${\r\n site.companyname\r\n } ${currency}${formatPaymentAmount(\r\n convenienceFee != 0\r\n ? Number.parseFloat(Number(downpayment) + convenienceFee)\r\n : Number.parseFloat(downpayment)\r\n )} from my card now, followed by ${paymentFrequencyFormatted} starting on ${fnmoment(\r\n paymentDate\r\n ).format(\"L\")}`;\r\n\r\n const textMessage = (\r\n
\r\n
\r\n {`I agree to pay ${site.companyname} ${currency}${formatPaymentAmount(\r\n convenienceFee != 0\r\n ? Number.parseFloat(Number(downpayment) + convenienceFee)\r\n : Number.parseFloat(downpayment)\r\n )} from my card now, followed by `}\r\n
\r\n\r\n \r\n\r\n
\r\n {` starting on ${fnmoment(paymentDate).format(\"L\")}`}\r\n
\r\n
\r\n );\r\n\r\n setPayNowSectionMessage(payNowSectionMessage);\r\n setTextMessage(textMessage);\r\n };\r\n\r\n const handleFinish = () => {\r\n setPaymentVisible(true);\r\n };\r\n\r\n const handleBack = () => {\r\n let newSkipped = skipped;\r\n if (isStepSkipped(step)) {\r\n newSkipped = new Set(newSkipped.values());\r\n newSkipped.delete(step);\r\n }\r\n setStep((prevActiveStep) => prevActiveStep - 1);\r\n setSkipped(newSkipped);\r\n topNav.slickPrev();\r\n };\r\n\r\n const handleSkip = () => {\r\n if (!isStepOptional(step)) {\r\n // You probably want to guard against something like this,\r\n // it should never occur unless someone's actively trying to break something.\r\n throw new Error(\"You can't skip a step that isn't optional.\");\r\n }\r\n\r\n setStep((prevActiveStep) => prevActiveStep + 1);\r\n setSkipped((prevSkipped) => {\r\n const newSkipped = new Set(prevSkipped.values());\r\n newSkipped.add(step);\r\n return newSkipped;\r\n });\r\n };\r\n\r\n const handleReset = () => {\r\n setStep(0);\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n {\r\n setTopNav(slider);\r\n }}\r\n {...SliderSettings}\r\n >\r\n
\r\n
\r\n handleChange(0)}>Instructions\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n handleChange(1)}>Payments\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Summary\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
{createPlanText}
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n

Initial Payment

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

\r\n I would like my initial payment to be\r\n

\r\n
\r\n
\r\n \r\n {\r\n handleDownPaymentChange(e);\r\n },\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n />\r\n \r\n \r\n \r\n

\r\n Minimum Amount{\" \"}\r\n \r\n

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

\r\n {paymentType == \"STANDARD\"\r\n ? \"Duration\"\r\n : \"Recurring amount\"}\r\n

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

\r\n {paymentType == \"STANDARD\"\r\n ? \"I would like to pay balance over a period of \" +\r\n duration +\r\n (Number(duration) === 1\r\n ? \" month\"\r\n : \" months\")\r\n : \"I would like my recurring amount to be\"}\r\n

\r\n
\r\n
\r\n \r\n {\r\n handleDurationChange(e);\r\n },\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n />\r\n \r\n \r\n \r\n

\r\n {paymentType == \"STANDARD\"\r\n ? `Maximum Term ${stateSelectedAccount.planmaxduration} months`\r\n : `Minimum Payment Amount ${currency}${\r\n paymentType == \"MONTHLY\"\r\n ? stateSelectedAccount.planminpayment\r\n : paymentType == \"STANDARD\"\r\n ? 1\r\n : frequency == \"Week\"\r\n ? stateSelectedAccount.planminpayment.toFixed(\r\n 2\r\n )\r\n : frequency == \"Month\"\r\n ? (\r\n (stateSelectedAccount.planminpayment *\r\n 52) /\r\n 12\r\n ).toFixed(2)\r\n : frequency == \"4WEEKLY\"\r\n ? (\r\n stateSelectedAccount.planminpayment *\r\n 4\r\n ).toFixed(2)\r\n : (\r\n stateSelectedAccount.planminpayment *\r\n 2\r\n ).toFixed(2)\r\n }`}\r\n

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

Frequency

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

\r\n I would like my recurring payments to occur every\r\n

\r\n
\r\n \r\n {\r\n handleFreqChange(e);\r\n }}\r\n >\r\n \r\n {paymentType == \"MONTHLY\" ? null : (\r\n <>\r\n \r\n \r\n }\r\n label={\r\n paymentType == \"MONTHLY\" ||\r\n paymentType == \"MINPAYMENT\"\r\n ? \"Weekly Payments (Minimum of \" +\r\n currency +\r\n stateSelectedAccount.planminpayment.toFixed(\r\n 2\r\n ) +\r\n \")\"\r\n : `Weekly Payments ${\r\n isNaN(freqValues.weekly) ||\r\n freqValues.weekly === 0\r\n ? \"\"\r\n : \"of \" +\r\n currency +\r\n freqValues.weekly.toFixed(2)\r\n } ${\r\n convenienceFee != 0\r\n ? `+ ${currency +\r\n convenienceFee} fee`\r\n : \"\"\r\n } `\r\n }\r\n />\r\n \r\n \r\n \r\n }\r\n label={\r\n paymentType == \"MONTHLY\" ||\r\n paymentType == \"MINPAYMENT\"\r\n ? \"Bi-Weekly Payments (Minimum of \" +\r\n currency +\r\n (\r\n stateSelectedAccount.planminpayment *\r\n 2\r\n ).toFixed(2) +\r\n \")\"\r\n : `Bi-Weekly Payments ${\r\n isNaN(freqValues.biweekly) ||\r\n freqValues.biweekly === 0\r\n ? \"\"\r\n : \"of \" +\r\n currency +\r\n freqValues.biweekly.toFixed(2)\r\n } ${\r\n convenienceFee != 0\r\n ? `+ ${currency +\r\n convenienceFee} fee`\r\n : \"\"\r\n }`\r\n }\r\n />\r\n \r\n {use4week ? (\r\n \r\n \r\n }\r\n label={\r\n paymentType == \"MONTHLY\" ||\r\n paymentType == \"MINPAYMENT\"\r\n ? \"Four-Weekly Payments (Minimum of \" +\r\n currency +\r\n (\r\n stateSelectedAccount.planminpayment *\r\n 4\r\n ).toFixed(2) +\r\n \")\"\r\n : `Four-Weekly Payments ${\r\n isNaN(freqValues.biweekly) ||\r\n freqValues.biweekly === 0\r\n ? \"\"\r\n : \"of \" +\r\n currency +\r\n freqValues.biweekly.toFixed(\r\n 2\r\n )\r\n } ${\r\n convenienceFee != 0\r\n ? `+ ${currency +\r\n convenienceFee} fee`\r\n : \"\"\r\n }`\r\n }\r\n />\r\n \r\n ) : null}\r\n \r\n )}\r\n \r\n \r\n }\r\n label={\r\n paymentType == \"MONTHLY\" ||\r\n paymentType == \"MINPAYMENT\"\r\n ? \"Monthly Payments (Minimum of \" +\r\n currency +\r\n (\r\n (stateSelectedAccount.planminpayment *\r\n 52) /\r\n 12\r\n ).toFixed(2) +\r\n \")\"\r\n : `Monthly Payments ${\r\n isNaN(freqValues.montly) ||\r\n freqValues.montly === 0\r\n ? \"\"\r\n : \"of \" +\r\n currency +\r\n freqValues.montly.toFixed(2)\r\n } ${\r\n convenienceFee != 0\r\n ? `+ ${currency +\r\n convenienceFee} fee`\r\n : \"\"\r\n }`\r\n }\r\n />{\" \"}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n

Payment Date

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

Payment Date

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

\r\n I would like my recurring payments to start on\r\n

\r\n
\r\n
\r\n \r\n {\r\n handlePayDateChange(e);\r\n },\r\n format: \"DD-MM-YYYY\",\r\n value: paymentDate,\r\n name: \"paydate\",\r\n min: fnmoment().format(\"YYYY-MM-DD\"),\r\n max: fnmoment()\r\n .add(stateSelectedAccount.planmaxstart, \"days\")\r\n .format(\"YYYY-MM-DD\"),\r\n }}\r\n className={classes.control}\r\n >\r\n \r\n \r\n \r\n

\r\n Latest Start Date:{\" \"}\r\n {fnmoment()\r\n .add(stateSelectedAccount.planmaxstart, \"days\")\r\n .format(\"L\")}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n Summary\r\n \r\n \r\n \r\n

\r\n {paymentType == \"STANDARD\"\r\n ? \"Total Balance\"\r\n : \"Current Balance\"}\r\n

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

\r\n {\" \"}\r\n \r\n

\r\n
\r\n {convenienceFee == 0 ? (\r\n <>\r\n {\" \"}\r\n \r\n

\r\n Initial Payment\r\n

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

\r\n {\" \"}\r\n \r\n

\r\n
\r\n \r\n ) : null}\r\n\r\n <>\r\n {\" \"}\r\n \r\n

\r\n {stateSelectedAccount.interestrate > 0\r\n ? \"Balance after Initial Payment\"\r\n : \"Balance to Pay\"}\r\n

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

\r\n {\" \"}\r\n \r\n

\r\n
\r\n \r\n\r\n {stateSelectedAccount.interestrate > 0 &&\r\n paymentType != \"MONTHLY\" ? (\r\n \r\n

\r\n Forecast Interest\r\n

\r\n
\r\n ) : null}\r\n {stateSelectedAccount.interestrate > 0 &&\r\n paymentType != \"MONTHLY\" ? (\r\n \r\n

\r\n {\" \"}\r\n \r\n

\r\n
\r\n ) : null}\r\n {paymentType == \"STANDARD\" &&\r\n stateSelectedAccount.interestrate != 0 ? (\r\n <>\r\n \r\n

\r\n Schedule Balance\r\n

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

\r\n {\" \"}\r\n \r\n

\r\n
\r\n \r\n ) : null}\r\n
\r\n
\r\n \r\n \r\n Schedule Details\r\n \r\n \r\n {paymentType == \"STANDARD\" ? (\r\n <>\r\n {\" \"}\r\n \r\n

Term

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

\r\n {`${duration} months`}\r\n

\r\n
\r\n \r\n ) : null}\r\n\r\n \r\n

Start Date

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

\r\n {fnmoment(paymentDate).format(\"L\")}\r\n

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

\r\n Payment Frequency\r\n

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

\r\n {frequency == \"Week\"\r\n ? \"Weekly\"\r\n : frequency == \"FORT\"\r\n ? \"Bi-Weekly\"\r\n : frequency == \"4WEEKLY\"\r\n ? \"Four-Weekly\"\r\n : \"Monthly\"}\r\n

\r\n
\r\n {convenienceFee == 0 ? (\r\n <>\r\n {\" \"}\r\n \r\n

\r\n Payment Amount\r\n

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

\r\n \r\n

\r\n
\r\n \r\n ) : null}\r\n\r\n {paymentType == \"STANDARD\" ? (\r\n <>\r\n {\" \"}\r\n \r\n

End Date

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

\r\n {fnmoment(endDate).format(\"L\")}\r\n

\r\n
\r\n \r\n ) : null}\r\n
\r\n
\r\n {convenienceFee != 0 ? (\r\n <>\r\n {\" \"}\r\n \r\n
\r\n\r\n \r\n \r\n

\r\n Initial Payment\r\n

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

\r\n {\" \"}\r\n \r\n

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

Fee

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

\r\n {\" \"}\r\n \r\n

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

Initial Debit

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

\r\n {\" \"}\r\n \r\n

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

\r\n Payment Amount\r\n

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

\r\n \r\n

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

Fee

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

\r\n {\" \"}\r\n \r\n

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

\r\n Recurring Debit\r\n

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

\r\n {\" \"}\r\n \r\n

\r\n
\r\n
\r\n
\r\n \r\n ) : null}\r\n
\r\n\r\n \r\n \r\n

{textMessage}

\r\n
\r\n
\r\n \r\n \r\n
\r\n {createPlantoc}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n {step === steps.length ? (\r\n
\r\n \r\n
\r\n ) : (\r\n
\r\n
\r\n \r\n Back\r\n \r\n {isStepOptional(step) && (\r\n \r\n Skip\r\n \r\n )}\r\n\r\n \r\n {step === steps.length - 1 ? \"Finish\" : \"Next\"}\r\n \r\n
\r\n
\r\n )}\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {paymentVisible ? (\r\n \r\n ) : null}\r\n \r\n \r\n );\r\n}\r\n","import React, { useContext } from \"react\";\r\nimport classNames from \"classnames\";\r\nimport createPaymentPlanPageStyle from \"../../assets/jss/xrs/views/createPaymentPlanPageStyle\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport WizardSection from \"../SectionsPage/Sections/WizardSection.js\";\r\nimport Context from \"../../utils/context\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport clsx from \"clsx\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles2 = makeStyles(createPaymentPlanPageStyle);\r\nexport default function LandingPage(props) {\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n document.body.scrollTop = 0;\r\n }, []);\r\n\r\n const context = useContext(Context);\r\n const classes2 = useStyles2();\r\n const classes = useStyles();\r\n const [page, setPage] = React.useState(1);\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n\r\n // can be removed dev only\r\n\r\n return (\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n}\r\n","import {\r\n container,\r\n primaryColor,\r\n whiteColor,\r\n btnLink,\r\n grayColor,\r\n twitterColor,\r\n dribbbleColor,\r\n instagramColor,\r\n hexToRgb,\r\n} from \"assets/jss/xrs.js\";\r\n\r\nconst footerStyle = {\r\n left: {\r\n float: \"left!important\",\r\n display: \"block\",\r\n },\r\n right: {\r\n padding: \"15px 0\",\r\n margin: \"0\",\r\n float: \"right\",\r\n },\r\n rightLinks: {\r\n float: \"right!important\",\r\n \"& ul\": {\r\n marginBottom: 0,\r\n marginTop: 10,\r\n padding: 0,\r\n listStyle: \"none\",\r\n height: 38,\r\n \"& li\": {\r\n display: \"inline-block\",\r\n },\r\n },\r\n \"& i\": {\r\n fontSize: \"20px\",\r\n },\r\n },\r\n footer: {\r\n padding: \"0.9375rem 0\",\r\n textAlign: \"center\",\r\n display: \"flex\",\r\n zIndex: \"2\",\r\n position: \"relative\",\r\n \"& ul\": {\r\n marginBottom: \"0\",\r\n padding: 0,\r\n listStyle: \"none\",\r\n },\r\n },\r\n big: {\r\n padding: \"1.875rem 0\",\r\n \"& h5, & h4\": {\r\n fontWeight: 700,\r\n fontFamily: \"Rubik ,serif\",\r\n marginBottom: \"15px\",\r\n },\r\n \"& p\": {\r\n color: grayColor[0],\r\n },\r\n },\r\n content: {\r\n textAlign: \"left\",\r\n },\r\n a: {\r\n color: primaryColor[0],\r\n textDecoration: \"none\",\r\n backgroundColor: \"transparent\",\r\n },\r\n dark: {\r\n background: primaryColor[12],\r\n backgroundSize: \"550% 450%\",\r\n color: whiteColor,\r\n \"& p\": {\r\n color: \"#fff\",\r\n fontSize: 14,\r\n },\r\n \"& i\": {\r\n color: whiteColor,\r\n },\r\n \"& a\": {\r\n color: whiteColor,\r\n opacity: \".86\",\r\n \"&:visited\": {\r\n color: whiteColor,\r\n },\r\n \"&:focus, &:hover\": {\r\n opacity: 1,\r\n },\r\n },\r\n \"& hr\": {\r\n borderColor: \"rgba(\" + hexToRgb(whiteColor) + \",0.2)\",\r\n },\r\n \"& $btnTwitter, & $btnDribbble, & $btnInstagram\": {\r\n color: whiteColor,\r\n },\r\n },\r\n white: {\r\n background: primaryColor[13],\r\n color: grayColor[1],\r\n textDecoration: \"none\",\r\n \"& a\": {\r\n \"&:visited\": {\r\n color: grayColor[1],\r\n },\r\n \"&:hover, &:focus\": {\r\n color: grayColor[20],\r\n },\r\n },\r\n },\r\n container,\r\n list: {\r\n marginBottom: \"0\",\r\n padding: \"0\",\r\n marginTop: \"0\",\r\n },\r\n inlineBlock: {\r\n display: \"inline-block\",\r\n padding: \"0px\",\r\n width: \"auto\",\r\n },\r\n icon: {\r\n width: \"18px\",\r\n height: \"18px\",\r\n position: \"relative\",\r\n top: \"3px\",\r\n },\r\n iconSocial: {\r\n width: \"41px\",\r\n height: \"41px\",\r\n fontSize: \"24px\",\r\n minWidth: \"41px\",\r\n padding: 0,\r\n overflow: \"hidden\",\r\n position: \"relative\",\r\n },\r\n btnTwitter: {\r\n ...btnLink,\r\n color: twitterColor,\r\n },\r\n btnDribbble: {\r\n ...btnLink,\r\n color: dribbbleColor,\r\n },\r\n btnInstagram: {\r\n ...btnLink,\r\n color: instagramColor,\r\n },\r\n footerBrand: {\r\n height: \"50px\",\r\n padding: \"15px 15px\",\r\n fontSize: \"18px\",\r\n lineHeight: \"50px\",\r\n marginLeft: \"-15px\",\r\n color: grayColor[1],\r\n textDecoration: \"none\",\r\n fontWeight: 700,\r\n fontFamily: \"Rubik,serif\",\r\n },\r\n pullCenter: {\r\n display: \"inline-block\",\r\n float: \"none\",\r\n },\r\n clearFix: {\r\n clear: \"both\",\r\n },\r\n};\r\nexport default footerStyle;\r\n","/* eslint-disable */\r\nimport React from \"react\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport List from \"@material-ui/core/List\";\r\nimport ListItem from \"@material-ui/core/ListItem\";\r\n// @material-ui/icons\r\nimport Favorite from \"@material-ui/icons/Favorite\";\r\n\r\nimport styles from \"assets/jss/xrs/components/footerStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Footer(props) {\r\n const { children, content, theme, big, className } = props;\r\n const classes = useStyles();\r\n const themeType =\r\n theme === \"transparent\" || theme == undefined ? false : true;\r\n const footerClasses = classNames({\r\n [classes.footer]: true,\r\n [classes[theme]]: themeType,\r\n [classes.big]: big || children !== undefined,\r\n [className]: className !== undefined\r\n });\r\n const aClasses = classNames({\r\n [classes.a]: true\r\n });\r\n\r\n return (\r\n
\r\n
\r\n {children !== undefined ? (\r\n
\r\n
{children}
\r\n
\r\n
\r\n ) : (\r\n \" \"\r\n )}\r\n {content}\r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nFooter.propTypes = {\r\n theme: PropTypes.oneOf([\"dark\", \"white\", \"transparent\"]),\r\n big: PropTypes.bool,\r\n content: PropTypes.node.isRequired\r\n};\r\n","/*eslint-disable*/ import React from \"react\";\r\n\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Footer from \"components/Footer/Footer.js\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport { useSelector } from \"react-redux\";\r\nimport ReactHtmlParser from \"react-html-parser\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\n\r\nexport default function FooterSection(props) {\r\n const classes = useStyles();\r\n const footerImage = useSelector(\r\n (state) => state.GetSiteDetailsReducer.footerImageUrl\r\n );\r\n\r\n return (\r\n
\r\n \r\n \r\n

\r\n About {ReactHtmlParser(props.companyname)}\r\n

\r\n

\r\n {ReactHtmlParser(props.AboutUs)}\r\n

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

{props.companyname}

\r\n

{props.Address}

\r\n

{props.WorkingHours}

\r\n

\r\n Phone: {props.PhoneNumber}\r\n

\r\n

E-Mail: {props.Email}

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

\r\n

\r\n {footerImage === \"\" ? null : (\r\n \"...\"\r\n )}\r\n
\r\n \r\n }\r\n />\r\n
\r\n );\r\n}\r\n","import {\r\n container,\r\n defaultFont,\r\n primaryColor,\r\n infoColor,\r\n successColor,\r\n warningColor,\r\n dangerColor,\r\n roseColor,\r\n transition,\r\n boxShadow,\r\n drawerWidth,\r\n blackColor,\r\n whiteColor,\r\n grayColor,\r\n hexToRgb,\r\n} from \"assets/jss/xrs.js\";\r\n\r\nconst headerStyle = (theme) => ({\r\n appBar: {\r\n display: \"flex\",\r\n border: \"0\",\r\n borderRadius: \"3px\",\r\n padding: \"0.625rem 0\",\r\n marginBottom: \"0px\",\r\n color: grayColor[15],\r\n width: \"100%\",\r\n backgroundColor: primaryColor[6],\r\n boxShadow:\r\n \"0 4px 18px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.15)\",\r\n transition: \"all 150ms ease 0s\",\r\n alignItems: \"center\",\r\n flexFlow: \"row nowrap\",\r\n justifyContent: \"flex-start\",\r\n position: \"relative\",\r\n zIndex: 100,\r\n },\r\n absolute: {\r\n position: \"absolute\",\r\n top: \"auto\",\r\n },\r\n fixed: {\r\n position: \"fixed\",\r\n },\r\n container: {\r\n ...container,\r\n minHeight: \"60px\",\r\n alignItems: \"center\",\r\n justifyContent: \"space-between\",\r\n display: \"flex\",\r\n flexWrap: \"nowrap\",\r\n },\r\n title: {\r\n letterSpacing: \"unset\",\r\n \"&,& a\": {\r\n ...defaultFont,\r\n minWidth: \"unset\",\r\n lineHeight: \"30px\",\r\n fontSize: \"18px\",\r\n borderRadius: \"3px\",\r\n textTransform: \"none\",\r\n whiteSpace: \"nowrap\",\r\n color: \"inherit\",\r\n \"&:hover,&:focus\": {\r\n color: \"inherit\",\r\n background: \"transparent\",\r\n },\r\n },\r\n },\r\n appResponsive: {\r\n margin: \"20px 10px\",\r\n marginTop: \"0px\",\r\n },\r\n appResponsiveRight: {\r\n float: \"right\",\r\n },\r\n primary: {\r\n backgroundColor: primaryColor[0],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 12px -5px rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.46)\",\r\n },\r\n info: {\r\n backgroundColor: infoColor[0],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 12px -5px rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.46)\",\r\n },\r\n success: {\r\n backgroundColor: successColor[0],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 12px -5px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.46)\",\r\n },\r\n warning: {\r\n backgroundColor: warningColor[0],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 12px -5px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.46)\",\r\n },\r\n danger: {\r\n backgroundColor: dangerColor[0],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 12px -5px rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.46)\",\r\n },\r\n rose: {\r\n backgroundColor: roseColor[0],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 12px -5px rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.46)\",\r\n },\r\n transparent: {\r\n backgroundColor: \"transparent !important\",\r\n boxShadow: \"none\",\r\n paddingTop: \"25px\",\r\n color: whiteColor,\r\n },\r\n dark: {\r\n color: whiteColor,\r\n backgroundColor: grayColor[9] + \" !important\",\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 12px -5px rgba(\" +\r\n hexToRgb(grayColor[9]) +\r\n \", 0.46)\",\r\n },\r\n white: {\r\n border: \"0\",\r\n padding: \"0.625rem 0\",\r\n marginBottom: \"0px\",\r\n color: grayColor[15],\r\n backgroundColor: whiteColor + \" !important\",\r\n boxShadow:\r\n \"0 4px 18px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.15)\",\r\n },\r\n drawerPaper: {\r\n border: \"none\",\r\n bottom: \"0\",\r\n transitionProperty: \"top, bottom, width\",\r\n transitionDuration: \".2s, .2s, .35s\",\r\n transitionTimingFunction: \"linear, linear, ease\",\r\n width: drawerWidth,\r\n ...boxShadow,\r\n position: \"fixed\",\r\n display: \"block\",\r\n top: \"0\",\r\n height: \"100vh\",\r\n right: \"0\",\r\n left: \"auto\",\r\n visibility: \"visible\",\r\n overflowY: \"visible\",\r\n borderTop: \"none\",\r\n textAlign: \"left\",\r\n paddingRight: \"0px\",\r\n paddingLeft: \"0\",\r\n ...transition,\r\n },\r\n hidden: {},\r\n collapse: {\r\n [theme.breakpoints.up(\"md\")]: {\r\n display: \"flex !important\",\r\n MsFlexPreferredSize: \"auto\",\r\n flexBasis: \"auto\",\r\n },\r\n WebkitBoxFlex: \"1\",\r\n MsFlexPositive: \"1\",\r\n flexGrow: \"1\",\r\n WebkitBoxAlign: \"center\",\r\n MsFlexAlign: \"center\",\r\n alignItems: \"center\",\r\n },\r\n closeButtonDrawer: {\r\n position: \"absolute\",\r\n right: \"8px\",\r\n top: \"9px\",\r\n zIndex: \"1\",\r\n },\r\n});\r\n\r\nexport default headerStyle;\r\n","import AppBar from \"@material-ui/core/AppBar\";\r\nimport Drawer from \"@material-ui/core/Drawer\";\r\nimport Hidden from \"@material-ui/core/Hidden\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Toolbar from \"@material-ui/core/Toolbar\";\r\nimport Close from \"@material-ui/icons/Close\";\r\n// @material-ui/icons\r\nimport Menu from \"@material-ui/icons/Menu\";\r\n// core components\r\nimport styles from \"assets/jss/xrs/components/headerStyle.js\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\nimport React from \"react\";\r\nimport { Link } from \"react-router-dom\";\r\nimport { useSelector } from \"react-redux\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Header(props) {\r\n const [mobileOpen, setMobileOpen] = React.useState(false);\r\n const classes = useStyles();\r\n const logo = useSelector((state) => state.GetSiteDetailsReducer.logoimageurl);\r\n\r\n React.useEffect(() => {\r\n if (props.changeColorOnScroll) {\r\n window.addEventListener(\"scroll\", headerColorChange);\r\n }\r\n return function cleanup() {\r\n if (props.changeColorOnScroll) {\r\n window.removeEventListener(\"scroll\", headerColorChange);\r\n }\r\n };\r\n });\r\n const handleDrawerToggle = () => {\r\n setMobileOpen(!mobileOpen);\r\n };\r\n const headerColorChange = () => {\r\n const { color, changeColorOnScroll } = props;\r\n\r\n const windowsScrollTop = window.pageYOffset;\r\n if (windowsScrollTop > changeColorOnScroll.height) {\r\n document.body\r\n .getElementsByTagName(\"header\")[0]\r\n .classList.remove(classes[color]);\r\n document.body\r\n .getElementsByTagName(\"header\")[0]\r\n .classList.add(classes[changeColorOnScroll.color]);\r\n } else {\r\n document.body\r\n .getElementsByTagName(\"header\")[0]\r\n .classList.add(classes[color]);\r\n document.body\r\n .getElementsByTagName(\"header\")[0]\r\n .classList.remove(classes[changeColorOnScroll.color]);\r\n }\r\n };\r\n const { color, links, fixed, absolute } = props;\r\n const appBarClasses = classNames({\r\n [classes.appBar]: true,\r\n [classes[color]]: \"white\",\r\n [classes.absolute]: absolute,\r\n [classes.fixed]: fixed,\r\n [classes.border]: 0,\r\n });\r\n return (\r\n \r\n \r\n \r\n \r\n {logo === \"\" ? null : (\r\n \"...\"\r\n )}\r\n \r\n \r\n \r\n \r\n {links}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {logo === \"\" ? null : (\r\n \"...\"\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{links}
\r\n \r\n
\r\n \r\n );\r\n}\r\n\r\nHeader.defaultProp = {\r\n color: \"white\",\r\n};\r\n\r\nHeader.propTypes = {\r\n color: PropTypes.oneOf([\r\n \"primary\",\r\n \"info\",\r\n \"success\",\r\n \"warning\",\r\n \"danger\",\r\n \"transparent\",\r\n \"white\",\r\n \"rose\",\r\n \"dark\",\r\n ]),\r\n links: PropTypes.node,\r\n brand: PropTypes.string,\r\n fixed: PropTypes.bool,\r\n absolute: PropTypes.bool,\r\n // this will cause the sidebar to change the color from\r\n // props.color (see above) to changeColorOnScroll.color\r\n // when the window.pageYOffset is heigher or equal to\r\n // changeColorOnScroll.height and then when it is smaller than\r\n // changeColorOnScroll.height change it back to\r\n // props.color (see above)\r\n changeColorOnScroll: PropTypes.shape({\r\n height: PropTypes.number.isRequired,\r\n color: PropTypes.oneOf([\r\n \"primary\",\r\n \"info\",\r\n \"success\",\r\n \"warning\",\r\n \"danger\",\r\n \"transparent\",\r\n \"white\",\r\n \"rose\",\r\n \"dark\",\r\n ]).isRequired,\r\n }),\r\n};\r\n","/* eslint-disable */\r\nimport React from \"react\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// react components for routing our app without refresh\r\nimport { Link } from \"react-router-dom\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport List from \"@material-ui/core/List\";\r\nimport ListItem from \"@material-ui/core/ListItem\";\r\nimport Icon from \"@material-ui/core/Icon\";\r\n\r\n// @material-ui/icons\r\nimport Apps from \"@material-ui/icons/Apps\";\r\nimport ShoppingCart from \"@material-ui/icons/ShoppingCart\";\r\nimport ViewDay from \"@material-ui/icons/ViewDay\";\r\nimport Dns from \"@material-ui/icons/Dns\";\r\nimport Build from \"@material-ui/icons/Build\";\r\nimport ListIcon from \"@material-ui/icons/List\";\r\nimport People from \"@material-ui/icons/People\";\r\nimport Assignment from \"@material-ui/icons/Assignment\";\r\nimport MonetizationOn from \"@material-ui/icons/MonetizationOn\";\r\nimport Chat from \"@material-ui/icons/Chat\";\r\nimport Call from \"@material-ui/icons/Call\";\r\nimport ViewCarousel from \"@material-ui/icons/ViewCarousel\";\r\nimport Home from \"@material-ui/icons/Home\";\r\nimport ArtTrack from \"@material-ui/icons/ArtTrack\";\r\nimport ViewQuilt from \"@material-ui/icons/ViewQuilt\";\r\nimport LocationOn from \"@material-ui/icons/LocationOn\";\r\nimport Fingerprint from \"@material-ui/icons/Fingerprint\";\r\nimport AttachMoney from \"@material-ui/icons/AttachMoney\";\r\nimport Store from \"@material-ui/icons/Store\";\r\nimport AccountCircle from \"@material-ui/icons/AccountCircle\";\r\nimport PersonAdd from \"@material-ui/icons/PersonAdd\";\r\nimport Layers from \"@material-ui/icons/Layers\";\r\nimport ShoppingBasket from \"@material-ui/icons/ShoppingBasket\";\r\nimport LineStyle from \"@material-ui/icons/LineStyle\";\r\nimport Error from \"@material-ui/icons/Error\";\r\n\r\n// core components\r\nimport CustomDropdown from \"components/CustomDropdown/CustomDropdown.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\n\r\nimport styles from \"assets/jss/xrs/components/headerLinksStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function HeaderLinks(props) {\r\n const easeInOutQuad = (t, b, c, d) => {\r\n t /= d / 2;\r\n if (t < 1) return (c / 2) * t * t + b;\r\n t--;\r\n return (-c / 2) * (t * (t - 2) - 1) + b;\r\n };\r\n\r\n const smoothScroll = (e, target) => {\r\n if (window.location.pathname === \"/sections\") {\r\n var isMobile = navigator.userAgent.match(\r\n /(iPad)|(iPhone)|(iPod)|(android)|(webOS)/i\r\n );\r\n if (isMobile) {\r\n // if we are on mobile device the scroll into view will be managed by the browser\r\n } else {\r\n e.preventDefault();\r\n var targetScroll = document.getElementById(target);\r\n scrollGo(document.documentElement, targetScroll.offsetTop, 1250);\r\n }\r\n }\r\n };\r\n const scrollGo = (element, to, duration) => {\r\n var start = element.scrollTop,\r\n change = to - start,\r\n currentTime = 0,\r\n increment = 20;\r\n\r\n var animateScroll = function() {\r\n currentTime += increment;\r\n var val = easeInOutQuad(currentTime, start, change, duration);\r\n element.scrollTop = val;\r\n if (currentTime < duration) {\r\n setTimeout(animateScroll, increment);\r\n }\r\n };\r\n animateScroll();\r\n };\r\n var onClickSections = {};\r\n\r\n const { dropdownHoverColor } = props;\r\n const classes = useStyles();\r\n return (\r\n
\r\n \r\n \r\n Home\r\n \r\n \r\n \r\n \r\n Register\r\n \r\n \r\n \r\n \r\n Quick Pay\r\n \r\n \r\n \r\n \r\n Frequently Asked Questions\r\n \r\n \r\n
\r\n );\r\n}\r\n\r\nHeaderLinks.defaultProps = {\r\n hoverColor: \"primary\"\r\n};\r\n\r\nHeaderLinks.propTypes = {\r\n dropdownHoverColor: PropTypes.oneOf([\r\n \"dark\",\r\n \"primary\",\r\n \"info\",\r\n \"success\",\r\n \"warning\",\r\n \"danger\",\r\n \"rose\"\r\n ])\r\n};\r\n","/*eslint-disable*/ import React from \"react\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Header from \"components/Header/Header.js\";\r\nimport HeaderLinks from \"components/Header/HeaderLinksNoUser\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport { primaryColor } from \"assets/jss/xrs\";\r\nconst useStyles = makeStyles(landingPageStyle);\r\n\r\nexport default function headerSection(props) {\r\n document.title = props.title;\r\n const classes = useStyles();\r\n return (\r\n
\r\n }\r\n relative\r\n changeColorOnScroll={{\r\n height: 0,\r\n color: [primaryColor[6]],\r\n }}\r\n />\r\n
\r\n );\r\n}\r\n","/*eslint-disable*/ import React from \"react\";\r\nimport classNames from \"classnames\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport { Link } from \"react-router-dom\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport Paper from \"@material-ui/core/Paper\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\n\r\nexport default function LinksSection({ ...rest }) {\r\n const classes = useStyles();\r\n return (\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n

Quick Pay

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

Register

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

\r\n Frequently Asked Questions\r\n

\r\n
\r\n \r\n
\r\n \r\n );\r\n}\r\n","import { Collapse } from \"@material-ui/core\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogContentText from \"@material-ui/core/DialogContentText\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\nimport Icon from \"@material-ui/core/Icon\";\r\nimport Link from \"@material-ui/core/Link\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport classNames from \"classnames\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport CustomTextField from \"components/CustomInput/CustomInput\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Parallax from \"components/Parallax/Parallax.js\";\r\nimport { useFormik } from \"formik\";\r\nimport React, { useContext } from \"react\";\r\nimport { API_ACTION_TYPES } from \"store/redux/redux-actions/redux_action_types\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport {\r\n Radio,\r\n RadioGroup,\r\n FormControlLabel,\r\n FormControl,\r\n FormLabel,\r\n} from \"@material-ui/core\";\r\n\r\nimport {\r\n apiActions,\r\n getSiteDetailsActions,\r\n htmlActions,\r\n} from \"../../store/redux/redux-actions/redux_actions\";\r\nimport * as ACTIONS from \"../../store/actions/actions\";\r\n\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\n\r\nimport Context from \"../../utils/context\";\r\nimport history from \"../../utils/history\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport FooterSection from \"../../views/SectionsPage/Sections/FooterSection.js\";\r\nimport HeaderSection from \"../../views/SectionsPage/Sections/HeaderSection.js\";\r\nimport LinkSection from \"../../views/SectionsPage/Sections/LinksSection.js\";\r\nimport { string } from \"prop-types\";\r\nimport { textVariables } from \"assets/jss/xrs\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\n\r\nexport default function LandingPage(props) {\r\n const context = useContext(Context);\r\n const classes = useStyles();\r\n const [page, setPage] = React.useState(1);\r\n const [sitename, setSitename] = React.useState(\"\");\r\n const [companyname, setCompanyname] = React.useState(\"\");\r\n const [aboutus, setAboutus] = React.useState(\"\");\r\n const [address, setAddress] = React.useState(\"\");\r\n const [officehours, setOfficehours] = React.useState(\"\");\r\n const [phonenumber, setPhonenumber] = React.useState(\"\");\r\n const [email, setEmail] = React.useState(\"\");\r\n\r\n const [firstDigitName, setfirstDigitName] = React.useState(\"\");\r\n const [secondDigitName, setsecondDigitName] = React.useState(\"\");\r\n const [thirdDigitName, setthirdDigitName] = React.useState(\"\");\r\n const [firstDigitValue, setfirstDigitValue] = React.useState(\"\");\r\n const [secondDigitValue, setsecondDigitValue] = React.useState(\"\");\r\n const [thirdDigitValue, setthirdDigitValue] = React.useState(\"\");\r\n const [registrationType, setRegistrationType] = React.useState(\"both\");\r\n const [\r\n selectedregistrationType,\r\n setselectedRegistrationType,\r\n ] = React.useState(null);\r\n const [NotFound, setNotFound] = React.useState(false);\r\n const [registerValues, setRegisterValues] = React.useState(\"\");\r\n const [resetValues, setResetValues] = React.useState(\"\");\r\n const [retruevedUser, setretruevedUser] = React.useState(\"\");\r\n\r\n const [mainscreen, setMainScreen] = React.useState(true);\r\n const [verifyPin, setVerifyPin] = React.useState(false);\r\n const [registerscreen, setRegisterScreen] = React.useState(false);\r\n const [resetPinscreen, setResetPinscreen] = React.useState(false);\r\n const [changePinscreen, setChangePinscreen] = React.useState(false);\r\n const [paymentResult, setPaymentResult] = React.useState(\"\");\r\n const [alertOpen, setAlertOpen] = React.useState(false);\r\n const [alertText, setAlertText] = React.useState(\"None\");\r\n\r\n const loading = useSelector((state) => state.ApiCallsReducer.loading);\r\n const errorMessage = useSelector(\r\n (state) => state.ApiCallsReducer.errorMessage\r\n );\r\n const error = useSelector((state) => state.ApiCallsReducer.error);\r\n const dispatch = useDispatch();\r\n\r\n const [customerCaption, setcustomerCaption] = React.useState(\"\");\r\n\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n let search = window.location.search;\r\n dispatch(ACTIONS.set_Customer(\"NoCoutomer\"));\r\n dispatch(ACTIONS.set_Accounts(\"NoAccount\"));\r\n dispatch(ACTIONS.set_selectedAccount(\"NoAccount\"));\r\n context.dispatchDrawerTwo(false);\r\n context.dispatchDrawerThree(false);\r\n context.dispatchDrawerOne(true);\r\n context.dispatchDrawer(\"NoDrawer\");\r\n\r\n if (search.indexOf(\"Success\") !== -1) {\r\n setPaymentResult(\"Success\");\r\n setAlertText(\"Success\");\r\n setAlertOpen(true);\r\n }\r\n if (search.indexOf(\"Failure\") !== -1) {\r\n setPaymentResult(\"Failure\");\r\n setAlertText(\"Failure\");\r\n setAlertOpen(true);\r\n }\r\n }, []);\r\n\r\n const makeFormEncoder = (hash) => {\r\n return function(key) {\r\n return encodeURIComponent(key) + \"=\" + encodeURIComponent(hash[key]);\r\n };\r\n };\r\n\r\n React.useEffect(() => {\r\n dispatch(apiActions.clear());\r\n dispatch(apiActions.loading(true));\r\n\r\n dispatch(ACTIONS.set_Customer(\"NoCoutomer\"));\r\n dispatch(ACTIONS.set_Accounts(\"NoAccount\"));\r\n dispatch(ACTIONS.set_selectedAccount(\"NoAccount\"));\r\n\r\n if (props.create == \"true\") {\r\n setMainScreen(false);\r\n setRegisterScreen(true);\r\n setVerifyPin(false);\r\n }\r\n getPINDigits();\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Site Detatils\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n dispatch(\r\n getSiteDetailsActions.paymentProvider(response.paymentprovider)\r\n );\r\n dispatch(getSiteDetailsActions.set4week(response.usE4WEEKLYFREQUENCY));\r\n\r\n dispatch(\r\n getSiteDetailsActions.uploadImagesToBudget(\r\n response.uploadimagestobudget\r\n )\r\n );\r\n if (response.usesconveniencefee) {\r\n dispatch(\r\n getSiteDetailsActions.convenienceFee(response.conveniencefee)\r\n );\r\n }\r\n dispatch(getSiteDetailsActions.logo(response.logoimageurl));\r\n dispatch(getSiteDetailsActions.footerImage(response.footerimageurl));\r\n dispatch(getSiteDetailsActions.currency(response.sitecurrency));\r\n let type = response.registrationtype\r\n ? response.registrationtype.toLowerCase()\r\n : null;\r\n setselectedRegistrationType(\r\n type == \"both\" ? \"personal\" : type == \"bothdob\" ? \"mobile\" : type\r\n );\r\n setRegistrationType(type);\r\n setSitename(response.sitename);\r\n setCompanyname(response.companyname);\r\n setAboutus(response.aboutus);\r\n setOfficehours(response.officehours);\r\n setPhonenumber(response.phonenumber);\r\n setAddress(response.address);\r\n setEmail(response.email);\r\n setcustomerCaption(response.custcaption);\r\n dispatch(ACTIONS.set_Site(response));\r\n\r\n dispatch(ACTIONS.set_sessiontimeout(response.sessiontimeout));\r\n dispatch(ACTIONS.set_overalltimeout(response.overalltimeout));\r\n\r\n context.dispatchIntercomKey(\r\n response.chatauth,\r\n response.chatvisible == \"Y\" ? true : false\r\n );\r\n\r\n dispatch(apiActions.clear());\r\n })\r\n .catch((error) => {\r\n dispatch(apiActions.loading(false));\r\n dispatch(apiActions.error(error.toString()));\r\n });\r\n }, [page]);\r\n\r\n const handleClose = () => {\r\n setAlertOpen(false);\r\n };\r\n const changeRegisterType = (e, registrationTypeprop) => {\r\n setselectedRegistrationType(registrationTypeprop);\r\n };\r\n\r\n const registerClick = () => {\r\n setMainScreen(false);\r\n setResetPinscreen(false);\r\n setRegisterScreen(true);\r\n setVerifyPin(false);\r\n setNotFound(false);\r\n };\r\n\r\n const ResetPinAndPasswordClick = () => {\r\n setResetPinscreen(true);\r\n setMainScreen(false);\r\n setRegisterScreen(true);\r\n setVerifyPin(false);\r\n setNotFound(false);\r\n };\r\n const loginClick = () => {\r\n setMainScreen(true);\r\n setRegisterScreen(false);\r\n setResetPinscreen(false);\r\n setVerifyPin(false);\r\n setNotFound(false);\r\n };\r\n const submitRegisterForm = (values) => {\r\n var xhr = new XMLHttpRequest();\r\n var data;\r\n var url;\r\n if (\r\n selectedregistrationType == null ||\r\n selectedregistrationType == \"mobile\"\r\n ) {\r\n url = URLS.GetcreateUserAPIUrl;\r\n data = JSON.stringify({\r\n UserName: values.regusername,\r\n Reference: values.customernumber,\r\n MobileNumber: values.phone,\r\n DateOfBirth: values.dob,\r\n Password: values.pass,\r\n ConfirmPassword: values.passconfirm,\r\n });\r\n if (resetPinscreen) {\r\n url = URLS.GetRecreateUserAPIUrl;\r\n }\r\n } else if (selectedregistrationType == \"email\") {\r\n url = URLS.GetcreateUserViaEmailAPIUrl;\r\n data = JSON.stringify({\r\n UserName: values.regusername,\r\n Reference: values.customernumber,\r\n Email: values.email,\r\n DateOfBirth: values.dob,\r\n Password: values.pass,\r\n ConfirmPassword: values.passconfirm,\r\n });\r\n if (resetPinscreen) {\r\n url = URLS.GetRecreateUserViaEmailAPIUrl;\r\n }\r\n } else if (selectedregistrationType == \"business\") {\r\n data = JSON.stringify({\r\n UserName: values.regusername,\r\n Reference: values.customernumber,\r\n Email: values.email,\r\n Password: values.pass,\r\n ConfirmPassword: values.passconfirm,\r\n });\r\n url = URLS.GetCreateBusinesUserAPIUrl;\r\n if (resetPinscreen) {\r\n url = URLS.GetReCreateBusinesUserAPIUrl;\r\n }\r\n } else if (selectedregistrationType == \"personal\") {\r\n data = JSON.stringify({\r\n UserName: values.regusername,\r\n Reference: values.customernumber,\r\n EmailAddress: values.email,\r\n MobileNumber: values.phone,\r\n Password: values.pass,\r\n ConfirmPassword: values.passconfirm,\r\n });\r\n url = URLS.GetCreatePersonalUserAPIUrl;\r\n if (resetPinscreen) {\r\n url = URLS.GetReCreatePersonalUserAPIUrl;\r\n }\r\n }\r\n\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n const json = JSON.parse(xhr.responseText);\r\n dispatch(apiActions.loading(false));\r\n\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n setretruevedUser(json);\r\n setMainScreen(false);\r\n setRegisterScreen(false);\r\n setVerifyPin(true);\r\n setNotFound(false);\r\n\r\n // case 404:\r\n // var message = \"User not found!\";\r\n // context.stateInfoDialog(\"Register\", message);\r\n // break;\r\n // case 400:\r\n // var errors = JSON.parse(xhr.responseText).errors;\r\n // var message = \"\";\r\n // errors.forEach((element) => (message += element + \"\\n\"));\r\n\r\n // context.stateInfoDialog(\"Register\", message);\r\n // break;\r\n // case 500:\r\n // var errors = JSON.parse(xhr.responseText).errors;\r\n // var message = \"\";\r\n // errors.forEach((element) => (message += element + \"\\n\"));\r\n // context.stateInfoDialog(\"Register\", message);\r\n\r\n // break;\r\n // default:\r\n // break;\r\n } else {\r\n // var errors = JSON.parse(xhr.responseText).errors;\r\n // var message = \"\";\r\n // errors.forEach((element) => (message += element + \"\\n\"));\r\n\r\n ApiErrorHandler(\"Create Account\", xhr, context);\r\n }\r\n }\r\n };\r\n\r\n xhr.send(data);\r\n };\r\n const submitResetForm = (values) => {\r\n var xhr = new XMLHttpRequest();\r\n var url = URLS.GetReset;\r\n\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n\r\n var data;\r\n data = JSON.stringify({\r\n Reference: values.resetcustomernumber,\r\n MobileNumber: values.resetphone,\r\n DateOfBirth: values.resetdob,\r\n CredentialToReset: \"Password\",\r\n });\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n const json = JSON.parse(xhr.responseText);\r\n\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n setMainScreen(false);\r\n setRegisterScreen(false);\r\n setResetPinscreen(false);\r\n setVerifyPin(true);\r\n setNotFound(false);\r\n dispatch(apiActions.loading(false));\r\n\r\n // break;\r\n // case 404:\r\n // setNotFound(true);\r\n // setMainScreen(false);\r\n // setRegisterScreen(false);\r\n // setResetPinscreen(false);\r\n // setVerifyPin(false);\r\n // break;\r\n // case 400:\r\n // alert(JSON.parse(xhr.responseText));\r\n // break;\r\n // case 500:\r\n // alert(JSON.parse(xhr.responseText));\r\n // break;\r\n // default:\r\n // break;\r\n // }\r\n } else {\r\n ApiErrorHandler(\"Reset\", xhr, context);\r\n dispatch(apiActions.loading(false));\r\n }\r\n }\r\n };\r\n\r\n xhr.send(data);\r\n };\r\n const displayDigits = (data) => {\r\n var first = data[0];\r\n setfirstDigitName(first.description);\r\n setfirstDigitValue(first.digit);\r\n var second = data[1];\r\n setsecondDigitName(second.description);\r\n setsecondDigitValue(second.digit);\r\n var third = data[2];\r\n setthirdDigitName(third.description);\r\n setthirdDigitValue(third.digit);\r\n };\r\n const getPINDigits = () => {\r\n var xhr = new XMLHttpRequest();\r\n var url = URLS.GetPINDigitsAPIUrl;\r\n xhr.open(\"GET\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n const json = JSON.parse(xhr.responseText);\r\n\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n if (json !== null) {\r\n displayDigits(json);\r\n } else {\r\n alert(json);\r\n }\r\n // break;\r\n // case 404:\r\n // context.stateInfoDialog(\"Retrieve pin digits\", xhr.responseText);\r\n // break;\r\n // default:\r\n // context.stateInfoDialog(\"Retrieve pin digits\", xhr.responseText);\r\n // break;\r\n } else {\r\n ApiErrorHandler(\"Get PIN Digits\", xhr, context);\r\n dispatch(apiActions.loading(false));\r\n }\r\n }\r\n };\r\n\r\n xhr.send();\r\n };\r\n const registerForm = useFormik({\r\n initialValues: {\r\n customernumber: \"\",\r\n regusername: \"\",\r\n phone: \"\",\r\n dob: \"\",\r\n pass: \"\",\r\n passconfirm: \"\",\r\n },\r\n onSubmit: (values) => {\r\n dispatch(apiActions.loading(true));\r\n scrollToTop();\r\n if (values.pass != values.passconfirm) {\r\n dispatch(apiActions.loading(false));\r\n\r\n context.stateInfoDialog(\r\n \"Create Account\",\r\n \"Passwords and Confirm password do not match!\"\r\n );\r\n return;\r\n }\r\n setRegisterValues(values);\r\n submitRegisterForm(values);\r\n },\r\n });\r\n const resetForm = useFormik({\r\n initialValues: {\r\n resetcustomernumber: \"\",\r\n resetphone: \"\",\r\n resetdob: \"\",\r\n },\r\n onSubmit: (values) => {\r\n setResetValues(values);\r\n submitResetForm(values);\r\n },\r\n });\r\n const scrollToTop = () => {\r\n window.scrollTo({\r\n top: 0,\r\n behavior: \"smooth\", // Optional: Adds smooth scrolling effect\r\n });\r\n };\r\n const getMenu = () => {\r\n var url = URLS.GetWelcomeNavigation;\r\n var token = sessionStorage.getItem(\"access_token\");\r\n\r\n fetch(url, {\r\n method: \"GET\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Welcome Navigation\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data1) => {\r\n dispatch(ACTIONS.set_menu(data1));\r\n\r\n fetch(URLS.GetWelcomeDetails, {\r\n method: \"GET\",\r\n headers: { Authorization: \"Bearer \" + token },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n ApiErrorHandler(\"Welcome Details\", res, context);\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data) => {\r\n dispatch(htmlActions.termsQuickPay(data.customer.termsquickpay));\r\n dispatch(htmlActions.termsPlan(data.customer.termsplan));\r\n dispatch(htmlActions.termsDiscount(data.customer.termsdiscount));\r\n\r\n dispatch(\r\n htmlActions.viewOfferText(data.activeAccounts[0].viewoffertext)\r\n );\r\n dispatch(\r\n htmlActions.createPlanText(data.activeAccounts[0].createplantext)\r\n );\r\n dispatch(\r\n htmlActions.createPlantoc(data.activeAccounts[0].createplantoc)\r\n );\r\n dispatch(\r\n htmlActions.createBudgetText(\r\n data.activeAccounts[0].createbudgettext\r\n )\r\n );\r\n\r\n dispatch(\r\n htmlActions.viewAccountText(\r\n data.activeAccounts[0].viewacccounttext\r\n )\r\n );\r\n dispatch(ACTIONS.set_Customer(data.customer));\r\n\r\n sessionStorage.setItem(\"user\", data.customer.cufname);\r\n\r\n dispatch(ACTIONS.set_Accounts(data.activeAccounts));\r\n dispatch(\r\n ACTIONS.set_Registration_method(\r\n data.customer.registrationmethod == null\r\n ? data.customer.registrationmethod\r\n : data.customer.registrationmethod.toLowerCase()\r\n )\r\n );\r\n\r\n dispatch(ACTIONS.set_Callbacks(data.callbackReasons));\r\n dispatch(ACTIONS.set_num_accounts(data.activeAccounts.length));\r\n if (data.activeAccounts.length == 1) {\r\n dispatch(ACTIONS.set_selectedAccount(data.activeAccounts[0]));\r\n }\r\n\r\n let multiplenum = data.activeAccounts[0].deptphonenumber.includes(\r\n \";\"\r\n );\r\n let num = data.activeAccounts[0].deptphonenumber;\r\n if (multiplenum) {\r\n let splited = data.activeAccounts[0].deptphonenumber.split(\";\");\r\n num = splited[0];\r\n }\r\n dispatch(getSiteDetailsActions.devNum(num));\r\n\r\n dispatch(apiActions.clear());\r\n\r\n history.replace(data1.targetURL);\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Welcome Details\", error, context);\r\n }\r\n });\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Welcome Navigation\", error, context);\r\n }\r\n });\r\n };\r\n\r\n const Logon = (values, firstPosition, secondPosition, thirdPosition) => {\r\n var xhr = new XMLHttpRequest();\r\n var url = URLS.GetTokenURLAPI;\r\n\r\n dispatch(apiActions.loading(true));\r\n\r\n var formValues = {\r\n grant_type: \"password\",\r\n username: values.username,\r\n password: values.password,\r\n validatePIN: \"true\",\r\n client_id: \"PaymentPortal\",\r\n firstValue: values.firstValue,\r\n firstPosition: firstPosition,\r\n secondValue: values.secondValue,\r\n secondPosition: secondPosition,\r\n thirdValue: values.thirdValue,\r\n thirdPosition: thirdPosition,\r\n };\r\n\r\n const pairs = Object.keys(formValues).map(makeFormEncoder(formValues));\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/x-www-form-urlencoded\");\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n var json = JSON.parse(xhr.responseText);\r\n var access_token = json.access_token;\r\n var refresh_token = json.refresh_token;\r\n var expires_in_seconds = json.expires_in;\r\n var timeoutDate;\r\n timeoutDate = new Date();\r\n\r\n timeoutDate.setSeconds(timeoutDate.getSeconds() + expires_in_seconds);\r\n sessionStorage.setItem(\"user\", values.username);\r\n sessionStorage.setItem(\"expiresAt\", timeoutDate);\r\n sessionStorage.setItem(\"expiresInSeconds\", expires_in_seconds);\r\n\r\n sessionStorage.setItem(\"access_token\", access_token);\r\n sessionStorage.setItem(\"refresh_token\", refresh_token);\r\n dispatch(apiActions.loading(false));\r\n dispatch(ACTIONS.set_startoveralltimeout(true));\r\n getMenu();\r\n\r\n // break;\r\n // case 404:\r\n // dispatch(\r\n // apiActions.error(JSON.parse(xhr.responseText).error_description)\r\n // );\r\n // context.stateInfoDialog(\r\n // \"Login\",\r\n // JSON.parse(xhr.responseText).error_description\r\n // );\r\n // break;\r\n // case 400:\r\n // dispatch(\r\n // apiActions.error(JSON.parse(xhr.responseText).error_description)\r\n // );\r\n // context.stateInfoDialog(\r\n // \"Login\",\r\n // JSON.parse(xhr.responseText).error_description\r\n // );\r\n // break;\r\n // case 500:\r\n // dispatch(\r\n // apiActions.error(JSON.parse(xhr.responseText).error_description)\r\n // );\r\n // context.stateInfoDialog(\r\n // \"Login\",\r\n // JSON.parse(xhr.responseText).error_description\r\n // );\r\n // break;\r\n // default:\r\n // break;\r\n } else {\r\n ApiErrorHandler(\"Sign in\", xhr, context);\r\n let parsedError = JSON.parse(xhr.responseText);\r\n if (\r\n parsedError.error_description === \"User did not enter correct PIN\"\r\n ) {\r\n ResetPins();\r\n }\r\n dispatch(apiActions.loading(false));\r\n }\r\n }\r\n };\r\n\r\n var postValues = pairs.join(\"&\");\r\n xhr.send(postValues);\r\n };\r\n\r\n const getPinVerification = (values, record, pin) => {\r\n var xhr = new XMLHttpRequest();\r\n var url =\r\n selectedregistrationType == null || selectedregistrationType == \"personal\"\r\n ? URLS.GetVerifyAPIUrl\r\n : URLS.GetVerifyByEmailAPIUrl;\r\n let verifyData = {};\r\n if (selectedregistrationType == \"business\") {\r\n verifyData.id = record.id;\r\n verifyData.userName = values.regusername;\r\n verifyData.emailComfirmed = record.emailConfirmed;\r\n verifyData.emailAddress = record.emailAddress;\r\n verifyData.reference = values.customernumber;\r\n verifyData.customerRecordNo = record.customerRecordNo;\r\n verifyData.pin = pin;\r\n } else {\r\n verifyData.id = record.id;\r\n verifyData.userName = values.regusername;\r\n verifyData.phoneConfirmed = record.phoneConfirmed;\r\n verifyData.mobileNumber = values.phone;\r\n\r\n verifyData.dateOfBirth = values.dob;\r\n\r\n verifyData.reference = values.customernumber;\r\n verifyData.customerRecordNo = record.customerRecordNo;\r\n verifyData.pin = pin;\r\n }\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n setMainScreen(true);\r\n setRegisterScreen(false);\r\n setVerifyPin(false);\r\n\r\n var xhrtoken = new XMLHttpRequest();\r\n var urltoken = URLS.GetTokenURLAPI;\r\n\r\n var valuesPost = {\r\n grant_type: \"password\",\r\n username: values.regusername,\r\n password: values.pass,\r\n validatePIN: \"false\",\r\n client_id: \"PaymentPortal\",\r\n };\r\n // eslint-disable-next-line no-case-declarations\r\n const pairs = Object.entries(valuesPost)\r\n .map(\r\n ([key, value]) =>\r\n `${encodeURIComponent(key)}=${encodeURIComponent(value)}`\r\n )\r\n .join(\"&\");\r\n\r\n xhrtoken.open(\"POST\", urltoken, true);\r\n xhrtoken.setRequestHeader(\r\n \"Content-Type\",\r\n \"application/x-www-form-urlencoded\"\r\n );\r\n xhrtoken.onreadystatechange = function() {\r\n if (xhrtoken.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n var json = JSON.parse(xhrtoken.responseText);\r\n var access_token = json.access_token;\r\n var refresh_token = json.refresh_token;\r\n var expires_in_seconds = json.expires_in;\r\n var timeoutDate;\r\n timeoutDate = new Date();\r\n timeoutDate.setSeconds(\r\n timeoutDate.getSeconds() + expires_in_seconds\r\n );\r\n sessionStorage.setItem(\"expiresAt\", timeoutDate);\r\n sessionStorage.setItem(\"access_token\", access_token);\r\n sessionStorage.setItem(\"refresh_token\", refresh_token);\r\n\r\n getMenu();\r\n // break;\r\n // case 404:\r\n // context.stateInfoDialog(\r\n // \"Login\",\r\n // JSON.parse(xhrtoken.responseText).error_description\r\n // );\r\n // break;\r\n // default:\r\n // context.stateInfoDialog(\"Login\", xhrtoken.responseText);\r\n\r\n // break;\r\n } else {\r\n ApiErrorHandler(\"Sign in\", xhr, context);\r\n }\r\n }\r\n };\r\n xhrtoken.send(pairs);\r\n // break;\r\n // case 404:\r\n // context.stateInfoDialog(\r\n // \"Verify Pin\",\r\n // JSON.parse(xhr.responseText).message\r\n // );\r\n // break;\r\n // default:\r\n // context.stateInfoDialog(\r\n // \"Verify Pin\",\r\n // JSON.parse(xhr.responseText).message\r\n // );\r\n // break;\r\n } else {\r\n ApiErrorHandler(\" Verify PIN\", xhr, context);\r\n }\r\n }\r\n };\r\n\r\n xhr.send(JSON.stringify(verifyData));\r\n };\r\n\r\n const LoginForm = useFormik({\r\n initialValues: {\r\n username: \"\",\r\n password: \"\",\r\n firstValue: \"\",\r\n secondValue: \"\",\r\n thirdValue: \"\",\r\n },\r\n\r\n onSubmit: (values) => {\r\n Logon(values, firstDigitValue, secondDigitValue, thirdDigitValue);\r\n },\r\n });\r\n const ResetPins = () => {\r\n LoginForm.values.firstValue = \"\";\r\n LoginForm.values.secondValue = \"\";\r\n LoginForm.values.thirdValue = \"\";\r\n };\r\n const focusUsername = document.querySelector(`input[id=username]`);\r\n const focusPass = document.querySelector(`input[id=pass]`);\r\n\r\n const focusFirst = document.querySelector(`input[id=firstValue]`);\r\n const focusSecond = document.querySelector(`input[id=secondValue]`);\r\n const focusThird = document.querySelector(`input[id=thirdValue]`);\r\n const focusButton = document.querySelector(`button[id=signIn]`);\r\n\r\n React.useEffect(() => {\r\n if (\r\n document.activeElement !== focusUsername &&\r\n document.activeElement !== focusPass\r\n ) {\r\n if (\r\n LoginForm.values.firstValue.length !== 1 &&\r\n (LoginForm.values.secondValue.length === 1 ||\r\n LoginForm.values.thirdValue.length === 1)\r\n ) {\r\n focusFirst.focus();\r\n }\r\n if (\r\n LoginForm.values.firstValue.length === 1 &&\r\n LoginForm.values.secondValue.length !== 1\r\n ) {\r\n focusSecond.focus();\r\n }\r\n\r\n if (\r\n LoginForm.values.firstValue.length === 1 &&\r\n LoginForm.values.secondValue.length === 1 &&\r\n LoginForm.values.thirdValue.length !== 1\r\n ) {\r\n focusThird.focus();\r\n }\r\n if (\r\n LoginForm.values.firstValue.length === 1 &&\r\n LoginForm.values.secondValue.length === 1 &&\r\n LoginForm.values.thirdValue.length === 1\r\n ) {\r\n var isFocused =\r\n document.activeElement === focusSecond ||\r\n document.activeElement === focusFirst ||\r\n document.activeElement === focusThird;\r\n if (isFocused) {\r\n focusButton.focus();\r\n }\r\n }\r\n }\r\n }, [LoginForm.values]);\r\n\r\n const verifyPinForm = useFormik({\r\n initialValues: {\r\n pinnum: \"\",\r\n },\r\n onSubmit: (values) => {\r\n getPinVerification(registerValues, retruevedUser, values.pinnum);\r\n },\r\n });\r\n const changePinForm = useFormik({\r\n initialValues: {\r\n OldPin: \"\",\r\n NewPin: \"\",\r\n ConfirmPIN: \"\",\r\n SecurityCode: \"\",\r\n Reference: \"\",\r\n MobileNumber: \"\",\r\n DateOfBirth: \"\",\r\n },\r\n onSubmit: (values) => {},\r\n });\r\n\r\n return (\r\n
\r\n \r\n Information\r\n \r\n \r\n {alertText}\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n

\r\n verified_user Make a payment towards your\r\n account\r\n

\r\n

\r\n verified_user View your account online\r\n

\r\n

\r\n verified_user Choose your own payment plans\r\n

\r\n\r\n

\r\n verified_user Talk to us, we can help!\r\n

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

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

\r\n {firstDigitName} DIGIT OF PIN\r\n

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

\r\n {secondDigitName} DIGIT OF PIN\r\n

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

\r\n {thirdDigitName} DIGIT OF PIN\r\n

\r\n \r\n
\r\n
\r\n
\r\n \r\n SIGN IN\r\n \r\n
\r\n\r\n
\r\n {\"Don’t have account? Sign up\"}{\" \"}\r\n registerClick(null)}\r\n className={classes.LinkHome}\r\n color=\"inherit\"\r\n >\r\n {\" \"}\r\n here.\r\n \r\n
\r\n
\r\n ResetPinAndPasswordClick()}\r\n className={classes.LinkHome}\r\n color=\"inherit\"\r\n >\r\n {\" \"}\r\n Forgotten Password/Username\r\n \r\n
\r\n
\r\n {\"Can't Sign in? Call \" + phonenumber}\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n

\r\n {resetPinscreen\r\n ? \"Forgotten Password/Username\"\r\n : \"Create Account\"}{\" \"}\r\n

\r\n

\r\n Fill in the form below to get instant access.\r\n

\r\n {registrationType == \"both\" ||\r\n registrationType == \"bothdob\" ? (\r\n \r\n \r\n {\" \"}\r\n }\r\n label={\r\n registrationType == \"bothdob\"\r\n ? \"Mobile Phone\"\r\n : \"Personal\"\r\n }\r\n labelPlacement=\"top\"\r\n />\r\n }\r\n label={\r\n registrationType == \"bothdob\"\r\n ? \"Email\"\r\n : \"Business\"\r\n }\r\n labelPlacement=\"top\"\r\n />{\" \"}\r\n \r\n \r\n ) : null}\r\n\r\n \r\n {registrationType == \"bothdob\" ? (\r\n selectedregistrationType == \"mobile\" ? (\r\n <>\r\n {\" \"}\r\n \r\n \r\n \r\n ) : selectedregistrationType == \"email\" ? (\r\n <>\r\n {\" \"}\r\n \r\n \r\n \r\n ) : null\r\n ) : selectedregistrationType == \"business\" ? (\r\n \r\n ) : selectedregistrationType == null ? (\r\n <>\r\n {\" \"}\r\n \r\n \r\n \r\n ) : (\r\n \r\n )}\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n Back to 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\n \r\n \r\n \r\n \r\n \r\n

\r\n

Verify Pin

\r\n

\r\n Please enter the PIN number you received via{\" \"}\r\n {selectedregistrationType == null ||\r\n selectedregistrationType == \"personal\"\r\n ? \"SMS\"\r\n : \"email\"}\r\n

\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n Back to 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\n \r\n \r\n \r\n \r\n

The user is not Not Found

\r\n \r\n Back to 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\n","import { Collapse } from \"@material-ui/core\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogContentText from \"@material-ui/core/DialogContentText\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\nimport Icon from \"@material-ui/core/Icon\";\r\nimport Link from \"@material-ui/core/Link\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport classNames from \"classnames\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport CustomTextField from \"components/CustomInput/CustomInput\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Parallax from \"components/Parallax/Parallax.js\";\r\nimport { useFormik } from \"formik\";\r\nimport React, { useContext } from \"react\";\r\nimport * as ACTIONS from \"../../store/actions/actions\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\n\r\nimport Context from \"../../utils/context\";\r\nimport history from \"../../utils/history\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport FooterSection from \"../../views/SectionsPage/Sections/FooterSection.js\";\r\nimport HeaderSection from \"../../views/SectionsPage/Sections/HeaderSection.js\";\r\nimport LinkSection from \"../../views/SectionsPage/Sections/LinksSection.js\";\r\nimport {\r\n apiActions,\r\n getSiteDetailsActions,\r\n htmlActions,\r\n} from \"../../store/redux/redux-actions/redux_actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport {\r\n Radio,\r\n RadioGroup,\r\n FormControlLabel,\r\n FormControl,\r\n FormLabel,\r\n} from \"@material-ui/core\";\r\nimport { textVariables } from \"assets/jss/xrs\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\n\r\nexport default function LandingPageCreateUser(props) {\r\n const dispatch = useDispatch();\r\n\r\n const context = useContext(Context);\r\n const classes = useStyles();\r\n const [page, setPage] = React.useState(1);\r\n const [sitename, setSitename] = React.useState(\"\");\r\n const [companyname, setCompanyname] = React.useState(\"\");\r\n const [aboutus, setAboutus] = React.useState(\"\");\r\n const [address, setAddress] = React.useState(\"\");\r\n const [officehours, setOfficehours] = React.useState(\"\");\r\n const [phonenumber, setPhonenumber] = React.useState(\"\");\r\n const [email, setEmail] = React.useState(\"\");\r\n const [registrationType, setRegistrationType] = React.useState(\"both\");\r\n const [\r\n selectedregistrationType,\r\n setselectedRegistrationType,\r\n ] = React.useState(null);\r\n\r\n const [firstDigitName, setfirstDigitName] = React.useState(\"\");\r\n const [secondDigitName, setsecondDigitName] = React.useState(\"\");\r\n const [thirdDigitName, setthirdDigitName] = React.useState(\"\");\r\n const [firstDigitValue, setfirstDigitValue] = React.useState(\"\");\r\n const [secondDigitValue, setsecondDigitValue] = React.useState(\"\");\r\n const [thirdDigitValue, setthirdDigitValue] = React.useState(\"\");\r\n\r\n const [NotFound, setNotFound] = React.useState(false);\r\n const [registerValues, setRegisterValues] = React.useState(\"\");\r\n const [resetValues, setResetValues] = React.useState(\"\");\r\n const [retruevedUser, setretruevedUser] = React.useState(\"\");\r\n\r\n const [errorMessage, setErrorMessage] = React.useState(\"\");\r\n const [mainscreen, setMainScreen] = React.useState(false);\r\n const [verifyPin, setVerifyPin] = React.useState(false);\r\n const [registerscreen, setRegisterScreen] = React.useState(true);\r\n const [resetPinscreen, setResetPinscreen] = React.useState(false);\r\n const [changePinscreen, setChangePinscreen] = React.useState(false);\r\n const [paymentResult, setPaymentResult] = React.useState(\"\");\r\n const [alertOpen, setAlertOpen] = React.useState(false);\r\n const [alertText, setAlertText] = React.useState(\"None\");\r\n\r\n const loading = useSelector((state) => state.ApiCallsReducer.loading);\r\n\r\n const [customerCaption, setcustomerCaption] = React.useState(\"\");\r\n\r\n const ResetPins = () => {\r\n LoginForm.values.firstValue = \"\";\r\n LoginForm.values.secondValue = \"\";\r\n LoginForm.values.thirdValue = \"\";\r\n };\r\n const focusUsername = document.querySelector(`input[id=username]`);\r\n const focusPass = document.querySelector(`input[id=pass]`);\r\n\r\n const focusFirst = document.querySelector(`input[id=firstValue]`);\r\n const focusSecond = document.querySelector(`input[id=secondValue]`);\r\n const focusThird = document.querySelector(`input[id=thirdValue]`);\r\n const focusButton = document.querySelector(`button[id=signIn]`);\r\n\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n let search = window.location.search;\r\n dispatch(ACTIONS.set_Customer(\"NoCoutomer\"));\r\n dispatch(ACTIONS.set_Accounts(\"NoAccount\"));\r\n dispatch(ACTIONS.set_selectedAccount(\"NoAccount\"));\r\n context.dispatchDrawerTwo(false);\r\n context.dispatchDrawerThree(false);\r\n context.dispatchDrawerOne(true);\r\n context.dispatchDrawer(\"NoDrawer\");\r\n\r\n if (search.indexOf(\"Success\") !== -1) {\r\n setPaymentResult(\"Success\");\r\n setAlertText(\"Success\");\r\n setAlertOpen(true);\r\n }\r\n if (search.indexOf(\"Failure\") !== -1) {\r\n setPaymentResult(\"Failure\");\r\n setAlertText(\"Failure\");\r\n setAlertOpen(true);\r\n }\r\n }, []);\r\n\r\n const makeFormEncoder = (hash) => {\r\n return function(key) {\r\n return encodeURIComponent(key) + \"=\" + encodeURIComponent(hash[key]);\r\n };\r\n };\r\n\r\n React.useEffect(() => {\r\n dispatch(ACTIONS.set_Customer(\"NoCoutomer\"));\r\n\r\n dispatch(ACTIONS.set_Accounts(\"NoAccount\"));\r\n dispatch(ACTIONS.set_selectedAccount(\"NoAccount\"));\r\n\r\n if (props.create == \"true\") {\r\n setMainScreen(false);\r\n setRegisterScreen(true);\r\n setVerifyPin(false);\r\n }\r\n getPINDigits();\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Site Detatils\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n //Set site details\r\n dispatch(\r\n getSiteDetailsActions.paymentProvider(response.paymentprovider)\r\n );\r\n dispatch(getSiteDetailsActions.set4week(response.usE4WEEKLYFREQUENCY));\r\n\r\n dispatch(\r\n getSiteDetailsActions.uploadImagesToBudget(\r\n response.uploadimagestobudget\r\n )\r\n );\r\n if (response.usesconveniencefee) {\r\n dispatch(\r\n getSiteDetailsActions.convenienceFee(response.conveniencefee)\r\n );\r\n }\r\n dispatch(getSiteDetailsActions.logo(response.logoimageurl));\r\n dispatch(getSiteDetailsActions.footerImage(response.footerimageurl));\r\n dispatch(getSiteDetailsActions.currency(response.sitecurrency));\r\n\r\n let type = response.registrationtype\r\n ? response.registrationtype.toLowerCase()\r\n : null;\r\n setselectedRegistrationType(\r\n type == \"both\" ? \"personal\" : type == \"bothdob\" ? \"mobile\" : type\r\n );\r\n setRegistrationType(type);\r\n setSitename(response.sitename);\r\n setCompanyname(response.companyname);\r\n setAboutus(response.aboutus);\r\n setOfficehours(response.officehours);\r\n setPhonenumber(response.phonenumber);\r\n setAddress(response.address);\r\n setEmail(response.email);\r\n setcustomerCaption(response.custcaption);\r\n dispatch(ACTIONS.set_Site(response));\r\n context.dispatchIntercomKey(\r\n response.chatauth,\r\n response.chatvisible == \"Y\" ? true : false\r\n );\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Site Detatils\", error, context);\r\n }\r\n });\r\n }, [page]);\r\n\r\n const handleClose = () => {\r\n setAlertOpen(false);\r\n };\r\n const changeRegisterType = (e, registrationTypeprop) => {\r\n setselectedRegistrationType(registrationTypeprop);\r\n };\r\n const registerClick = () => {\r\n setMainScreen(false);\r\n setResetPinscreen(false);\r\n setRegisterScreen(true);\r\n setVerifyPin(false);\r\n setNotFound(false);\r\n };\r\n\r\n const ResetPinAndPasswordClick = () => {\r\n setResetPinscreen(true);\r\n setMainScreen(false);\r\n setRegisterScreen(true);\r\n setVerifyPin(false);\r\n setNotFound(false);\r\n };\r\n const loginClick = () => {\r\n setMainScreen(true);\r\n setRegisterScreen(false);\r\n setResetPinscreen(false);\r\n setVerifyPin(false);\r\n setNotFound(false);\r\n };\r\n const submitRegisterForm = (values) => {\r\n var xhr = new XMLHttpRequest();\r\n var data;\r\n var url;\r\n if (\r\n selectedregistrationType == null ||\r\n selectedregistrationType == \"mobile\"\r\n ) {\r\n url = URLS.GetcreateUserAPIUrl;\r\n data = JSON.stringify({\r\n UserName: values.regusername,\r\n Reference: values.customernumber,\r\n MobileNumber: values.phone,\r\n DateOfBirth: values.dob,\r\n Password: values.pass,\r\n ConfirmPassword: values.passconfirm,\r\n });\r\n if (resetPinscreen) {\r\n url = URLS.GetRecreateUserAPIUrl;\r\n }\r\n } else if (selectedregistrationType == \"email\") {\r\n url = URLS.GetcreateUserViaEmailAPIUrl;\r\n data = JSON.stringify({\r\n UserName: values.regusername,\r\n Reference: values.customernumber,\r\n Email: values.email,\r\n DateOfBirth: values.dob,\r\n Password: values.pass,\r\n ConfirmPassword: values.passconfirm,\r\n });\r\n if (resetPinscreen) {\r\n url = URLS.GetRecreateUserViaEmailAPIUrl;\r\n }\r\n } else if (selectedregistrationType == \"business\") {\r\n data = JSON.stringify({\r\n UserName: values.regusername,\r\n Reference: values.customernumber,\r\n Email: values.email,\r\n Password: values.pass,\r\n ConfirmPassword: values.passconfirm,\r\n });\r\n url = URLS.GetCreateBusinesUserAPIUrl;\r\n if (resetPinscreen) {\r\n url = URLS.GetReCreateBusinesUserAPIUrl;\r\n }\r\n } else if (selectedregistrationType == \"personal\") {\r\n data = JSON.stringify({\r\n UserName: values.regusername,\r\n Reference: values.customernumber,\r\n EmailAddress: values.email,\r\n MobileNumber: values.phone,\r\n Password: values.pass,\r\n ConfirmPassword: values.passconfirm,\r\n });\r\n url = URLS.GetCreatePersonalUserAPIUrl;\r\n if (resetPinscreen) {\r\n url = URLS.GetReCreatePersonalUserAPIUrl;\r\n }\r\n }\r\n\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n dispatch(apiActions.loading(false));\r\n\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n const json = JSON.parse(xhr.responseText);\r\n\r\n setretruevedUser(json);\r\n setMainScreen(false);\r\n setRegisterScreen(false);\r\n setVerifyPin(true);\r\n setNotFound(false);\r\n // break;\r\n // case 404:\r\n // var message = \"User not found!\";\r\n // context.stateInfoDialog(\"Register\", message);\r\n // break;\r\n // case 400:\r\n // var errors = JSON.parse(xhr.responseText).errors;\r\n // var message = \"\";\r\n // errors.forEach((element) => (message += element + \"\\n\"));\r\n\r\n // context.stateInfoDialog(\"Register\", message);\r\n // break;\r\n // case 500:\r\n // var errors = JSON.parse(xhr.responseText).errors;\r\n // var message = \"\";\r\n // context.stateInfoDialog(\"Register\", message);\r\n // errors.forEach((element) => (message += element + \"\\n\"));\r\n // break;\r\n // default:\r\n // break;\r\n } else {\r\n ApiErrorHandler(\"Create Account\", xhr, context);\r\n }\r\n }\r\n };\r\n\r\n xhr.send(data);\r\n };\r\n const submitResetForm = (values) => {\r\n var xhr = new XMLHttpRequest();\r\n var url = URLS.GetReset;\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n\r\n var data;\r\n data = JSON.stringify({\r\n Reference: values.resetcustomernumber,\r\n MobileNumber: values.resetphone,\r\n DateOfBirth: values.resetdob,\r\n CredentialToReset: \"Password\",\r\n });\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n const json = JSON.parse(xhr.responseText);\r\n\r\n setMainScreen(false);\r\n setRegisterScreen(false);\r\n setResetPinscreen(false);\r\n setVerifyPin(true);\r\n setNotFound(false);\r\n // break;\r\n // case 404:\r\n // setNotFound(true);\r\n // setMainScreen(false);\r\n // setRegisterScreen(false);\r\n // setResetPinscreen(false);\r\n // setVerifyPin(false);\r\n // break;\r\n // case 400:\r\n // alert(JSON.parse(xhr.responseText));\r\n // break;\r\n // case 500:\r\n // alert(JSON.parse(xhr.responseText));\r\n // break;\r\n // default:\r\n // break;\r\n } else {\r\n ApiErrorHandler(\"Reset\", xhr, context);\r\n }\r\n }\r\n };\r\n\r\n xhr.send(data);\r\n };\r\n const displayDigits = (data) => {\r\n var first = data[0];\r\n setfirstDigitName(first.description);\r\n setfirstDigitValue(first.digit);\r\n var second = data[1];\r\n setsecondDigitName(second.description);\r\n setsecondDigitValue(second.digit);\r\n var third = data[2];\r\n setthirdDigitName(third.description);\r\n setthirdDigitValue(third.digit);\r\n };\r\n const getPINDigits = () => {\r\n var xhr = new XMLHttpRequest();\r\n var url = URLS.GetPINDigitsAPIUrl;\r\n xhr.open(\"GET\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n const json = JSON.parse(xhr.responseText);\r\n\r\n if (json !== null) {\r\n displayDigits(json);\r\n } else {\r\n alert(json);\r\n }\r\n // break;\r\n // case 404:\r\n // context.stateInfoDialog(\"Retrieve pin digits\", xhr.responseText);\r\n // break;\r\n // default:\r\n // context.stateInfoDialog(\"Retrieve pin digits\", xhr.responseText);\r\n // break;\r\n } else {\r\n ApiErrorHandler(\"Retrieve pin digits\", xhr, context);\r\n }\r\n }\r\n };\r\n\r\n xhr.send();\r\n };\r\n const registerForm = useFormik({\r\n initialValues: {\r\n customernumber: \"\",\r\n email: \"\",\r\n regusername: \"\",\r\n phone: \"\",\r\n dob: \"\",\r\n pass: \"\",\r\n passconfirm: \"\",\r\n },\r\n onSubmit: (values) => {\r\n dispatch(apiActions.loading(true));\r\n scrollToTop();\r\n if (values.pass != values.passconfirm) {\r\n context.stateInfoDialog(\r\n \"Create Account\",\r\n \"Passwords and Confirm password do not match!\"\r\n );\r\n return;\r\n }\r\n setRegisterValues(values);\r\n submitRegisterForm(values);\r\n },\r\n });\r\n const resetForm = useFormik({\r\n initialValues: {\r\n resetcustomernumber: \"\",\r\n resetphone: \"\",\r\n resetdob: \"\",\r\n },\r\n onSubmit: (values) => {\r\n setResetValues(values);\r\n submitResetForm(values);\r\n },\r\n });\r\n const scrollToTop = () => {\r\n window.scrollTo({\r\n top: 0,\r\n behavior: \"smooth\", // Optional: Adds smooth scrolling effect\r\n });\r\n };\r\n const getMenu = () => {\r\n var url = URLS.GetWelcomeNavigation;\r\n var token = sessionStorage.getItem(\"access_token\");\r\n\r\n fetch(url, {\r\n method: \"GET\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Welcome Navigation\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data1) => {\r\n dispatch(ACTIONS.set_menu(data1));\r\n\r\n fetch(URLS.GetWelcomeDetails, {\r\n method: \"GET\",\r\n headers: { Authorization: \"Bearer \" + token },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n ApiErrorHandler(\"Get Welcome Details\", res, context);\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data) => {\r\n dispatch(htmlActions.termsQuickPay(data.customer.termsquickpay));\r\n dispatch(htmlActions.termsPlan(data.customer.termsplan));\r\n dispatch(htmlActions.termsDiscount(data.customer.termsdiscount));\r\n\r\n dispatch(\r\n htmlActions.viewOfferText(data.activeAccounts[0].viewoffertext)\r\n );\r\n dispatch(\r\n htmlActions.createPlanText(data.activeAccounts[0].createplantext)\r\n );\r\n dispatch(\r\n htmlActions.createPlantoc(data.activeAccounts[0].createplantoc)\r\n );\r\n dispatch(\r\n htmlActions.createBudgetText(\r\n data.activeAccounts[0].createbudgettext\r\n )\r\n );\r\n dispatch(\r\n htmlActions.viewAccountText(\r\n data.activeAccounts[0].viewacccounttext\r\n )\r\n );\r\n dispatch(ACTIONS.set_Customer(data.customer));\r\n\r\n sessionStorage.setItem(\"user\", data.customer.cufname);\r\n dispatch(\r\n ACTIONS.set_Registration_method(\r\n data.customer.registrationmethod == null\r\n ? data.customer.registrationmethod\r\n : data.customer.registrationmethod.toLowerCase()\r\n )\r\n );\r\n\r\n dispatch(ACTIONS.set_Accounts(data.activeAccounts));\r\n dispatch(ACTIONS.set_num_accounts(data.activeAccounts.length));\r\n\r\n dispatch(ACTIONS.set_Callbacks(data.callbackReasons));\r\n\r\n if (data.activeAccounts.length == 1) {\r\n dispatch(ACTIONS.set_selectedAccount(data.activeAccounts[0]));\r\n }\r\n dispatch(apiActions.clear());\r\n history.replace(data1.targetURL);\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Welcome Details\", error, context);\r\n }\r\n });\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Welcome Navigation\", error, context);\r\n }\r\n });\r\n };\r\n\r\n const Logon = (values, firstPosition, secondPosition, thirdPosition) => {\r\n var xhr = new XMLHttpRequest();\r\n var url = URLS.GetTokenURLAPI;\r\n dispatch(apiActions.loading(true));\r\n var formValues = {\r\n grant_type: \"password\",\r\n username: values.username,\r\n password: values.password,\r\n validatePIN: \"true\",\r\n client_id: \"PaymentPortal\",\r\n firstValue: values.firstValue,\r\n firstPosition: firstPosition,\r\n secondValue: values.secondValue,\r\n secondPosition: secondPosition,\r\n thirdValue: values.thirdValue,\r\n thirdPosition: thirdPosition,\r\n };\r\n\r\n const pairs = Object.keys(formValues).map(makeFormEncoder(formValues));\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/x-www-form-urlencoded\");\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n var json = JSON.parse(xhr.responseText);\r\n var access_token = json.access_token;\r\n var refresh_token = json.refresh_token;\r\n var expires_in_seconds = json.expires_in;\r\n var timeoutDate;\r\n timeoutDate = new Date();\r\n timeoutDate.setSeconds(timeoutDate.getSeconds() + expires_in_seconds);\r\n sessionStorage.setItem(\"user\", values.username);\r\n sessionStorage.setItem(\"expiresAt\", timeoutDate);\r\n sessionStorage.setItem(\"access_token\", access_token);\r\n sessionStorage.setItem(\"refresh_token\", refresh_token);\r\n\r\n getMenu();\r\n\r\n // break;\r\n // case 404:\r\n // dispatch(\r\n // apiActions.error(JSON.parse(xhr.responseText).error_description)\r\n // );\r\n // context.stateInfoDialog(\r\n // \"Login\",\r\n // JSON.parse(xhr.responseText).error_description\r\n // );\r\n // break;\r\n // case 400:\r\n // dispatch(\r\n // apiActions.error(JSON.parse(xhr.responseText).error_description)\r\n // );\r\n // context.stateInfoDialog(\r\n // \"Login\",\r\n // JSON.parse(xhr.responseText).error_description\r\n // );\r\n // break;\r\n // case 500:\r\n // dispatch(\r\n // apiActions.error(JSON.parse(xhr.responseText).error_description)\r\n // );\r\n // context.stateInfoDialog(\r\n // \"Login\",\r\n // JSON.parse(xhr.responseText).error_description\r\n // );\r\n // break;\r\n // default:\r\n // break;\r\n } else {\r\n ApiErrorHandler(\"Sign in\", xhr, context);\r\n let parsedError = JSON.parse(xhr.responseText);\r\n if (\r\n parsedError.error_description === \"User did not enter correct PIN\"\r\n ) {\r\n ResetPins();\r\n }\r\n }\r\n }\r\n };\r\n var postValues = pairs.join(\"&\");\r\n xhr.send(postValues);\r\n };\r\n\r\n const getPinVerification = (values, record, pin) => {\r\n var xhr = new XMLHttpRequest();\r\n var url =\r\n selectedregistrationType == null || selectedregistrationType == \"personal\"\r\n ? URLS.GetVerifyAPIUrl\r\n : URLS.GetVerifyByEmailAPIUrl;\r\n let verifyData = {};\r\n if (selectedregistrationType == \"business\") {\r\n verifyData.id = record.id;\r\n verifyData.userName = values.regusername;\r\n verifyData.emailComfirmed = record.emailConfirmed;\r\n verifyData.emailAddress = record.emailAddress;\r\n verifyData.reference = values.customernumber;\r\n verifyData.customerRecordNo = record.customerRecordNo;\r\n verifyData.pin = pin;\r\n } else {\r\n verifyData.id = record.id;\r\n verifyData.userName = values.regusername;\r\n verifyData.phoneConfirmed = record.phoneConfirmed;\r\n verifyData.mobileNumber = values.phone;\r\n\r\n verifyData.dateOfBirth = values.dob;\r\n\r\n verifyData.reference = values.customernumber;\r\n verifyData.customerRecordNo = record.customerRecordNo;\r\n verifyData.pin = pin;\r\n }\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n setMainScreen(true);\r\n setRegisterScreen(false);\r\n setVerifyPin(false);\r\n\r\n var xhrtoken = new XMLHttpRequest();\r\n var urltoken = URLS.GetTokenURLAPI;\r\n\r\n var valuesPost = {\r\n grant_type: \"password\",\r\n username: values.regusername,\r\n password: values.pass,\r\n validatePIN: \"false\",\r\n client_id: \"PaymentPortal\",\r\n };\r\n // eslint-disable-next-line no-case-declarations\r\n const pairs = Object.entries(valuesPost)\r\n .map(\r\n ([key, value]) =>\r\n `${encodeURIComponent(key)}=${encodeURIComponent(value)}`\r\n )\r\n .join(\"&\");\r\n\r\n xhrtoken.open(\"POST\", urltoken, true);\r\n xhrtoken.setRequestHeader(\r\n \"Content-Type\",\r\n \"application/x-www-form-urlencoded\"\r\n );\r\n xhrtoken.onreadystatechange = function() {\r\n if (xhrtoken.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n var json = JSON.parse(xhrtoken.responseText);\r\n var access_token = json.access_token;\r\n var refresh_token = json.refresh_token;\r\n var expires_in_seconds = json.expires_in;\r\n var timeoutDate;\r\n timeoutDate = new Date();\r\n timeoutDate.setSeconds(\r\n timeoutDate.getSeconds() + expires_in_seconds\r\n );\r\n sessionStorage.setItem(\"expiresAt\", timeoutDate);\r\n sessionStorage.setItem(\"access_token\", access_token);\r\n sessionStorage.setItem(\"refresh_token\", refresh_token);\r\n\r\n getMenu();\r\n // break;\r\n // case 404:\r\n // context.stateInfoDialog(\r\n // \"Login\",\r\n // JSON.parse(xhrtoken.responseText).error_description\r\n // );\r\n // break;\r\n // default:\r\n // context.stateInfoDialog(\"Login\", xhrtoken.responseText);\r\n\r\n // break;\r\n } else {\r\n ApiErrorHandler(\"Sign in\", xhr, context);\r\n }\r\n }\r\n };\r\n xhrtoken.send(pairs);\r\n // break;\r\n // case 404:\r\n // context.stateInfoDialog(\r\n // \"Verify Pin\",\r\n // JSON.parse(xhr.responseText).message\r\n // );\r\n // break;\r\n // default:\r\n // context.stateInfoDialog(\r\n // \"Verify Pin\",\r\n // JSON.parse(xhr.responseText).message\r\n // );\r\n // break;\r\n } else {\r\n ApiErrorHandler(\" Verify PIN\", xhr, context);\r\n }\r\n }\r\n };\r\n\r\n xhr.send(JSON.stringify(verifyData));\r\n };\r\n\r\n const LoginForm = useFormik({\r\n initialValues: {\r\n username: \"\",\r\n password: \"\",\r\n firstValue: \"\",\r\n secondValue: \"\",\r\n thirdValue: \"\",\r\n },\r\n onSubmit: (values) => {\r\n Logon(values, firstDigitValue, secondDigitValue, thirdDigitValue);\r\n },\r\n });\r\n React.useEffect(() => {\r\n if (\r\n document.activeElement !== focusUsername &&\r\n document.activeElement !== focusPass\r\n ) {\r\n if (\r\n LoginForm.values.firstValue.length !== 1 &&\r\n (LoginForm.values.secondValue.length === 1 ||\r\n LoginForm.values.thirdValue.length === 1)\r\n ) {\r\n focusFirst.focus();\r\n }\r\n if (\r\n LoginForm.values.firstValue.length === 1 &&\r\n LoginForm.values.secondValue.length !== 1\r\n ) {\r\n focusSecond.focus();\r\n }\r\n\r\n if (\r\n LoginForm.values.firstValue.length === 1 &&\r\n LoginForm.values.secondValue.length === 1 &&\r\n LoginForm.values.thirdValue.length !== 1\r\n ) {\r\n focusThird.focus();\r\n }\r\n if (\r\n LoginForm.values.firstValue.length === 1 &&\r\n LoginForm.values.secondValue.length === 1 &&\r\n LoginForm.values.thirdValue.length === 1\r\n ) {\r\n var isFocused =\r\n document.activeElement === focusSecond ||\r\n document.activeElement === focusFirst ||\r\n document.activeElement === focusThird;\r\n if (isFocused) {\r\n focusButton.focus();\r\n }\r\n }\r\n }\r\n }, [LoginForm.values]);\r\n const verifyPinForm = useFormik({\r\n initialValues: {\r\n pinnum: \"\",\r\n },\r\n onSubmit: (values) => {\r\n getPinVerification(registerValues, retruevedUser, values.pinnum);\r\n },\r\n });\r\n const changePinForm = useFormik({\r\n initialValues: {\r\n OldPin: \"\",\r\n NewPin: \"\",\r\n ConfirmPIN: \"\",\r\n SecurityCode: \"\",\r\n Reference: \"\",\r\n MobileNumber: \"\",\r\n DateOfBirth: \"\",\r\n },\r\n onSubmit: (values) => {},\r\n });\r\n\r\n return (\r\n
\r\n \r\n Information\r\n \r\n \r\n {alertText}\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n

\r\n verified_user Make a payment towards your\r\n account{\" \"}\r\n

\r\n

\r\n verified_user View your account online\r\n

\r\n\r\n

\r\n verified_user Choose your own payment plans\r\n

\r\n\r\n

\r\n verified_user Talk to us, we can help!\r\n

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

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

\r\n {firstDigitName} DIGIT OF PIN\r\n

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

\r\n {secondDigitName} DIGIT OF PIN\r\n

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

\r\n {thirdDigitName} DIGIT OF PIN\r\n

\r\n \r\n
\r\n
\r\n
\r\n \r\n SIGN IN\r\n \r\n
\r\n\r\n
\r\n {\"Don’t have account? Sign up\"}{\" \"}\r\n registerClick(null)}\r\n className={classes.LinkHome}\r\n color=\"inherit\"\r\n >\r\n {\" \"}\r\n here.\r\n \r\n
\r\n
\r\n ResetPinAndPasswordClick(null)}\r\n className={classes.LinkHome}\r\n color=\"inherit\"\r\n >\r\n {\" \"}\r\n Forgotten Password/Username\r\n \r\n
\r\n
\r\n {\"Can't Sign in? Call \" + phonenumber}\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n

\r\n {resetPinscreen\r\n ? \"Forgotten Password/Username\"\r\n : \"Create Account\"}{\" \"}\r\n

\r\n

\r\n Fill in the form below to get instant access.\r\n

\r\n {registrationType == \"both\" ||\r\n registrationType == \"bothdob\" ? (\r\n \r\n \r\n {\" \"}\r\n }\r\n label={\r\n registrationType == \"bothdob\"\r\n ? \"Mobile Phone\"\r\n : \"Personal\"\r\n }\r\n labelPlacement=\"top\"\r\n />\r\n }\r\n label={\r\n registrationType == \"bothdob\"\r\n ? \"Email\"\r\n : \"Business\"\r\n }\r\n labelPlacement=\"top\"\r\n />{\" \"}\r\n \r\n \r\n ) : null}\r\n \r\n {registrationType == \"bothdob\" ? (\r\n selectedregistrationType == \"mobile\" ? (\r\n <>\r\n {\" \"}\r\n \r\n \r\n \r\n ) : selectedregistrationType == \"email\" ? (\r\n <>\r\n {\" \"}\r\n \r\n \r\n \r\n ) : null\r\n ) : selectedregistrationType == \"business\" ? (\r\n \r\n ) : selectedregistrationType == null ? (\r\n <>\r\n {\" \"}\r\n \r\n \r\n \r\n ) : (\r\n \r\n )}\r\n\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n Back to 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\n \r\n \r\n \r\n \r\n \r\n

\r\n

Verify Pin

\r\n

\r\n Please enter the PIN number you received via{\" \"}\r\n {selectedregistrationType == null ||\r\n selectedregistrationType == \"personal\"\r\n ? \"SMS\"\r\n : \"email\"}\r\n

\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n Back to 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\n \r\n \r\n \r\n \r\n

The user is not Not Found

\r\n \r\n Back to 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\n","import {\r\n defaultFont,\r\n primaryColor,\r\n infoColor,\r\n successColor,\r\n warningColor,\r\n dangerColor,\r\n roseColor,\r\n grayColor\r\n} from \"assets/jss/xrs.js\";\r\n\r\nconst typographyStyle = {\r\n defaultFontStyle: {\r\n ...defaultFont,\r\n fontSize: \"14px\"\r\n },\r\n defaultHeaderMargins: {\r\n marginTop: \"20px\",\r\n marginBottom: \"10px\"\r\n },\r\n quote: {\r\n padding: \"10px 20px\",\r\n margin: \"0 0 20px\",\r\n fontSize: \"1.25rem\",\r\n borderLeft: \"5px solid \" + grayColor[2]\r\n },\r\n quoteText: {\r\n margin: \"0 0 10px\",\r\n fontStyle: \"italic\"\r\n },\r\n quoteAuthor: {\r\n display: \"block\",\r\n fontSize: \"80%\",\r\n lineHeight: \"1.42857143\",\r\n color: grayColor[10]\r\n },\r\n mutedText: {\r\n \"&, & *\": {\r\n color: grayColor[7],\r\n display: \"inline-block\"\r\n }\r\n },\r\n primaryText: {\r\n \"&, & *\": {\r\n color: primaryColor[0],\r\n display: \"inline-block\"\r\n }\r\n },\r\n infoText: {\r\n \"&, & *\": {\r\n color: infoColor[0],\r\n display: \"inline-block\"\r\n }\r\n },\r\n successText: {\r\n \"&, & *\": {\r\n color: successColor[0],\r\n display: \"inline-block\"\r\n }\r\n },\r\n warningText: {\r\n \"&, & *\": {\r\n color: warningColor[0],\r\n display: \"inline-block\"\r\n }\r\n },\r\n dangerText: {\r\n \"&, & *\": {\r\n color: dangerColor[0],\r\n display: \"inline-block\"\r\n }\r\n },\r\n roseText: {\r\n \"&, & *\": {\r\n color: roseColor[0],\r\n display: \"inline-block\"\r\n }\r\n },\r\n smallText: {\r\n fontSize: \"65%\",\r\n fontWeight: \"400\",\r\n lineHeight: \"1\",\r\n color: grayColor[10]\r\n }\r\n};\r\n\r\nexport default typographyStyle;\r\n","import React from \"react\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n// core components\r\nimport styles from \"assets/jss/xrs/components/typographyStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Success(props) {\r\n const { children } = props;\r\n const classes = useStyles();\r\n return (\r\n
\r\n {children}\r\n
\r\n );\r\n}\r\n\r\nSuccess.propTypes = {\r\n children: PropTypes.node\r\n};\r\n","import {\r\n primaryColor,\r\n primaryDarkColor,\r\n successColor,\r\n dangerColor,\r\n primaryBoxShadow,\r\n} from \"assets/jss/xrs.js\";\r\nconst fabStyle = {\r\n fabCameraContainer: {\r\n position: \"fixed\",\r\n bottom: \"50px\",\r\n left: \"50%\",\r\n marginLeft: \"-40px\",\r\n zIndex: \"999\",\r\n cursor: \"pointer\",\r\n },\r\n fabReturnContainer: {\r\n position: \"fixed\",\r\n bottom: \"50px\",\r\n marginLeft: \"-30px\",\r\n\r\n left: \"30%\",\r\n zIndex: \"999\",\r\n cursor: \"pointer\",\r\n },\r\n fabChangeCameraContainer: {\r\n position: \"fixed\",\r\n bottom: \"50px\",\r\n left: \"70%\",\r\n marginLeft: \"-30px\",\r\n\r\n zIndex: \"999\",\r\n cursor: \"pointer\",\r\n },\r\n fabIconHolder: {\r\n width: \"50px\",\r\n height: \"50px\",\r\n borderRadius: \"100%\",\r\n background: \"#016fb9\",\r\n boxShadow: \"0 6px 20px rgba(0,0,0,0.2)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: primaryColor[0],\r\n ...primaryBoxShadow,\r\n },\r\n \"& i\": {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n justifyContent: \"center\",\r\n height: \"100%\",\r\n fontStyle: \"25px\",\r\n color: \"#ffffff\",\r\n },\r\n },\r\n fab: {\r\n \"&:hover,&:focus\": {\r\n backgroundColor: primaryColor[0],\r\n },\r\n width: \"80px\",\r\n height: \"80px\",\r\n backgroundColor: primaryDarkColor[0],\r\n },\r\n fabReturn: {\r\n \"&:hover,&:focus\": {\r\n backgroundColor: primaryColor[0],\r\n },\r\n width: \"60px\",\r\n height: \"60px\",\r\n backgroundColor: primaryDarkColor[0],\r\n },\r\n fabLike: {\r\n \"&:hover,&:focus\": {\r\n backgroundColor: successColor[5],\r\n ...primaryBoxShadow,\r\n },\r\n width: \"60px\",\r\n height: \"60px\",\r\n backgroundColor: successColor[0],\r\n },\r\n fabDislike: {\r\n \"&:hover,&:focus\": {\r\n backgroundColor: dangerColor[5],\r\n ...primaryBoxShadow,\r\n },\r\n width: \"60px\",\r\n height: \"60px\",\r\n backgroundColor: dangerColor[0],\r\n },\r\n};\r\nexport default fabStyle;\r\n","import React from \"react\";\r\nimport styles from \"assets/jss/xrs/components/fabCameraStyle.js\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport CommentOutlinedIcon from \"@material-ui/icons/CommentOutlined\";\r\nimport InsertDriveFileOutlinedIcon from \"@material-ui/icons/InsertDriveFileOutlined\";\r\nimport CameraAltIcon from \"@material-ui/icons/CameraAlt\";\r\nimport FlipToFrontIcon from \"@material-ui/icons/FlipToFront\";\r\nimport KeyboardReturnIcon from \"@material-ui/icons/KeyboardReturn\";\r\nimport DoneIcon from \"@material-ui/icons/Done\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\n\r\nimport { cameraActions } from \"../../store/redux/redux-actions/redux_actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { isMobile } from \"react-device-detect\";\r\nconst useStyles = makeStyles(styles);\r\nexport default function FabOpenedCamera({ changeCamera, capturePicture }) {\r\n const classes = useStyles();\r\n const openCamera = useSelector((state) => state.CameraReducer.openFrom);\r\n const image = useSelector((state) => state.CameraReducer.capturedImage);\r\n const documents = useSelector((state) => state.CameraReducer.confirmedImages);\r\n const uploadimagestobudget = useSelector(\r\n (state) => state.GetSiteDetailsReducer.uploadimagestobudget\r\n );\r\n const [numberOfCameras, setNumberOfCameras] = React.useState(0);\r\n function closeFullscreen() {\r\n if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n } else if (document.webkitExitFullscreen) {\r\n /* Safari */\r\n document.webkitExitFullscreen();\r\n } else if (document.msExitFullscreen) {\r\n /* IE11 */\r\n document.msExitFullscreen();\r\n }\r\n }\r\n React.useEffect(() => {\r\n if (uploadimagestobudget && isMobile) {\r\n navigator.mediaDevices.getUserMedia({ video: true });\r\n navigator.mediaDevices.enumerateDevices().then((devices) => {\r\n var amount = 0;\r\n devices.map((item) => {\r\n if (item.kind === \"videoinput\") {\r\n amount++;\r\n }\r\n });\r\n\r\n setNumberOfCameras(amount);\r\n });\r\n }\r\n }, []);\r\n\r\n const dispatch = useDispatch();\r\n if (openCamera === \"\" ? false : true) {\r\n if (image === \"\") {\r\n return (\r\n <>\r\n {\r\n capturePicture();\r\n }}\r\n className={classes.fabCameraContainer}\r\n >\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n {\r\n dispatch(cameraActions.openCamera(\"\"));\r\n closeFullscreen();\r\n }}\r\n className={classes.fabReturnContainer}\r\n >\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n {numberOfCameras > 1 ? (\r\n {\r\n changeCamera();\r\n }}\r\n className={classes.fabChangeCameraContainer}\r\n >\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n ) : null}\r\n \r\n );\r\n } else {\r\n return (\r\n <>\r\n {\r\n var blob = new Blob([image], { type: \"image/jpeg\" });\r\n let document = {\r\n from: openCamera.from,\r\n itemId: openCamera.itemId,\r\n document: blob,\r\n preview: image,\r\n name: openCamera.name + \" - Picture\",\r\n };\r\n let exists = documents.find(\r\n (element) =>\r\n element.from == openCamera.from &&\r\n element.itemId == openCamera.itemId\r\n );\r\n if (exists) {\r\n dispatch(cameraActions.deleteDocument(exists));\r\n }\r\n dispatch(cameraActions.addCapturedImage(document));\r\n dispatch(cameraActions.openCamera(\"\"));\r\n dispatch(cameraActions.setCapturedImage(\"\"));\r\n closeFullscreen();\r\n }}\r\n className={classes.fabReturnContainer}\r\n >\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n {\r\n dispatch(cameraActions.setCapturedImage(\"\"));\r\n }}\r\n className={classes.fabChangeCameraContainer}\r\n >\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n );\r\n }\r\n } else return null;\r\n}\r\n","import React from \"react\";\r\nimport Webcam from \"react-webcam\";\r\nimport FabOpenedCamera from \"components/Fab/FabOpenedCamera.js\";\r\nimport { cameraActions } from \"../../store/redux/redux-actions/redux_actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nconst videoConstraints = {\r\n facingMode: \"environment\",\r\n};\r\n\r\nconst CustomCamera = () => {\r\n const webcamRef = React.useRef(null);\r\n const image = useSelector((state) => state.CameraReducer.capturedImage);\r\n const dispatch = useDispatch();\r\n const [changeCamera, setChangeCamera] = React.useState(false);\r\n const size = useWindowSize();\r\n\r\n const isLandscape = size.height <= size.width;\r\n const ratio = isLandscape\r\n ? size.width / size.height\r\n : size.width / size.height;\r\n\r\n const capture = React.useCallback(() => {\r\n const imageSrc = webcamRef.current.getScreenshot();\r\n dispatch(cameraActions.setCapturedImage(imageSrc));\r\n }, [webcamRef]);\r\n const switchCamera = () => {\r\n setChangeCamera(!changeCamera);\r\n\r\n if (!changeCamera === true) {\r\n videoConstraints.facingMode = \"user\";\r\n } else {\r\n videoConstraints.facingMode = \"environment\";\r\n }\r\n };\r\n return (\r\n <>\r\n {image === \"\" ? (\r\n \r\n ) : (\r\n \r\n )}\r\n\r\n \r\n \r\n );\r\n};\r\n\r\nexport function useWindowSize() {\r\n // Initialize state with undefined width/height so server and client renders match\r\n // Learn more here: https://joshwcomeau.com/react/the-perils-of-rehydration/\r\n const [windowSize, setWindowSize] = React.useState({\r\n width: undefined,\r\n height: undefined,\r\n });\r\n React.useEffect(() => {\r\n // Handler to call on window resize\r\n function handleResize() {\r\n // Set window width/height to state\r\n setWindowSize({\r\n width: window.innerWidth,\r\n height: window.innerHeight,\r\n });\r\n }\r\n // Add event listener\r\n window.addEventListener(\"resize\", handleResize);\r\n // Call handler right away so state gets updated with initial window size\r\n handleResize();\r\n // Remove event listener on cleanup\r\n return () => window.removeEventListener(\"resize\", handleResize);\r\n }, [window.innerWidth]);\r\n return windowSize;\r\n}\r\n\r\nexport default CustomCamera;\r\n","import React, { useContext } from \"react\";\r\nimport classNames from \"classnames\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Parallax from \"components/Parallax/Parallax.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport { useFormik } from \"formik\";\r\nimport history from \"../../utils/history\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport FooterSection from \"../../views/SectionsPage/Sections/FooterSection.js\";\r\nimport HeaderSection from \"../../views/SectionsPage/Sections/HeaderSection.js\";\r\nimport LinkSection from \"../../views/SectionsPage/Sections/LinksSection.js\";\r\nimport TextField from \"components/CustomInput/CustomInput.js\";\r\nimport Iframe from \"react-iframe\";\r\nimport fnmoment from \"moment\";\r\nimport Context from \"../../utils/context\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport * as ACTIONS from \"../../store/actions/actions\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\r\nimport {\r\n Radio,\r\n RadioGroup,\r\n FormControlLabel,\r\n FormControl,\r\n FormLabel,\r\n} from \"@material-ui/core\";\r\n\r\nimport {\r\n apiActions,\r\n getSiteDetailsActions,\r\n htmlActions,\r\n} from \"../../store/redux/redux-actions/redux_actions\";\r\n\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogContentText from \"@material-ui/core/DialogContentText\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\nimport LinearProgress from \"@material-ui/core/LinearProgress\";\r\nimport Fade from \"@material-ui/core/Fade\";\r\n\r\nimport Link from \"@material-ui/core/Link\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport ReactHtmlParser, {\r\n processNodes,\r\n convertNodeToElement,\r\n htmlparser2,\r\n} from \"react-html-parser\";\r\n\r\nimport {\r\n BrowserView,\r\n MobileView,\r\n isBrowser,\r\n isMobile,\r\n} from \"react-device-detect\";\r\n\r\nimport { Collapse } from \"@material-ui/core\";\r\n\r\nimport html2canvas from \"html2canvas\";\r\nimport Success from \"components/Typography/Success\";\r\nimport { useWindowSize } from \"components/camera/Camera\";\r\nimport { textVariables } from \"assets/jss/xrs\";\r\n// import { useLocation } from \"react-router-dom\";\r\n\r\nfunction useQuery(location) {\r\n return new URLSearchParams(location.search);\r\n}\r\nconst useStyles = makeStyles(landingPageStyle);\r\nlet eventListenerCopy = null;\r\nexport default function QuickPayPage({ location }) {\r\n const dispatch = useDispatch();\r\n const query = useQuery(location);\r\n\r\n const [page, setPage] = React.useState(1);\r\n const [disableButton, setdisableButton] = React.useState(false);\r\n\r\n const [ifamevisible, setIfamevisible] = React.useState(false);\r\n const [sitename, setSitename] = React.useState(\"\");\r\n const [companyname, setCompanyname] = React.useState(\"\");\r\n const [aboutus, setAboutus] = React.useState(\"\");\r\n const [address, setAddress] = React.useState(\"\");\r\n const [officehours, setOfficehours] = React.useState(\"\");\r\n const [phonenumber, setPhonenumber] = React.useState(\"\");\r\n\r\n const [email, setEmail] = React.useState(\"\");\r\n const loading = useSelector((state) => state.ApiCallsReducer.loading);\r\n const currency = useSelector((state) => state.GetSiteDetailsReducer.currency);\r\n const paymentProvider = useSelector(\r\n (state) => state.GetSiteDetailsReducer.paymentProvider\r\n );\r\n const convenienceFee = useSelector(\r\n (state) => state.GetSiteDetailsReducer.convenienceFee\r\n );\r\n const [registrationType, setRegistrationType] = React.useState(\"both\");\r\n const [\r\n selectedregistrationType,\r\n setselectedRegistrationType,\r\n ] = React.useState(null);\r\n\r\n const [useSSN, setSSN] = React.useState(false);\r\n\r\n const context = useContext(Context);\r\n\r\n const [minimumPayAmount, setMinimumPayAmount] = React.useState(\"\");\r\n const [minimumDob, setMinimumDob] = React.useState(\"\");\r\n const [maximumDob, setMaximumDob] = React.useState(\"\");\r\n\r\n const [alertOpen, setAlertOpen] = React.useState(false);\r\n const [alertText, setAlertText] = React.useState(false);\r\n const [quickPayText, setQuickPayText] = React.useState(\"\");\r\n const [paymentgatewayurl, setPaymentgatewayurl] = React.useState(\"\");\r\n\r\n const [showQuickPay, setShowQuickPay] = React.useState(true);\r\n const [termsClicked, setTermsCliked] = React.useState(false);\r\n const [termsText, setTermsText] = React.useState(\"\");\r\n const [termsApiText, setTermsApiText] = React.useState(\"\");\r\n const [selectedDate, setSelectedDate] = React.useState(\"Test\");\r\n const [screenTake, setScreenTakte] = React.useState(\"date\");\r\n const [screenstate, setScreenstate] = React.useState({ screenshot: \"\" });\r\n const [customerCaption, setcustomerCaption] = React.useState(\"\");\r\n const [quickPayAPIData, setquickPayAPIData] = React.useState(undefined);\r\n\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n if (quickPayAPIData) {\r\n window.addEventListener(\"message\", tabaPayMessage, false);\r\n }\r\n return () => {\r\n window.removeEventListener(\"message\", tabaPayMessage);\r\n };\r\n }, [quickPayAPIData]);\r\n\r\n const HideIframe = () => {\r\n setIfamevisible(false);\r\n };\r\n const ShowIframe = () => {\r\n setIfamevisible(true);\r\n };\r\n const handleTermsMobile = () => {\r\n setShowQuickPay(false);\r\n };\r\n const HandleTermsClicked = (e) => {\r\n if (e.target.checked) {\r\n setTermsText(\"I agree with the \");\r\n }\r\n setTermsCliked(e.target.checked);\r\n setShowQuickPay(true);\r\n };\r\n const changeRegisterType = (e, registrationTypeprop) => {\r\n setselectedRegistrationType(registrationTypeprop);\r\n };\r\n React.useEffect(() => {\r\n window.RealexHpp = null;\r\n\r\n const script = document.createElement(\"script\");\r\n script.src = \"rxp-js.js\";\r\n script.async = true;\r\n document.body.appendChild(script);\r\n dispatch(ACTIONS.set_Customer(\"NoCustomer\"));\r\n\r\n dispatch(ACTIONS.set_Accounts(\"NoAccount\"));\r\n dispatch(ACTIONS.set_selectedAccount(\"NoAccount\"));\r\n\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Welcome Details\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n dispatch(getSiteDetailsActions.logo(response.logoimageurl));\r\n dispatch(getSiteDetailsActions.footerImage(response.footerimageurl));\r\n dispatch(getSiteDetailsActions.currency(response.sitecurrency));\r\n dispatch(\r\n getSiteDetailsActions.uploadImagesToBudget(\r\n response.uploadimagestobudget\r\n )\r\n );\r\n dispatch(getSiteDetailsActions.set4week(response.usE4WEEKLYFREQUENCY));\r\n\r\n let type = response.registrationtype\r\n ? response.registrationtype.toLowerCase()\r\n : null;\r\n dispatch(\r\n getSiteDetailsActions.uploadImagesToBudget(\r\n response.uploadimagestobudget\r\n )\r\n );\r\n if (response.usesconveniencefee) {\r\n setQuickPayText(response.quickpaytext);\r\n dispatch(\r\n getSiteDetailsActions.convenienceFee(response.conveniencefee)\r\n );\r\n }\r\n setselectedRegistrationType(\r\n type == \"both\" ? \"personal\" : type == \"bothdob\" ? null : type\r\n );\r\n setRegistrationType(type);\r\n setPaymentgatewayurl(response.paymentgatewayurl);\r\n setSSN(response.quickpayusessn);\r\n setSitename(response.sitename);\r\n setCompanyname(response.companyname);\r\n setAboutus(response.aboutus);\r\n setOfficehours(response.officehours);\r\n setPhonenumber(response.phonenumber);\r\n setAddress(response.address);\r\n setEmail(response.email);\r\n setMinimumPayAmount(response.minquickpay);\r\n setTermsApiText(response.termsquickpay);\r\n var date = fnmoment(new Date()).add(-110, \"years\");\r\n var maxdate = fnmoment(new Date()).add(-16, \"years\");\r\n setcustomerCaption(response.custcaption);\r\n setMinimumDob(fnmoment(date).format(\"YYYY-MM-DD\"));\r\n setMaximumDob(fnmoment(maxdate).format(\"YYYY-MM-DD\"));\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Site Detatils\", error, context);\r\n }\r\n });\r\n return () => {\r\n document.body.removeChild(script);\r\n window.RealexHpp = null;\r\n if (eventListenerCopy != null) {\r\n window.removeEventListener(\"message\", eventListenerCopy, false);\r\n }\r\n };\r\n }, []);\r\n const formik = useFormik({\r\n initialValues: {\r\n referencenum: query.get(\"Member\") || \"\",\r\n phone: query.get(\"Mobile\") || \"\",\r\n dob: query.get(\"DOB\") || \"\",\r\n email: \"\",\r\n amount: 0,\r\n SSN: \"\",\r\n },\r\n onSubmit: (values) => {\r\n if (isMobile) {\r\n if (termsClicked) {\r\n setdisableButton(true);\r\n\r\n setImageBase64(values);\r\n } else {\r\n setShowQuickPay(false);\r\n }\r\n } else {\r\n setdisableButton(true);\r\n\r\n setImageBase64(values);\r\n }\r\n },\r\n });\r\n\r\n const displayMessage = (evt) => {\r\n //alert(\"I got \" + evt.data + \" from \" + evt.origin);\r\n };\r\n const RedirectResponse = (RedirecURL) => {\r\n history.push(RedirecURL);\r\n };\r\n const RelalexInit = (values) => {\r\n window.RealexHpp.setHppUrl(paymentgatewayurl);\r\n eventListenerCopy = window.RealexHpp.embedded.init(\r\n \"payButtonId\",\r\n \"paymentIframeID\",\r\n URLS.GetRelexPostBackAPIURL,\r\n values,\r\n RedirectResponse\r\n );\r\n\r\n //window.RealexHpp.lightbox.init(\"payButtonId\", \"http://api.xrs.ie/XRSPaymentPortal/api/HppResponse/RealexResult\", values);\r\n };\r\n\r\n const submitForm = (values, screen) => {\r\n const xhr = new XMLHttpRequest();\r\n var data;\r\n var Reference = values.referencenum;\r\n var MobileNumber = values.phone;\r\n var DateOfBirth = values.dob;\r\n var Email = values.email;\r\n const ssn = values.SSN;\r\n\r\n var Amount = values.amount + convenienceFee;\r\n var url =\r\n selectedregistrationType == null\r\n ? URLS.GetQuickPayAPIUrl\r\n : selectedregistrationType == \"personal\"\r\n ? URLS.QuickPayPersonal\r\n : URLS.QuickPayBusiness;\r\n if (useSSN == \"Y\") {\r\n url = URLS.GetQuickPaySSNAPIUrl;\r\n data = JSON.stringify({\r\n Reference: Reference,\r\n SSN: ssn,\r\n DateOfBirth: DateOfBirth,\r\n Amount: Amount,\r\n ScreenShot: screen,\r\n });\r\n } else {\r\n if (selectedregistrationType == null) {\r\n data = JSON.stringify({\r\n Reference: Reference,\r\n MobileNumber: MobileNumber,\r\n DateOfBirth: DateOfBirth,\r\n Amount: Amount,\r\n ScreenShot: screen,\r\n });\r\n } else if (selectedregistrationType == \"personal\") {\r\n data = JSON.stringify({\r\n Reference: Reference,\r\n MobileNumber: MobileNumber,\r\n Amount: Amount,\r\n ScreenShot: screen,\r\n });\r\n } else {\r\n data = JSON.stringify({\r\n Reference: Reference,\r\n emailAddress: Email,\r\n Amount: Amount,\r\n ScreenShot: screen,\r\n });\r\n }\r\n }\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n\r\n dispatch(apiActions.loading(true));\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n dispatch(apiActions.loading(false));\r\n\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n var json = JSON.parse(xhr.responseText);\r\n\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n setquickPayAPIData(json);\r\n } else {\r\n RelalexInit(json);\r\n }\r\n if (isMobile) {\r\n setShowQuickPay(false);\r\n }\r\n setIfamevisible(true);\r\n window.scrollTo(0, 0);\r\n } else {\r\n setdisableButton(false);\r\n\r\n ApiErrorHandler(\"Quick Pay\", xhr, context);\r\n }\r\n }\r\n };\r\n try {\r\n xhr.send(data);\r\n } catch (err) {\r\n dispatch(apiActions.loading(false));\r\n\r\n ApiErrorHandler(\"Quick Pay\", err, context);\r\n }\r\n };\r\n var tabaPayMessage = function(event) {\r\n //Check if it is from TabaPay\r\n let iframe = document.getElementById(\"SSO\");\r\n\r\n if (typeof event.data === \"string\") {\r\n if (event.data != \"Close\") {\r\n if (event.data.slice(0, 7) == \"Error: \") {\r\n // Error\r\n } else {\r\n var asData = event.data.split(\"|\");\r\n if (asData.length == 3) {\r\n let quickPayData = quickPayAPIData;\r\n quickPayData.LASTDIGITS = asData[0];\r\n quickPayData.EXPIRATIONDATE = asData[1];\r\n quickPayData.CARDTOKEN = asData[2];\r\n fetch(URLS.QuickPayResultTabaPay, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(quickPayData),\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n setdisableButton(false);\r\n\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Quick Pay\", data, context);\r\n });\r\n if (res.status == 410) {\r\n iframe.src = iframe.src;\r\n formik.handleSubmit();\r\n }\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n history.push(response.REDIRECTURL);\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Quick Pay\", error, context);\r\n }\r\n });\r\n } else {\r\n // Data Error\r\n }\r\n }\r\n } else {\r\n setIfamevisible(false);\r\n setdisableButton(false);\r\n window.removeEventListener(\"message\", tabaPayMessage);\r\n iframe.src = iframe.src;\r\n }\r\n }\r\n };\r\n const setImageBase64 = (values) => {\r\n html2canvas(document.querySelector(\"#screen\"), {\r\n width: 800,\r\n backgroundColor: \"#ffffff\",\r\n height: 600,\r\n }).then((canvas) => {\r\n const newScreenshot = canvas.toDataURL(\"image/png\");\r\n //document.getElementById(\"screen\").appendChild(canvas);\r\n setScreenstate({ newScreenshot });\r\n submitForm(values, newScreenshot);\r\n });\r\n };\r\n const handleClickOpen = () => {\r\n setAlertOpen(true);\r\n };\r\n\r\n const handleClose = () => {\r\n setAlertOpen(false);\r\n };\r\n const classes = useStyles();\r\n return (\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

Pay Now

\r\n {quickPayText != \"\" ? (\r\n ReactHtmlParser(quickPayText)\r\n ) : (\r\n <>\r\n {\" \"}\r\n

Fill in the form with your account details.

\r\n

\r\n You will then be redirected to a secure payment\r\n page to complete the payment.\r\n

\r\n \r\n )}\r\n\r\n {registrationType == \"both\" ? (\r\n \r\n \r\n {\" \"}\r\n }\r\n label=\"Personal\"\r\n labelPlacement=\"top\"\r\n />\r\n }\r\n label=\"Business\"\r\n labelPlacement=\"top\"\r\n />{\" \"}\r\n \r\n \r\n ) : null}\r\n \r\n {useSSN != \"Y\" ? (\r\n \r\n ) : null}\r\n\r\n {useSSN == \"Y\" ? (\r\n <>\r\n {\" \"}\r\n \r\n \r\n \r\n ) : selectedregistrationType == \"business\" ? (\r\n \r\n ) : selectedregistrationType == null ? (\r\n <>\r\n {\" \"}\r\n \r\n \r\n \r\n ) : (\r\n \r\n )}\r\n\r\n \r\n {convenienceFee == 0 ? null : (\r\n
\r\n \r\n Debit amount is{\" \"}\r\n \r\n \r\n {currency + \" \"}\r\n {formik.values.amount\r\n ? formik.values.amount + convenienceFee\r\n : 0}\r\n \r\n
\r\n )}\r\n \r\n \r\n }\r\n label=\"I agree with the Terms and Conditions\"\r\n />\r\n \r\n \r\n \r\n {\" \"}\r\n {termsText} Terms and Conditions\r\n \r\n \r\n
\r\n \r\n PAY NOW\r\n \r\n \r\n REALEX NOW\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n

\r\n {ReactHtmlParser(termsApiText)}\r\n
\r\n
\r\n \r\n \r\n

\r\n {ReactHtmlParser(termsApiText)}\r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n
\r\n
\r\n \r\n {paymentProvider.toUpperCase() == \"TABAPAY\" ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n





\r\n
\r\n \r\n \r\n
\r\n );\r\n}\r\n","const quickPaymentStyle = {\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 20,\r\n },\r\n visible: {\r\n display: \"box\",\r\n },\r\n hide: {\r\n display: \"none\",\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n },\r\n Title: {\r\n textAlign: \"center\",\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n blue: {\r\n backgroundColor: \"#0065a4\",\r\n borderRadius: 0,\r\n color: \"#ffffff\",\r\n padding: 10,\r\n textAlign: \"center\",\r\n fontWeight: 500,\r\n fontSize: 18,\r\n },\r\n green: {\r\n backgroundColor: \"#ffffff;\",\r\n borderRadius: 0,\r\n padding: 10,\r\n textAlign: \"center\",\r\n fontWeight: 500,\r\n fontSize: 19,\r\n paddingTop: 30,\r\n color: \"#0065a4\",\r\n },\r\n blueBox: {\r\n paddingLeft: 50,\r\n paddingRight: 50,\r\n paddingBottom: 10,\r\n borderRadius: 4,\r\n },\r\n DiscountBlue: {\r\n color: \"#0065a4\",\r\n textAlign: \"center\",\r\n paddingTop: 10,\r\n fontWeight: 500,\r\n fontSize: 16,\r\n },\r\n DiscountGreen: {\r\n color: \"#4caf50\",\r\n textAlign: \"center\",\r\n padding: 25,\r\n fontWeight: 500,\r\n fontSize: 16,\r\n },\r\n DiscountItem: {\r\n textAlign: \"center\",\r\n padding: 14,\r\n fontWeight: 500,\r\n margin: 1,\r\n fontSize: 16,\r\n backgroundColor: \"#e6f2e6\",\r\n Border: \"none\",\r\n borderRadius: 4,\r\n },\r\n DiscountItemRed: {\r\n textAlign: \"center\",\r\n padding: 14,\r\n fontWeight: 500,\r\n margin: 1,\r\n fontSize: 16,\r\n backgroundColor: \"#ffe5e5\",\r\n Border: \"none\",\r\n borderRadius: 4,\r\n },\r\n AmmountItemRed: {\r\n textAlign: \"center\",\r\n padding: 14,\r\n fontWeight: 500,\r\n margin: 1,\r\n fontSize: 40,\r\n backgroundColor: \"#ffe5e5\",\r\n Border: \"none\",\r\n Radiusradius: 4,\r\n },\r\n AmmountItem: {\r\n textAlign: \"center\",\r\n padding: 14,\r\n fontWeight: 500,\r\n margin: 1,\r\n fontSize: 40,\r\n backgroundColor: \"#e6f2e6\",\r\n Border: \"none\",\r\n Radiusradius: 4,\r\n },\r\n footer: {\r\n backgroundColor: \"#4caf50\",\r\n fontSize: 16,\r\n padding: 14,\r\n color: \"#fff\",\r\n borderRadius: 4,\r\n textAlign: \"center\",\r\n },\r\n footerRed: {\r\n backgroundColor: \"#990000\",\r\n fontSize: 16,\r\n padding: 14,\r\n color: \"#fff\",\r\n borderRadius: 4,\r\n textAlign: \"center\",\r\n },\r\n hidden: {\r\n display: \"none\",\r\n },\r\n textButton: {\r\n textTransform: \"none\",\r\n width: \"100%\",\r\n },\r\n box: {\r\n paddingLeft: 20,\r\n paddingRight: 20,\r\n backgroundColor: \"white\",\r\n },\r\n middle: {\r\n width: \"500px\",\r\n },\r\n};\r\n\r\nexport default quickPaymentStyle;\r\n","import classNames from \"classnames\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport quickPaymentStyle from \"../../assets/jss/xrs/views/quickPaymentStyle\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Parallax from \"components/Parallax/Parallax.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport { useFormik } from \"formik\";\r\nimport { getSiteDetailsActions } from \"store/redux/redux-actions/redux_actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport NumberFormat from \"react-number-format\";\r\nimport ReactHtmlParser from \"react-html-parser\";\r\n\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\r\nimport FooterSection from \"../SectionsPage/Sections/FooterSection.js\";\r\nimport HeaderSection from \"../SectionsPage/Sections/HeaderSection.js\";\r\nimport LinkSection from \"../SectionsPage/Sections/LinksSection.js\";\r\nimport TextField from \"components/CustomInput/CustomInput.js\";\r\nimport Iframe from \"react-iframe\";\r\nimport fnmoment from \"moment\";\r\nimport queryString from \"query-string\";\r\nimport Paper from \"@material-ui/core/Paper\";\r\nimport CheckBoxIcon from \"@material-ui/icons/CheckBox\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport React, { useContext } from \"react\";\r\nimport Context from \"../../utils/context\";\r\n\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogContentText from \"@material-ui/core/DialogContentText\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\nimport LinearProgress from \"@material-ui/core/LinearProgress\";\r\nimport Fade from \"@material-ui/core/Fade\";\r\n\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport { set } from \"date-fns\";\r\nimport { Hidden } from \"@material-ui/core\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\nconst useStyles1 = makeStyles(quickPaymentStyle);\r\nexport default function QuickPayPaymentStatus(props) {\r\n const currency = useSelector((state) => state.GetSiteDetailsReducer.currency);\r\n\r\n const [page, setPage] = React.useState(1);\r\n const [ifamevisible, setIfamevisible] = React.useState(false);\r\n const [sitename, setSitename] = React.useState(\"\");\r\n const [companyname, setCompanyname] = React.useState(\"\");\r\n const [aboutus, setAboutus] = React.useState(\"\");\r\n const [address, setAddress] = React.useState(\"\");\r\n const [officehours, setOfficehours] = React.useState(\"\");\r\n const [phonenumber, setPhonenumber] = React.useState(\"\");\r\n const [email, setEmail] = React.useState(\"\");\r\n const [authcode, setAuthcode] = React.useState(\"\");\r\n const [message, setMessage] = React.useState(\"\");\r\n const [resultcode, setResultCode] = React.useState(\"\");\r\n const [ammount, setAmmount] = React.useState(\"\");\r\n const [passref, setPassref] = React.useState(\"\");\r\n const dispatch = useDispatch();\r\n const context = useContext(Context);\r\n const [paymentstatustext, setpaymentstatustext] = React.useState(\"\");\r\n\r\n const [vissibleSucc, setVissibleSucc] = React.useState(false);\r\n\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n }, []);\r\n React.useEffect(() => {\r\n const parsed = queryString.parse(props.location.search);\r\n setAmmount(parsed.AMOUNT);\r\n setMessage(parsed.MESSAGE);\r\n setAuthcode(parsed.AUTHCODE);\r\n setPassref(parsed.PASSREF);\r\n setResultCode(parsed.RESULTCODE);\r\n\r\n if (parsed.RESULTCODE == \"00\") {\r\n setVissibleSucc(true);\r\n } else {\r\n setVissibleSucc(false);\r\n }\r\n\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Welcome Details\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n dispatch(getSiteDetailsActions.logo(response.logoimageurl));\r\n dispatch(getSiteDetailsActions.footerImage(response.footerimageurl));\r\n dispatch(getSiteDetailsActions.currency(response.sitecurrency));\r\n dispatch(\r\n getSiteDetailsActions.uploadImagesToBudget(\r\n response.uploadimagestobudget\r\n )\r\n );\r\n dispatch(getSiteDetailsActions.set4week(response.usE4WEEKLYFREQUENCY));\r\n\r\n if (response.usesconveniencefee) {\r\n dispatch(\r\n getSiteDetailsActions.convenienceFee(response.conveniencefee)\r\n );\r\n }\r\n setSitename(response.sitename);\r\n setCompanyname(response.companyname);\r\n setAboutus(response.aboutus);\r\n setOfficehours(response.officehours);\r\n setPhonenumber(response.phonenumber);\r\n setAddress(response.address);\r\n setEmail(response.email);\r\n setpaymentstatustext(response.paymentstatustext);\r\n\r\n var date = fnmoment(new Date()).add(-110, \"years\");\r\n var maxdate = fnmoment(new Date()).add(-16, \"years\");\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Site Detatils\", error, context);\r\n }\r\n });\r\n }, [page]);\r\n\r\n const classes = useStyles();\r\n const classes1 = useStyles1();\r\n\r\n return (\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {message}\r\n \r\n \r\n

\r\n Thank you for your payment of:\r\n

\r\n

\r\n \r\n

\r\n\r\n

\r\n Your Auth Code is:\r\n

\r\n

{authcode}

\r\n\r\n

\r\n Your account has been updated to reflect this\r\n transaction.\r\n

\r\n
\r\n \r\n \r\n \r\n {message}\r\n \r\n \r\n

\r\n Your payment of:\r\n

\r\n

\r\n {currency + \" \" + ammount}\r\n

\r\n\r\n

\r\n Your payment has not been taken!.\r\n

\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n {message}\r\n \r\n \r\n

\r\n Thank you for your payment of:\r\n

\r\n

\r\n \r\n

\r\n\r\n

\r\n Your Auth Code is:\r\n

\r\n

{authcode}

\r\n\r\n

\r\n Your account has been updated to reflect this\r\n transaction.\r\n

\r\n
\r\n \r\n \r\n \r\n {message}\r\n \r\n \r\n

\r\n Your payment of:\r\n

\r\n

\r\n {currency + \" \" + ammount}\r\n

\r\n\r\n

\r\n Your payment has not been taken!.\r\n

\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n \r\n Did you know?\r\n \r\n \r\n {ReactHtmlParser(paymentstatustext)}\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n );\r\n}\r\n","import Paper from \"@material-ui/core/Paper\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport DoneOutlineIcon from \"@material-ui/icons/DoneOutline\";\r\nimport clsx from \"clsx\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport queryString from \"query-string\";\r\nimport React, { useContext } from \"react\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport NumberFormat from \"react-number-format\";\r\nimport Context from \"../../utils/context\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport BlueHeader from \"../SectionsPage/Sections/BlueHeaderSection.js\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport * as ACTIONS from \"../../store/actions/actions\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport ReactHtmlParser from \"react-html-parser\";\r\n\r\nimport {\r\n apiActions,\r\n getSiteDetailsActions,\r\n htmlActions,\r\n} from \"../../store/redux/redux-actions/redux_actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { Hidden } from \"@material-ui/core\";\r\n\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles2 = makeStyles((theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n}));\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n width: \"100%\",\r\n },\r\n button: {\r\n marginRight: theme.spacing(1),\r\n padding: 13,\r\n },\r\n instructions: {\r\n marginTop: theme.spacing(1),\r\n marginBottom: theme.spacing(1),\r\n },\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 60,\r\n },\r\n hide: {\r\n display: \"none\",\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n },\r\n cardNOBORDER: {\r\n border: 0,\r\n },\r\n Middle: {\r\n justifyContent: \"center\",\r\n width: \"100%\",\r\n alignItems: \"center\",\r\n textAlign: \"center\",\r\n border: 0,\r\n },\r\n blueText: {\r\n color: \"#0065a4\",\r\n fontWeight: 300,\r\n },\r\n Title: {\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n BoxFull: {\r\n width: \"100%\",\r\n },\r\n rightValues: {\r\n textAlign: \"right\",\r\n fontWeight: 300,\r\n },\r\n}));\r\nexport default function PayNowPaymentStatus(props) {\r\n const dispatch = useDispatch();\r\n\r\n const [authcode, setAuthcode] = React.useState(\"\");\r\n const [message, setMessage] = React.useState(\"\");\r\n //const [resultcode, setResultCode] = React.useState(\"\");\r\n const [ammount, setAmmount] = React.useState(\"\");\r\n const [passref, setPassref] = React.useState(\"0000000000\");\r\n const currency = useSelector((state) => state.GetSiteDetailsReducer.currency);\r\n\r\n const [vissibleSucc, setVissibleSucc] = React.useState(false);\r\n const context = useContext(Context);\r\n const stateSelectedAccount = useSelector(\r\n (state) => state.SelectedAccountsReducer.account\r\n );\r\n const paymentStatusFrom = useSelector(\r\n (state) => state.SiteReducer.paymentStatusFrom\r\n );\r\n const [paymentstatustext, setpaymentstatustext] = React.useState(\"\");\r\n\r\n const style = {\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 20,\r\n },\r\n visible: {\r\n display: \"box\",\r\n },\r\n hide: {\r\n display: \"none\",\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n },\r\n Title: {\r\n textAlign: \"center\",\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n blue: {\r\n backgroundColor: \"#0065a4\",\r\n borderRadius: 0,\r\n color: \"#ffffff\",\r\n padding: 10,\r\n textAlign: \"center\",\r\n fontWeight: 500,\r\n fontSize: 18,\r\n },\r\n green: {\r\n backgroundColor: \"#ffffff;\",\r\n borderRadius: 0,\r\n padding: 10,\r\n textAlign: \"center\",\r\n fontWeight: 500,\r\n fontSize: 19,\r\n paddingTop: 30,\r\n color: \"#0065a4\",\r\n },\r\n red: {\r\n backgroundColor: \"#ffffff;\",\r\n borderRadius: 0,\r\n padding: 10,\r\n textAlign: \"center\",\r\n fontWeight: 500,\r\n fontSize: 19,\r\n paddingTop: 30,\r\n color: \"#ff0000\",\r\n },\r\n blueBox: {\r\n paddingLeft: 50,\r\n paddingRight: 50,\r\n paddingBottom: 10,\r\n borderRadius: 4,\r\n },\r\n DiscountBlue: {\r\n color: \"#0065a4\",\r\n textAlign: \"center\",\r\n paddingTop: 10,\r\n fontWeight: 500,\r\n fontSize: 16,\r\n },\r\n DiscountGreen: {\r\n color: \"#4caf50\",\r\n textAlign: \"center\",\r\n padding: 25,\r\n fontWeight: 500,\r\n fontSize: 16,\r\n },\r\n DiscountItem: {\r\n textAlign: \"center\",\r\n padding: 14,\r\n fontWeight: 500,\r\n margin: 1,\r\n fontSize: 16,\r\n backgroundColor: \"#e6f2e6\",\r\n Border: \"none\",\r\n borderRadius: 4,\r\n },\r\n GreenTick: {\r\n color: \"#4caf50\",\r\n },\r\n RedTick: {\r\n color: \"#990000\",\r\n },\r\n\r\n DiscountItemRed: {\r\n textAlign: \"center\",\r\n padding: 14,\r\n fontWeight: 500,\r\n margin: 1,\r\n fontSize: 16,\r\n backgroundColor: \"#ffe5e5\",\r\n Border: \"none\",\r\n borderRadius: 4,\r\n },\r\n AmmountItem: {\r\n textAlign: \"center\",\r\n padding: 14,\r\n fontWeight: 500,\r\n margin: 1,\r\n fontSize: 40,\r\n backgroundColor: \"#e6f2e6\",\r\n Border: \"none\",\r\n Radiusradius: 4,\r\n },\r\n AmmountItemRed: {\r\n textAlign: \"center\",\r\n padding: 14,\r\n fontWeight: 500,\r\n margin: 1,\r\n fontSize: 40,\r\n backgroundColor: \"#ffe5e5\",\r\n Border: \"none\",\r\n Radiusradius: 4,\r\n },\r\n footer: {\r\n backgroundColor: \"#4caf50\",\r\n fontSize: 16,\r\n padding: 14,\r\n color: \"#fff\",\r\n borderRadius: 4,\r\n textAlign: \"center\",\r\n },\r\n footerRed: {\r\n backgroundColor: \"#990000\",\r\n fontSize: 16,\r\n padding: 14,\r\n color: \"#fff\",\r\n borderRadius: 4,\r\n textAlign: \"center\",\r\n },\r\n hidden: {\r\n display: \"none\",\r\n },\r\n textButton: {\r\n textTransform: \"none\",\r\n width: \"100%\",\r\n },\r\n box: {\r\n paddingLeft: 20,\r\n paddingRight: 20,\r\n backgroundColor: \"white\",\r\n },\r\n middle: {\r\n width: \"500px\",\r\n },\r\n };\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n }, []);\r\n React.useEffect(() => {\r\n const parsed = queryString.parse(props.location.search);\r\n\r\n setAmmount(parsed.AMOUNT);\r\n setMessage(parsed.MESSAGE);\r\n\r\n setAuthcode(parsed.AUTHCODE);\r\n // setPassref(parsed.PASSREF);\r\n // setResultCode(parsed.RESULTCODE);\r\n if (parsed.RESULTCODE == \"00\") {\r\n setVissibleSucc(true);\r\n } else {\r\n setVissibleSucc(false);\r\n }\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n fetch(URLS.GetWelcomeDetails, {\r\n method: \"GET\",\r\n headers: { Authorization: \"Bearer \" + token },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Welcome Details\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then(\r\n (data) => {\r\n dispatch(ACTIONS.set_Customer(data.customer));\r\n\r\n if (data.customer.cardastdigits == null) {\r\n setPassref(\"000000\");\r\n } else {\r\n setPassref(data.customer.cardastdigits);\r\n }\r\n dispatch(htmlActions.termsQuickPay(data.customer.termsquickpay));\r\n dispatch(htmlActions.termsPlan(data.customer.termsplan));\r\n dispatch(htmlActions.termsDiscount(data.customer.termsdiscount));\r\n\r\n dispatch(\r\n htmlActions.viewOfferText(data.activeAccounts[0].viewoffertext)\r\n );\r\n dispatch(\r\n htmlActions.createPlanText(data.activeAccounts[0].createplantext)\r\n );\r\n dispatch(\r\n htmlActions.createPlantoc(data.activeAccounts[0].createplantoc)\r\n );\r\n dispatch(\r\n htmlActions.createBudgetText(\r\n data.activeAccounts[0].createbudgettext\r\n )\r\n );\r\n dispatch(\r\n htmlActions.viewAccountText(data.activeAccounts[0].viewacccounttext)\r\n );\r\n dispatch(ACTIONS.set_Accounts(data.activeAccounts));\r\n dispatch(ACTIONS.set_num_accounts(data.activeAccounts.length));\r\n\r\n dispatch(ACTIONS.set_Callbacks(data.callbackReasons));\r\n data.activeAccounts.map((account, index) => {\r\n if (stateSelectedAccount.recno == account.recno) {\r\n dispatch(ACTIONS.set_selectedAccount(account));\r\n }\r\n });\r\n },\r\n [0]\r\n )\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Welcome Details\", error, context);\r\n }\r\n });\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Site Detatils\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n setpaymentstatustext(response.paymentstatustext);\r\n });\r\n }, []);\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n\r\n const useStyles1 = makeStyles(style);\r\n const classes = useStyles();\r\n const classes2 = useStyles2();\r\n const classes1 = useStyles1();\r\n\r\n const [termsApiText, setTermsApiText] = React.useState(\"\");\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n SUCCESS{\" \"}\r\n \r\n \r\n \r\n

\r\n Thank you for your payment of:\r\n

\r\n

\r\n \r\n

\r\n

Payment method:

\r\n\r\n

\r\n Card ending in **\r\n {passref != null ? passref.slice(-2) : \"\"}\r\n

\r\n\r\n

\r\n Your Auth Code is:\r\n

\r\n

{authcode}

\r\n\r\n

\r\n Your account has been updated to reflect this\r\n transaction.\r\n

\r\n
\r\n \r\n \r\n \r\n {\" \"}\r\n {message}\r\n \r\n \r\n

\r\n Your payment of:\r\n

\r\n

\r\n \r\n

\r\n\r\n

\r\n Your payment has not been taken!.\r\n

\r\n
\r\n \r\n
\r\n \r\n {paymentStatusFrom ? (\r\n \r\n \r\n Did you know?\r\n \r\n \r\n

\r\n {ReactHtmlParser(paymentstatustext)}\r\n

\r\n
\r\n ``\r\n \r\n ) : null}\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n );\r\n}\r\n","import React, { useContext } from \"react\";\r\nimport history from \"../../utils/history\";\r\nimport classNames from \"classnames\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nimport { useFormik } from \"formik\";\r\n\r\nimport TextField from \"components/CustomInput/CustomInput.js\";\r\nimport Iframe from \"react-iframe\";\r\nimport { Collapse } from \"@material-ui/core\";\r\nimport clsx from \"clsx\";\r\nimport Link from \"@material-ui/core/Link\";\r\nimport ReactHtmlParser, {\r\n processNodes,\r\n convertNodeToElement,\r\n htmlparser2,\r\n} from \"react-html-parser\";\r\n\r\nimport PayNow from \"../SectionsPage/Sections/PayNowSection.js\";\r\n\r\nimport html2canvas from \"html2canvas\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport BlueHeader from \"../SectionsPage/Sections/BlueHeaderSection.js\";\r\nimport Context from \"../../utils/context\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport { el } from \"date-fns/locale\";\r\n\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles2 = makeStyles((theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n}));\r\n\r\nexport default function PayNowPage(props) {\r\n const classes2 = useStyles2();\r\n const context = useContext(Context);\r\n const [page, setPage] = React.useState(1);\r\n\r\n return (\r\n
\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n );\r\n}\r\n","import imagesStyles from \"../../imagesStyles\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nconst viewOfferSectionsStyle = {\r\n ...imagesStyles,\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 20,\r\n },\r\n visible: {\r\n display: \"box\",\r\n },\r\n hide: {\r\n display: \"none\",\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: primaryColor[20],\r\n fontWeight: 400,\r\n },\r\n Title: {\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n blue: {\r\n backgroundColor: \"#0065a4\",\r\n borderRadius: 0,\r\n color: \"#ffffff\",\r\n padding: 10,\r\n textAlign: \"center\",\r\n fontWeight: 500,\r\n fontSize: 18,\r\n },\r\n green: {\r\n backgroundColor: \"#4caf50;\",\r\n borderRadius: 0,\r\n color: \"#ffffff\",\r\n padding: 10,\r\n textAlign: \"center\",\r\n fontWeight: 500,\r\n fontSize: 18,\r\n },\r\n blueBox: {\r\n borderRadius: 0,\r\n margin: 10,\r\n },\r\n DiscountBlue: {\r\n color: \"#0065a4\",\r\n textAlign: \"center\",\r\n padding: 25,\r\n fontWeight: 500,\r\n fontSize: 16,\r\n },\r\n DiscountGreen: {\r\n color: \"#4caf50\",\r\n textAlign: \"center\",\r\n padding: 25,\r\n fontWeight: 500,\r\n fontSize: 16,\r\n },\r\n DiscountItem: {\r\n textAlign: \"center\",\r\n padding: 14,\r\n fontWeight: 500,\r\n margin: 1,\r\n fontSize: 14,\r\n backgroundColor: \"#f2f7fa\",\r\n Border: \"none\",\r\n },\r\n textButton: {\r\n textTransform: \"none\",\r\n width: \"100%\",\r\n },\r\n box: {\r\n paddingLeft: 20,\r\n paddingRight: 20,\r\n backgroundColor: \"white\",\r\n },\r\n};\r\n\r\nexport default viewOfferSectionsStyle;\r\n","import { Collapse } from \"@material-ui/core\";\r\nimport Paper from \"@material-ui/core/Paper\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport viewOfferSectionsStyle from \"assets/jss/xrs/views/sectionsSections/viewOfferSectionsStyle\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport Button from \"components/CustomButtons/Button\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport React, { useContext } from \"react\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport NumberFormat from \"react-number-format\";\r\nimport Context from \"../../../utils/context\";\r\nimport Paynow from \"../../SectionsPage/Sections/PayNowSection.js\";\r\nimport BlueHeader from \"./BlueHeaderSection.js\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\n\r\nconst useStyles = makeStyles(viewOfferSectionsStyle);\r\nexport default function ViewOfferSection(props) {\r\n const viewOfferText = useSelector((state) => state.HtmlReducer.viewOfferText);\r\n\r\n const context = useContext(Context);\r\n const classes = useStyles();\r\n const [site, setSite] = React.useState(\"\");\r\n const [page, setPage] = React.useState(1);\r\n const [termsVisible, setTermsVisible] = React.useState(false);\r\n const [width, setWidth] = React.useState(0);\r\n const [message, setMessage] = React.useState(\"\");\r\n const [showDate, setShowDate] = React.useState(true);\r\n const [oneMonth, setoneMonth] = React.useState(false);\r\n\r\n const [paymentDate, setPaymentDate] = React.useState(\"\");\r\n const [screenstate, setScreenstate] = React.useState({ screenshot: \"\" });\r\n const [showQuickPay, setShowQuickPay] = React.useState(true);\r\n const [ifamevisible, setIfamevisible] = React.useState(false);\r\n const [value, setValue] = React.useState(\"card\");\r\n const stateOffer = useSelector((state) => state.OfferReducer.offer);\r\n const stateSite = useSelector((state) => state.SiteReducer.site);\r\n const currency = useSelector((state) => state.GetSiteDetailsReducer.currency);\r\n\r\n const [refValues, setrefValues] = React.useState([]);\r\n\r\n const handleChange = (event) => {\r\n setValue(event.target.value);\r\n };\r\n\r\n const values = {\r\n OFFERID: 0,\r\n DOWNPAYMENT: 0,\r\n REMAINGBAL: 1,\r\n OFFERACCEPTEDDECLINED: \"A\",\r\n OFFERDECLINEDREASON: \"OK\",\r\n STARTDATE: \"\",\r\n FREQUENCY: \"MONTHLY\",\r\n TERM: 1,\r\n AMOUNT: 0,\r\n FINALDATE: \"\",\r\n FINALAMOUNT: 0,\r\n APPLYDISCOUNT: \"Y\",\r\n DISCOUNTOPTIONNUMBER: \"0\",\r\n SCREENSHOT: \"\",\r\n PAYERREF: \"\",\r\n CARDREF: \"\",\r\n MAXPAYDATE: \"\",\r\n };\r\n\r\n const setValues = (termsChosen) => {\r\n values.MAXPAYDATE = stateOffer.WOOFFERMAXFIRSTPAYDATE;\r\n if (termsChosen == 1) {\r\n values.REMAINGBAL =\r\n stateOffer.WOOFFER1MONTHS === 1 ? 0 : stateOffer.WOOFFER1TOTALPAYABLE;\r\n values.OFFERID = stateOffer.WOOFFERID;\r\n values.DOWNPAYMENT = stateOffer.WOOFFER1MINPAY;\r\n //values.FREQUENCY =stateOffer.WOOFFER1MONTHS;\r\n values.AMOUNT = stateOffer.WOOFFER1AMOUNT;\r\n values.FINALDATE = \"\";\r\n values.FINALAMOUNT = 0;\r\n values.DISCOUNTOPTIONNUMBER = 1;\r\n values.TERM = stateOffer.WOOFFER1MONTHS;\r\n if (stateOffer.WOOFFER1MONTHS === 1) {\r\n setoneMonth(true);\r\n }\r\n } else if (termsChosen == 2) {\r\n values.REMAINGBAL =\r\n stateOffer.WOOFFER2MONTHS === 1 ? 0 : stateOffer.WOOFFER2TOTALPAYABLE;\r\n values.TERM = stateOffer.WOOFFER2MONTHS;\r\n\r\n values.OFFERID = stateOffer.WOOFFERID;\r\n values.DOWNPAYMENT = stateOffer.WOOFFER2MINPAY;\r\n // values.FREQUENCY =stateOffer.WOOFFER2MONTHS;\r\n values.AMOUNT =\r\n stateOffer.WOOFFER2MONTHS === 1 ? 0 : stateOffer.WOOFFER2AMOUNT;\r\n values.FINALDATE = \"\";\r\n values.FINALAMOUNT = 0;\r\n values.DISCOUNTOPTIONNUMBER = 2;\r\n if (stateOffer.WOOFFER2MONTHS === 1) {\r\n setoneMonth(true);\r\n }\r\n } else if (termsChosen == 3) {\r\n values.REMAINGBAL =\r\n stateOffer.WOOFFER3MONTHS === 1 ? 0 : stateOffer.WOOFFER3TOTALPAYABLE;\r\n values.TERM = stateOffer.WOOFFER3MONTHS;\r\n\r\n values.OFFERID = stateOffer.WOOFFERID;\r\n values.DOWNPAYMENT =\r\n stateOffer.WOOFFER3MONTHS === 1\r\n ? stateOffer.WOOFFER3MINPAY\r\n : stateOffer.WOOFFER3AMOUNT; // values.FREQUENCY =stateOffer.WOOFFER3MONTHS;\r\n values.AMOUNT =\r\n stateOffer.WOOFFER3MONTHS === 1 ? 0 : stateOffer.WOOFFER3AMOUNT;\r\n values.FINALDATE = \"\";\r\n values.FINALAMOUNT = 0;\r\n values.DISCOUNTOPTIONNUMBER = 3;\r\n if (stateOffer.WOOFFER3MONTHS === 1) {\r\n setoneMonth(true);\r\n }\r\n }\r\n };\r\n\r\n function handleClickOffer1(e) {\r\n setValues(1);\r\n setrefValues(values);\r\n if (stateOffer.WOOFFER1MONTHS === 1) {\r\n var text =\r\n \"I agree to pay \" +\r\n site.companyname +\r\n \" \" +\r\n currency +\r\n Number.parseFloat(stateOffer.WOOFFER1MINPAY).toFixed(\"2\") +\r\n \" from my card now \";\r\n setMessage(text);\r\n setShowDate(false);\r\n setTermsVisible(true);\r\n } else {\r\n var text =\r\n \"I agree to pay \" +\r\n site.companyname +\r\n \" \" +\r\n currency +\r\n Number.parseFloat(stateOffer.WOOFFER1MINPAY).toFixed(\"2\") +\r\n \" from my card now, followed by \" +\r\n stateOffer.WOOFFER1MONTHS +\r\n \" recurring monthly payments of \" +\r\n currency +\r\n stateOffer.WOOFFER1AMOUNT +\r\n \" and starting on \";\r\n setMessage(text);\r\n setTermsVisible(true);\r\n }\r\n }\r\n function handleClickOffer2(e) {\r\n setValues(2);\r\n setrefValues(values);\r\n\r\n if (stateOffer.WOOFFER2MONTHS === 1) {\r\n var text =\r\n \"I agree to pay \" +\r\n site.companyname +\r\n \" \" +\r\n currency +\r\n Number.parseFloat(stateOffer.WOOFFER2MINPAY).toFixed(\"2\") +\r\n \" from my card now \";\r\n setMessage(text);\r\n setShowDate(false);\r\n\r\n setTermsVisible(true);\r\n } else {\r\n var text =\r\n \"I agree to pay \" +\r\n site.companyname +\r\n \" \" +\r\n currency +\r\n Number.parseFloat(stateOffer.WOOFFER2MINPAY).toFixed(\"2\") +\r\n \" from my card now, followed by \" +\r\n stateOffer.WOOFFER2MONTHS +\r\n \" recurring monthly payments of \" +\r\n currency +\r\n stateOffer.WOOFFER2AMOUNT +\r\n \" and starting on \";\r\n setMessage(text);\r\n setTermsVisible(true);\r\n }\r\n }\r\n function handleClickOffer3(e) {\r\n setValues(3);\r\n setrefValues(values);\r\n\r\n if (stateOffer.WOOFFER3MONTHS === 1) {\r\n var text =\r\n \"I agree to pay \" +\r\n site.companyname +\r\n \" \" +\r\n currency +\r\n Number.parseFloat(stateOffer.WOOFFER3MINPAY).toFixed(\"2\") +\r\n \" from my card now \";\r\n setMessage(text);\r\n setShowDate(false);\r\n\r\n setTermsVisible(true);\r\n } else {\r\n var text =\r\n \"I agree to pay \" +\r\n site.companyname +\r\n \" \" +\r\n currency +\r\n Number.parseFloat(stateOffer.WOOFFER3MINPAY).toFixed(\"2\") +\r\n \" from my card now, followed by \" +\r\n stateOffer.WOOFFER3MONTHS +\r\n \" recurring monthly payments of \" +\r\n currency +\r\n stateOffer.WOOFFER3AMOUNT +\r\n \" and starting on \";\r\n setMessage(text);\r\n setTermsVisible(true);\r\n }\r\n }\r\n function handleBackToOffers(e) {\r\n setTermsVisible(false);\r\n }\r\n const handlePayDateChange = (e) => {\r\n setPaymentDate(e.target.value);\r\n };\r\n\r\n React.useEffect(() => {\r\n setSite(stateSite);\r\n }, []);\r\n return (\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n {viewOfferText}\r\n \r\n {stateOffer.WOOFFER1MONTHS === 0 ? null : (\r\n \r\n \r\n \r\n {stateOffer.WOOFFER1TEXT}\r\n \r\n \r\n

\r\n {stateOffer.WOOFFER1DISCOUNTPERCENT + \" % Discount\"}\r\n

\r\n

\r\n Total To Pay:\r\n \r\n

\r\n\r\n

\r\n Discount Value:\r\n \r\n

\r\n\r\n

\r\n {stateOffer.WOOFFER1MONTHS === 1\r\n ? \"One payment\"\r\n : \"Term: \" + stateOffer.WOOFFER1MONTHS + \" Months\"}\r\n

\r\n\r\n

\r\n Down Payment:\r\n \r\n

\r\n\r\n

\r\n {stateOffer.WOOFFER1MONTHS === 1\r\n ? \"Recurring Amount:\"\r\n : \"Payment Amount:\"}\r\n \r\n

\r\n
\r\n \r\n \r\n Proceed!\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n )}\r\n {stateOffer.WOOFFER2MONTHS === 0 ? null : (\r\n \r\n \r\n \r\n {stateOffer.WOOFFER2TEXT}\r\n \r\n \r\n

\r\n {stateOffer.WOOFFER2DISCOUNTPERCENT + \" % Discount\"}\r\n

\r\n

\r\n Total To Pay:\r\n \r\n

\r\n\r\n

\r\n Discount Value:\r\n \r\n

\r\n\r\n

\r\n {stateOffer.WOOFFER2MONTHS === 1\r\n ? \"One payment\"\r\n : \"Term: \" + stateOffer.WOOFFER2MONTHS + \" Months\"}\r\n

\r\n\r\n

\r\n Down Payment:\r\n \r\n

\r\n\r\n

\r\n {stateOffer.WOOFFER2MONTHS === 1\r\n ? \"Recurring Amount:\"\r\n : \"Payment Amount:\"}\r\n \r\n

\r\n
\r\n \r\n \r\n Proceed!\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n )}\r\n {stateOffer.WOOFFER3MONTHS === 0 ? null : (\r\n \r\n \r\n \r\n {stateOffer.WOOFFER3TEXT}\r\n \r\n \r\n

\r\n {stateOffer.WOOFFER3DISCOUNTPERCENT + \" % Discount\"}\r\n

\r\n

\r\n Total To Pay:\r\n \r\n

\r\n\r\n

\r\n Discount Value:\r\n \r\n

\r\n\r\n

\r\n {stateOffer.WOOFFER3MONTHS === 1\r\n ? \"One payment\"\r\n : \"Term: \" + stateOffer.WOOFFER3MONTHS + \" Months\"}\r\n

\r\n\r\n

\r\n Down Payment:\r\n \r\n

\r\n\r\n

\r\n {stateOffer.WOOFFER3MONTHS === 1\r\n ? \"Recurring Amount:\"\r\n : \"Payment Amount:\"}{\" \"}\r\n \r\n

\r\n
\r\n \r\n \r\n Proceed!\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n )}\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n {termsVisible ? (\r\n \r\n ) : null}\r\n \r\n
\r\n );\r\n}\r\n","import { makeStyles } from \"@material-ui/core/styles\";\r\nimport clsx from \"clsx\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport React, { useContext } from \"react\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport Context from \"../../utils/context\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport ViewOfferSection from \"../SectionsPage/Sections/ViewOfferSection.js\";\r\nimport { useSelector, useDispatch } from \"react-redux\";\r\nimport * as ACTIONS from \"../../store/actions/actions\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nimport {\r\n apiActions,\r\n getSiteDetailsActions,\r\n htmlActions,\r\n} from \"../../store/redux/redux-actions/redux_actions\";\r\n\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles2 = makeStyles((theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n}));\r\nexport default function ViewOfferPage(props) {\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n document.body.scrollTop = 0;\r\n }, []);\r\n\r\n const dispatch = useDispatch();\r\n\r\n const context = useContext(Context);\r\n const classes2 = useStyles2();\r\n const [page, setPage] = React.useState(1);\r\n const stateSelectedAccount = useSelector(\r\n (state) => state.SelectedAccountsReducer.account\r\n );\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n\r\n React.useEffect(() => {\r\n var account;\r\n var newDate = new Date();\r\n account = JSON.stringify({\r\n ITEMCODE: stateSelectedAccount.itemcode,\r\n RECNO: stateSelectedAccount.recno,\r\n STARTDATE: newDate,\r\n ENDDATE: newDate,\r\n });\r\n\r\n fetch(URLS.GetReturnAPIUrl, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n body: account,\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Return API\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n\r\n .then((data) => {\r\n dispatch(ACTIONS.set_Offer(data));\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Return API\", error, context);\r\n }\r\n });\r\n fetch(URLS.GetWelcomeDetails, {\r\n method: \"GET\",\r\n headers: { Authorization: \"Bearer \" + token },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Welcome Details\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data) => {\r\n dispatch(htmlActions.termsQuickPay(data.customer.termsquickpay));\r\n dispatch(htmlActions.termsPlan(data.customer.termsplan));\r\n dispatch(htmlActions.termsDiscount(data.customer.termsdiscount));\r\n\r\n dispatch(\r\n htmlActions.viewOfferText(data.activeAccounts[0].viewoffertext)\r\n );\r\n dispatch(\r\n htmlActions.createPlanText(data.activeAccounts[0].createplantext)\r\n );\r\n dispatch(\r\n htmlActions.createPlantoc(data.activeAccounts[0].createplantoc)\r\n );\r\n dispatch(\r\n htmlActions.createBudgetText(data.activeAccounts[0].createbudgettext)\r\n );\r\n dispatch(\r\n htmlActions.viewAccountText(data.activeAccounts[0].viewacccounttext)\r\n );\r\n\r\n dispatch(ACTIONS.set_Customer(data.customer));\r\n dispatch(ACTIONS.set_Accounts(data.activeAccounts));\r\n dispatch(ACTIONS.set_num_accounts(data.activeAccounts.length));\r\n\r\n dispatch(ACTIONS.set_Callbacks(data.callbackReasons));\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Welcome Details\", error, context);\r\n }\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 \r\n
\r\n );\r\n}\r\n","import {\r\n primaryColor,\r\n secondaryColor,\r\n warningColor,\r\n dangerColor,\r\n successColor,\r\n infoColor,\r\n roseColor,\r\n grayColor,\r\n} from \"assets/jss/xrs.js\";\r\nimport { whiteColor } from \"assets/jss/xrs\";\r\n\r\nconst accordionStyle = (theme) => ({\r\n root: {\r\n flexGrow: 1,\r\n marginBottom: \"20px\",\r\n },\r\n expansionPanel: {\r\n boxShadow: \"none\",\r\n \"&:before\": {\r\n display: \"none !important\",\r\n },\r\n },\r\n expansionPanelExpanded: {\r\n margin: \"0 !important\",\r\n },\r\n expansionPanelSummary: {\r\n minHeight: \"auto !important\",\r\n backgroundColor: whiteColor,\r\n borderBottom: \"1px solid \" + grayColor[6],\r\n padding: \"15px 10px 5px 20px\",\r\n borderTopLeftRadius: \"3px\",\r\n borderTopRightRadius: \"3px\",\r\n color: primaryColor[1],\r\n },\r\n primaryExpansionPanelSummary: {\r\n \"&:hover\": {\r\n color: primaryColor[1],\r\n },\r\n },\r\n secondaryExpansionPanelSummary: {\r\n \"&:hover\": {\r\n color: primaryColor[1],\r\n },\r\n },\r\n warningExpansionPanelSummary: {\r\n \"&:hover\": {\r\n color: warningColor[0],\r\n },\r\n },\r\n dangerExpansionPanelSummary: {\r\n \"&:hover\": {\r\n color: dangerColor[0],\r\n },\r\n },\r\n successExpansionPanelSummary: {\r\n \"&:hover\": {\r\n color: successColor[0],\r\n },\r\n },\r\n infoExpansionPanelSummary: {\r\n \"&:hover\": {\r\n color: infoColor[0],\r\n },\r\n },\r\n roseExpansionPanelSummary: {\r\n \"&:hover\": {\r\n color: roseColor[0],\r\n },\r\n },\r\n expansionPanelSummaryExpaned: {\r\n \"& $expansionPanelSummaryExpandIcon\": {\r\n [theme.breakpoints.up(\"md\")]: {\r\n top: \"auto !important\",\r\n },\r\n transform: \"rotate(180deg)\",\r\n [theme.breakpoints.down(\"sm\")]: {\r\n top: \"10px !important\",\r\n },\r\n // some jss/css to make the cards look a bit better on Internet Explorer\r\n \"@media all and (-ms-high-contrast: none), (-ms-high-contrast: active)\": {\r\n display: \"inline-block !important\",\r\n top: \"10px !important\",\r\n },\r\n },\r\n },\r\n primaryExpansionPanelSummaryExpaned: {\r\n color: primaryColor[21],\r\n },\r\n secondaryExpansionPanelSummaryExpaned: {\r\n color: secondaryColor[0],\r\n },\r\n warningExpansionPanelSummaryExpaned: {\r\n color: warningColor[0],\r\n },\r\n dangerExpansionPanelSummaryExpaned: {\r\n color: dangerColor[0],\r\n },\r\n successExpansionPanelSummaryExpaned: {\r\n color: successColor[0],\r\n },\r\n infoExpansionPanelSummaryExpaned: {\r\n color: infoColor[0],\r\n },\r\n roseExpansionPanelSummaryExpaned: {\r\n color: roseColor[0],\r\n },\r\n expansionPanelSummaryContent: {\r\n margin: \"0 !important\",\r\n },\r\n expansionPanelSummaryExpandIcon: {\r\n [theme.breakpoints.up(\"md\")]: {\r\n top: \"auto !important\",\r\n },\r\n transform: \"rotate(0deg)\",\r\n color: \"inherit\",\r\n right: \"10px\",\r\n position: \"absolute\",\r\n [theme.breakpoints.down(\"sm\")]: {\r\n top: \"10px !important\",\r\n },\r\n // some jss/css to make the cards look a bit better on Internet Explorer\r\n \"@media all and (-ms-high-contrast: none), (-ms-high-contrast: active)\": {\r\n display: \"inline-block !important\",\r\n },\r\n },\r\n expansionPanelSummaryExpandIconExpanded: {},\r\n title: {\r\n width: \"90%\",\r\n fontSize: \"15px\",\r\n fontWeight: \"bolder\",\r\n marginTop: \"0\",\r\n marginBottom: \"0\",\r\n color: \"inherit\",\r\n },\r\n expansionPanelDetails: {\r\n display: \"block\",\r\n padding: \"15px 0px 5px 10px\",\r\n fontSize: \".875rem\",\r\n },\r\n});\r\n\r\nexport default accordionStyle;\r\n","import React from \"react\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport ExpansionPanel from \"@material-ui/core/ExpansionPanel\";\r\nimport ExpansionPanelSummary from \"@material-ui/core/ExpansionPanelSummary\";\r\nimport ExpansionPanelDetails from \"@material-ui/core/ExpansionPanelDetails\";\r\n\r\n// @material-ui/icons\r\nimport ExpandMore from \"@material-ui/icons/ExpandMore\";\r\n\r\nimport styles from \"assets/jss/xrs/components/accordionStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Accordion(props) {\r\n const [active, setActive] = React.useState(\r\n props.active.length === undefined ? [props.active] : props.active\r\n );\r\n const [single] = React.useState(\r\n props.active.length === undefined ? true : false\r\n );\r\n\r\n React.useEffect(() => {\r\n setTimeout(() => {\r\n setActive([0]);\r\n }, 500);\r\n }, []);\r\n\r\n const handleChange = (panel) => () => {\r\n let newArray;\r\n if (single) {\r\n if (active[0] === panel) {\r\n newArray = [];\r\n } else {\r\n newArray = [panel];\r\n }\r\n } else {\r\n if (active.indexOf(panel) === -1) {\r\n newArray = [...active, panel];\r\n } else {\r\n newArray = [...active];\r\n newArray.splice(active.indexOf(panel), 1);\r\n }\r\n }\r\n setActive(newArray);\r\n };\r\n const { collapses, activeColor } = props;\r\n const classes = useStyles();\r\n return (\r\n
\r\n {collapses.map((prop, key) => {\r\n return (\r\n \r\n }\r\n classes={{\r\n root: `${classes.expansionPanelSummary} ${\r\n classes[activeColor + \"ExpansionPanelSummary\"]\r\n }`,\r\n expanded: `${classes.expansionPanelSummaryExpaned} ${\r\n classes[activeColor + \"ExpansionPanelSummaryExpaned\"]\r\n }`,\r\n content: classes.expansionPanelSummaryContent,\r\n expandIcon: classes.expansionPanelSummaryExpandIcon,\r\n }}\r\n >\r\n

{prop.title}

\r\n \r\n \r\n {prop.content}\r\n \r\n \r\n );\r\n })}\r\n
\r\n );\r\n}\r\n\r\nAccordion.defaultProps = {\r\n active: -1,\r\n activeColor: \"primary\",\r\n};\r\n\r\nAccordion.propTypes = {\r\n // index of the default active collapse\r\n active: PropTypes.oneOfType([\r\n PropTypes.number,\r\n PropTypes.arrayOf(PropTypes.number),\r\n ]),\r\n collapses: PropTypes.arrayOf(\r\n PropTypes.shape({\r\n title: PropTypes.string,\r\n content: PropTypes.node,\r\n })\r\n ).isRequired,\r\n activeColor: PropTypes.oneOf([\r\n \"primary\",\r\n \"secondary\",\r\n \"warning\",\r\n \"danger\",\r\n \"success\",\r\n \"info\",\r\n \"rose\",\r\n ]),\r\n};\r\n","import React, { useContext } from \"react\";\r\nimport classNames from \"classnames\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Parallax from \"components/Parallax/Parallax.js\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport FooterSection from \"../SectionsPage/Sections/FooterSection.js\";\r\nimport HeaderSection from \"../SectionsPage/Sections/HeaderSection.js\";\r\nimport LinkSection from \"../SectionsPage/Sections/LinksSection.js\";\r\nimport Accordion from \"components/Accordion/Accordion.js\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport Context from \"../../utils/context\";\r\nimport ReactHtmlParser from \"react-html-parser\";\r\nimport { getSiteDetailsActions } from \"../../store/redux/redux-actions/redux_actions\";\r\nimport * as ACTIONS from \"../../store/actions/actions\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\n\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\n\r\nexport default function FaqPage() {\r\n const context = useContext(Context);\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n document.body.scrollTop = 0;\r\n });\r\n const dispatch = useDispatch();\r\n const [page, setPage] = React.useState(1);\r\n const [sitename, setSitename] = React.useState(\"\");\r\n const [companyname, setCompanyname] = React.useState(\"\");\r\n const [aboutus, setAboutus] = React.useState(\"\");\r\n const [address, setAddress] = React.useState(\"\");\r\n const [officehours, setOfficehours] = React.useState(\"\");\r\n const [phonenumber, setPhonenumber] = React.useState(\"\");\r\n const [email, setEmail] = React.useState(\"\");\r\n const stateSite = useSelector((state) => state.SiteReducer.site);\r\n\r\n const createData = (title, content) => {\r\n return { title, content };\r\n };\r\n const [rowdata, setRowdata] = React.useState([]);\r\n const [site, setSite] = React.useState(\"\");\r\n\r\n const ReadContext = () => {\r\n const dataRows = [];\r\n var data = stateSite.faqs;\r\n if (data != \"NoAccounts\") {\r\n var i = 1;\r\n data.forEach((item) => {\r\n dataRows.push(\r\n createData(\r\n ReactHtmlParser(item.header),\r\n ReactHtmlParser(item.details)\r\n )\r\n );\r\n i++;\r\n setRowdata(dataRows);\r\n });\r\n }\r\n };\r\n\r\n React.useEffect(() => {\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Site Detatils\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n dispatch(getSiteDetailsActions.logo(response.logoimageurl));\r\n dispatch(getSiteDetailsActions.set4week(response.usE4WEEKLYFREQUENCY));\r\n\r\n dispatch(getSiteDetailsActions.footerImage(response.footerimageurl));\r\n dispatch(\r\n getSiteDetailsActions.uploadImagesToBudget(\r\n response.uploadimagestobudget\r\n )\r\n );\r\n\r\n dispatch(ACTIONS.set_Site(response));\r\n setSitename(response.sitename);\r\n setCompanyname(response.companyname);\r\n setAboutus(response.aboutus);\r\n setOfficehours(response.officehours);\r\n setPhonenumber(response.phonenumber);\r\n setAddress(response.address);\r\n setEmail(response.email);\r\n if (response.usesconveniencefee) {\r\n dispatch(\r\n getSiteDetailsActions.convenienceFee(response.conveniencefee)\r\n );\r\n }\r\n\r\n setTimeout(() => {\r\n setSite(stateSite);\r\n ReadContext();\r\n }, 100);\r\n })\r\n\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Site Detatils\", error, context);\r\n }\r\n });\r\n }, [page]);\r\n const classes = useStyles();\r\n\r\n return (\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n

Frequently Asked Questions

\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n );\r\n}\r\n","import { isMobile } from \"react-device-detect\";\r\n\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\n\r\nconst budgetPageStyle = (theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n});\r\n\r\nexport default budgetPageStyle;\r\n","import imagesStyles from \"../../imagesStyles\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nconst budgetSectionStyle = {\r\n ...imagesStyles,\r\n showSummary: {\r\n display: \"visible\",\r\n },\r\n hideSummary: {\r\n display: \"none\",\r\n },\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 20,\r\n },\r\n container: {\r\n padding: 40,\r\n },\r\n button: {\r\n textAlign: \"center\",\r\n },\r\n linkButton: {\r\n paddingLeft: \"5px\",\r\n paddingRight: \"5px\",\r\n\r\n display: \"inline\",\r\n width: 15,\r\n textAlign: \"center\",\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n },\r\n Summary: {\r\n color: primaryColor[20],\r\n margin: 0,\r\n },\r\n Title: {\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n margin: 0,\r\n },\r\n TitleTop: {\r\n fontWeight: 500,\r\n margin: 0,\r\n textAlign: \"right\",\r\n },\r\n SubTitle: {\r\n fontWeight: 400,\r\n paddingTop: 0,\r\n margin: 0,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n Money: {\r\n textAlign: \"right\",\r\n },\r\n MoneyGreen: {\r\n textAlign: \"right\",\r\n color: \"#4BB543\",\r\n },\r\n Submited: {\r\n textAlign: \"left\",\r\n color: \"#4BB543\",\r\n fontSize: \"20px\",\r\n },\r\n MoneyRed: {\r\n textAlign: \"right\",\r\n color: \"#ff0033\",\r\n },\r\n FinaliseMoney: {\r\n textAlign: \"right\",\r\n },\r\n Line: {\r\n textAlign: \"right\",\r\n marginBottom: 5,\r\n marginTop: 5,\r\n },\r\n};\r\n\r\nexport default budgetSectionStyle;\r\n","import { primaryColor } from \"assets/jss/xrs.js\";\r\nconst incomeBudgetFieldsStyle = (theme) => ({\r\n controlWhite: {\r\n margin: 0,\r\n height: 40,\r\n borderRadius: 2,\r\n borderStyle: \"solid\",\r\n paddingLeft: 10,\r\n backgroundColor: \"#f5f9ff\",\r\n color: \"black\",\r\n borderColor: primaryColor[0],\r\n border: 1,\r\n },\r\n root: {\r\n width: \"100%\",\r\n margin: 0,\r\n padding: 0,\r\n },\r\n button: {\r\n marginRight: theme.spacing(1),\r\n padding: 13,\r\n },\r\n hide: {\r\n display: \"none\",\r\n },\r\n instructions: {\r\n marginTop: theme.spacing(1),\r\n marginBottom: theme.spacing(1),\r\n },\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 30,\r\n },\r\n whiteInfo: {\r\n color: \"white\",\r\n fontWeight: 400,\r\n paddingLeft: 0,\r\n paddingTop: 10,\r\n },\r\n whiteInfoMiddle: {\r\n color: \"white\",\r\n fontWeight: 400,\r\n paddingLeft: 0,\r\n\r\n textAlign: \"center\",\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n },\r\n blueText: {\r\n color: \"#0065a4\",\r\n fontWeight: 300,\r\n },\r\n Title: {\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n BoxFull: {\r\n width: \"100%\",\r\n paddingLeft: 100,\r\n paddingRight: 100,\r\n },\r\n Middle: {\r\n justifyContent: \"center\",\r\n width: \"100%\",\r\n alignItems: \"center\",\r\n textAlign: \"center\",\r\n border: 0,\r\n },\r\n\r\n rightValues: {\r\n textAlign: \"right\",\r\n fontWeight: 300,\r\n },\r\n});\r\n\r\nexport default incomeBudgetFieldsStyle;\r\n","import MenuItem from \"@material-ui/core/MenuItem\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport incomeBudgetFieldsStyle from \"../../assets/jss/xrs/views/incomeBudgetFieldsStyle\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport Button from \"components/CustomButtons/Button\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport React from \"react\";\r\nimport TextField from \"../../components/CustomInput/CustomInput.js\";\r\nimport AttachFileIcon from \"@material-ui/icons/AttachFile\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport { Collapse } from \"@material-ui/core\";\r\nimport DocumentSection from \"../SectionsPage/Sections/DocumentSection.js\";\r\nimport PhotoCameraIcon from \"@material-ui/icons/PhotoCamera\";\r\nimport VisibilityIcon from \"@material-ui/icons/Visibility\";\r\nimport DeleteIcon from \"@material-ui/icons/Delete\";\r\n\r\nimport {\r\n cameraActions,\r\n documentsActions,\r\n} from \"../../store/redux/redux-actions/redux_actions\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport { element } from \"prop-types\";\r\nlet disabledCamera = !isMobile;\r\n\r\nconst useStyles = makeStyles(incomeBudgetFieldsStyle);\r\nexport default function IncomeBudgetFields(props) {\r\n const classes = useStyles();\r\n const [selected, setSelected] = React.useState(props.selectedvalue);\r\n const [value, setValue] = React.useState(props.value);\r\n // const openDocumet = useSelector((state) => state.DocumentsReducer.open);\r\n const [openDocumet, setOpenDocumet] = React.useState(false);\r\n\r\n // const uploadedExpenses = useSelector(\r\n // (state) => state.DocumentsReducer.uploadedExpenses\r\n // );\r\n // const uploadedIncomes = useSelector(\r\n // (state) => state.DocumentsReducer.uploadedIncomes\r\n // );\r\n const documents = useSelector((state) => state.CameraReducer.confirmedImages);\r\n const [uploadedDocumet, setUploadedDocumet] = React.useState(\"\");\r\n const [cameraExist, setcameraExist] = React.useState(false);\r\n const dispatch = useDispatch();\r\n const uploadimagestobudget = useSelector(\r\n (state) => state.GetSiteDetailsReducer.uploadimagestobudget\r\n );\r\n React.useEffect(() => {\r\n if (uploadimagestobudget && isMobile) {\r\n navigator.mediaDevices.getUserMedia({ video: true });\r\n navigator.mediaDevices.enumerateDevices().then((devices) => {\r\n var amount = 0;\r\n devices.map((item) => {\r\n if (item.kind === \"videoinput\") {\r\n amount++;\r\n }\r\n });\r\n if (amount > 0) {\r\n setcameraExist(false);\r\n } else {\r\n setcameraExist(true);\r\n }\r\n });\r\n }\r\n }, []);\r\n React.useEffect(() => {\r\n if (documents.length > 0) {\r\n if (props.incomeId) {\r\n let exists = documents.find(\r\n (element) =>\r\n element.from == props.from && element.itemId == props.incomeId\r\n );\r\n\r\n if (exists) {\r\n setUploadedDocumet(exists);\r\n // setOpenDocumet(!openDocumet);\r\n } else {\r\n setUploadedDocumet(\"\");\r\n }\r\n }\r\n if (props.expenseId) {\r\n let exists = documents.find(\r\n (element) =>\r\n element.from == props.from && element.itemId == props.expenseId\r\n );\r\n\r\n if (exists) {\r\n setUploadedDocumet(exists);\r\n // setOpenDocumet(!openDocumet);\r\n } else {\r\n setUploadedDocumet(\"\");\r\n }\r\n }\r\n } else {\r\n setUploadedDocumet(\"\");\r\n }\r\n }, [documents]);\r\n\r\n const handleEvent = (event) => {\r\n if (event.target.value < 0) {\r\n setValue(0);\r\n } else {\r\n setValue(event.target.value);\r\n }\r\n props.onhandleChange(event);\r\n };\r\n const selectedhandleEvent = (event) => {\r\n setSelected(event.target.value);\r\n props.handleSelectedChange(event);\r\n };\r\n const onClick = () => {\r\n setOpenDocumet(!openDocumet);\r\n };\r\n var elem = document.documentElement;\r\n\r\n function openFullscreen() {\r\n if (elem.requestFullscreen) {\r\n elem.requestFullscreen();\r\n } else if (elem.webkitRequestFullscreen) {\r\n /* Safari */\r\n elem.webkitRequestFullscreen();\r\n } else if (elem.msRequestFullscreen) {\r\n /* IE11 */\r\n elem.msRequestFullscreen();\r\n }\r\n }\r\n const onOpenCamera = () => {\r\n openFullscreen();\r\n\r\n dispatch(\r\n cameraActions.openCamera({\r\n from: props.from,\r\n name: props.name,\r\n itemId:\r\n props.expenseId !== undefined ? props.expenseId : props.incomeId,\r\n })\r\n );\r\n };\r\n const onViewDocument = () => {\r\n let documentToShow;\r\n let pdf;\r\n if (uploadedDocumet.name === undefined) {\r\n pdf = true;\r\n documentToShow = uploadedDocumet.document.preview;\r\n } else {\r\n pdf = false;\r\n\r\n documentToShow = uploadedDocumet.preview;\r\n }\r\n if (pdf && isMobile) {\r\n window.open(documentToShow, \"_blank\");\r\n } else {\r\n dispatch(documentsActions.viewDocumet(uploadedDocumet));\r\n openFullscreen();\r\n }\r\n };\r\n const onDeleteDocument = () => {\r\n dispatch(cameraActions.deleteDocument(uploadedDocumet));\r\n setUploadedDocumet(\"\");\r\n };\r\n return (\r\n
\r\n \r\n \r\n \r\n

{props.name}

\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n {isMobile ? (\r\n \r\n ) : null}\r\n {isMobile ? (\r\n \r\n \r\n \r\n \r\n \r\n ) : null}\r\n \r\n \r\n \r\n \r\n \r\n {!isMobile ? (\r\n \r\n ) : null}\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n

{props.name}

\r\n
\r\n\r\n \r\n {\r\n handleEvent(e);\r\n },\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n />\r\n \r\n \r\n {\r\n selectedhandleEvent(e);\r\n }}\r\n value={selected}\r\n fullWidth\r\n id=\"demo-customized-select\"\r\n >\r\n Monthly\r\n Weekly\r\n \r\n \r\n \r\n {props.canAttachFile && uploadedDocumet == \"\" ? (\r\n \r\n \r\n \r\n ) : uploadedDocumet != \"\" ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ) : null}\r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport Button from \"components/CustomButtons/Button\";\r\nimport React, { useContext } from \"react\";\r\nimport { makeStyles, withStyles } from \"@material-ui/core/styles\";\r\nimport budgetSectionStyle from \"assets/jss/xrs/views/sectionsSections/budgetSectionStyle\";\r\nimport Context from \"../../../utils/context\";\r\nimport { primaryColor } from \"assets/jss/xrs\";\r\nimport { UploadDocumentsURL } from \"../../../assets/jss/xrs\";\r\nimport \"./app.scss\";\r\nimport {\r\n apiActions,\r\n getSiteDetailsActions,\r\n htmlActions,\r\n cameraActions,\r\n} from \"../../../store/redux/redux-actions/redux_actions\";\r\nimport * as ACTIONS from \"../../../store/actions/actions\";\r\nimport Link from \"@material-ui/core/Link\";\r\nimport IncomeBudgetFields from \"../../BudgetPage/IncomeBudgetFields.js\";\r\nimport groupArray from \"group-array\";\r\nimport NavigateNext from \"@material-ui/icons/NavigateNext\";\r\nimport browserHistory from \"../../../utils/history\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport BlueHeader from \"./BlueHeaderSection.js\";\r\nimport history from \"../../../utils/history\";\r\n\r\nimport * as URLS from \"../../../utils/XRSAPIs\";\r\nimport { element } from \"prop-types\";\r\nimport NumberFormat from \"react-number-format\";\r\nimport AlertDialog from \"./Dialog.js\";\r\nimport Icon from \"@material-ui/core/Icon\";\r\nimport Slider from \"react-slick\";\r\nimport { Hidden } from \"@material-ui/core\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\n\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\n\r\nconst SliderSettings = {\r\n infinite: false,\r\n arrows: false,\r\n centerMode: false,\r\n touchMove: false,\r\n\r\n variableWidth: false,\r\n dots: false,\r\n initialSlide: 0,\r\n slidesToShow: 5,\r\n responsive: [\r\n {\r\n breakpoint: 1024,\r\n settings: {\r\n slidesToShow: 3,\r\n slidesToScroll: 1,\r\n dots: false,\r\n },\r\n },\r\n {\r\n breakpoint: 600,\r\n settings: {\r\n slidesToShow: 2,\r\n slidesToScroll: 1,\r\n initialSlide: 1,\r\n },\r\n },\r\n {\r\n breakpoint: 480,\r\n settings: {\r\n slidesToShow: 1,\r\n slidesToScroll: 1,\r\n },\r\n },\r\n ],\r\n};\r\nconst useStyles = makeStyles(budgetSectionStyle);\r\nexport default function BudgetSection(props) {\r\n const context = useContext(Context);\r\n const classes = useStyles();\r\n const [step, setStep] = React.useState(0);\r\n\r\n const [topNav, setTopNav] = React.useState(null);\r\n const [showSuccess, setshowSuccess] = React.useState(false);\r\n\r\n const dispatch = useDispatch();\r\n const documents = useSelector((state) => state.CameraReducer.confirmedImages);\r\n\r\n const [incomesToDisplay, setincomesToDisplay] = React.useState([]);\r\n const [expensesToDisplay, setexpensesToDisplay] = React.useState([]);\r\n\r\n const [incomeMonthlyTotal, setIncomeMonthlyTotal] = React.useState(0.0);\r\n const [incomeYearlyTotal, setIncomeYearlyTotal] = React.useState(0.0);\r\n const [incomeWeeklyTotal, setIncomeWeeklyTotal] = React.useState(0.0);\r\n\r\n const [expenceMonthlyTotal, setExpenceMonthlyTotal] = React.useState(0.0);\r\n const [expenceYearlyTotal, setExpenceYearlyTotal] = React.useState(0.0);\r\n const [expenceWeeklyTotal, setExpenceWeeklyTotal] = React.useState(0.0);\r\n\r\n const [balanceMonthlyTotal, setBalanceMonthlyTotal] = React.useState(0.0);\r\n const [balanceYearlyTotal, setBalanceYearlyTotal] = React.useState(0.0);\r\n const [balanceWeeklyTotal, setBalanceWeeklyTotal] = React.useState(0.0);\r\n\r\n const [\r\n showpaymentplanbuttonafterbudgetsubmitted,\r\n setShowpaymentplanbuttonafterbudgetsubmitted,\r\n ] = React.useState(false);\r\n\r\n const createBudgetText = useSelector(\r\n (state) => state.HtmlReducer.createBudgetText\r\n );\r\n const currency = useSelector((state) => state.GetSiteDetailsReducer.currency);\r\n const uploadimagestobudget = useSelector(\r\n (state) => state.GetSiteDetailsReducer.uploadimagestobudget\r\n );\r\n\r\n const [value, setValue] = React.useState(0);\r\n const callPaymentPlan = () => {\r\n browserHistory.push(\"/createPayment\");\r\n };\r\n React.useEffect(() => {\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Site Detatils\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n setShowpaymentplanbuttonafterbudgetsubmitted(\r\n response.showpaymentplanbuttonafterbudgetsubmitted\r\n );\r\n });\r\n }, []);\r\n\r\n const handleChange = (newValue) => {\r\n if (newValue == 4) {\r\n submitForm();\r\n } else {\r\n if (step < newValue) {\r\n topNav.slickNext();\r\n } else if (newValue < 4) {\r\n topNav.slickPrev();\r\n }\r\n setStep(newValue);\r\n window.scroll(0, 0);\r\n }\r\n\r\n let incomeslist = Object.values(incomesToDisplay).flat();\r\n let expencelist = Object.values(expensesToDisplay).flat();\r\n calculate(incomeslist, expencelist);\r\n };\r\n\r\n const calculate = (incomes, expences) => {\r\n let cincomeMonthlyTotal = 0;\r\n let cincomeYearlyTotal = 0;\r\n let cincomeWeeklyTotal = 0;\r\n incomes.forEach(function(element) {\r\n if (element.selectedvalue == \"Monthly\") {\r\n cincomeMonthlyTotal += parseInt(\r\n element.value == \"\" ? \"0.00\" : element.value\r\n );\r\n cincomeYearlyTotal +=\r\n parseInt(element.value == \"\" ? \"0.00\" : element.value) * 12;\r\n cincomeWeeklyTotal +=\r\n (parseInt(element.value == \"\" ? \"0.00\" : element.value) * 12) / 52;\r\n } else if (element.selectedvalue == \"Weekly\") {\r\n cincomeMonthlyTotal +=\r\n (parseInt(element.value == \"\" ? \"0.00\" : element.value) * 52) / 12;\r\n cincomeYearlyTotal +=\r\n parseInt(element.value == \"\" ? \"0.00\" : element.value) * 52;\r\n cincomeWeeklyTotal += parseInt(\r\n element.value == \"\" ? \"0.00\" : element.value\r\n );\r\n } else if (element.selectedvalue == \"Yearly\") {\r\n cincomeMonthlyTotal +=\r\n parseInt(element.value == \"\" ? \"0.00\" : element.value) / 12;\r\n cincomeYearlyTotal += parseInt(\r\n element.value == \"\" ? \"0.00\" : element.value\r\n );\r\n cincomeWeeklyTotal +=\r\n parseInt(element.value == \"\" ? \"0.00\" : element.value) / 52;\r\n }\r\n });\r\n let cexpenceMonthlyTotal = 0;\r\n let cexpenceYearlyTotal = 0;\r\n let cexpenceWeeklyTotal = 0;\r\n\r\n expences.forEach(function(element) {\r\n if (element.selectedvalue == \"Monthly\") {\r\n cexpenceMonthlyTotal += parseInt(\r\n element.value == \"\" ? \"0.00\" : element.value\r\n );\r\n cexpenceYearlyTotal +=\r\n parseInt(element.value == \"\" ? \"0.00\" : element.value) * 12;\r\n cexpenceWeeklyTotal +=\r\n (parseInt(element.value == \"\" ? \"0.00\" : element.value) * 12) / 52;\r\n } else if (element.selectedvalue == \"Weekly\") {\r\n cexpenceMonthlyTotal +=\r\n (parseInt(element.value == \"\" ? \"0.00\" : element.value) * 52) / 12;\r\n cexpenceYearlyTotal +=\r\n parseInt(element.value == \"\" ? \"0.00\" : element.value) * 52;\r\n cexpenceWeeklyTotal += parseInt(\r\n element.value == \"\" ? \"0.00\" : element.value\r\n );\r\n } else if (element.selectedvalue == \"Yearly\") {\r\n cexpenceMonthlyTotal +=\r\n parseInt(element.value == \"\" ? \"0.00\" : element.value) / 12;\r\n cexpenceYearlyTotal += parseInt(\r\n element.value == \"\" ? \"0.00\" : element.value\r\n );\r\n cexpenceWeeklyTotal +=\r\n parseInt(element.value == \"\" ? \"0.00\" : element.value) / 52;\r\n }\r\n });\r\n\r\n var cbalanceMonthlyTotal = cincomeMonthlyTotal - cexpenceMonthlyTotal;\r\n var cbalanceYearlyTotal = cincomeYearlyTotal - cexpenceYearlyTotal;\r\n var cbalanceWeeklyTotal = cincomeWeeklyTotal - cexpenceWeeklyTotal;\r\n\r\n setIncomeMonthlyTotal(cincomeMonthlyTotal);\r\n setIncomeYearlyTotal(cincomeYearlyTotal);\r\n setIncomeWeeklyTotal(cincomeWeeklyTotal);\r\n\r\n setExpenceMonthlyTotal(cexpenceMonthlyTotal);\r\n setExpenceYearlyTotal(cexpenceYearlyTotal);\r\n setExpenceWeeklyTotal(cexpenceWeeklyTotal);\r\n\r\n setBalanceMonthlyTotal(cbalanceMonthlyTotal);\r\n setBalanceYearlyTotal(cbalanceYearlyTotal);\r\n setBalanceWeeklyTotal(cbalanceWeeklyTotal);\r\n };\r\n const submitForm = () => {\r\n let incomeslist = Object.values(incomesToDisplay).flat();\r\n let expencelist = Object.values(expensesToDisplay).flat();\r\n var formData = new FormData();\r\n var data = {\r\n BudgetInformation: {\r\n YearlyIncomeTotal: incomeYearlyTotal.toFixed(2).toString(),\r\n MonthlyIncomeTotal: incomeMonthlyTotal.toFixed(2).toString(),\r\n WeeklyIncomeTotal: incomeWeeklyTotal.toFixed(2).toString(),\r\n YearlyExpenditureTotal: expenceYearlyTotal.toFixed(2).toString(),\r\n MonthlyExpenditureTotal: expenceMonthlyTotal.toFixed(2).toString(),\r\n WeeklyExpenditureTotal: expenceWeeklyTotal.toFixed(2).toString(),\r\n YearlySavingsTotal: balanceYearlyTotal.toFixed(2).toString(),\r\n MonthlySavingsTotal: balanceMonthlyTotal.toFixed(2).toString(),\r\n WeeklySavingsTotal: balanceWeeklyTotal.toFixed(2).toString(),\r\n Incomes: [],\r\n Expenditures: [],\r\n },\r\n };\r\n for (var i in incomeslist) {\r\n var item = incomeslist[i];\r\n\r\n let exists = documents.find(\r\n (x) => x.from == \"income\" && x.itemId == item.incomeId\r\n );\r\n\r\n if (exists) {\r\n formData.append(\r\n exists.name ? exists.name : exists.document.name,\r\n exists.document\r\n );\r\n }\r\n\r\n data.BudgetInformation.Incomes.push({\r\n IncomeName: item.incomeType,\r\n IncomeValue:\r\n item.value.toString() == \"\" ? \"0.00\" : item.value.toString(),\r\n IncomeFrequency: item.selectedvalue,\r\n AttachedFileName:\r\n exists === undefined\r\n ? \"\"\r\n : exists.name\r\n ? exists.name\r\n : exists.document.name,\r\n });\r\n }\r\n\r\n for (var i in expencelist) {\r\n var item = expencelist[i];\r\n let exists = documents.find(\r\n (x) => x.from == \"expense\" && x.itemId == item.expenseId\r\n );\r\n if (exists) {\r\n formData.append(\r\n exists.name ? exists.name : exists.document.name,\r\n exists.document\r\n );\r\n }\r\n\r\n data.BudgetInformation.Expenditures.push({\r\n ExpenditureName: item.expenseType,\r\n ExpenditureValue:\r\n item.value.toString() == \"\" ? \"0.00\" : item.value.toString(),\r\n ExpenditureFrequency: item.selectedvalue,\r\n AttachedFileName:\r\n exists === undefined\r\n ? \"\"\r\n : exists.name\r\n ? exists.name\r\n : exists.document.name,\r\n });\r\n }\r\n\r\n formData.append(\"BudgetInformation\", JSON.stringify(data));\r\n fetch(\r\n uploadimagestobudget\r\n ? UploadDocumentsURL\r\n : URLS.CreateBudgetAndAttachDocuments,\r\n {\r\n method: \"POST\",\r\n headers: {\r\n // \"Content-Type\": \"multipart/form-data\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n body: formData,\r\n // body: JSON.stringify(data),\r\n }\r\n )\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Create Budget\", data, context);\r\n });\r\n setStep(1);\r\n\r\n throw Error(\"\");\r\n }\r\n })\r\n\r\n .then((data) => {\r\n setshowSuccess(true);\r\n dispatch(cameraActions.resetDocuments());\r\n getMenu();\r\n\r\n topNav.slickNext();\r\n\r\n setStep(4);\r\n window.scroll(0, 0);\r\n }, [])\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Create Budget\", error, context);\r\n }\r\n });\r\n };\r\n const getMenu = () => {\r\n var url = URLS.GetWelcomeNavigation;\r\n var token = sessionStorage.getItem(\"access_token\");\r\n\r\n fetch(url, {\r\n method: \"GET\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Welcome Navigation\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data1) => {\r\n dispatch(ACTIONS.set_menu(data1));\r\n\r\n fetch(URLS.GetWelcomeDetails, {\r\n method: \"GET\",\r\n headers: { Authorization: \"Bearer \" + token },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n ApiErrorHandler(\"Welcome Details\", res, context);\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data) => {\r\n dispatch(htmlActions.termsQuickPay(data.customer.termsquickpay));\r\n dispatch(htmlActions.termsPlan(data.customer.termsplan));\r\n dispatch(htmlActions.termsDiscount(data.customer.termsdiscount));\r\n\r\n dispatch(\r\n htmlActions.viewOfferText(data.activeAccounts[0].viewoffertext)\r\n );\r\n dispatch(\r\n htmlActions.createPlanText(data.activeAccounts[0].createplantext)\r\n );\r\n dispatch(\r\n htmlActions.createPlantoc(data.activeAccounts[0].createplantoc)\r\n );\r\n dispatch(\r\n htmlActions.createBudgetText(\r\n data.activeAccounts[0].createbudgettext\r\n )\r\n );\r\n dispatch(\r\n htmlActions.viewAccountText(\r\n data.activeAccounts[0].viewacccounttext\r\n )\r\n );\r\n dispatch(ACTIONS.set_Customer(data.customer));\r\n\r\n sessionStorage.setItem(\"user\", data.customer.cufname);\r\n\r\n dispatch(ACTIONS.set_Accounts(data.activeAccounts));\r\n\r\n dispatch(ACTIONS.set_Callbacks(data.callbackReasons));\r\n dispatch(ACTIONS.set_num_accounts(data.activeAccounts.length));\r\n if (data.activeAccounts.length == 1) {\r\n dispatch(ACTIONS.set_selectedAccount(data.activeAccounts[0]));\r\n }\r\n dispatch(apiActions.clear());\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Welcome Details\", error, context);\r\n }\r\n });\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Welcome Navigation\", error, context);\r\n }\r\n });\r\n };\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n\r\n const createIncomeData = (\r\n incomeCategory,\r\n incomeOrder,\r\n incomeType,\r\n canAttachFile,\r\n incomeId,\r\n\r\n value,\r\n selectedvalue,\r\n atachedFileName\r\n ) => {\r\n return {\r\n incomeCategory,\r\n incomeOrder,\r\n incomeType,\r\n value,\r\n incomeId,\r\n selectedvalue,\r\n canAttachFile,\r\n atachedFileName,\r\n };\r\n };\r\n const createExpenceData = (\r\n expenseCategory,\r\n expenseOrder,\r\n expenseType,\r\n canAttachFile,\r\n expenseId,\r\n value,\r\n selectedvalue,\r\n atachedFileName\r\n ) => {\r\n return {\r\n expenseCategory,\r\n expenseOrder,\r\n expenseType,\r\n expenseId,\r\n value,\r\n selectedvalue,\r\n canAttachFile,\r\n atachedFileName,\r\n };\r\n };\r\n\r\n React.useEffect(() => {\r\n //window.initSlick();\r\n fetch(URLS.GetBugetColumns, {\r\n method: \"GET\",\r\n headers: { Authorization: \"Bearer \" + token },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Buget Columns\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data) => {\r\n const IncomedataRows = [];\r\n const ExpencedataRows = [];\r\n\r\n data.incomesToDisplay.forEach((item) => {\r\n IncomedataRows.push(\r\n createIncomeData(\r\n item.incomeCategory,\r\n item.incomeOrder,\r\n item.incomeType,\r\n item.canAttachFile,\r\n item.incomeId,\r\n\r\n \"\",\r\n \"Monthly\",\r\n \"\"\r\n )\r\n );\r\n });\r\n\r\n data.expensesToDisplay.forEach((item) => {\r\n ExpencedataRows.push(\r\n createExpenceData(\r\n item.expenseCategory,\r\n item.expenseOrder,\r\n item.expenseType,\r\n item.canAttachFile,\r\n item.expenseId,\r\n \"\",\r\n \"Monthly\",\r\n \"\"\r\n )\r\n );\r\n });\r\n\r\n var groupedItems = groupArray(IncomedataRows, \"incomeCategory\");\r\n var groupedItemse = groupArray(ExpencedataRows, \"expenseCategory\");\r\n\r\n setincomesToDisplay(groupedItems);\r\n setexpensesToDisplay(groupedItemse);\r\n }, [])\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Buget Columns\", error, context);\r\n }\r\n });\r\n }, []);\r\n\r\n function handleInputChange(event, index, cat) {\r\n incomesToDisplay[cat][index].value = event.target.value;\r\n setincomesToDisplay(incomesToDisplay);\r\n }\r\n function handleInputSelectedChange(event, index, cat) {\r\n incomesToDisplay[cat][index].selectedvalue = event.target.value;\r\n setincomesToDisplay(incomesToDisplay);\r\n }\r\n\r\n function handleInputExSelectedChange(event, index, cat) {\r\n expensesToDisplay[cat][index].selectedvalue = event.target.value;\r\n setexpensesToDisplay(expensesToDisplay);\r\n }\r\n\r\n function handleInputExChange(event, index, cat) {\r\n expensesToDisplay[cat][index].value = event.target.value;\r\n setexpensesToDisplay(expensesToDisplay);\r\n }\r\n\r\n return (\r\n
\r\n \r\n\r\n \r\n \r\n {\r\n setTopNav(slider);\r\n }}\r\n {...SliderSettings}\r\n >\r\n
\r\n
\r\n handleChange(0)}>Instructions\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n handleChange(1)}>Incomes\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n handleChange(2)}>Expenditure\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n handleChange(3)}>Finalise\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n handleChange(4)}>Summary\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n {createBudgetText}\r\n
\r\n {\r\n handleChange(1);\r\n }}\r\n color=\"primary\"\r\n icon={}\r\n classNames={classes.button}\r\n >\r\n Next\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n {\r\n event.preventDefault();\r\n if (event.target.checkValidity()) {\r\n handleChange(2);\r\n }\r\n }}\r\n className=\"center-container-940\"\r\n >\r\n

Enter your incomes in the area below

\r\n\r\n {Object.keys(incomesToDisplay).map(function(cat, index) {\r\n return (\r\n
\r\n

{cat}

\r\n {incomesToDisplay[cat].map(function(item, index2) {\r\n return (\r\n \r\n handleInputChange(e, index2, cat)\r\n }\r\n handleSelectedChange={(e) =>\r\n handleInputSelectedChange(e, index2, cat)\r\n }\r\n value={item.value}\r\n selectedvalue={item.selectedvalue}\r\n >\r\n );\r\n })}\r\n
\r\n );\r\n })}\r\n
\r\n handleChange(0)}\r\n color=\"primary\"\r\n icon={}\r\n className={classes.button}\r\n >\r\n Back\r\n \r\n }\r\n className={classes.button}\r\n >\r\n Next\r\n \r\n
\r\n \r\n \r\n\r\n \r\n {\r\n event.preventDefault();\r\n if (event.target.checkValidity()) {\r\n handleChange(3);\r\n }\r\n }}\r\n className=\"center-container-940\"\r\n >\r\n

Expenditure

\r\n\r\n {Object.keys(expensesToDisplay).map(function(cat, index) {\r\n return (\r\n
\r\n

{cat}

\r\n\r\n {expensesToDisplay[cat].map(function(item, index2) {\r\n return (\r\n \r\n handleInputExChange(e, index2, cat)\r\n }\r\n handleSelectedChange={(e) =>\r\n handleInputExSelectedChange(e, index2, cat)\r\n }\r\n selectedvalue={item.selectedvalue}\r\n >\r\n );\r\n })}\r\n
\r\n );\r\n })}\r\n
\r\n handleChange(1)}\r\n color=\"primary\"\r\n icon={}\r\n className={classes.button}\r\n >\r\n Back\r\n \r\n }\r\n className={classes.button}\r\n >\r\n Next\r\n \r\n
\r\n \r\n \r\n\r\n \r\n
\r\n

Finalise Budget

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

\r\n\r\n \r\n \r\n Income Totals\r\n \r\n \r\n \r\n \r\n Expenditure Totals\r\n \r\n \r\n \r\n \r\n Your available money\r\n \r\n \r\n
\r\n \r\n

Yearly

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 0\r\n ? classes.MoneyGreen\r\n : balanceMonthlyTotal < 0\r\n ? classes.MoneyRed\r\n : classes.Money\r\n }\r\n >\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n

Monthly

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 0\r\n ? classes.MoneyGreen\r\n : balanceMonthlyTotal < 0\r\n ? classes.MoneyRed\r\n : classes.Money\r\n }\r\n >\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n

Weekly

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 0\r\n ? classes.MoneyGreen\r\n : balanceMonthlyTotal < 0\r\n ? classes.MoneyRed\r\n : classes.Money\r\n }\r\n >\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n

Income Totals

\r\n
\r\n \r\n \r\n Yearly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Monthly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Weekly\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n

Expenditure Totals

\r\n
\r\n \r\n \r\n Yearly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Monthly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Weekly\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n

Your available Money

\r\n
\r\n \r\n \r\n Yearly\r\n \r\n 0\r\n ? classes.MoneyGreen\r\n : balanceMonthlyTotal < 0\r\n ? classes.MoneyRed\r\n : classes.Money\r\n }\r\n >\r\n \r\n \r\n \r\n \r\n \r\n Monthly\r\n \r\n 0\r\n ? classes.MoneyGreen\r\n : balanceMonthlyTotal < 0\r\n ? classes.MoneyRed\r\n : classes.Money\r\n }\r\n >\r\n \r\n \r\n \r\n \r\n \r\n Weekly\r\n \r\n 0\r\n ? classes.MoneyGreen\r\n : balanceMonthlyTotal < 0\r\n ? classes.MoneyRed\r\n : classes.Money\r\n }\r\n >\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n

Income Totals

\r\n {Object.keys(incomesToDisplay).map(function(cat, index) {\r\n return (\r\n
\r\n

{cat}

\r\n {incomesToDisplay[cat].map(function(item, index2) {\r\n return (\r\n
\r\n \r\n \r\n \r\n {item.incomeType}\r\n \r\n \r\n \r\n \r\n {item.selectedvalue}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {item.selectedvalue}\r\n \r\n \r\n \r\n \r\n {\" \"}\r\n
\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n );\r\n })}\r\n
\r\n\r\n \r\n

Expense Totals

\r\n {Object.keys(expensesToDisplay).map(function(cat, index) {\r\n return (\r\n
\r\n

{cat}

\r\n\r\n {expensesToDisplay[cat].map(function(item, index2) {\r\n return (\r\n
\r\n \r\n \r\n \r\n {\" \"}\r\n {item.expenseType}\r\n \r\n \r\n \r\n \r\n {item.selectedvalue}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {item.selectedvalue}\r\n \r\n \r\n \r\n \r\n {\" \"}\r\n
\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n
\r\n
\r\n

\r\n Finalising the budget will save the details on our system. If\r\n you are unsure that the details are correct, please go back and\r\n amend before finalising\r\n

\r\n
\r\n handleChange(2)}\r\n color=\"primary\"\r\n icon={}\r\n className={classes.button}\r\n >\r\n Back\r\n \r\n handleChange(4)}\r\n color=\"primary\"\r\n icon={}\r\n className={classes.button}\r\n >\r\n Next\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n

Summary

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

Income Totals

\r\n
\r\n \r\n \r\n Yearly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Monthly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Weekly\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n

Expenditure Totals

\r\n
\r\n \r\n \r\n Yearly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Monthly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Weekly\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n

Your available Money

\r\n
\r\n \r\n \r\n Yearly\r\n \r\n 0\r\n ? classes.MoneyGreen\r\n : balanceMonthlyTotal < 0\r\n ? classes.MoneyRed\r\n : classes.Money\r\n }\r\n >\r\n \r\n \r\n \r\n \r\n \r\n Monthly\r\n \r\n 0\r\n ? classes.MoneyGreen\r\n : balanceMonthlyTotal < 0\r\n ? classes.MoneyRed\r\n : classes.Money\r\n }\r\n >\r\n \r\n \r\n \r\n \r\n \r\n Weekly\r\n \r\n 0\r\n ? classes.MoneyGreen\r\n : balanceMonthlyTotal < 0\r\n ? classes.MoneyRed\r\n : classes.Money\r\n }\r\n >\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n

Income Totals

\r\n
\r\n \r\n \r\n Yearly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Monthly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Weekly\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n

Expenditure Totals

\r\n
\r\n \r\n \r\n Yearly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Monthly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Weekly\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n

Your available Money

\r\n
\r\n \r\n \r\n Yearly\r\n \r\n 0\r\n ? classes.MoneyGreen\r\n : balanceMonthlyTotal < 0\r\n ? classes.MoneyRed\r\n : classes.Money\r\n }\r\n >\r\n \r\n \r\n \r\n \r\n \r\n Monthly\r\n \r\n 0\r\n ? classes.MoneyGreen\r\n : balanceMonthlyTotal < 0\r\n ? classes.MoneyRed\r\n : classes.Money\r\n }\r\n >\r\n \r\n \r\n \r\n \r\n \r\n Weekly\r\n \r\n 0\r\n ? classes.MoneyGreen\r\n : balanceMonthlyTotal < 0\r\n ? classes.MoneyRed\r\n : classes.Money\r\n }\r\n >\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n {showSuccess ? (\r\n
    \r\n {\" \"}\r\n
  • \r\n {\" \"}\r\n

    \r\n Your budget has been submitted\r\n

    \r\n
  • \r\n
\r\n ) : null}\r\n\r\n 0 &&\r\n showpaymentplanbuttonafterbudgetsubmitted\r\n ? classes.showSummary\r\n : classes.hideSummary\r\n }\r\n >\r\n

\r\n Please proceed to Create a Payment Plan by clicking on\r\n

\r\n \r\n
\r\n button{\" \"}\r\n

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import React, { useState } from \"react\";\r\nimport { useWindowSize } from \"components/camera/Camera\";\r\nimport { isMobile } from \"react-device-detect\";\r\n\r\nexport default function PdfViewer({ pdf, documentToShow }) {\r\n const size = useWindowSize();\r\n\r\n React.useEffect(() => {\r\n if (pdf && isMobile) {\r\n window.open(documentToShow, \"_blank\");\r\n }\r\n }, [pdf]);\r\n if (pdf) {\r\n return (\r\n \r\n );\r\n } else {\r\n return ;\r\n }\r\n}\r\n","// import { GpsFixed } from \"@material-ui/icons\";\r\nimport {\r\n primaryColor,\r\n primaryDarkColor,\r\n successColor,\r\n dangerColor,\r\n primaryBoxShadow,\r\n} from \"assets/jss/xrs.js\";\r\nconst fabStyle = {\r\n fabContainer: {\r\n position: \"fixed\",\r\n bottom: \"50px\",\r\n right: \"50px\",\r\n zIndex: \"999\",\r\n cursor: \"pointer\",\r\n \"&:hover,&:focus\": {\r\n \"& $fabOptions\": {\r\n opacity: 1,\r\n transform: \"scale(1)\",\r\n },\r\n },\r\n },\r\n fabOptions: {\r\n listStyleType: \"none\",\r\n margin: \"0\",\r\n position: \"absolute\",\r\n bottom: \"70px\",\r\n right: \"0\",\r\n opacity: 0,\r\n transition: \"all 0.3s ease\",\r\n transform: \"scale(0)\",\r\n transformOrigin: \"85% bottom\",\r\n \"&:hover,&:focus\": {\r\n opacity: 1,\r\n transform: \"scale(1)\",\r\n },\r\n \"& li\": {\r\n display: \"flex\",\r\n\r\n justifyContent: \"flex-end\",\r\n padding: \"5px\",\r\n },\r\n },\r\n fabIconHolder: {\r\n width: \"50px\",\r\n height: \"50px\",\r\n borderRadius: \"100%\",\r\n background: primaryDarkColor[0],\r\n boxShadow: \"0 6px 20px rgba(0,0,0,0.2)\",\r\n \"&:hover,&:focus\": {\r\n background: primaryColor[0],\r\n ...primaryBoxShadow,\r\n },\r\n \"& i\": {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n justifyContent: \"center\",\r\n height: \"100%\",\r\n fontStyle: \"25px\",\r\n color: \"#ffffff\",\r\n },\r\n },\r\n fab: {\r\n \"&:hover,&:focus\": {\r\n background: primaryColor[0],\r\n ...primaryBoxShadow,\r\n },\r\n width: \"60px\",\r\n height: \"60px\",\r\n backgroundColor: primaryDarkColor[0],\r\n },\r\n\r\n fabLabel: {\r\n padding: \"2px 5px\",\r\n alignSelf: \"center\",\r\n userSelect: \"none\",\r\n whiteSpace: \"nowrap\",\r\n borderRadius: \"3px\",\r\n fontSize: \"16px\",\r\n background: \"#666666\",\r\n color: \"#ffffff\",\r\n boxShadow: \"0 6px 20px rgba(0,0,0,0.2)\",\r\n marginRight: \"10px\",\r\n },\r\n};\r\nexport default fabStyle;\r\n","import React from \"react\";\r\nimport styles from \"assets/jss/xrs/components/fabStyle.js\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\nimport CameraAltIcon from \"@material-ui/icons/CameraAlt\";\r\nimport {\r\n cameraActions,\r\n documentsActions,\r\n} from \"../../store/redux/redux-actions/redux_actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\n\r\nconst useStyles = makeStyles(styles);\r\nexport default function FabViewDocument(props) {\r\n const classes = useStyles();\r\n\r\n const dispatch = useDispatch();\r\n function closeFullscreen() {\r\n if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n } else if (document.webkitExitFullscreen) {\r\n /* Safari */\r\n document.webkitExitFullscreen();\r\n } else if (document.msExitFullscreen) {\r\n /* IE11 */\r\n document.msExitFullscreen();\r\n }\r\n }\r\n if (props.viewDocument !== \"\") {\r\n return (\r\n {\r\n dispatch(documentsActions.viewDocumet(\"\"));\r\n closeFullscreen();\r\n }}\r\n className={classes.fabContainer}\r\n >\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n );\r\n } else return null;\r\n}\r\n","import React, { useContext } from \"react\";\r\nimport classNames from \"classnames\";\r\nimport budgetPageStyle from \"../../assets/jss/xrs/views/budgetPageStyle\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport BudgetSection from \"../SectionsPage/Sections/BudgetSection.js\";\r\nimport Context from \"../../utils/context\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport clsx from \"clsx\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { Collapse } from \"@material-ui/core\";\r\nimport CustomCamera from \"components/camera/Camera\";\r\nimport PdfViewer from \"components/PdfViewer/PdfViewer\";\r\nimport FabViewDocument from \"components/Fab/FabViewDocument\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles2 = makeStyles(budgetPageStyle);\r\n\r\nexport default function BudgetPage(props) {\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n document.body.scrollTop = 0;\r\n }, []);\r\n const viewDocument = useSelector(\r\n (state) => state.DocumentsReducer.documentToBeViewed\r\n );\r\n const context = useContext(Context);\r\n const open = useSelector((state) => state.CameraReducer.openFrom);\r\n const uploadimagestobudget = useSelector(\r\n (state) => state.GetSiteDetailsReducer.uploadimagestobudget\r\n );\r\n const classes = useStyles();\r\n const classes2 = useStyles2();\r\n const [page, setPage] = React.useState(1);\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {open === \"\" || !isMobile || !uploadimagestobudget ? null : (\r\n \r\n )}\r\n \r\n \r\n {viewDocument === \"\" ? null : (\r\n <>\r\n {\" \"}\r\n \r\n \r\n )}\r\n \r\n
\r\n );\r\n}\r\n","import React, { useContext } from \"react\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Parallax from \"components/Parallax/Parallax.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport CustomTextField from \"components/CustomInput/CustomInput\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport Context from \"../../../utils/context\";\r\nimport Datetime from \"react-datetime\";\r\n// @material-ui/core components\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport TextField from \"components/CustomInput/CustomInput.js\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nimport Select from \"@material-ui/core/Select\";\r\nimport fnmoment from \"moment/min/moment-with-locales\";\r\nimport CardContent from \"@material-ui/core/CardContent\";\r\nimport * as URLS from \"../../../utils/XRSAPIs\";\r\nimport BlueHeader from \"../../SectionsPage/Sections/BlueHeaderSection.js\";\r\nimport {\r\n apiActions,\r\n getSiteDetailsActions,\r\n} from \"store/redux/redux-actions/redux_actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n width: \"100%\",\r\n margin: 0,\r\n padding: 0,\r\n },\r\n button: {\r\n marginRight: theme.spacing(1),\r\n padding: 13,\r\n },\r\n hide: {\r\n display: \"none\",\r\n },\r\n instructions: {\r\n marginTop: theme.spacing(1),\r\n marginBottom: theme.spacing(1),\r\n },\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 30,\r\n },\r\n whiteInfo: {\r\n color: \"white\",\r\n fontWeight: 400,\r\n paddingLeft: 0,\r\n paddingTop: 10,\r\n },\r\n whiteInfoMiddle: {\r\n color: \"white\",\r\n fontWeight: 400,\r\n paddingLeft: 0,\r\n\r\n textAlign: \"center\",\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n },\r\n blueText: {\r\n color: \"#0065a4\",\r\n fontWeight: 300,\r\n },\r\n Title: {\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n BoxFull: {\r\n width: \"100%\",\r\n paddingLeft: 0,\r\n paddingRight: 0,\r\n },\r\n Middle: {\r\n justifyContent: \"center\",\r\n width: \"100%\",\r\n alignItems: \"center\",\r\n textAlign: \"center\",\r\n border: 0,\r\n },\r\n blueTextMiddle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n justifyContent: \"center\",\r\n width: \"100%\",\r\n alignItems: \"center\",\r\n textAlign: \"center\",\r\n border: 0,\r\n },\r\n controlWhite: {\r\n margin: 0,\r\n height: 40,\r\n borderRadius: 2,\r\n backgroundColor: \"#f5f9ff\",\r\n color: \"#0088cc\",\r\n borderColor: \"#0088cc\",\r\n border: 1,\r\n },\r\n rightValues: {\r\n textAlign: \"right\",\r\n fontWeight: 300,\r\n },\r\n}));\r\n\r\nexport default function RequestCallBackSection() {\r\n const classes = useStyles();\r\n const [page, setPage] = React.useState(1);\r\n const context = useContext(Context);\r\n const dispatch = useDispatch();\r\n const loading = useSelector((state) => state.ApiCallsReducer.loading);\r\n\r\n const [sitename, setSitename] = React.useState(\"\");\r\n const [companyname, setCompanyname] = React.useState(\"\");\r\n const [aboutus, setAboutus] = React.useState(\"\");\r\n const [address, setAddress] = React.useState(\"\");\r\n const [officehours, setOfficehours] = React.useState(\"\");\r\n const [phonenumber, setPhonenumber] = React.useState(\"\");\r\n const [email, setEmail] = React.useState(\"\");\r\n const [openTime, setopenTime] = React.useState(\"\");\r\n const [closeTime, setcloseTime] = React.useState(\"\");\r\n\r\n const [callbackReason, setCallbackReason] = React.useState(\"\");\r\n const [callbackDate, setCallBackDate] = React.useState(\"\");\r\n const [callbackDateMax, setCallBackDateMax] = React.useState(\"\");\r\n const [callbackTime, setCallBackTime] = React.useState(\"\");\r\n const [callbackphone, setCallbackphone] = React.useState(\"\");\r\n const [callbackDateTime, setCallbackDateTime] = React.useState(\"None\");\r\n const stateCustomer = useSelector((state) => state.CustomerReducer.customer);\r\n const stateCallbacks = useSelector(\r\n (state) => state.CallbacksReducer.callbacks\r\n );\r\n React.useEffect(() => {\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Welcome Details\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n dispatch(getSiteDetailsActions.logo(response.logoimageurl));\r\n dispatch(getSiteDetailsActions.footerImage(response.footerimageurl));\r\n dispatch(getSiteDetailsActions.currency(response.sitecurrency));\r\n dispatch(getSiteDetailsActions.set4week(response.usE4WEEKLYFREQUENCY));\r\n\r\n dispatch(\r\n getSiteDetailsActions.uploadImagesToBudget(\r\n response.uploadimagestobudget\r\n )\r\n );\r\n if (response.usesconveniencefee) {\r\n dispatch(\r\n getSiteDetailsActions.convenienceFee(response.conveniencefee)\r\n );\r\n }\r\n setSitename(response.sitename);\r\n setCompanyname(response.companyname);\r\n setAboutus(response.aboutus);\r\n\r\n setOfficehours(response.officehours);\r\n setPhonenumber(response.phonenumber);\r\n setAddress(response.address);\r\n setEmail(response.email);\r\n setcloseTime(response.closinghours);\r\n setopenTime(response.openinghours);\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Site Detatils\", error, context);\r\n }\r\n });\r\n }, []);\r\n const handlecallbackReasonChange = (e) => {\r\n setCallbackReason(e.target.value);\r\n };\r\n\r\n const handleCallBackDateChange = (e) => {\r\n var d = fnmoment(e.target.value);\r\n\r\n setCallBackDate(d.format(\"YYYY-MM-DD\"));\r\n var date = d.format(\"L\");\r\n var time = callbackTime;\r\n var datetime = date + \" \" + time;\r\n setCallbackDateTime(datetime);\r\n };\r\n const handleCallBackTimeChange = (e) => {\r\n setCallBackTime(e.target.value);\r\n\r\n var date = callbackDate;\r\n var time = e.target.value;\r\n var datetime = date + \" \" + time;\r\n setCallbackDateTime(datetime);\r\n };\r\n const handleCallBackPhoneChange = (e) => {\r\n setCallbackphone(e.target.value);\r\n };\r\n const token = sessionStorage.getItem(\"access_token\");\r\n const submitForm = (event) => {\r\n event.preventDefault();\r\n if (document.forms[0].checkValidity()) {\r\n const xhr = new XMLHttpRequest();\r\n var url = URLS.SaveCallBack;\r\n\r\n dispatch(apiActions.loading(true));\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n xhr.setRequestHeader(\"Authorization\", \"Bearer \" + token);\r\n\r\n var date = callbackDate;\r\n var time = callbackTime;\r\n var datetime = date + \" \" + time;\r\n var callBacklDate = fnmoment(datetime).format(\"YYYY-MM-DD HH:mm:ss \");\r\n var data = JSON.stringify({\r\n DateOfCallBack: callBacklDate,\r\n Note: callbackReason,\r\n PhoneNumber: callbackphone,\r\n PhoneType: \"Home\",\r\n });\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n context.stateInfoDialog(\r\n \"Callback Information\",\r\n JSON.parse(xhr.responseText).message,\r\n \"/welcome\"\r\n );\r\n //setIfamevisible(true);\r\n } else {\r\n ApiErrorHandler(\"Save Call Back\", xhr, context);\r\n }\r\n }\r\n };\r\n try {\r\n xhr.send(data);\r\n } catch (err) {\r\n ApiErrorHandler(\"Save Call Back\", err, context);\r\n }\r\n }\r\n };\r\n React.useEffect(() => {\r\n fnmoment.locale(window.navigator.language.toLowerCase());\r\n }, []);\r\n React.useEffect(() => {\r\n setCallbackphone(stateCustomer.cumobilephone);\r\n setCallBackDate(fnmoment().format(\"YYYY-MM-DD\"));\r\n setCallbackDateTime(fnmoment().format(\"L\"));\r\n\r\n var today = fnmoment()\r\n .add(stateCustomer.maxcallbackdate, \"days\")\r\n .format(\"YYYY-MM-DD\");\r\n setCallBackDateMax(today);\r\n return () => {\r\n dispatch(apiActions.clear());\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 \r\n
Choose a call back date
\r\n
\r\n \r\n {\r\n handleCallBackDateChange(e);\r\n },\r\n name: \"callbackDate\",\r\n // min: fnmoment(fnmoment()).format(\"YYYY-MM-DD\"),\r\n max: callbackDateMax,\r\n }}\r\n className={classes.control}\r\n >\r\n \r\n \r\n
Choose a call back time
\r\n
\r\n \r\n {\r\n handleCallBackTimeChange(e);\r\n },\r\n }}\r\n />\r\n \r\n \r\n
Choose call back reason
\r\n
\r\n \r\n {\r\n handlecallbackReasonChange(e);\r\n }}\r\n fullWidth\r\n required\r\n inputProps={{\r\n required: \"required\",\r\n }}\r\n labelId=\"demo-customized-select-label\"\r\n id=\"demo-customized-select\"\r\n value={callbackReason}\r\n >\r\n {stateCallbacks.map(function(res, index) {\r\n return (\r\n \r\n {res.callbackreason}\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n
Enter a phone number
\r\n
\r\n \r\n {\r\n handleCallBackPhoneChange(e);\r\n },\r\n }}\r\n />{\" \"}\r\n \r\n \r\n
\r\n \r\n \r\n

\r\n Selected date and time\r\n

\r\n

\r\n {callbackDateTime}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n Request Call\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n\r\n

How it works

\r\n\r\n

We are happy to give you a call whenever it suits you!

\r\n

We will try our best to call you at your requested time

\r\n

Using our handy form, follow these steps:

\r\n\r\n
    \r\n
  1. Select a date for the call.
  2. \r\n
  3. Select a time for the call that suits you.
  4. \r\n
  5. Enter phone number
  6. \r\n
  7. Choose a reason for the call.
  8. \r\n
  9. Finally, click Request Call.
  10. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import React, { useContext } from \"react\";\r\nimport classNames from \"classnames\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport Context from \"../../utils/context\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport clsx from \"clsx\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport RequestCallbackSection from \"../SectionsPage/Sections/RequestCallBackSection.js\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles2 = makeStyles((theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n}));\r\n\r\nexport default function RequestCallBackLoggedID(props) {\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n document.body.scrollTop = 0;\r\n }, []);\r\n\r\n const context = useContext(Context);\r\n\r\n const classes = useStyles();\r\n const classes2 = useStyles2();\r\n const [page, setPage] = React.useState(1);\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n}\r\n","import { isMobile } from \"react-device-detect\";\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst changePasswordOrPinPageStyle = (theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n});\r\n\r\nexport default changePasswordOrPinPageStyle;\r\n","import React, { useContext } from \"react\";\r\nimport classNames from \"classnames\";\r\nimport changePasswordOrPinPageStyle from \"../../assets/jss/xrs/views/changePasswordOrPinPageStyle\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport ChangePasswordSection from \"./ChangePasswordOrPin.js\";\r\nimport Context from \"../../utils/context\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport clsx from \"clsx\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles2 = makeStyles(changePasswordOrPinPageStyle);\r\n\r\nexport default function BudgetPage(props) {\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n document.body.scrollTop = 0;\r\n }, []);\r\n\r\n const context = useContext(Context);\r\n\r\n const classes = useStyles();\r\n const classes2 = useStyles2();\r\n const [page, setPage] = React.useState(1);\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n}\r\n","import { isMobile } from \"react-device-detect\";\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\n\r\nconst faqPageLoginStyle = (theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n});\r\n\r\nexport default faqPageLoginStyle;\r\n","import imagesStyles from \"../../imagesStyles\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nconst faqSectionStyle = {\r\n ...imagesStyles,\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 20,\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: primaryColor[20],\r\n fontWeight: 400,\r\n marginBottom: 0,\r\n },\r\n RightText: {\r\n marginBottom: 5,\r\n },\r\n Title: {\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n },\r\n tableWrapper: {\r\n maxHeight: 270,\r\n overflow: \"auto\",\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n};\r\nexport default faqSectionStyle;\r\n","import Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport Button from \"components/CustomButtons/Button\";\r\nimport React, { useContext } from \"react\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport faqSectionStyle from \"assets/jss/xrs/views/sectionsSections/faqSectionStyle\";\r\nimport Context from \"../../../utils/context\";\r\nimport * as URLS from \"../../../utils/XRSAPIs\";\r\nimport * as ACTIONS from \"../../../store/actions/actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport BlueHeader from \"./BlueHeaderSection.js\";\r\nimport ReactHtmlParser from \"react-html-parser\";\r\nimport Table from \"@material-ui/core/Table\";\r\nimport TableBody from \"@material-ui/core/TableBody\";\r\nimport TableCell from \"@material-ui/core/TableCell\";\r\nimport TableHead from \"@material-ui/core/TableHead\";\r\nimport TableRow from \"@material-ui/core/TableRow\";\r\nimport NumberFormat from \"react-number-format\";\r\nimport Moment from \"react-moment\";\r\nimport Accordion from \"components/Accordion/Accordion.js\";\r\nimport { textVariables } from \"assets/jss/xrs\";\r\n\r\nconst columns = [\r\n { id: \"Description\", label: \"Description\", minWidth: 100 },\r\n { id: \"Account #\", label: \"Account #\", minWidth: 170 },\r\n {\r\n id: \"Balance\",\r\n label: \"Balance\",\r\n minWidth: 100,\r\n align: \"right\",\r\n format: (value) => value.toFixed(2),\r\n },\r\n];\r\n\r\nconst useStyles = makeStyles(faqSectionStyle);\r\nexport default function FaqSection(props) {\r\n const context = useContext(Context);\r\n const classes = useStyles();\r\n const createData = (title, content) => {\r\n return { title, content };\r\n };\r\n const dispatch = useDispatch();\r\n const selectedAccount = useSelector(\r\n (state) => state.SelectedAccountsReducer.account\r\n );\r\n const stateAccounts = useSelector((state) => state.AccountsReducer.accounts);\r\n\r\n const [rowdata, setRowdata] = React.useState([]);\r\n const [site, setSite] = React.useState(\"\");\r\n const stateSite = useSelector((state) => state.SiteReducer.site);\r\n const stateCustomer = useSelector((state) => state.CustomerReducer.customer);\r\n const ReadContext = () => {\r\n setSite(stateSite);\r\n const dataRows = [];\r\n var data = stateSite.faqs;\r\n if (data != \"NoAccounts\") {\r\n var i = 1;\r\n data.forEach((item) => {\r\n dataRows.push(\r\n createData(\r\n ReactHtmlParser(item.header),\r\n ReactHtmlParser(item.details)\r\n )\r\n );\r\n i++;\r\n setRowdata(dataRows);\r\n });\r\n }\r\n };\r\n React.useEffect(() => {\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Site Detatils\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n dispatch(ACTIONS.set_Site(response));\r\n\r\n ReadContext();\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Site Detatils\", error, context);\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

Frequently Asked Questions

\r\n \r\n
\r\n
\r\n \r\n
{textVariables[5]}
\r\n

\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.accountnumber\r\n : stateCustomer.custnumber}\r\n

\r\n
{textVariables[6]}
\r\n

\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.deptofficehours\r\n : stateAccounts[0].deptofficehours}\r\n

\r\n
Address
\r\n

\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.deptaddress\r\n : stateAccounts[0].deptaddress}\r\n

\r\n
Phone
\r\n

\r\n {\" \"}\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.deptphonenumber\r\n : stateAccounts[0].deptphonenumber}\r\n

\r\n
Email
\r\n

\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.deptemail\r\n : stateAccounts[0].deptemail}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import React, { useContext } from \"react\";\r\nimport classNames from \"classnames\";\r\nimport faqPageLoginStyle from \"../../assets/jss/xrs/views/faqPageLoginStyle\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport FaqSection from \"../SectionsPage/Sections/FaqSection.js\";\r\nimport Context from \"../../utils/context\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport clsx from \"clsx\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles2 = makeStyles(faqPageLoginStyle);\r\n\r\nexport default function FaqPageLogin(props) {\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n document.body.scrollTop = 0;\r\n }, []);\r\n\r\n const context = useContext(Context);\r\n\r\n const classes = useStyles();\r\n const classes2 = useStyles2();\r\n const [page, setPage] = React.useState(1);\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n}\r\n","import React, { useContext } from \"react\";\r\nimport history from \"../../utils/history\";\r\nimport classNames from \"classnames\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport Iframe from \"react-iframe\";\r\n\r\nimport { useFormik } from \"formik\";\r\n\r\nimport TextField from \"components/CustomInput/CustomInput.js\";\r\nimport { Collapse } from \"@material-ui/core\";\r\nimport clsx from \"clsx\";\r\nimport Link from \"@material-ui/core/Link\";\r\nimport ReactHtmlParser, {\r\n processNodes,\r\n convertNodeToElement,\r\n htmlparser2,\r\n} from \"react-html-parser\";\r\n\r\nimport PayNow from \"../SectionsPage/Sections/PayNowSection.js\";\r\n\r\nimport html2canvas from \"html2canvas\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport BlueHeader from \"../SectionsPage/Sections/BlueHeaderSection.js\";\r\nimport Context from \"../../utils/context\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport { el } from \"date-fns/locale\";\r\n\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles2 = makeStyles((theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n Iframecontainer: {\r\n position: \"relative\",\r\n overflow: \"hidden\",\r\n width: \"100%\",\r\n paddingTop: \"56.25%\" /* 16:9 Aspect Ratio (divide 9 by 16 = 0.5625) */,\r\n },\r\n\r\n /* Then style the iframe to fit in the container div with full height and width */\r\n responsiveIframe: {\r\n position: \"absolute\",\r\n top: 0,\r\n left: 0,\r\n bottom: 0,\r\n right: 0,\r\n width: \"100%\",\r\n height: \"100%\",\r\n },\r\n}));\r\n\r\nexport default function IframePage(props) {\r\n const classes2 = useStyles2();\r\n const context = useContext(Context);\r\n const [page, setPage] = React.useState(1);\r\n const url = useSelector((state) => state.SiteReducer.iframeUrl);\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n
\r\n {\" \"}\r\n \r\n
\r\n );\r\n}\r\n","import Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport React, { useContext } from \"react\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport fnmoment from \"moment/min/moment-with-locales\";\r\nimport AttachFileIcon from \"@material-ui/icons/AttachFile\";\r\nimport Context from \"../../../utils/context\";\r\nimport * as URLS from \"../../../utils/XRSAPIs\";\r\nimport * as ACTIONS from \"../../../store/actions/actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport BlueHeader from \"./BlueHeaderSection.js\";\r\nimport ReactHtmlParser from \"react-html-parser\";\r\nimport Parallax from \"components/Parallax/Parallax.js\";\r\nimport { Collapse } from \"@material-ui/core\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport {\r\n cameraActions,\r\n documentsActions,\r\n htmlActions,\r\n apiActions,\r\n} from \"../../../store/redux/redux-actions/redux_actions\";\r\nimport history from \"../../../utils/history\";\r\n\r\nimport { DataGrid, getThemePaletteMode } from \"@material-ui/data-grid\";\r\nimport { createMuiTheme, darken, lighten } from \"@material-ui/core/styles\";\r\n\r\nimport ReplayRoundedIcon from \"@material-ui/icons/ReplayRounded\";\r\n\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport Toolbar from \"@material-ui/core/Toolbar\";\r\nimport AppBar from \"@material-ui/core/AppBar\";\r\nimport PdfViewer from \"components/PdfViewer/PdfViewer\";\r\n\r\nconst defaultTheme = createMuiTheme();\r\nconst useStyles = makeStyles(\r\n (theme) => {\r\n const getBackgroundColor = (color) =>\r\n getThemePaletteMode(theme.palette) === \"dark\"\r\n ? darken(color, 0.6)\r\n : lighten(color, 0.6);\r\n\r\n const getHoverBackgroundColor = (color) =>\r\n getThemePaletteMode(theme.palette) === \"dark\"\r\n ? darken(color, 0.5)\r\n : lighten(color, 0.5);\r\n\r\n return {\r\n root: {\r\n \"& .rowStyle--READ\": {\r\n fontWeight: 400,\r\n \"&:hover\": {},\r\n },\r\n \"& .rowStyle--UNREAD\": {\r\n fontWeight: 700,\r\n backgroundColor: getBackgroundColor(\"#BEBEBE\"),\r\n \"&:hover\": {},\r\n },\r\n \"& .headerStyle\": {\r\n border: \"none\",\r\n },\r\n \"& .cellStyle\": {\r\n borderStyle: \"none\",\r\n },\r\n },\r\n };\r\n },\r\n { defaultTheme }\r\n);\r\n\r\nexport default function MessagesSection(props) {\r\n const context = useContext(Context);\r\n const classes = useStyles();\r\n const createData = (title, content) => {\r\n return { title, content };\r\n };\r\n const dispatch = useDispatch();\r\n\r\n const columnsDesktop = [\r\n {\r\n field: \"Status\",\r\n headerName: \"Status\",\r\n width: 130,\r\n hide: true,\r\n headerClassName: \"headerStyle\",\r\n cellClassName: \"cellStyle\",\r\n },\r\n {\r\n field: \"ReceivedAt\",\r\n headerName: \"Date/Time\",\r\n flex: 1,\r\n headerClassName: \"headerStyle\",\r\n cellClassName: \"cellStyle\",\r\n },\r\n //{\r\n // field: 'CustomerRecNo', headerName: 'First name', width: 130 },\r\n {\r\n field: \"Reference\",\r\n headerName: \"Ref\",\r\n flex: 1,\r\n headerClassName: \"headerStyle\",\r\n cellClassName: \"cellStyle\",\r\n },\r\n {\r\n field: \"Account\",\r\n headerName: \"Account\",\r\n flex: 1,\r\n headerClassName: \"headerStyle\",\r\n cellClassName: \"cellStyle\",\r\n },\r\n // {\r\n // field: \"Type\",\r\n // headerName: \"Type\",\r\n // flex: 1,\r\n // headerClassName: \"headerStyle\",\r\n // cellClassName: \"cellStyle\",\r\n // },\r\n {\r\n field: \"HasAttachment\",\r\n headerName: \"Attachment\",\r\n flex: 1,\r\n headerClassName: \"headerStyle\",\r\n cellClassName: \"cellStyle\",\r\n renderCell: (params) => {\r\n return (\r\n \r\n {\r\n (params.row.HasAttachment = params.row.HasAttachment ? (\r\n \r\n ) : null)\r\n }\r\n \r\n );\r\n },\r\n },\r\n ];\r\n const columnsMobile = [\r\n {\r\n field: \"ReceivedAt\",\r\n headerName: \"Date/Time\",\r\n flex: 1,\r\n headerClassName: \"headerStyle\",\r\n cellClassName: \"cellStyle\",\r\n },\r\n {\r\n field: \"Reference\",\r\n headerName: \"Ref\",\r\n flex: 1,\r\n headerClassName: \"headerStyle\",\r\n cellClassName: \"cellStyle\",\r\n },\r\n // {\r\n // field: \"CustomerRecNo\",\r\n // headerName: \"First name\",\r\n // width: 130,\r\n // },\r\n\r\n // {\r\n // field: \"Type\",\r\n // headerName: \"Type\",\r\n // flex: 1,\r\n // headerClassName: \"headerStyle\",\r\n // cellClassName: \"cellStyle\",\r\n // },\r\n {\r\n field: \"HasAttachment\",\r\n headerName: \"Attachment\",\r\n flex: 0.3,\r\n headerClassName: \"headerStyle\",\r\n cellClassName: \"cellStyle\",\r\n renderCell: (params) => {\r\n return (\r\n \r\n {\r\n (params.row.HasAttachment = params.row.HasAttachment ? (\r\n \r\n ) : null)\r\n }\r\n \r\n );\r\n },\r\n },\r\n ];\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n\r\n const [rowdata, setRowdata] = React.useState([]);\r\n const [selectedRow, setSelectedRow] = React.useState(null);\r\n\r\n const [site, setSite] = React.useState(\"\");\r\n const stateSite = useSelector((state) => state.SiteReducer.site);\r\n const stateCustomer = useSelector((state) => state.CustomerReducer.customer);\r\n const ReadContext = () => {\r\n setSite(stateSite);\r\n const dataRows = [];\r\n var data = stateSite.faqs;\r\n if (data != \"NoAccounts\") {\r\n var i = 1;\r\n data.forEach((item) => {\r\n dataRows.push(\r\n createData(\r\n ReactHtmlParser(item.header),\r\n ReactHtmlParser(item.details)\r\n )\r\n );\r\n i++;\r\n });\r\n }\r\n };\r\n const getMenu = () => {\r\n var url = URLS.GetWelcomeNavigation;\r\n var token = sessionStorage.getItem(\"access_token\");\r\n\r\n fetch(url, {\r\n method: \"GET\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Welcome Navigation\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data1) => {\r\n dispatch(ACTIONS.set_menu(data1));\r\n\r\n fetch(URLS.GetWelcomeDetails, {\r\n method: \"GET\",\r\n headers: { Authorization: \"Bearer \" + token },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n ApiErrorHandler(\"Welcome Details\", res, context);\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data) => {\r\n dispatch(htmlActions.termsQuickPay(data.customer.termsquickpay));\r\n dispatch(htmlActions.termsPlan(data.customer.termsplan));\r\n dispatch(htmlActions.termsDiscount(data.customer.termsdiscount));\r\n\r\n dispatch(\r\n htmlActions.viewOfferText(data.activeAccounts[0].viewoffertext)\r\n );\r\n dispatch(\r\n htmlActions.createPlanText(data.activeAccounts[0].createplantext)\r\n );\r\n dispatch(\r\n htmlActions.createPlantoc(data.activeAccounts[0].createplantoc)\r\n );\r\n dispatch(\r\n htmlActions.createBudgetText(\r\n data.activeAccounts[0].createbudgettext\r\n )\r\n );\r\n dispatch(\r\n htmlActions.viewAccountText(\r\n data.activeAccounts[0].viewacccounttext\r\n )\r\n );\r\n dispatch(ACTIONS.set_Customer(data.customer));\r\n\r\n sessionStorage.setItem(\"user\", data.customer.cufname);\r\n\r\n dispatch(ACTIONS.set_Accounts(data.activeAccounts));\r\n\r\n dispatch(ACTIONS.set_Callbacks(data.callbackReasons));\r\n dispatch(ACTIONS.set_num_accounts(data.activeAccounts.length));\r\n if (data.activeAccounts.length == 1) {\r\n dispatch(ACTIONS.set_selectedAccount(data.activeAccounts[0]));\r\n }\r\n dispatch(apiActions.clear());\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Welcome Details\", error, context);\r\n }\r\n });\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Welcome Navigation\", error, context);\r\n }\r\n });\r\n getSiteDetails();\r\n };\r\n const getSiteDetails = () => {\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Site Detatils\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n dispatch(ACTIONS.set_Site(response));\r\n\r\n ReadContext();\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Site Detatils\", error, context);\r\n }\r\n });\r\n fetch(URLS.GetUserMessages, {\r\n method: \"GET\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Messages\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n let rows = response.map((x) => {\r\n x.ReceivedAt = fnmoment(x.ReceivedAt).format(\"L HH:MM\");\r\n\r\n return x;\r\n });\r\n setRowdata(rows);\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Site Detatils\", error, context);\r\n }\r\n });\r\n };\r\n React.useEffect(() => {\r\n getSiteDetails();\r\n fnmoment.locale(window.navigator.language.toLowerCase());\r\n }, []);\r\n const [showDetails, setShowDetails] = React.useState(false);\r\n const onRowEvent = (row) => {\r\n fetch(\r\n URLS.GetUserMessageDetails +\r\n new URLSearchParams({\r\n MessageId: row.id,\r\n }),\r\n {\r\n method: \"GET\",\r\n\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n }\r\n )\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Message Details\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n setSelectedRow(response);\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Message Details\", error, context);\r\n }\r\n });\r\n getMenu();\r\n setShowDetails(true);\r\n };\r\n const handleBack = () => {\r\n setShowDetails(false);\r\n };\r\n const handleView = () => {\r\n let pdf = selectedRow.MimeType == \"PDF\" ? true : false;\r\n if (pdf && isMobile) {\r\n window.open(selectedRow.Attachment, \"_blank\");\r\n }\r\n if (!pdf) {\r\n const url = window.URL.createObjectURL(selectedRow.Attachment);\r\n const a = document.createElement(\"a\");\r\n a.style.display = \"none\";\r\n a.href = url;\r\n // the filename you want\r\n a.download = \"todo-1.json\";\r\n document.body.appendChild(a);\r\n a.click();\r\n window.URL.revokeObjectURL(url);\r\n alert(\"your file has downloaded!\"); // or you know, something with better UX...\r\n } else {\r\n dispatch(\r\n documentsActions.viewDocumet({\r\n preview: selectedRow.Attachment,\r\n pdf: pdf,\r\n })\r\n );\r\n openFullscreen();\r\n }\r\n };\r\n var elem = document.documentElement;\r\n\r\n function openFullscreen() {\r\n if (elem.requestFullscreen) {\r\n elem.requestFullscreen();\r\n } else if (elem.webkitRequestFullscreen) {\r\n /* Safari */\r\n elem.webkitRequestFullscreen();\r\n } else if (elem.msRequestFullscreen) {\r\n /* IE11 */\r\n elem.msRequestFullscreen();\r\n }\r\n }\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n Message inbox\r\n \r\n onRowEvent(row)}\r\n // getRowClassName={(params) => {\r\n // ;\r\n // let tet = `rowStyle--${\r\n // params.row.Status == \"READ\" ? \".Mui-selected\" : null\r\n // }`;\r\n\r\n // return \".Mui-selected\";\r\n // }}\r\n getRowClassName={(params) =>\r\n `rowStyle--${params.getValue(\r\n params.row.MessageId,\r\n \"Status\"\r\n )}`\r\n }\r\n getRowId={(row) => row.MessageId}\r\n density=\"compact\"\r\n autoHeight=\"true\"\r\n rows={rowdata}\r\n columns={isMobile ? columnsMobile : columnsDesktop}\r\n pageSize={10}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n {selectedRow !== null ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n {\" \"}\r\n {selectedRow.Reference}, account number:\r\n {selectedRow.CustomerRecNo}\r\n \r\n \r\n \r\n \r\n \r\n {fnmoment(selectedRow.ReceivedAt).format(\r\n \"L HH:MM\"\r\n )}\r\n

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

{selectedRow.Body}

\r\n
\r\n {selectedRow.HasAttachment ? (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ) : (\r\n \r\n {\" \"}\r\n \r\n )}\r\n \r\n ) : null}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import React, { useContext } from \"react\";\r\nimport classNames from \"classnames\";\r\n\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport FaqSection from \"../SectionsPage/Sections/FaqSection.js\";\r\nimport Context from \"../../utils/context\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport MessagesSection from \"../SectionsPage/Sections/MessagesSection.js\";\r\nimport clsx from \"clsx\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport PdfViewer from \"components/PdfViewer/PdfViewer\";\r\nimport FabViewDocument from \"components/Fab/FabViewDocument\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nimport { Collapse } from \"@material-ui/core\";\r\nconst useStyles = makeStyles(landingPageStyle);\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles2 = makeStyles((theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n}));\r\n\r\nexport default function MessagesPage(props) {\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n document.body.scrollTop = 0;\r\n }, []);\r\n\r\n const context = useContext(Context);\r\n\r\n const classes = useStyles();\r\n const classes2 = useStyles2();\r\n const [page, setPage] = React.useState(1);\r\n const viewDocument = useSelector(\r\n (state) => state.DocumentsReducer.documentToBeViewed\r\n );\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n {viewDocument === \"\" ? null : (\r\n <>\r\n {\" \"}\r\n \r\n \r\n )}\r\n \r\n
\r\n );\r\n}\r\n","import React, { useContext } from \"react\";\r\n\r\nimport history from \"./utils/history\";\r\nimport Context from \"./utils/context\";\r\nimport MomentUtils from \"@date-io/moment\";\r\n\r\nimport { Router, Route, Switch, Redirect } from \"react-router\";\r\n\r\nimport \"assets/scss/xrs.scss\";\r\n// pages for this product\r\nimport WellcomePage from \"views/WellcomePage/WellcomePage.js\";\r\nimport DocumentsPage from \"views/DocumentsPage/DocumentsPage.js\";\r\n\r\nimport ViewAccountPage from \"views/ViewAccountPage/ViewAccountPage.js\";\r\nimport CreatePayment from \"views/CreatePaymentPage/CreatePaymentPlanPage.js\";\r\nimport LandingPage from \"views/LandingPage/LandingPage.js\";\r\nimport LandingPageCreateUser from \"views/LandingPage/LandingPageCreateUser.js\";\r\nimport QuickPayPage from \"views/QuickPayPage/QuickPayPage.js\";\r\nimport QuickPayPaymentStatus from \"views/QuickPayPage/QuickPayPaymentStatus.js\";\r\nimport PayNowPaymentStatus from \"views/PayNowPage/PayNowPaymentStatus.js\";\r\nimport PayNowPage from \"views/PayNowPage/PayNowPage.js\";\r\nimport ViewOfferPage from \"views/ViewOfferPage/ViewOfferPage.js\";\r\nimport FaqPage from \"views/FaqPage/FaqPage.js\";\r\nimport BudgetPage from \"views/BudgetPage/BudgetPage.js\";\r\nimport RequestCallBackPage from \"views/RequestCallBackPage/RequestCallBackPageLoggendIn.js\";\r\nimport ChangePassword from \"views/ChangePassworOrPin/ChangePasswordOrPinPage.js\";\r\nimport faq from \"views/FaqPageLogin/FaqPageLogin.js\";\r\nimport IframePage from \"views/IframePage/IframePage\";\r\n\r\nimport MessagesPage from \"views/MessagesPage/MessagesPage.js\";\r\n\r\nimport { MuiPickersUtilsProvider } from \"@material-ui/pickers\";\r\nimport { changePassword } from \"utils/XRSAPIs\";\r\n\r\nconst PrivateRoute = ({ component: Component, auth }) => (\r\n \r\n auth === true ? (\r\n \r\n ) : (\r\n \r\n )\r\n }\r\n />\r\n);\r\n\r\nconst Routes = () => {\r\n const context = useContext(Context);\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n }\r\n />\r\n\r\n }\r\n />\r\n\r\n \r\n \r\n \r\n }\r\n />\r\n }\r\n />\r\n }\r\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 Routes;\r\n","import * as ACTION_TYPES from \"../actions/action_types\";\r\n\r\nexport const initialState = {\r\n accounts: \"NoAccounts\",\r\n numOfAccounts: 0,\r\n registrationMethod: null,\r\n};\r\n\r\nexport const AccountsReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case ACTION_TYPES.SET_ACCOUNTS:\r\n return {\r\n ...state,\r\n accounts: action.payload,\r\n };\r\n case ACTION_TYPES.REGISTRTION_METHOD:\r\n return {\r\n ...state,\r\n registrationMethod: action.payload,\r\n };\r\n case ACTION_TYPES.SET_NUMACCOUNTS:\r\n return {\r\n ...state,\r\n numOfAccounts: action.payload,\r\n };\r\n case ACTION_TYPES.FAILURE:\r\n return {\r\n ...state,\r\n accounts: \"FAILURE\",\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import * as ACTION_TYPES from \"../actions/action_types\";\r\n\r\nexport const initialState = {\r\n menu: \"no items\",\r\n};\r\n\r\nexport const MenuReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case ACTION_TYPES.SET_MENU:\r\n return {\r\n ...state,\r\n menu: action.payload,\r\n };\r\n case ACTION_TYPES.FAILURE:\r\n return {\r\n ...state,\r\n menu: \"FAILURE\",\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import * as ACTION_TYPES from \"../actions/action_types.js\";\r\n\r\nexport const initialState = {\r\n is_authenticated: false,\r\n profile: null\r\n};\r\n\r\nexport const AuthReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case ACTION_TYPES.LOGIN_SUCCESS:\r\n return {\r\n ...state,\r\n is_authenticated: true\r\n };\r\n case ACTION_TYPES.LOGIN_FAILURE:\r\n return {\r\n ...state,\r\n is_authenticated: false\r\n };\r\n case ACTION_TYPES.ADD_PROFILE:\r\n return {\r\n ...state,\r\n profile: action.payload\r\n };\r\n case ACTION_TYPES.REMOVE_PROFILE:\r\n return {\r\n ...state,\r\n profile: null\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import * as ACTION_TYPES from \"../actions/action_types\";\r\n\r\nexport const initialState = {\r\n callbacks: \"NoCustomer\",\r\n};\r\n\r\nexport const CallbacksReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case ACTION_TYPES.SET_CALLBACKS:\r\n return {\r\n ...state,\r\n callbacks: action.payload,\r\n };\r\n case ACTION_TYPES.FAILURE:\r\n return {\r\n ...state,\r\n callbacks: \"FAILURE\",\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import * as ACTION_TYPES from \"../actions/action_types\";\r\n\r\nexport const initialState = {\r\n customer: \"NoCustomer\",\r\n};\r\n\r\nexport const CustomerReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case ACTION_TYPES.SET_CUSTOMER:\r\n return {\r\n ...state,\r\n customer: action.payload,\r\n };\r\n case ACTION_TYPES.FAILURE:\r\n return {\r\n ...state,\r\n customer: \"FAILURE\",\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import * as ACTION_TYPES from \"../actions/action_types\";\r\n\r\nexport const initialState = {\r\n drawer: true,\r\n num: 1,\r\n};\r\n\r\nexport const DrawerReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case ACTION_TYPES.SET_DRAWER:\r\n return {\r\n ...state,\r\n drawer: action.payload,\r\n num: action.num,\r\n };\r\n case ACTION_TYPES.FAILURE:\r\n return {\r\n ...state,\r\n drawer: \"FAILURE\",\r\n num: 0,\r\n };\r\n default:\r\n throw new Error();\r\n }\r\n};\r\n","import * as ACTION_TYPES from \"../actions/action_types\";\r\n\r\nexport const initialState = {\r\n user_textChange: \"\",\r\n user_textSubmit: \"\",\r\n};\r\n\r\nexport const FormReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case ACTION_TYPES.USER_INPUT_CHANGE:\r\n return {\r\n ...state,\r\n user_textChange: action.payload,\r\n };\r\n case ACTION_TYPES.USER_INPUT_SUBMIT:\r\n return {\r\n ...state,\r\n user_textSubmit: action.payload,\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import * as ACTION_TYPES from \"../actions/action_types\";\r\n\r\nexport const initialState = {\r\n offer: \"NoOffer\",\r\n};\r\n\r\nexport const OfferReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case ACTION_TYPES.SET_OFFER:\r\n return {\r\n ...state,\r\n offer: action.payload,\r\n };\r\n case ACTION_TYPES.FAILURE:\r\n return {\r\n ...state,\r\n offer: \"FAILURE\",\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import * as ACTION_TYPES from \"../actions/action_types\";\r\n\r\nexport const initialState = {\r\n stateprop1: false,\r\n stateprop2: false,\r\n};\r\n\r\nexport const Reducer1 = (state = initialState, action) => {\r\n switch (action.type) {\r\n case ACTION_TYPES.SUCCESS:\r\n return {\r\n ...state,\r\n stateprop1: true,\r\n stateprop2: true,\r\n };\r\n case ACTION_TYPES.FAILURE:\r\n return {\r\n ...state,\r\n stateprop1: false,\r\n stateprop2: false,\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import * as ACTION_TYPES from \"../actions/action_types\";\r\n\r\nexport const initialState = {\r\n account: \"NoAccount\",\r\n};\r\n\r\nexport const SelectedAccountsReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case ACTION_TYPES.SET_SELECTEDACCOUNT:\r\n return {\r\n ...state,\r\n account: action.payload,\r\n };\r\n case ACTION_TYPES.FAILURE:\r\n return {\r\n ...state,\r\n account: \"FAILURE\",\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import * as ACTION_TYPES from \"../actions/action_types\";\r\n\r\nexport const initialState = {\r\n site: \"NoSite\",\r\n iframeUrl: \"\",\r\n paymentStatusFrom: \"\",\r\n};\r\n\r\nexport const SiteReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case ACTION_TYPES.SET_SITE:\r\n return {\r\n ...state,\r\n site: action.payload,\r\n };\r\n case ACTION_TYPES.PAYMENT_STATUS_FORM:\r\n return {\r\n ...state,\r\n paymentStatusFrom: action.payload,\r\n };\r\n case ACTION_TYPES.IFRAME_URL:\r\n return {\r\n ...state,\r\n iframeUrl: action.payload,\r\n };\r\n case ACTION_TYPES.FAILURE:\r\n return {\r\n ...state,\r\n site: \"FAILURE\",\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import * as ACTION_TYPES from \"../actions/action_types\";\r\n\r\nexport const initialState = {\r\n sessionTimeout: 150000,\r\n overallTimeout: 0,\r\n startOverallTimeout: false,\r\n};\r\n\r\nexport const TimeOutReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case ACTION_TYPES.SET_SESSIONTIMEOUT:\r\n return {\r\n ...state,\r\n sessionTimeout: action.payload,\r\n };\r\n case ACTION_TYPES.SET_OVERALLTIMEOUT:\r\n return {\r\n ...state,\r\n overallTimeout: action.payload,\r\n };\r\n case ACTION_TYPES.SET_STARTOVERALLTIMEOUT:\r\n return {\r\n ...state,\r\n startOverallTimeout: action.payload,\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { container, title, whiteColor, section } from \"assets/jss/xrs.js\";\r\n\r\nconst notificationsStyles = {\r\n section: {\r\n backgroundColor: whiteColor,\r\n display: \"block\",\r\n width: \"100%\",\r\n position: \"relative\",\r\n padding: \"70px 0\",\r\n ...section\r\n },\r\n title: {\r\n ...title,\r\n marginTop: \"30px\",\r\n minHeight: \"32px\",\r\n textDecoration: \"none\"\r\n },\r\n space70: {\r\n height: \"70px\",\r\n display: \"block\"\r\n },\r\n container\r\n};\r\n\r\nexport default notificationsStyles;\r\n","import { API_ACTION_TYPES } from \"../redux-actions/redux_action_types\";\r\n\r\nexport const initialState = {\r\n error: false,\r\n errorMessage: \"\",\r\n loading: false,\r\n code: 0,\r\n};\r\n\r\nexport const ApiCallsReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case API_ACTION_TYPES.ERROR:\r\n return {\r\n ...state,\r\n errorMessage: action.payload,\r\n error: true,\r\n loading: false,\r\n };\r\n case API_ACTION_TYPES.LOADING:\r\n return {\r\n ...state,\r\n loading: action.payload,\r\n };\r\n case API_ACTION_TYPES.CODE:\r\n return {\r\n ...state,\r\n code: action.payload,\r\n };\r\n case API_ACTION_TYPES.CLEAR:\r\n return {\r\n ...state,\r\n loading: false,\r\n errorMessage: \"\",\r\n error: false,\r\n code: 0,\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { GET_SITE_DETAILS_ACTION_TYPES } from \"../redux-actions/redux_action_types\";\r\n\r\nexport const initialState = {\r\n logoimageurl: \"\",\r\n footerImageUrl: \"\",\r\n currency: \"\",\r\n paymentProvider: \"\",\r\n deptphonenumber: \"\",\r\n uploadimagestobudget: false,\r\n convenienceFee: 0,\r\n use4week: false,\r\n drawers: {\r\n open: false,\r\n openSecond: false,\r\n openThird: false,\r\n lastOpenedDrawer: null, // add a new state variable to store the last opened drawer\r\n },\r\n};\r\n\r\nexport const GetSiteDetailsReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case GET_SITE_DETAILS_ACTION_TYPES.USE4WEEK:\r\n return {\r\n ...state,\r\n use4week: action.payload,\r\n };\r\n case GET_SITE_DETAILS_ACTION_TYPES.CONVENIENCE_FEE:\r\n return {\r\n ...state,\r\n convenienceFee: action.payload,\r\n };\r\n case GET_SITE_DETAILS_ACTION_TYPES.UPLOAD_IMAGE_TO_BUDGET:\r\n return {\r\n ...state,\r\n uploadimagestobudget: action.payload,\r\n };\r\n case GET_SITE_DETAILS_ACTION_TYPES.LOGO:\r\n return {\r\n ...state,\r\n logoimageurl: action.payload,\r\n };\r\n case GET_SITE_DETAILS_ACTION_TYPES.DEPT_NUM:\r\n return {\r\n ...state,\r\n deptphonenumber: action.payload,\r\n };\r\n case GET_SITE_DETAILS_ACTION_TYPES.FOOTER_IMAGE:\r\n return {\r\n ...state,\r\n footerImageUrl: action.payload,\r\n };\r\n case GET_SITE_DETAILS_ACTION_TYPES.CURRENCY:\r\n return {\r\n ...state,\r\n currency: action.payload,\r\n };\r\n case GET_SITE_DETAILS_ACTION_TYPES.PAYMENT_PROVIDER:\r\n return {\r\n ...state,\r\n paymentProvider: action.payload,\r\n };\r\n case GET_SITE_DETAILS_ACTION_TYPES.DRAWER_STATE:\r\n return {\r\n ...state,\r\n drawers: action.payload,\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { HTML_ACTION_TYPES } from \"../redux-actions/redux_action_types\";\r\n\r\nexport const initialState = {\r\n termsQuickPay: \"\",\r\n termsPlan: \"\",\r\n termsDiscount: \"\",\r\n\r\n viewOfferText: \"\",\r\n createPlanText: \"\",\r\n createPlantoc: \"\",\r\n createBudgetText: \"\",\r\n viewAccountText: \"\",\r\n\r\n burgerButtonAnimation: true,\r\n};\r\n\r\nexport const HtmlReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case HTML_ACTION_TYPES.TERMS_QUICK_PAY:\r\n return {\r\n ...state,\r\n termsQuickPay: action.payload,\r\n };\r\n case HTML_ACTION_TYPES.TERMS_PLAN:\r\n return {\r\n ...state,\r\n termsPlan: action.payload,\r\n };\r\n case HTML_ACTION_TYPES.TERMS_DISCOUNT:\r\n return {\r\n ...state,\r\n termsDiscount: action.payload,\r\n };\r\n\r\n case HTML_ACTION_TYPES.VIEW_OFFER_TEXT:\r\n return {\r\n ...state,\r\n viewOfferText: action.payload,\r\n };\r\n case HTML_ACTION_TYPES.CREATE_PLAN_TEXT:\r\n return {\r\n ...state,\r\n createPlanText: action.payload,\r\n };\r\n case HTML_ACTION_TYPES.CREATE_PLANTOC:\r\n return {\r\n ...state,\r\n createPlantoc: action.payload,\r\n };\r\n case HTML_ACTION_TYPES.CREATE_BUDGET_TEXT:\r\n return {\r\n ...state,\r\n createBudgetText: action.payload,\r\n };\r\n case HTML_ACTION_TYPES.VIEW_ACCOUNT_TEXT:\r\n return {\r\n ...state,\r\n viewAccountText: action.payload,\r\n };\r\n case HTML_ACTION_TYPES.BURGER_BUTTON_ANIMATION:\r\n return {\r\n ...state,\r\n burgerButtonAnimation: action.payload,\r\n };\r\n\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { CAMERA_ACTION_TYPES } from \"../redux-actions/redux_action_types\";\r\n\r\nexport const initialState = {\r\n openFrom: \"\",\r\n capturedImage: \"\",\r\n confirmedImages: [],\r\n};\r\n\r\nexport const CameraReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case CAMERA_ACTION_TYPES.OPEN_CAMERA:\r\n return {\r\n ...state,\r\n openFrom: action.payload,\r\n };\r\n case CAMERA_ACTION_TYPES.SET_IMAGE:\r\n return {\r\n ...state,\r\n capturedImage: action.payload,\r\n };\r\n case CAMERA_ACTION_TYPES.REMOVE_CONFIRMED_IMAGE:\r\n return {\r\n ...state,\r\n confirmedImages: state.confirmedImages.filter(\r\n (item) =>\r\n item.itemId !== action.payload.itemId &&\r\n item.from === action.payload.from\r\n ),\r\n };\r\n case CAMERA_ACTION_TYPES.ADD_CONFIRMED_IMAGE:\r\n return {\r\n ...state,\r\n confirmedImages: [...state.confirmedImages, action.payload],\r\n };\r\n case CAMERA_ACTION_TYPES.RESET_CONFIRMET_IMAGES:\r\n return {\r\n ...state,\r\n confirmedImages: [],\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { DOCUMENTS_ACTION_TYPES } from \"../redux-actions/redux_action_types\";\r\n\r\nexport const initialState = {\r\n open: false,\r\n documentToBeViewed: \"\",\r\n};\r\n\r\nexport const DocumentsReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case DOCUMENTS_ACTION_TYPES.OPEN:\r\n return {\r\n ...state,\r\n open: action.payload,\r\n };\r\n case DOCUMENTS_ACTION_TYPES.DOCUMENT_TO_BE_VIEWED:\r\n return {\r\n ...state,\r\n documentToBeViewed: action.payload,\r\n };\r\n\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { combineReducers } from \"redux\";\r\nimport { ApiCallsReducer } from \"./apiCalls_reducer\";\r\nimport { GetSiteDetailsReducer } from \"./getSiteDetailsReducer\";\r\nimport { HtmlReducer } from \"./html_reducer\";\r\nimport { TimeOutReducer } from \"../../reducers/timeout_reducer\";\r\nimport { SiteReducer } from \"../../reducers/site_reducer\";\r\nimport { SelectedAccountsReducer } from \"../../reducers/selectedAccounts_reducer\";\r\nimport { Reducer1 } from \"../../reducers/plain_reducer\";\r\nimport { OfferReducer } from \"../../reducers/offer_reducer\";\r\nimport { MenuReducer } from \"../../reducers/menu_reducer\";\r\nimport { FormReducer } from \"../../reducers/form_reducer\";\r\nimport { DrawerReducer } from \"../../reducers/drawer_reducer\";\r\nimport { CustomerReducer } from \"../../reducers/customer_reducer\";\r\nimport { CallbacksReducer } from \"../../reducers/callbacks_reducer\";\r\nimport { AuthReducer } from \"../../reducers/auth_reducer\";\r\nimport { AccountsReducer } from \"../../reducers/accounts_reducer\";\r\nimport { CameraReducer } from \"../redux-reducers/camera_reducer\";\r\nimport { DocumentsReducer } from \"../redux-reducers/documents_reducer\";\r\nimport { RESET_STORE } from \"../redux-actions/redux_action_types\";\r\n\r\nconst appReducer = combineReducers({\r\n ApiCallsReducer,\r\n GetSiteDetailsReducer,\r\n HtmlReducer,\r\n TimeOutReducer,\r\n SiteReducer,\r\n SelectedAccountsReducer,\r\n Reducer1,\r\n OfferReducer,\r\n MenuReducer,\r\n FormReducer,\r\n CustomerReducer,\r\n CallbacksReducer,\r\n AuthReducer,\r\n AccountsReducer,\r\n CameraReducer,\r\n DocumentsReducer,\r\n});\r\nconst rootReducer = (state, action) => {\r\n if (action.type === RESET_STORE) {\r\n state = undefined;\r\n }\r\n return appReducer(state, action);\r\n};\r\nexport default rootReducer;\r\n","import { createStore, applyMiddleware } from \"redux\";\r\nimport thunkMiddleware from \"redux-thunk\";\r\nimport rootReducer from \"./redux-reducers\";\r\n\r\nexport const store = createStore(rootReducer, applyMiddleware(thunkMiddleware));\r\n","import history from \"./history\";\r\nimport React, { useContext } from \"react\";\r\nimport * as URLS from \"./XRSAPIs\";\r\nimport Moment from \"react-moment\";\r\nimport notificationsStyles from \"assets/jss/xrs/views/componentsSections/notificationsStyles\";\r\nimport Context from \"./context\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport { store } from \"../store/redux/createReduxStore\";\r\nimport { resetStore } from \"../store/redux/redux-actions/redux_actions\";\r\n\r\nexport default class Auth {\r\n userProfile = {};\r\n static context = Context;\r\n\r\n makeFormEncoder = (hash) => {\r\n return function(key) {\r\n return encodeURIComponent(key) + \"=\" + encodeURIComponent(hash[key]);\r\n };\r\n };\r\n\r\n getBearerToken = (username, password) => {\r\n var xhr = new XMLHttpRequest();\r\n var url = URLS.AuthenticationAPIUrl;\r\n\r\n var values = {\r\n grant_type: \"password\",\r\n username: username,\r\n password: password,\r\n validatePIN: \"false\",\r\n client_id: \"PaymentPortal\",\r\n };\r\n const pairs = Object.keys(values).map(this.makeFormEncoder(values));\r\n\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/x-www-form-urlencoded\");\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n var json = JSON.parse(xhr.responseText);\r\n var access_token = json.access_token;\r\n var expires_in_seconds = json.expires_in;\r\n var timeoutDate;\r\n timeoutDate = new Date();\r\n timeoutDate.setSeconds(timeoutDate.getSeconds() + expires_in_seconds);\r\n sessionStorage.setItem(\"expiresAt\", timeoutDate);\r\n sessionStorage.setItem(\"access_token\", access_token);\r\n } else {\r\n ApiErrorHandler(\"Authentication\", xhr, this.context);\r\n }\r\n }\r\n };\r\n var postValues = pairs.join(\"&\");\r\n xhr.send(postValues);\r\n };\r\n\r\n Logon = (values, firstPosition, secondPosition, thirdPosition) => {\r\n var xhr = new XMLHttpRequest();\r\n var url = URLS.GetTokenURLAPI;\r\n\r\n var formValues = {\r\n grant_type: \"password\",\r\n username: values.username,\r\n password: values.password,\r\n validatePIN: \"true\",\r\n client_id: \"PaymentPortal\",\r\n firstValue: values.firstValue,\r\n firstPosition: firstPosition,\r\n secondValue: values.secondValue,\r\n secondPosition: secondPosition,\r\n thirdValue: values.thirdValue,\r\n thirdPosition: thirdPosition,\r\n };\r\n\r\n const pairs = Object.keys(formValues).map(this.makeFormEncoder(formValues));\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/x-www-form-urlencoded\");\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n var json = JSON.parse(xhr.responseText);\r\n var access_token = json.access_token;\r\n var refresh_token = json.refresh_token;\r\n var expires_in_seconds = json.expires_in;\r\n var timeoutDate;\r\n timeoutDate = new Date();\r\n timeoutDate.setSeconds(timeoutDate.getSeconds() + expires_in_seconds);\r\n sessionStorage.setItem(\"expiresAt\", timeoutDate);\r\n sessionStorage.setItem(\"access_token\", access_token);\r\n sessionStorage.setItem(\"refresh_token\", refresh_token);\r\n\r\n history.push(`/welcome`);\r\n } else {\r\n ApiErrorHandler(\"Authentication\", xhr, this.context);\r\n }\r\n }\r\n };\r\n var postValues = pairs.join(\"&\");\r\n xhr.send(postValues);\r\n };\r\n\r\n RefreshToken = () => {\r\n var xhr = new XMLHttpRequest();\r\n var url = URLS.GetTokenURLAPI;\r\n let refresh_token = sessionStorage.getItem(\"refresh_token\");\r\n var formValues = {\r\n grant_type: \"refresh_token\",\r\n client_id: \"PaymentPortal\",\r\n refresh_token: refresh_token,\r\n };\r\n const pairs = Object.keys(formValues).map(this.makeFormEncoder(formValues));\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/x-www-form-urlencoded\");\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n var json = JSON.parse(xhr.responseText);\r\n var access_token = json.access_token;\r\n var refresh_token = json.refresh_token;\r\n var expires_in_seconds = json.expires_in;\r\n var timeoutDate;\r\n timeoutDate = new Date();\r\n timeoutDate.setSeconds(timeoutDate.getSeconds() + expires_in_seconds);\r\n sessionStorage.setItem(\"expiresAt\", timeoutDate);\r\n sessionStorage.setItem(\"access_token\", access_token);\r\n sessionStorage.setItem(\"refresh_token\", refresh_token);\r\n } else {\r\n ApiErrorHandler(\"Authentication\", xhr, this.context);\r\n }\r\n }\r\n };\r\n var postValues = pairs.join(\"&\");\r\n xhr.send(postValues);\r\n };\r\n\r\n handleAuth = () => {\r\n this.auth0.parseHash((err, authResult) => {\r\n if (authResult) {\r\n sessionStorage.setItem(\"access_token\", authResult.accessToken);\r\n sessionStorage.setItem(\"id_token\", authResult.idToken);\r\n\r\n let expiresAt = JSON.stringify(\r\n authResult.expiresIn * 1000 + new Date().getTime()\r\n );\r\n sessionStorage.setItem(\"expiresAt\", expiresAt);\r\n\r\n this.getProfile();\r\n setTimeout(() => {\r\n history.replace(\"/authcheck\");\r\n }, 600);\r\n } else {\r\n }\r\n });\r\n };\r\n\r\n getAccessToken = () => {\r\n if (sessionStorage.getItem(\"access_token\")) {\r\n const accessToken = sessionStorage.getItem(\"access_token\");\r\n return accessToken;\r\n } else {\r\n return null;\r\n }\r\n };\r\n\r\n getProfile = () => {\r\n let accessToken = this.getAccessToken();\r\n if (accessToken) {\r\n this.auth0.client.userInfo(accessToken, (err, profile) => {\r\n if (profile) {\r\n this.userProfile = { profile };\r\n }\r\n });\r\n }\r\n };\r\n\r\n logout = () => {\r\n sessionStorage.removeItem(\"access_token\");\r\n\r\n //sessionStorage.removeItem(\"id_token\");\r\n sessionStorage.removeItem(\"expiresAt\");\r\n sessionStorage.removeItem(\"refresh_token\");\r\n sessionStorage.removeItem(\"user\");\r\n // ;\r\n store.dispatch(resetStore());\r\n history.replace(\"/landing-page\");\r\n // history.push(\"/landing-page\");\r\n };\r\n\r\n isAuthenticated = () => {\r\n let expiresAt = JSON.parse(sessionStorage.getItem(\"expiresAt\"));\r\n\r\n return new Date().getTime() < expiresAt;\r\n };\r\n\r\n isAuthenticatedUser = () => {\r\n let expiresAt = new Date(sessionStorage.getItem(\"expiresAt\"));\r\n let now = new Date();\r\n now.setSeconds(now.getSeconds());\r\n if (now.getTime() < expiresAt.getTime()) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n };\r\n\r\n checkToken = () => {\r\n let expiresAt = new Date(sessionStorage.getItem(\"expiresAt\"));\r\n let now = new Date();\r\n now.setSeconds(now.getSeconds() + 10);\r\n if (now.getTime() < expiresAt.getTime()) {\r\n } else {\r\n this.RefreshToken();\r\n }\r\n };\r\n\r\n getPinVerification = (values, record, pin) => {\r\n var xhr = new XMLHttpRequest();\r\n var url = URLS.GetVerifyAPIUrl;\r\n var id = record.id;\r\n var userName = values.regusername;\r\n var password = values.pass;\r\n var phoneConfirmed = record.phoneConfirmed;\r\n var reference = values.customernumber;\r\n var dateOfBirth = values.dob;\r\n var mobileNumber = values.phone;\r\n var customerRecordNo = record.customerRecordNo;\r\n var enteredPIN = pin;\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n var verifydata = JSON.stringify({\r\n id: id,\r\n userName: userName,\r\n phoneConfirmed: phoneConfirmed,\r\n reference: reference,\r\n dateOfBirth: dateOfBirth,\r\n mobileNumber: mobileNumber,\r\n customerRecordNo: customerRecordNo,\r\n pin: enteredPIN,\r\n });\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n var xhrtoken = new XMLHttpRequest();\r\n var urltoken = URLS.GetTokenURLAPI;\r\n\r\n var values = {\r\n grant_type: \"password\",\r\n username: userName,\r\n password: password,\r\n validatePIN: \"false\",\r\n client_id: \"PaymentPortal\",\r\n };\r\n // eslint-disable-next-line no-case-declarations\r\n const pairs = Object.entries(values)\r\n .map(\r\n ([key, value]) =>\r\n `${encodeURIComponent(key)}=${encodeURIComponent(value)}`\r\n )\r\n .join(\"&\");\r\n\r\n xhrtoken.open(\"POST\", urltoken, true);\r\n xhrtoken.setRequestHeader(\r\n \"Content-Type\",\r\n \"application/x-www-form-urlencoded\"\r\n );\r\n\r\n xhrtoken.onreadystatechange = function() {\r\n if (xhrtoken.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n var json = JSON.parse(xhrtoken.responseText);\r\n var access_token = json.access_token;\r\n var expires_in_seconds = json.expires_in;\r\n var timeoutDate;\r\n timeoutDate = new Date();\r\n timeoutDate.setSeconds(\r\n timeoutDate.getSeconds() + expires_in_seconds\r\n );\r\n sessionStorage.setItem(\"expiresAt\", timeoutDate);\r\n sessionStorage.setItem(\"access_token\", access_token);\r\n this.isUserAuthenticated = true;\r\n this.token = access_token;\r\n history.push(`/welcome`);\r\n } else {\r\n ApiErrorHandler(\"Authentication\", xhr, this.context);\r\n }\r\n }\r\n };\r\n\r\n xhrtoken.send(pairs);\r\n } else {\r\n ApiErrorHandler(\"Authentication\", xhr, this.context);\r\n }\r\n }\r\n };\r\n\r\n xhr.send(verifydata);\r\n };\r\n}\r\n","import React from \"react\";\r\nimport styles from \"assets/jss/xrs/components/fabStyle.js\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport CommentOutlinedIcon from \"@material-ui/icons/CommentOutlined\";\r\nimport InsertDriveFileOutlinedIcon from \"@material-ui/icons/InsertDriveFileOutlined\";\r\nimport AddOutlinedIcon from \"@material-ui/icons/AddOutlined\";\r\nimport history from \"utils/history.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\nexport default function Fab(props) {\r\n const [openFab, setopenFab] = React.useState(false);\r\n\r\n const classes = useStyles();\r\n\r\n if (props.open == true) {\r\n return (\r\n
\r\n setopenFab(!openFab)}\r\n className={classes.fab + \" \" + classes.fabIconHolder}\r\n >\r\n \r\n \r\n \r\n
\r\n\r\n \r\n
  • history.push(\"/documents\")}>\r\n Documents\r\n
    \r\n \r\n \r\n \r\n
    \r\n
  • \r\n
  • \r\n Chat\r\n
    \r\n \r\n \r\n \r\n
    \r\n
  • \r\n \r\n \r\n );\r\n } else {\r\n return
    ;\r\n }\r\n}\r\n","/* eslint-disable react/prop-types */\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Button from \"components/CustomButtons/Button\";\r\nimport React, { useEffect, useReducer } from \"react\";\r\nimport IdleTimer from \"react-idle-timer\";\r\nimport Routes from \"./routes\";\r\nimport * as ACTIONS from \"./store/actions/actions\";\r\nimport { htmlActions } from \"./store/redux/redux-actions/redux_actions\";\r\n\r\nimport * as AccountsReducer from \"./store/reducers/accounts_reducer.js\";\r\nimport * as MenuReducer from \"./store/reducers/menu_reducer.js\";\r\nimport * as AuthReducer from \"./store/reducers/auth_reducer\";\r\nimport * as CallbacksReducer from \"./store/reducers/callbacks_reducer.js\";\r\nimport * as CustomerReducer from \"./store/reducers/customer_reducer.js\";\r\nimport * as DrawerReducer from \"./store/reducers/drawer_reducer\";\r\nimport * as FormReducer from \"./store/reducers/form_reducer\";\r\nimport * as OfferReducer from \"./store/reducers/offer_reducer.js\";\r\nimport * as Reducer1 from \"./store/reducers/plain_reducer\";\r\nimport * as SelectedAccountsReducer from \"./store/reducers/selectedAccounts_reducer.js\";\r\nimport * as SiteReducer from \"./store/reducers/site_reducer.js\";\r\nimport * as TimeOutReducer from \"./store/reducers/timeout_reducer.js\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport Timer from \"react-compound-timer\";\r\nimport { useInterval } from \"react-interval-hook\";\r\nimport Auth from \"./utils/auth\";\r\nimport history from \"./utils/history\";\r\nimport Context from \"./utils/context\";\r\nimport Fab from \"./components/Fab/Fab\";\r\n\r\nimport Countdown from \"react-countdown\";\r\nimport IntercomComponent from \"./components/Header/IntercomComponent.js\";\r\nimport { set } from \"date-fns/fp\";\r\nimport LinearProgress from \"@material-ui/core/LinearProgress\";\r\n\r\nconst auth = new Auth();\r\n\r\nconst ContextState = () => {\r\n const [IdleOpen, setIdleOpen] = React.useState(false);\r\n\r\n const [enableTimer, setEnableTimer] = React.useState(false);\r\n const dispatch = useDispatch();\r\n\r\n const [InfoOpen, setInfoOpen] = React.useState(false);\r\n const [FabOpen, setFabOpen] = React.useState(false);\r\n const openCamera = useSelector((state) => state.CameraReducer.open);\r\n\r\n const [InfoTitle, setInfoTitle] = React.useState(false);\r\n const [InfoText, setInfoText] = React.useState(false);\r\n const [InforedirectUrl, setInforedirectUrl] = React.useState(\"\");\r\n const loading = useSelector((state) => state.ApiCallsReducer.loading);\r\n const sessionTimeout = useSelector(\r\n (state) => state.TimeOutReducer.sessionTimeout\r\n );\r\n const overallTimeout = useSelector(\r\n (state) => state.TimeOutReducer.overallTimeout\r\n );\r\n const startOverallTimeout = useSelector(\r\n (state) => state.TimeOutReducer.startOverallTimeout\r\n );\r\n const TokenTimer = () => {\r\n if (tokenInterval != \"\") {\r\n clearInterval(tokenInterval);\r\n }\r\n let tokenTimeout = sessionStorage.getItem(\"expiresInSeconds\") * 1000;\r\n\r\n var interval = setInterval(() => {\r\n auth.checkToken();\r\n\r\n dispatch(ACTIONS.set_startoveralltimeout(true));\r\n }, tokenTimeout - sessionTimeout);\r\n setTokenInterval(interval);\r\n };\r\n const [tokenInterval, setTokenInterval] = React.useState(\"\");\r\n useEffect(() => {\r\n // Function to check the timer status\r\n const checkTimer = () => {\r\n const expiresAt = sessionStorage.getItem(\"expiresAt\");\r\n if (!expiresAt) {\r\n console.log(\"No active timer.\");\r\n return;\r\n }\r\n\r\n const currentTime = Date.now();\r\n const timerTime = new Date(expiresAt);\r\n if (currentTime > timerTime) {\r\n auth.logout();\r\n } else {\r\n auth.RefreshToken();\r\n }\r\n };\r\n\r\n // Add event listener for visibility change\r\n const handleVisibilityChange = () => {\r\n if (!document.hidden) {\r\n debugger;\r\n checkTimer();\r\n }\r\n };\r\n\r\n document.addEventListener(\"visibilitychange\", handleVisibilityChange);\r\n\r\n // Cleanup event listener on component unmount\r\n return () => {\r\n document.removeEventListener(\"visibilitychange\", handleVisibilityChange);\r\n };\r\n }, []);\r\n React.useEffect(() => {\r\n if (auth.isAuthenticatedUser()) {\r\n if (openCamera) {\r\n setFabOpen(false);\r\n } else {\r\n if (!FabOpen) {\r\n setFabOpen(true);\r\n }\r\n }\r\n setTimeout(() => {\r\n dispatch(htmlActions.setBurgerAnimation(false));\r\n }, 3000);\r\n } else {\r\n setFabOpen(false);\r\n }\r\n }, [openCamera, auth.isAuthenticatedUser()]);\r\n React.useEffect(() => {\r\n if (startOverallTimeout) {\r\n clearInterval(tokenInterval);\r\n TokenTimer();\r\n dispatch(ACTIONS.set_startoveralltimeout(false));\r\n }\r\n return () => {\r\n clearInterval(tokenInterval);\r\n };\r\n }, [startOverallTimeout]);\r\n const [planText, setPlanText] = React.useState(\"\");\r\n\r\n const [drawerReducer, dispatchDrawer] = useReducer(\r\n DrawerReducer.DrawerReducer,\r\n DrawerReducer.initialState\r\n );\r\n\r\n const [drawerReducerOne, dispatchDrawerOne] = useReducer(\r\n DrawerReducer.DrawerReducer,\r\n DrawerReducer.initialState\r\n );\r\n const [drawerReducerTwo, dispatchDrawerTwo] = useReducer(\r\n DrawerReducer.DrawerReducer,\r\n DrawerReducer.initialState\r\n );\r\n const [drawerReducerThree, dispatchDrawerThree] = useReducer(\r\n DrawerReducer.DrawerReducer,\r\n DrawerReducer.initialState\r\n );\r\n\r\n const handleDispatchDrawer = (offer) => {\r\n dispatchDrawer(ACTIONS.set_Drawer(offer));\r\n };\r\n const handleDispatchDrawerOne = (offer) => {\r\n dispatchDrawerOne(ACTIONS.set_Drawer(offer));\r\n };\r\n const handleDispatchDrawerTwo = (offer) => {\r\n dispatchDrawerTwo(ACTIONS.set_Drawer(offer));\r\n };\r\n const handleDispatchDrawerThree = (offer) => {\r\n dispatchDrawerThree(ACTIONS.set_Drawer(offer));\r\n };\r\n\r\n const [offerReducer, dispatchOfferReducer] = useReducer(\r\n OfferReducer.OfferReducer,\r\n OfferReducer.initialState\r\n );\r\n\r\n const [menuReducer, dispatchMenuReducer] = useReducer(\r\n MenuReducer.MenuReducer,\r\n MenuReducer.initialState\r\n );\r\n\r\n const handleDispatchOffer = (offer) => {\r\n dispatchOfferReducer(ACTIONS.set_Offer(offer));\r\n };\r\n\r\n const [customerReducer, dispatchCustomerReducer] = useReducer(\r\n CustomerReducer.CustomerReducer,\r\n CustomerReducer.initialState\r\n );\r\n\r\n const handleDispatchCustomer = (customer) => {\r\n dispatchCustomerReducer(ACTIONS.set_Customer(customer));\r\n };\r\n\r\n const [accountsReducer, dispatchAccountsReducer] = useReducer(\r\n AccountsReducer.AccountsReducer,\r\n AccountsReducer.initialState\r\n );\r\n\r\n const [selectAccountReducer, dispatchsSlectAccountReducer] = useReducer(\r\n SelectedAccountsReducer.SelectedAccountsReducer,\r\n SelectedAccountsReducer.initialState\r\n );\r\n const handleDispatchSelectAccountReducer = (account) => {\r\n dispatchsSlectAccountReducer(ACTIONS.set_selectedAccount(account));\r\n };\r\n\r\n const handleDispatchSite = (site) => {\r\n dispatchSiteReducer(ACTIONS.set_Site(site));\r\n };\r\n\r\n const [siteReducer, dispatchSiteReducer] = useReducer(\r\n SiteReducer.SiteReducer,\r\n SiteReducer.initialState\r\n );\r\n\r\n const handleDispatchCallbacks = (callbacks) => {\r\n dispatchCallbacksReducer(ACTIONS.set_Callbacks(callbacks));\r\n };\r\n\r\n const [callbacksReducer, dispatchCallbacksReducer] = useReducer(\r\n CallbacksReducer.CallbacksReducer,\r\n CallbacksReducer.initialState\r\n );\r\n\r\n const [numAccounts, setNumAccounts] = React.useState(1);\r\n\r\n const handleDispatchAccounts = (accounts) => {\r\n setNumAccounts(accounts.length);\r\n dispatchAccountsReducer(ACTIONS.set_Accounts(accounts));\r\n };\r\n\r\n const handleMenuReducer = (menu) => {\r\n dispatchMenuReducer(ACTIONS.set_menu(menu));\r\n };\r\n\r\n const [stateReducer1, dispatchReducer1] = useReducer(\r\n Reducer1.Reducer1,\r\n Reducer1.initialState\r\n );\r\n\r\n const handleDispatchTrue = () => {\r\n // dispatchReducer1(type: \"SUCCESS\")\r\n // dispatchReducer1(ACTIONS.SUCCESS)\r\n dispatchReducer1(ACTIONS.success());\r\n };\r\n\r\n const handleDispatchFalse = () => {\r\n // dispatchReducer1(type: \"FAILURE\")\r\n // dispatchReducer1(ACTIONS.FAILURE)\r\n dispatchReducer1(ACTIONS.failure());\r\n };\r\n\r\n /*\r\n Auth Reducer\r\n */\r\n const [stateAuthReducer, dispatchAuthReducer] = useReducer(\r\n AuthReducer.AuthReducer,\r\n AuthReducer.initialState\r\n );\r\n\r\n const handleLogin = () => {\r\n dispatchAuthReducer(ACTIONS.login_success());\r\n };\r\n\r\n const handleLogout = () => {\r\n dispatchAuthReducer(ACTIONS.login_failure());\r\n };\r\n\r\n const handleAddProfile = (profile) => {\r\n dispatchAuthReducer(ACTIONS.add_profile(profile));\r\n };\r\n\r\n const handleRemoveProfile = () => {\r\n dispatchAuthReducer(ACTIONS.remove_profile());\r\n };\r\n\r\n /*\r\n Form Reducer\r\n */\r\n\r\n const [stateFormReducer, dispatchFormReducer] = useReducer(\r\n FormReducer.FormReducer,\r\n FormReducer.initialState\r\n );\r\n\r\n const handleFormChange = (event) => {\r\n dispatchFormReducer(ACTIONS.user_input_change(event.target.value));\r\n };\r\n\r\n const OpenInfoDialog = (title, text, redirectUrl) => {\r\n setInfoOpen(true);\r\n setInfoTitle(title);\r\n setInfoText(text);\r\n if (redirectUrl != null) {\r\n setInforedirectUrl(redirectUrl);\r\n }\r\n //auth.logout();\r\n };\r\n\r\n const handleFormSubmit = (event) => {\r\n event.preventDefault();\r\n event.persist();\r\n dispatchFormReducer(\r\n ACTIONS.user_input_submit(event.target.useContext.value)\r\n );\r\n };\r\n\r\n //Handle authentication from callback\r\n const handleAuthentication = (props) => {\r\n if (props.location.hash) {\r\n auth.handleAuth();\r\n }\r\n };\r\n\r\n const onAction = (e) => {\r\n if (auth.isAuthenticatedUser()) {\r\n auth.checkToken();\r\n } else {\r\n // setFabOpen(false);\r\n }\r\n };\r\n\r\n const onActive = (e) => {};\r\n\r\n const onIdle = (e) => {\r\n if (auth.isAuthenticatedUser()) {\r\n handleIdleOpen(true);\r\n }\r\n };\r\n\r\n const handleIdleOpen = () => {\r\n setInfoOpen(false);\r\n\r\n setIdleOpen(true);\r\n };\r\n\r\n const handleClose = (value) => {\r\n if (value === 1) {\r\n auth.checkToken();\r\n } else {\r\n auth.logout();\r\n }\r\n setIdleOpen(false);\r\n };\r\n const handleInfoClose = (value, redirect) => {\r\n setInfoOpen(false);\r\n if (redirect != \"\") {\r\n history.push(redirect);\r\n }\r\n };\r\n\r\n const handleIntercomKey = (value, visible) => {\r\n setIntercomKey(value);\r\n setIntercomVisible(visible);\r\n };\r\n\r\n const [selectedValue, setSelectedValue] = React.useState(0);\r\n\r\n const [IntercomKey, setIntercomKey] = React.useState(\"\");\r\n const [IntercomVisible, setIntercomVisible] = React.useState(false);\r\n\r\n // const handleDispatchSessionTimeout = (timeout) => {\r\n // dispatchSessionTimeout(ACTIONS.set_sessiontimeout(timeout));\r\n // };\r\n // const handleDispatchOverallTimeout = (timeout) => {\r\n // dispatchOverallTimeout(ACTIONS.set_overalltimeout(timeout));\r\n // };\r\n\r\n // const [sessionTimeout, dispatchSessionTimeout] = useReducer(\r\n // TimeOutReducer.TimeOutReducer,\r\n // TimeOutReducer.initialState.sessionTimeout\r\n // );\r\n // const [overallTimeout, dispatchOverallTimeout] = useReducer(\r\n // TimeOutReducer.TimeOutReducer,\r\n // TimeOutReducer.initialState.overallTimeout\r\n // );\r\n\r\n return (\r\n
    \r\n {loading == true ? : null}\r\n\r\n handleDispatchTrue(),\r\n dispatchContextFalse: () => handleDispatchFalse(),\r\n\r\n stateDrawer: drawerReducer.drawer,\r\n dispatchDrawer: (state) => handleDispatchDrawer(state),\r\n dispatchDrawerOne: (state) => handleDispatchDrawerOne(state),\r\n dispatchDrawerTwo: (state) => handleDispatchDrawerTwo(state),\r\n dispatchDrawerThree: (state) => handleDispatchDrawerThree(state),\r\n\r\n dispatchIntercomKey: (key, visible) =>\r\n handleIntercomKey(key, visible),\r\n\r\n stateOne: drawerReducerOne.drawer,\r\n stateTwo: drawerReducerTwo.drawer,\r\n stateThree: drawerReducerThree.drawer,\r\n\r\n statePlanText: planText,\r\n setstatePlanText: (value) => setPlanText(value),\r\n\r\n stateCallbacks: callbacksReducer.callbacks,\r\n dispatchCallbacksReducer: (callbacks) =>\r\n handleDispatchCallbacks(callbacks),\r\n\r\n stateInfoDialog: (title, value, redirectUrl) =>\r\n OpenInfoDialog(title, value, redirectUrl),\r\n\r\n stateSelectedAccount: selectAccountReducer.account,\r\n dispatchSelectAccountReducer: (account) =>\r\n handleDispatchSelectAccountReducer(account),\r\n\r\n stateCustomer: customerReducer.customer,\r\n dispatchCustomerReducer: (customer) =>\r\n handleDispatchCustomer(customer),\r\n\r\n dispatchMenuReducer: (menu) => handleMenuReducer(menu),\r\n\r\n stateMenu: menuReducer.menu,\r\n\r\n stateAccounts: accountsReducer.accounts,\r\n stateNumAcctions: numAccounts,\r\n dispatchAccountsReducer: (accounts) =>\r\n handleDispatchAccounts(accounts),\r\n\r\n stateSite: siteReducer.site,\r\n dispatchSiteReducer: (site) => handleDispatchSite(site),\r\n\r\n // stateSessionTimeout: sessionTimeout.sessionTimeout,\r\n // dispatchSessionTimeoutReducer: (time) =>\r\n // handleDispatchSessionTimeout(time),\r\n\r\n // stateOverallTimeout: overallTimeout.overallTimeout,\r\n // dispatchOverallTimeoutReducer: (time) =>\r\n // handleDispatchOverallTimeout(time),\r\n\r\n stateOffer: offerReducer.offer,\r\n dispatchOfferReducer: (offer) => handleDispatchOffer(offer),\r\n //Form Reducer\r\n useContextChangeState: stateFormReducer.user_textChange,\r\n useContextSubmitState: stateFormReducer.user_textSubmit,\r\n useContextSubmit: (event) => handleFormSubmit(event),\r\n useContextChange: (event) => handleFormChange(event),\r\n\r\n //Auth Reducer\r\n authState: stateAuthReducer.is_authenticated,\r\n profileState: stateAuthReducer.profile,\r\n handleUserLogin: () => handleLogin(),\r\n handleUserLogout: () => handleLogout(),\r\n handleUserAddProfile: (profile) => handleAddProfile(profile),\r\n handleUserRemoveProfile: () => handleRemoveProfile(),\r\n\r\n //Handle auth\r\n handleAuth: (props) => handleAuthentication(props),\r\n authObj: auth,\r\n }}\r\n >\r\n \r\n\r\n \r\n\r\n handleClose(e)}\r\n />\r\n handleInfoClose(e, redirect)}\r\n />\r\n\r\n \r\n \r\n
    \r\n );\r\n};\r\n\r\nexport default ContextState;\r\n\r\nconst useStyles = makeStyles({\r\n button: {\r\n textAlign: \"center\",\r\n },\r\n});\r\n\r\nif (window.performance) {\r\n if (performance.navigation.type == 1) {\r\n auth.logout();\r\n }\r\n}\r\n\r\nfunction IdleDialog(props) {\r\n const classes = useStyles();\r\n const { onClose, selectedValue, open } = props;\r\n const [left, setLeft] = React.useState(0);\r\n const { value, setValue } = React.useState(0);\r\n const calculateLeft = (from) => {\r\n return from - left;\r\n };\r\n const [autoLogout, setAutoLogout] = React.useState(60);\r\n const [display, setDisplay] = React.useState(60);\r\n const handleClose = (e) => {\r\n onClose(e);\r\n setAutoLogout(0);\r\n };\r\n const handleListItemClick = (value) => {\r\n onClose(value);\r\n };\r\n\r\n return (\r\n \r\n Session Expiry\r\n \r\n You will be logged out due to inactivity on this session. If you wish\r\n keep the session open, click Yes immediately. Do you wish to continue?\r\n (Yes or No)\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n\r\nfunction InfoDialog(props) {\r\n const classes = useStyles();\r\n const { onClose, open, title, text, redirectUrl } = props;\r\n const { value, setValue } = React.useState(0);\r\n const handleClose = (e) => {\r\n onClose(e, redirectUrl);\r\n };\r\n\r\n const handleListItemClick = (value) => {\r\n onClose(value, redirectUrl);\r\n };\r\n\r\n return (\r\n \r\n {title}\r\n {text}\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import React from \"react\";\r\nimport history from \"./utils/history\";\r\n\r\nimport ContextState from \"./context_state_config\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\nimport ReactGA from \"react-ga\";\r\nimport * as URLS from \"./utils/XRSAPIs\";\r\n\r\nimport { Provider } from \"react-redux\";\r\nimport { store } from \"./store/redux/createReduxStore\";\r\n\r\nconst App = () => {\r\n const [trackingCode, settrackingCode] = React.useState(null);\r\n const [trackingCodeInit, settrackingCodeInit] = React.useState(false);\r\n\r\n React.useEffect(() => {\r\n document.body.style.backgroundColor = primaryColor[14];\r\n\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n // ApiErrorHandler(\"Get Site Detatils\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n settrackingCode(response.trackingcode);\r\n })\r\n .catch((error) => {});\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n if (trackingCode) {\r\n ReactGA.initialize(trackingCode);\r\n settrackingCodeInit(true);\r\n }\r\n }, [trackingCode]);\r\n\r\n React.useEffect(() => {\r\n if (trackingCodeInit) {\r\n const unlisten = history.listen((location) => {\r\n ReactGA.pageview(location.pathname);\r\n });\r\n return () => {\r\n unlisten();\r\n };\r\n }\r\n }, [history]);\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default App;\r\n","import React from \"react\";\r\nimport ReactDOM from \"react-dom\";\r\n\r\nimport App from \"./App\";\r\n\r\nReactDOM.render(, document.getElementById(\"root\"));\r\n"],"sourceRoot":""}