{"version":3,"file":"js/app.ec9e5c9c.js","mappings":"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","sources":["webpack://vue-3-authentication-jwt/./src/App.vue","webpack://vue-3-authentication-jwt/./src/modules/init_fontawesome.js","webpack://vue-3-authentication-jwt/./src/components/layouts/Layout_Header.vue","webpack://vue-3-authentication-jwt/./src/components/layouts/Layout_Header.vue?c822","webpack://vue-3-authentication-jwt/./src/components/layouts/Layout_Footer.vue","webpack://vue-3-authentication-jwt/./src/components/layouts/Layout_Footer.vue?f0a2","webpack://vue-3-authentication-jwt/./src/components/layouts/Layout_MobileSnackbar.vue","webpack://vue-3-authentication-jwt/./src/components/layouts/Layout_MobileSnackbar.vue?db2a","webpack://vue-3-authentication-jwt/./src/App.vue?7ccd","webpack://vue-3-authentication-jwt/./src/modules/init_utilities.js","webpack://vue-3-authentication-jwt/./src/store/auth.module.js","webpack://vue-3-authentication-jwt/./src/store/index.js","webpack://vue-3-authentication-jwt/./src/router.js","webpack://vue-3-authentication-jwt/./src/firebase-config.js","webpack://vue-3-authentication-jwt/./src/modules/init_firebase.js","webpack://vue-3-authentication-jwt/./src/modules/init_facebook.js","webpack://vue-3-authentication-jwt/./src/main.js","webpack://vue-3-authentication-jwt/webpack/bootstrap","webpack://vue-3-authentication-jwt/webpack/runtime/chunk loaded","webpack://vue-3-authentication-jwt/webpack/runtime/compat get default export","webpack://vue-3-authentication-jwt/webpack/runtime/define property getters","webpack://vue-3-authentication-jwt/webpack/runtime/ensure chunk","webpack://vue-3-authentication-jwt/webpack/runtime/get javascript chunk filename","webpack://vue-3-authentication-jwt/webpack/runtime/get mini-css chunk filename","webpack://vue-3-authentication-jwt/webpack/runtime/global","webpack://vue-3-authentication-jwt/webpack/runtime/hasOwnProperty shorthand","webpack://vue-3-authentication-jwt/webpack/runtime/load script","webpack://vue-3-authentication-jwt/webpack/runtime/make namespace object","webpack://vue-3-authentication-jwt/webpack/runtime/publicPath","webpack://vue-3-authentication-jwt/webpack/runtime/css loading","webpack://vue-3-authentication-jwt/webpack/runtime/jsonp chunk loading","webpack://vue-3-authentication-jwt/webpack/startup"],"sourcesContent":["\n\n\n\n \n \n \n \n \n\n\n\n\n\n\n\n\n\n","export default function init_fontawesome() {\r\n if(document.querySelector(\"script[src='https://kit.fontawesome.com/bbd8419e97.js']\")){ return; }\r\n else {\r\n const scriptA = document.createElement('script');\r\n scriptA.async = true;\r\n scriptA.defer = true;\r\n scriptA.src=\"https://kit.fontawesome.com/bbd8419e97.js\";\r\n document.querySelector('head').appendChild(scriptA);\r\n }\r\n\r\n // https://stackoverflow.com/questions/45047126/how-to-add-external-js-scripts-to-vuejs-components\r\n}\r\n","\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Help\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n My Dashboard\r\n \r\n shops\r\n \r\n Messages\r\n \r\n my account\r\n \r\n \r\n help\r\n \r\n Logout\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n \r\n \r\n SHOPS\r\n \r\n \r\n find shops\r\n submit shops\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n \r\n \r\n MY ACCOUNT\r\n \r\n \r\n General Profile\r\n Extended Profile\r\n Payment Info\r\n Tax Info\r\n Photo ID\r\n Change Password\r\n Notification Preferences\r\n Deactivate Account\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n \r\n \r\n HELP\r\n \r\n \r\n HelpDesk\r\n FAQ\r\n Shopper Guide from QA\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n help\r\n \r\n HelpDesk\r\n \r\n \r\n \r\n\r\n \r\n \r\n My Dashboard\r\n \r\n shops\r\n \r\n find shops\r\n submit shops\r\n \r\n \r\n Messages\r\n \r\n my account\r\n \r\n General Profile\r\n Extended Profile\r\n Payment Info\r\n Tax Info\r\n Photo ID\r\n Change Password\r\n Notification Preferences\r\n Deactivate Account\r\n \r\n \r\n \r\n help\r\n \r\n HelpDesk\r\n FAQ\r\n Shopper Guide from QA\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n \r\n {{ this.$store.getters.getPageTitle }}\r\n \r\n\r\n\r\n\r\n\r\n\r\n\r\n","import { render } from \"./Layout_Header.vue?vue&type=template&id=15299cec\"\nimport script from \"./Layout_Header.vue?vue&type=script&lang=js\"\nexport * from \"./Layout_Header.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n\r\n\r\n","import { render } from \"./Layout_Footer.vue?vue&type=template&id=063861fe\"\nconst script = {}\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n\r\n × \r\n \r\n ShopperHub app now available!\r\n \r\n \r\n \r\n \r\n \r\n \r\n ShopperHub app now available!\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n","import { render } from \"./Layout_MobileSnackbar.vue?vue&type=template&id=254a8a47\"\nimport script from \"./Layout_MobileSnackbar.vue?vue&type=script&lang=js\"\nexport * from \"./Layout_MobileSnackbar.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./App.vue?vue&type=template&id=029e05d7\"\nimport script from \"./App.vue?vue&type=script&lang=js\"\nexport * from \"./App.vue?vue&type=script&lang=js\"\n\nimport \"./App.vue?vue&type=style&index=0&id=029e05d7&lang=css\"\n\nimport exportComponent from \"../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import store from '@/store/index';\r\nimport router from '@/router';\r\nimport swal from 'sweetalert2'\r\n\r\n//const API_URL = 'http://localhost/ShopperHubAPI/';\r\n//const API_URL = \"https://shopperhubapi-stage.cxgroup.com/\";\r\nconst API_URL = \"https://shopperhubapi.cxgroup.com/\";\r\n\r\n//const BASE_URL = \"http://localhost/shopperhubapi/\";\r\n//const BASE_URL = \"https://shopperhub-stage.cxgroup.com/\";\r\nconst BASE_URL = \"https://shopperhub.cxgroup.com/\";\r\n\r\n//const IMAGECONVERTER_URL = \"http://localhost/STN.ShopperHubImageConverter/FileUploadHandler.ashx?upload=start\";\r\n//const IMAGECONVERTER_URL = \"https://shopperhubimageconverter-stage.second-to-none.com/FileUploadHandler.ashx?upload=start\";\r\nconst IMAGECONVERTER_URL = \"https://shopperhubimageconverter.second-to-none.com/FileUploadHandler.ashx?upload=start\";\r\n \r\n//const AVUPLOADHANDLER_URL = \"http://localhost/STN.ShopperHubAVUploader/FileUploadHandler.ashx?upload=start\";\r\n//const AVUPLOADHANDLER_URL = \"https://shopperhubavuploader-stage.second-to-none.com/FileUploadHandler.ashx?upload=start\";\r\nconst AVUPLOADHANDLER_URL = \"https://shopperhubavuploader.second-to-none.com/FileUploadHandler.ashx?upload=start\";\r\n\r\n\r\n// global namespace using the 'revealing' pattern /////////////////////////////////////////////////\r\nexport const STN = (() => {\r\n let _minutesBetweenCommonDataRefresh = 5;\r\n let _minutesBetweenShopDataRefresh = 5; // new 2024_01_03 task 1274814682\r\n const _debug = false;\r\n let _lastRedirectModel = {};\r\n let _actionMessageTimerID;\r\n\r\n\r\n const actionMessageShow = (p_sMessage, p_iTimeoutSeconds) => {\r\n try {\r\n clearTimeout(_actionMessageTimerID);\r\n } catch(e) {\r\n // nada\r\n }\r\n\r\n if (isBlank(p_iTimeoutSeconds)) {\r\n p_iTimeoutSeconds = 3;\r\n }\r\n\r\n let l_oMsgDiv = document.getElementById('resultMsgDiv');\r\n\r\n if (l_oMsgDiv) {\r\n l_oMsgDiv.innerHTML = p_sMessage;\r\n l_oMsgDiv.style.visibility = 'visible';\r\n l_oMsgDiv.style.display = 'inline-block';\r\n\r\n try {\r\n window.scroll(getPosition(l_oMsgDiv));\r\n } catch(e) {\r\n // nada\r\n }\r\n\r\n hideProgress();\r\n\r\n _actionMessageTimerID = setTimeout(() => {\r\n l_oMsgDiv.style.visibility = 'hidden';\r\n l_oMsgDiv.style.display = 'none';\r\n }, (p_iTimeoutSeconds * 1000));\r\n }\r\n else {\r\n hideProgress();\r\n }\r\n };\r\n\r\n\r\n const actionMessageShowOAuth = (p_sID, p_sMessage, p_iTimeoutSeconds) => {\r\n try {\r\n clearTimeout(_actionMessageTimerID);\r\n } catch(e) {\r\n // nada\r\n }\r\n\r\n if (isBlank(p_iTimeoutSeconds)) {\r\n p_iTimeoutSeconds = 5;\r\n }\r\n\r\n let l_oMsgDiv = document.getElementById(p_sID);\r\n\r\n if (l_oMsgDiv) {\r\n l_oMsgDiv.innerHTML = p_sMessage;\r\n l_oMsgDiv.style.visibility = 'visible';\r\n l_oMsgDiv.style.display = 'inline-block';\r\n\r\n try {\r\n window.scroll(getPosition(l_oMsgDiv));\r\n } catch(e) {\r\n // nada\r\n }\r\n \r\n hideProgress();\r\n\r\n _actionMessageTimerID = setTimeout(() => {\r\n l_oMsgDiv.style.visibility = 'hidden';\r\n l_oMsgDiv.style.display = 'none';\r\n }, (p_iTimeoutSeconds * 1000));\r\n }\r\n else {\r\n hideProgress();\r\n }\r\n };\r\n\r\n\r\n const actionMessageClear = () => {\r\n try {\r\n clearTimeout(_actionMessageTimerID);\r\n } catch(e) {\r\n // nada\r\n }\r\n\r\n let l_oMsgDiv = document.getElementById('resultMsgDiv');\r\n\r\n if (l_oMsgDiv) {\r\n l_oMsgDiv.innerHTML = \"\";\r\n l_oMsgDiv.style.visibility = 'hidden';\r\n l_oMsgDiv.style.display = 'none';\r\n\r\n hideProgress();\r\n }\r\n else {\r\n hideProgress();\r\n }\r\n };\r\n\r\n\r\n // method to perform AJAX call with custom header\r\n const stnFetch = async (p_sCallingPage, p_sCallingFunction, p_sMethod, p_sController, p_oData, p_bGetFirstResultOnly) => {\r\n showProgress();\r\n\r\n /*\r\n NOTE 2022_12_02\r\n gallery functions NOT working with new fetchapi calls\r\n\r\n THIS IS WHAT IS CAUSING THE ERROR IN IMAGE UPLOAD/EDIT PAGES:\r\n l_oImgData = encodeURIComponent(l_oImgData);\r\n\r\n 2022_12_02\r\n commented all out in image upload/edit pages\r\n */\r\n\r\n try {\r\n let l_sURL = API_URL;\r\n\r\n connectionMessageClear();\r\n showProgress();\r\n\r\n let l_oMaintenanceModeRequest = new Request(\r\n l_sURL + 'GetMaintenanceMode',\r\n {\r\n method: \"POST\",\r\n mode: \"cors\",\r\n cache: \"no-cache\"\r\n }\r\n );\r\n\r\n return await fetch(l_oMaintenanceModeRequest)\r\n .then(async (t_oMaintenanceModeResponse) => { \r\n if (t_oMaintenanceModeResponse.ok && (t_oMaintenanceModeResponse.status >= 200 && t_oMaintenanceModeResponse.status < 300)) { \r\n return await t_oMaintenanceModeResponse.json(); \r\n }\r\n else {\r\n logError(\"init_utilities.js\", 'stnFetch MaintenanceModeResponse error, OK: ' + t_oMaintenanceModeResponse.ok + ', STATUS: ' + t_oMaintenanceModeResponse.status + ' ' + p_sCallingPage + \", \" + p_sCallingFunction + \", \" + p_sController, false, false, '101');\r\n return null;\r\n }\r\n })\r\n .then(async (l_oMaintenanceModeResult) => {\r\n let l_oMaintenanceModeResponseModel = await responseModel(l_oMaintenanceModeResult);\r\n\r\n if ((isBlank(l_oMaintenanceModeResult)) || (!isBlank(l_oMaintenanceModeResponseModel) && await l_oMaintenanceModeResponseModel.getStatus() == 'Success')) {\r\n let l_sStatus;\r\n \r\n // 2022_12_05 proceed even if l_oMaintenanceModeRequest failed\r\n if (isBlank(l_oMaintenanceModeResult)) {\r\n l_sStatus = 'false';\r\n }\r\n else {\r\n l_sStatus = await l_oMaintenanceModeResponseModel.getModel()[0].Status;\r\n }\r\n \r\n if (l_sStatus == 'false') {\r\n connectionMessageClear();\r\n showProgress();\r\n \r\n const headers = new Headers();\r\n headers.append(\r\n \"Authorization\",\r\n store.getters.getAuthHeader\r\n );\r\n headers.append(\r\n \"Accept\",\r\n \"application/json, text/plain, */*\"\r\n );\r\n headers.append(\r\n \"Content-Type\",\r\n \"application/json\"\r\n );\r\n \r\n let l_oMainRequest = new Request(\r\n l_sURL + p_sController,\r\n {\r\n method: \"POST\",\r\n headers,\r\n mode: \"cors\",\r\n cache: \"no-cache\",\r\n body: (!isBlank(p_oData) ? JSON.stringify(p_oData) : null),\r\n }\r\n );\r\n\r\n // // TESTING\r\n // if (p_sCallingPage == \"FindShops_Feedback.vue\") {\r\n // alert(JSON.stringify(p_oData));\r\n // }\r\n\r\n return await fetch(l_oMainRequest)\r\n .then(async (t_oMainResponse) => { \r\n if (t_oMainResponse.ok && (t_oMainResponse.status >= 200 && t_oMainResponse.status < 300)) { \r\n return await t_oMainResponse.json(); \r\n }\r\n else {\r\n logError(\"init_utilities.js\", 'stnFetch MainResponse error, OK: ' + t_oMainResponse.ok + ', STATUS: ' + t_oMainResponse.status + ' ' + p_sCallingPage + \", \" + p_sCallingFunction + \", \" + p_sController, false, false, '102');\r\n return null;\r\n }\r\n })\r\n .then(async (l_oMainResult) => {\r\n // // TESTING\r\n // if (p_sCallingPage == \"FindShops_Feedback.vue\") {\r\n // alert(JSON.stringify(l_oMainResult));\r\n // }\r\n \r\n let l_oMainResponseModel = await responseModel(l_oMainResult);\r\n\r\n if (!isBlank(l_oMainResponseModel) && await l_oMainResponseModel.getStatus() == 'Success') {\r\n if (p_sController == 'GetProfilePhoto') {\r\n hideProgress();\r\n return (await l_oMainResponseModel.getModel());\r\n } else if (await l_oMainResponseModel.getMessage() == 'Unauthorized') {\r\n hideProgress();\r\n await store.dispatch('auth/logout');\r\n router.replace('login');\r\n } else if (await l_oMainResponseModel.getMessage() == 'THROTTLE') {\r\n hideProgress();\r\n actionMessageShow(\"There was a problem with your request, please try again\");\r\n \r\n let l_oRetModel = {\r\n Message: \"THROTTLE\"\r\n }\r\n\r\n return l_oRetModel; \r\n } else if (await l_oMainResponseModel.getMessage() != 'OK') { // added 2022/09/22\r\n hideProgress();\r\n logError(\"init_utilities.js\", 'stnFetch Message not OK from ' + p_sCallingPage + \", \" + p_sCallingFunction + \", \" + p_sController, false, false, '103');\r\n } else if (await l_oMainResponseModel.getMessage() == 'OK') {\r\n hideProgress();\r\n if (p_bGetFirstResultOnly == true) {\r\n return (await l_oMainResponseModel.getModel()[0]);\r\n } else {\r\n return (await l_oMainResponseModel.getModel());\r\n }\r\n }\r\n } else {\r\n // response status was not success\r\n hideProgress();\r\n // added 2022/09/22 (instead of throw new error, which was never caught)\r\n logError(\"init_utilities.js\", 'stnFetch MainRequest status not Success from ' + p_sCallingPage + \", \" + p_sCallingFunction + \", \" + p_sController, false, false, '104');\r\n return null;\r\n }\r\n })\r\n .catch((p_sMRError) => {\r\n // response status was not success for axios to GetMaintenanceMode\r\n hideProgress();\r\n // added 2022/09/22 (instead of throw new error, which was never caught)\r\n logError(\"init_utilities.js\", 'stnFetch MainRequest fail: ' + p_sMRError + p_sCallingPage + \", \" + p_sCallingFunction + \", \" + p_sController, false, false, '105');\r\n return null; \r\n });\r\n } else {\r\n // api in maintenance mode\r\n hideProgress();\r\n router.replace('/maintenance');\r\n }\r\n } else {\r\n // response status was not success for axios to GetMaintenanceMode\r\n hideProgress();\r\n // added 2022/09/22 (instead of throw new error, which was never caught)\r\n logError(\"init_utilities.js\", 'stnFetch GetMaintenanceMode status not Success from' + p_sCallingPage + \", \" + p_sCallingFunction + \", \" + p_sController, false, false, '106');\r\n return null;\r\n }\r\n })\r\n .catch((p_sMMError) => {\r\n // response status was not success for axios to GetMaintenanceMode\r\n hideProgress();\r\n // added 2022/09/22 (instead of throw new error, which was never caught)\r\n logError(\"init_utilities.js\", 'stnFetch GetMaintenanceMode fail: ' + p_sMMError + p_sCallingPage + \", \" + p_sCallingFunction + \", \" + p_sController, false, false, '107');\r\n return null; \r\n });\r\n }\r\n catch (e) {\r\n logError(\"init_utilities.js\", 'stnFetch general error from ' + p_sCallingPage + \", \" + p_sCallingFunction + \", \" + p_sController + ' :: ' + e, false, false, '108');\r\n return null;\r\n }\r\n };\r\n\r\n\r\n const checkPasswordPolicy = async (p_sPassword) => {\r\n return ((/[a-zA-Z]/).test(p_sPassword)\r\n && (/[0-9]/).test(p_sPassword)\r\n && p_sPassword.length >= 7);\r\n };\r\n\r\n\r\n const connectionMessageShow = () => {\r\n let l_oSnackbar = document.getElementById('snackbarConnectionError');\r\n\r\n if (l_oSnackbar) {\r\n //l_oSnackbar.style.visibility = 'visible';\r\n\r\n hideProgress();\r\n\r\n setTimeout(() => {\r\n //l_oSnackbar.style.visibility = 'hidden';\r\n }, (2000));\r\n }\r\n else {\r\n hideProgress();\r\n }\r\n };\r\n const connectionMessageClear = () => {\r\n hideProgress();\r\n //document.getElementById('snackbarConnectionError').style.visibility = 'hidden';\r\n };\r\n\r\n\r\n // get evaluator data\r\n const getApplyData = async () => {\r\n let l_oApplyData = await store.getters.getApplicant;\r\n\r\n if (isBlank(l_oApplyData)) {\r\n l_oApplyData = {\r\n EmailAddress: '',\r\n EncryptedReferrerID: '',\r\n ReferralLocationID: '',\r\n OauthType: '',\r\n OauthID: '',\r\n UserName: '',\r\n Password: '',\r\n FirstName: '',\r\n LastName: '',\r\n BirthDate: '',\r\n StreetAddress1: '',\r\n StreetAddress2: '',\r\n City: '',\r\n State: '',\r\n Country: 'US',\r\n ZipCode: '',\r\n HomePhone: '',\r\n Referrer: '',\r\n ServerTime: '' //new Date()\r\n };\r\n }\r\n\r\n return l_oApplyData;\r\n };\r\n\r\n\r\n // GetAVUploadHandlerURL property \r\n const getAVUploadHandlerURL = () => {\r\n return AVUPLOADHANDLER_URL;\r\n };\r\n\r\n const GetBaseURL = () => {\r\n return BASE_URL;\r\n };\r\n\r\n const getBase64StringFromDataURL = (dataURL) => {\r\n return dataURL.replace('data:', '').replace(/^.+,/, '');\r\n };\r\n\r\n\r\n // get evaluator data\r\n const getCommonPageData = async (p_bForceRefresh) => {\r\n let l_oData = await store.getters.getUser;\r\n\r\n //alert(\"1: \" + JSON.stringify(l_oData));\r\n\r\n if (isBlank(l_oData)) {\r\n l_oData = {\r\n EvaluatorID: '',\r\n Username: '',\r\n FirstName: '',\r\n LastName: '',\r\n Address: '',\r\n EmailAddress: '',\r\n HasReportsInError: '',\r\n NeedsToEnterSSN: '',\r\n HasNewMessages: '',\r\n ServerDate: '',\r\n ForceChange: '',\r\n LoginSource: '',\r\n CurrentMobileAndroidVersions: '',\r\n CurrentMobileiOSVersions: '',\r\n APIMaintenanceMode: '',\r\n HasUnansweredRequiredDemographics: '',\r\n HasExpiredDemographics: '',\r\n HasUnsignedICA: '',\r\n ProfilePhoto: '',\r\n GeneralMessage: '',\r\n InvalidEmail: '',\r\n ForumUsername: '',\r\n FindShopsSearchType: 'as',\r\n TimeStamp: new Date()\r\n };\r\n }\r\n let l_iDiffOfLastRefresh = 999999;\r\n\r\n try {\r\n if (!isBlank(l_oData) && !isBlank(l_oData.EvaluatorID) && !p_bForceRefresh) {\r\n let l_oDate = new Date();\r\n l_iDiffOfLastRefresh = getMinutesBetweenDates(l_oData.TimeStamp, l_oDate);\r\n }\r\n } catch (e) {\r\n // nada\r\n //alert(\"gcpd e: \" + e);\r\n }\r\n\r\n if (l_iDiffOfLastRefresh > _minutesBetweenCommonDataRefresh) {\r\n let l_oMainResponseModel = await STN.stnFetch(\r\n \"init_utilities.js\",\r\n \"getCommonPageData\",\r\n \"POST\",\r\n \"GetCommonPageData\",\r\n null,\r\n true\r\n );\r\n\r\n //alert(JSON.stringify(l_oMainResponseModel));\r\n\r\n // populate globally available object\r\n l_oData.EvaluatorID = l_oMainResponseModel.EvaluatorID;\r\n l_oData.Username = l_oMainResponseModel.Username;\r\n l_oData.FirstName = l_oMainResponseModel.FirstName;\r\n l_oData.LastName = l_oMainResponseModel.LastName;\r\n l_oData.Address = l_oMainResponseModel.Address;\r\n l_oData.EmailAddress = l_oMainResponseModel.EmailAddress;\r\n l_oData.HasReportsInError = l_oMainResponseModel.HasReportsInError;\r\n l_oData.NeedsToEnterSSN = l_oMainResponseModel.NeedsToEnterSSN;\r\n l_oData.HasNewMessages = l_oMainResponseModel.HasNewMessages;\r\n l_oData.ServerDate = l_oMainResponseModel.ServerDate;\r\n l_oData.ForceChange = l_oMainResponseModel.ForceChange;\r\n l_oData.LoginSource = l_oMainResponseModel.LoginSource;\r\n l_oData.CurrentMobileAndroidVersions = l_oMainResponseModel.CurrentMobileAndroidVersions;\r\n l_oData.CurrentMobileiOSVersions = l_oMainResponseModel.CurrentMobileiOSVersions;\r\n l_oData.APIMaintenanceMode = l_oMainResponseModel.APIMaintenanceMode;\r\n l_oData.HasUnansweredRequiredDemographics = l_oMainResponseModel.HasUnansweredRequiredDemographics;\r\n l_oData.HasExpiredDemographics = l_oMainResponseModel.HasExpiredDemographics;\r\n l_oData.HasUnsignedICA = l_oMainResponseModel.HasUnsignedICA;\r\n l_oData.GeneralMessage = l_oMainResponseModel.GeneralMessage;\r\n l_oData.InvalidEmail = l_oMainResponseModel.InvalidEmail;\r\n l_oData.ForumUsername = l_oMainResponseModel.ForumUsername;\r\n l_oData.FindShopsSearchType = 'as';\r\n l_oData.TimeStamp = new Date();\r\n\r\n // new 2024_01_03 task 1274814682\r\n _minutesBetweenCommonDataRefresh = l_oMainResponseModel.TimeInMinutesToRefreshCommonPageData;\r\n _minutesBetweenShopDataRefresh = l_oMainResponseModel.TimeInMinutesToRefreshShopData;\r\n\r\n //alert(\"_minutesBetweenCommonDataRefresh: \" + _minutesBetweenCommonDataRefresh + \", _minutesBetweenShopDataRefresh: \" + _minutesBetweenShopDataRefresh);\r\n\r\n await store.commit('setUser', l_oData);\r\n return (l_oData);\r\n } else {\r\n // use current data\r\n return (l_oData);\r\n }\r\n };\r\n\r\n\r\n // get open shop data\r\n const getCachedShopData = async () => {\r\n // new 2024_01_03 task 1274814682\r\n let l_oExistingShopData = await store.getters.getShopDataFromCache; \r\n\r\n //alert(\"1: \" + JSON.stringify(l_oExistingShopData));\r\n \r\n let l_iDiffOfLastRefresh = 999999;\r\n\r\n try {\r\n if (!isBlank(l_oExistingShopData) && !isBlank(l_oExistingShopData.timeStamp)) {\r\n let l_oDate = new Date();\r\n l_iDiffOfLastRefresh = getMinutesBetweenDates(l_oExistingShopData.timeStamp, l_oDate);\r\n }\r\n } catch (e) {\r\n // nada\r\n //alert(\"gcpd e: \" + e);\r\n }\r\n\r\n //alert(\"2: \" + l_iDiffOfLastRefresh + \" :: \" + _minutesBetweenCommonDataRefresh);\r\n\r\n if (l_iDiffOfLastRefresh > _minutesBetweenShopDataRefresh) {\r\n let l_oNewShopData = await STN.stnFetch(\r\n \"init_utilities.js\",\r\n \"getCachedShopData\",\r\n \"POST\",\r\n \"GetOpenShopsToCache\",\r\n null\r\n );\r\n\r\n //alert(\"3: \" + JSON.stringify(l_oNewShopData));\r\n\r\n if (!isBlank(l_oNewShopData)) {\r\n // save results to state\r\n let l_oNewStateModel = {\r\n timeStamp: new Date(),\r\n data: l_oNewShopData\r\n }\r\n\r\n store.commit('setShopDataToCache', l_oNewStateModel);\r\n } else {\r\n hideProgress();\r\n }\r\n \r\n return (l_oNewShopData);\r\n } else {\r\n // use current data\r\n return (l_oExistingShopData.data);\r\n }\r\n };\r\n\r\n\r\n // address, email, etc\r\n const getEvaluatorBasicInfo = async () => {\r\n return await STN.stnFetch(\r\n \"init_utilities.js\",\r\n \"getEvaluatorBasicInfo\",\r\n \"POST\",\r\n \"GetEvaluatorBasicInfo\",\r\n null,\r\n true // get single result\r\n );\r\n };\r\n\r\n\r\n // EvaluatorID property\r\n const getEvaluatorID = () => {\r\n let l_oData = store.getters.getUser;\r\n return l_oData.EvaluatorID;\r\n };\r\n\r\n\r\n // LoginSource property\r\n const getLoginSource = () => {\r\n let l_oData = store.getters.getUser;\r\n return l_oData.LoginSource;\r\n };\r\n\r\n\r\n // helper\r\n const getMinutesBetweenDates = (p_oStartDate, p_oEndDate) => {\r\n let l_oDiff;\r\n try {\r\n p_oStartDate = new Date(p_oStartDate);\r\n l_oDiff = p_oEndDate.getTime() - p_oStartDate.getTime();\r\n l_oDiff = l_oDiff / 60000;\r\n } catch (e) {\r\n l_oDiff = _minutesBetweenCommonDataRefresh;\r\n }\r\n return l_oDiff;\r\n };\r\n\r\n\r\n // get position of html element in client\r\n const getPosition = (el) => {\r\n try{\r\n let rect = el.getBoundingClientRect();\r\n let l_iTop = 0;\r\n if ((rect.top + window.scrollY - 115) > 0) {\r\n l_iTop = rect.top + window.scrollY - 115;\r\n }\r\n else {\r\n l_iTop = rect.top + window.scrollY;\r\n }\r\n \r\n return {\r\n left: rect.left + window.scrollX,\r\n top: l_iTop\r\n };\r\n } catch(e) {\r\n return {\r\n left: 0,\r\n top: 0\r\n };\r\n }\r\n };\r\n\r\n\r\n // GetUploadHandlerURL property \r\n const getUploadHandlerURL = () => {\r\n return IMAGECONVERTER_URL;\r\n };\r\n\r\n\r\n const getWarningCount = () => {\r\n let l_oUserData = store.getters.getUser;\r\n let l_iCount = 0;\r\n\r\n if (!isBlank(l_oUserData)) {\r\n\r\n // alert(l_oUserData.HasReportsInError);\r\n // alert(l_oUserData.NeedsToEnterSSN);\r\n // alert(l_oUserData.GeneralMessage);\r\n\r\n if (l_oUserData.HasReportsInError) {\r\n l_iCount += 1;\r\n }\r\n if (l_oUserData.NeedsToEnterSSN) {\r\n l_iCount += 1;\r\n }\r\n if (!isBlank(l_oUserData.GeneralMessage)) {\r\n if (l_oUserData.GeneralMessage.substr(0, 8) != \"We could\") {\r\n l_iCount += 1;\r\n }\r\n }\r\n }\r\n\r\n return l_iCount;\r\n };\r\n\r\n\r\n const isVendorLogin = async () => {\r\n let l_oEvaluatorID = getEvaluatorID();\r\n\r\n if (l_oEvaluatorID == 3967074 || l_oEvaluatorID == 3883617 ||\r\n l_oEvaluatorID == 1312205 || l_oEvaluatorID == 3009043 ||\r\n l_oEvaluatorID == 3846363) { \r\n return true; \r\n }\r\n else {\r\n return false;\r\n }\r\n }\r\n\r\n\r\n const isBestmarkNevadaMultishopperLogin = async () => {\r\n let l_oEvaluatorID = getEvaluatorID();\r\n\r\n if (l_oEvaluatorID == 4094485) { \r\n return true; \r\n }\r\n else {\r\n return false;\r\n }\r\n }\r\n\r\n\r\n // check if incoming variable is blank\r\n const isBlank = (p_oVar) => {\r\n try {\r\n if(p_oVar && typeof p_oVar === 'object' && p_oVar.constructor === Object) {\r\n for(var prop in p_oVar) {\r\n if(p_oVar.hasOwnProperty(prop))// eslint-disable-line\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n else {\r\n if (p_oVar != '' && p_oVar != null && p_oVar != undefined && p_oVar != 'undefined' && p_oVar != 'null') {\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n } \r\n } catch(e) {\r\n return false;\r\n }\r\n };\r\n\r\n\r\n // validate date entry\r\n const isDate = (p_sValue) => {\r\n if (!(isBlank(p_sValue))) {\r\n if (/^(0[1-9]|1[0-2])\\/(0[1-9]|1\\d|2\\d|3[01])\\/(19|20)\\d{2}$/.test(p_sValue)) {\r\n return true;\r\n }\r\n else {\r\n return false;\r\n }\r\n }\r\n else {\r\n return false;\r\n }\r\n };\r\n\r\n\r\n // validate email entry\r\n const isEmail = (p_sValue) => {\r\n if (!(isBlank(p_sValue))) {\r\n if (/^\\w+([.-]?\\w+)*@\\w+([.-]?\\w+)*(.\\w{2,3})+$/.test(p_sValue)) {\r\n return true;\r\n }\r\n else {\r\n return false;\r\n }\r\n }\r\n else {\r\n return false;\r\n }\r\n };\r\n\r\n\r\n // validate numeric entry\r\n const isNumeric = (p_sValue) => {\r\n if (!(isBlank(p_sValue))) {\r\n let numNum = +p_sValue;\r\n if (isNaN(numNum)) {\r\n return false;\r\n }\r\n else {\r\n return true;\r\n }\r\n }\r\n else {\r\n return false;\r\n }\r\n };\r\n\r\n\r\n // method to async save the error and redirect client to error page\r\n const logError = async (p_sErrorSource, p_sErrorText, p_bLogout, p_bRedirect, p_sErrorCode) => {\r\n let l_sErrorCode = '';\r\n \r\n if (!isBlank(p_sErrorCode)) {\r\n l_sErrorCode = p_sErrorCode\r\n }\r\n\r\n try {\r\n let l_oUserData = await store.getters.getUser;\r\n\r\n if (!isBlank(l_oUserData)) {\r\n p_sErrorText += \" :: \" + JSON.stringify(l_oUserData);\r\n }\r\n\r\n if ((_debug == true) && (p_sErrorText.indexOf(\"isRooted\") == -1) && (p_sErrorText.indexOf(\"getFCMToken\") == -1)) {\r\n swal.fire({\r\n text: \"LogError: \" + p_sErrorSource + \": \" + p_sErrorText,\r\n confirmButtonColor: '#F26E17',\r\n confirmButtonText: 'OK',\r\n allowOutsideClick: true\r\n }).then(() => {\r\n if (!isBlank(p_bRedirect) && p_bRedirect == true) {\r\n redirect({\r\n name: \"error\",\r\n params: {\r\n errorCode: '221' + l_sErrorCode,\r\n }\r\n });\r\n }\r\n });\r\n } else {\r\n let l_oDataModel = {\r\n ErrorSource: p_sErrorSource,\r\n ErrorText: p_sErrorText\r\n };\r\n\r\n const headers = new Headers();\r\n headers.append(\r\n \"Accept\",\r\n \"application/json, text/plain, */*\"\r\n );\r\n headers.append(\r\n \"Content-Type\",\r\n \"application/json\"\r\n );\r\n\r\n connectionMessageClear();\r\n \r\n let l_oLogErrorRequest = new Request(\r\n API_URL + \"LogError\",\r\n {\r\n method: \"POST\",\r\n headers,\r\n mode: \"cors\",\r\n cache: \"no-cache\",\r\n body: JSON.stringify(l_oDataModel),\r\n }\r\n );\r\n\r\n return await fetch(l_oLogErrorRequest)\r\n .then(async (t_oLogErrorResponse) => { \r\n if (t_oLogErrorResponse.ok && (t_oLogErrorResponse.status >= 200 && t_oLogErrorResponse.status < 300)) { \r\n return true; \r\n }\r\n else {\r\n return false;\r\n }\r\n })\r\n .then(async (t_oLogErrorResult) => {\r\n if (!t_oLogErrorResult) {\r\n l_sErrorCode = l_sErrorCode + '220' // failed to send error to server\r\n }\r\n\r\n if (!isBlank(p_bRedirect) && p_bRedirect == true) {\r\n redirect({\r\n name: \"error\",\r\n params: {\r\n errorCode: '221' + l_sErrorCode,\r\n }\r\n });\r\n }\r\n })\r\n .catch((errorThrown) => {\r\n // TODO: confirm these codes exist in errorThrown / errorThrown.response\r\n if (!isBlank(errorThrown)) {\r\n if (!isBlank(errorThrown.response)) {\r\n let _err = errorThrown.response;\r\n if (_err == \"319\") {\r\n //\"NetworkError\"\r\n redirect({\r\n name: \"error_restricted\",\r\n params: {\r\n errorCode: '320' + l_sErrorCode,\r\n }\r\n });\r\n } else {\r\n redirect({\r\n name: \"error\",\r\n params: {\r\n errorCode: '321' + l_sErrorCode,\r\n }\r\n });\r\n }\r\n } else {\r\n redirect({\r\n name: \"error_restricted\",\r\n params: {\r\n errorCode: '322' + l_sErrorCode,\r\n }\r\n });\r\n }\r\n } else {\r\n redirect({\r\n name: \"error_restricted\",\r\n params: {\r\n errorCode: '323' + l_sErrorCode,\r\n }\r\n });\r\n } \r\n });\r\n }\r\n } catch (e) {\r\n redirect({\r\n name: \"error\",\r\n params: {\r\n errorCode: '421' + l_sErrorCode,\r\n }\r\n });\r\n }\r\n finally {\r\n hideProgress();\r\n }\r\n };\r\n\r\n\r\n // custom event hooked on all pages\r\n const onMounted = () => {\r\n //window.removeEventListener(\"popstate\");\r\n hideProgress();\r\n };\r\n\r\n\r\n // event\r\n const openGuidelines = (p_sUrl) => {\r\n try {\r\n swal.fire({\r\n title: \"Leave the app and launch your device's web browser?\",\r\n showCancelButton: true,\r\n confirmButtonColor: '#F26E17',\r\n cancelButtonColor: '#008CEE',\r\n confirmButtonText: 'YES',\r\n cancelButtonText: 'NO',\r\n allowOutsideClick: false\r\n }).then((result) => {\r\n if (result.value) {\r\n window.open(decodeURI(p_sUrl));\r\n }\r\n else {\r\n swal.close();\r\n }\r\n });\r\n }\r\n catch (e) {\r\n logError(\"init_utilities.js\", \"openGuidelines - \" + e);\r\n }\r\n };\r\n\r\n\r\n const redirect = async (p_oRouteData) => {\r\n let l_oRedirectModel;\r\n \r\n if (STN.isBlank(p_oRouteData.name)) {\r\n l_oRedirectModel = { name: p_oRouteData, state: {} };\r\n } else {\r\n if (!STN.isBlank(p_oRouteData.params)){\r\n l_oRedirectModel = { name: p_oRouteData.name, state: p_oRouteData.params };\r\n }\r\n else {\r\n l_oRedirectModel = { name: p_oRouteData.name, state: {}};\r\n }\r\n }\r\n\r\n // if (!STN.isBlank(p_oRouteData.params)){\r\n // if (!STN.isBlank(p_oRouteData.name)) {\r\n // l_oRedirectModel = { name: p_oRouteData.name, state: p_oRouteData.params };\r\n // } else {\r\n // l_oRedirectModel = { name: p_oRouteData, state: p_oRouteData.params };\r\n // }\r\n // } else {\r\n // if (!STN.isBlank(p_oRouteData.name)) {\r\n // l_oRedirectModel = { name: p_oRouteData.name, state: {}};\r\n // } else {\r\n // l_oRedirectModel = { name: p_oRouteData, state: {} };\r\n // }\r\n // }\r\n\r\n await store.commit('setRouteParams', p_oRouteData.params);\r\n _lastRedirectModel = p_oRouteData;\r\n\r\n //alert(JSON.stringify(l_oRedirectModel));\r\n\r\n router.push(l_oRedirectModel); \r\n };\r\n\r\n\r\n const redirectBack = () => {\r\n router.push(_lastRedirectModel);\r\n };\r\n\r\n\r\n // method to handle translation of api call results\r\n const responseModel = async (p_oModelJSON) => {\r\n // private variables //////////////////////////////////////////////////////////////////////\r\n let l_sStatus = null;\r\n let l_sMessage = null;\r\n let l_oModel = null;\r\n let l_bIsEmpty = true;\r\n\r\n // public methods /////////////////////////////////////////////////////////////////////////\r\n let getStatus = () => {\r\n return l_sStatus;\r\n };\r\n\r\n let getMessage = () => {\r\n return l_sMessage;\r\n };\r\n\r\n let getModel = () => {\r\n return l_oModel;\r\n };\r\n\r\n let isModelEmpty = () => {\r\n return l_bIsEmpty;\r\n };\r\n\r\n // private methods //////////////////////////////////////////////////////////////////////////\r\n let setValues = async (p_oModel) => {\r\n try {\r\n if (p_oModel != null) {\r\n l_sStatus = p_oModel.Status;\r\n l_sMessage = p_oModel.Message;\r\n l_oModel = JSON.parse(p_oModel.Model);\r\n\r\n // oModel could be null if sMessage is Unauthorized\r\n if (l_oModel != null) {\r\n try {\r\n if (Object.keys(l_oModel).length > 0) {\r\n l_bIsEmpty = false;\r\n }\r\n } catch (e) {\r\n // keys may be null or empty and throw error, so...\r\n l_bIsEmpty = false;\r\n }\r\n }\r\n } else {\r\n l_sStatus = 'FAIL';\r\n l_sMessage = 'FAIL';\r\n l_oModel = [];\r\n l_bIsEmpty = true;\r\n }\r\n\r\n return true;\r\n } catch (e) {\r\n logError('utilities.js', 'responseModel, setValues - ' + e);\r\n }\r\n };\r\n\r\n // constructor / populate model ////////////////////////////////////////////////////////////\r\n await setValues(p_oModelJSON);\r\n\r\n // expose public methods\r\n return {\r\n isModelEmpty: isModelEmpty,\r\n getModel: getModel,\r\n getMessage: getMessage,\r\n getStatus: getStatus\r\n };\r\n };\r\n\r\n\r\n // set person attribute\r\n const setPersonAttribute = async (p_sAttributeTypeID, p_sAttributeData) => {\r\n let l_oDataModel = {\r\n AttributeTypeID: p_sAttributeTypeID,\r\n AttributeData: p_sAttributeData\r\n };\r\n\r\n return await stnFetch(\r\n \"init_utilities.js\",\r\n \"setPersonAttribute\",\r\n \"POST\",\r\n \"SetPersonAttribute\",\r\n l_oDataModel\r\n );\r\n };\r\n\r\n\r\n const showProgress = () => {\r\n document.getElementById('spinner').style.display = 'inline-block';\r\n };\r\n const hideProgress = () => {\r\n document.getElementById('spinner').style.display = 'none';\r\n };\r\n\r\n\r\n // data lists\r\n const stateList_US = [{ \"StateID\": \"AK\", \"StateDescription\": \"Alaska\" }, { \"StateID\": \"AL\", \"StateDescription\": \"Alabama\" }, { \"StateID\": \"AR\", \"StateDescription\": \"Arkansas\" }, { \"StateID\": \"AS\", \"StateDescription\": \"American Samoa\" }, { \"StateID\": \"AZ\", \"StateDescription\": \"Arizona\" }, { \"StateID\": \"CA\", \"StateDescription\": \"California\" }, { \"StateID\": \"CO\", \"StateDescription\": \"Colorado\" }, { \"StateID\": \"CT\", \"StateDescription\": \"Connecticut\" }, { \"StateID\": \"DC\", \"StateDescription\": \"District of Columbia\" }, { \"StateID\": \"DE\", \"StateDescription\": \"Delaware\" }, { \"StateID\": \"FL\", \"StateDescription\": \"Florida\" }, { \"StateID\": \"GA\", \"StateDescription\": \"Georgia\" }, { \"StateID\": \"GU\", \"StateDescription\": \"Guam\" }, { \"StateID\": \"HI\", \"StateDescription\": \"Hawaii\" }, { \"StateID\": \"IA\", \"StateDescription\": \"Iowa\" }, { \"StateID\": \"ID\", \"StateDescription\": \"Idaho\" }, { \"StateID\": \"IL\", \"StateDescription\": \"Illinois\" }, { \"StateID\": \"IN\", \"StateDescription\": \"Indiana\" }, { \"StateID\": \"KS\", \"StateDescription\": \"Kansas\" }, { \"StateID\": \"KY\", \"StateDescription\": \"Kentucky\" }, { \"StateID\": \"LA\", \"StateDescription\": \"Louisiana\" }, { \"StateID\": \"MA\", \"StateDescription\": \"Massachusetts\" }, { \"StateID\": \"MD\", \"StateDescription\": \"Maryland\" }, { \"StateID\": \"ME\", \"StateDescription\": \"Maine\" }, { \"StateID\": \"MI\", \"StateDescription\": \"Michigan\" }, { \"StateID\": \"MN\", \"StateDescription\": \"Minnesota\" }, { \"StateID\": \"MO\", \"StateDescription\": \"Missouri\" }, { \"StateID\": \"MS\", \"StateDescription\": \"Mississippi\" }, { \"StateID\": \"MT\", \"StateDescription\": \"Montana\" }, { \"StateID\": \"NC\", \"StateDescription\": \"North Carolina\" }, { \"StateID\": \"ND\", \"StateDescription\": \"North Dakota\" }, { \"StateID\": \"NE\", \"StateDescription\": \"Nebraska\" }, { \"StateID\": \"NH\", \"StateDescription\": \"New Hampshire\" }, { \"StateID\": \"NJ\", \"StateDescription\": \"New Jersey\" }, { \"StateID\": \"NM\", \"StateDescription\": \"New Mexico\" }, { \"StateID\": \"NV\", \"StateDescription\": \"Nevada\" }, { \"StateID\": \"NY\", \"StateDescription\": \"New York\" }, { \"StateID\": \"OH\", \"StateDescription\": \"Ohio\" }, { \"StateID\": \"OK\", \"StateDescription\": \"Oklahoma\" }, { \"StateID\": \"OR\", \"StateDescription\": \"Oregon\" }, { \"StateID\": \"PA\", \"StateDescription\": \"Pennsylvania\" }, { \"StateID\": \"PR\", \"StateDescription\": \"Puerto Rico\" }, { \"StateID\": \"RI\", \"StateDescription\": \"Rhode Island\" }, { \"StateID\": \"SC\", \"StateDescription\": \"South Carolina\" }, { \"StateID\": \"SD\", \"StateDescription\": \"South Dakota\" }, { \"StateID\": \"TN\", \"StateDescription\": \"Tennessee\" }, { \"StateID\": \"TX\", \"StateDescription\": \"Texas\" }, { \"StateID\": \"UT\", \"StateDescription\": \"Utah\" }, { \"StateID\": \"VA\", \"StateDescription\": \"Virginia\" }, { \"StateID\": \"VI\", \"StateDescription\": \"Virgin Islands\" }, { \"StateID\": \"VT\", \"StateDescription\": \"Vermont\" }, { \"StateID\": \"WA\", \"StateDescription\": \"Washington\" }, { \"StateID\": \"WI\", \"StateDescription\": \"Wisconsin\" }, { \"StateID\": \"WV\", \"StateDescription\": \"West Virginia\" }, { \"StateID\": \"WY\", \"StateDescription\": \"Wyoming\" }];\r\n const stateList_CA = [{ \"StateID\": \"AB\", \"StateDescription\": \"Alberta\" }, { \"StateID\": \"BC\", \"StateDescription\": \"British Columbia\" }, { \"StateID\": \"MB\", \"StateDescription\": \"Manitoba\" }, { \"StateID\": \"NB\", \"StateDescription\": \"New Brunswick\" }, { \"StateID\": \"NL\", \"StateDescription\": \"Newfoundland\" }, { \"StateID\": \"NS\", \"StateDescription\": \"Nova Scotia\" }, { \"StateID\": \"NT\", \"StateDescription\": \"Northwest Territories\" }, { \"StateID\": \"NU\", \"StateDescription\": \"Nunavut\" }, { \"StateID\": \"ON\", \"StateDescription\": \"Ontario\" }, { \"StateID\": \"PE\", \"StateDescription\": \"Prince Edward Island\" }, { \"StateID\": \"QC\", \"StateDescription\": \"Quebec\" }, { \"StateID\": \"SK\", \"StateDescription\": \"Saskatchewan\" }, { \"StateID\": \"YT\", \"StateDescription\": \"Yukon\" }];\r\n const radiusList = [{ \"radius\": 1 }, { \"radius\": 2 }, { \"radius\": 3 }, { \"radius\": 4 }, { \"radius\": 5 }, { \"radius\": 10 }, { \"radius\": 15 }, { \"radius\": 20 }, { \"radius\": 25 }, { \"radius\": 30 }, { \"radius\": 40 }, { \"radius\": 50 }, { \"radius\": 60 }, { \"radius\": 70 }, { \"radius\": 80 }, { \"radius\": 90 }, { \"radius\": 100 }];\r\n const countryList = [{ \"CountryID\": \"US\", \"CountryDescription\": \"United States\" }, { \"CountryID\": \"CA\", \"CountryDescription\": \"Canada\" }]\r\n\r\n\r\n // expose public methods / variables\r\n return {\r\n countryList: countryList,\r\n stateList_US: stateList_US,\r\n stateList_CA: stateList_CA,\r\n radiusList: radiusList,\r\n\r\n actionMessageShow: actionMessageShow,\r\n actionMessageShowOAuth: actionMessageShowOAuth,\r\n actionMessageClear: actionMessageClear,\r\n stnFetch: stnFetch,\r\n checkPasswordPolicy: checkPasswordPolicy,\r\n getApplyData: getApplyData,\r\n getAVUploadHandlerURL: getAVUploadHandlerURL,\r\n GetBaseURL: GetBaseURL,\r\n getBase64StringFromDataURL: getBase64StringFromDataURL,\r\n getCommonPageData: getCommonPageData,\r\n getCachedShopData: getCachedShopData,\r\n getEvaluatorBasicInfo: getEvaluatorBasicInfo,\r\n getEvaluatorID: getEvaluatorID,\r\n getLoginSource: getLoginSource,\r\n getMinutesBetweenDates: getMinutesBetweenDates,\r\n getPosition: getPosition,\r\n getUploadHandlerURL: getUploadHandlerURL,\r\n getWarningCount: getWarningCount,\r\n hideProgress: hideProgress,\r\n isVendorLogin: isVendorLogin,\r\n isBestmarkNevadaMultishopperLogin: isBestmarkNevadaMultishopperLogin,\r\n isBlank: isBlank,\r\n isDate: isDate,\r\n isEmail: isEmail,\r\n isNumeric: isNumeric,\r\n logError: logError,\r\n onMounted: onMounted,\r\n openGuidelines: openGuidelines,\r\n redirect: redirect,\r\n redirectBack: redirectBack,\r\n responseModel: responseModel,\r\n setPersonAttribute: setPersonAttribute,\r\n showProgress: showProgress,\r\n };\r\n})();","import { STN } from \"@/modules/init_utilities.js\";\nimport router from \"../router\";\nimport swal from 'sweetalert2'\nimport store from \"@/store/index\";\nimport { getToken, getMessaging, onMessage } from \"firebase/messaging\";\n\nconst initialState = { status: { loggedIn: false }, user: null };\n\nexport const auth = {\n inject: ['messaging'], // Use the inject option to access the provided messaging object\n namespaced: true,\n state: initialState,\n actions: {\n async login({ commit }, p_oCredentials) {\n try{\n if (!STN.isBlank(p_oCredentials)){\n let getAutoLoginResult = async() => {\n let l_oDataModel = {\n EncryptedEvaluatorID: p_oCredentials.encryptedEvaluatorID,\n };\n \n return await STN.stnFetch(\n \"auth.module.js\",\n \"getAutoLoginResult\",\n \"POST\",\n \"AutoLogin\",\n l_oDataModel,\n true\n );\n };\n\n let getAutoLoginResultBestmarkResult = async() => {\n let l_oDataModel = {\n EncryptedEvaluatorID: p_oCredentials.encryptedEvaluatorID,\n EncryptedAssignmentID: p_oCredentials.encryptedAssignmentID\n };\n \n return await STN.stnFetch(\n \"auth.module.js\",\n \"getAutoLoginResultBestmarkResult\",\n \"POST\",\n \"AutoLoginBestMark\",\n l_oDataModel,\n true\n );\n };\n\n let getLoginResult = async() => {\n await this.commit('setAuthHeader', \"Basic \" + btoa(p_oCredentials.username + \":\" + p_oCredentials.password));\n\n return await STN.stnFetch(\n \"auth.module.js\",\n \"getLoginResult\",\n \"POST\",\n \"Login\",\n );\n };\n\n let getOAuthLoginResult = async() => {\n await this.commit('setAuthHeader', \"OAuth \" + btoa(p_oCredentials.type + \":\" + p_oCredentials.authID));\n\n return await STN.stnFetch(\n \"auth.module.js\",\n \"getOAuthLoginResult\",\n \"POST\",\n \"LoginOAuth\",\n );\n };\n\n let l_oResult;\n\n if (!STN.isBlank(p_oCredentials.encryptedEvaluatorID) && !STN.isBlank(p_oCredentials.encryptedAssignmentID) && !STN.isBlank(p_oCredentials.bn)) {\n // auto login from web/email link, qs value \"bn\" is present signifying Bestmark NV shopper\n l_oResult = await getAutoLoginResultBestmarkResult();\n }\n else if (!STN.isBlank(p_oCredentials.encryptedEvaluatorID)) {\n // auto login from web/email link\n l_oResult = await getAutoLoginResult();\n }\n else if (p_oCredentials.type == \"Basic\") {\n // username / password login \n l_oResult = await getLoginResult();\n }\n else {\n // oauth login\n l_oResult = await getOAuthLoginResult();\n }\n\n if (STN.isBlank(l_oResult)){\n commit(\"logout\");\n return \"There was a problem with your request, please try again\";\n }\n else if (l_oResult.EvaluatorID > 0) {\n //alert(\"login: \" + JSON.stringify(l_oResult));\n\n if (l_oResult.Active == 1) {\n //after successful login, authheader for each subsequent request must be in the format evaluatorid:token\n await this.commit('setAuthHeader', \"Basic \" + btoa(l_oResult.EvaluatorID + \":\" + l_oResult.Token));\n \n let l_oGetCommonPageDataResult = await STN.getCommonPageData(true);\n\n await commit(\"loginSuccess\", l_oGetCommonPageDataResult, btoa(l_oResult.EvaluatorID + \":\" + l_oResult.Token + \":\" + l_oGetCommonPageDataResult.ForumUsername));\n\n if (l_oResult.ForceChange) {\n router.replace({\n name: \"myaccount_changepassword\",\n params: {\n fc: 1\n }\n });\n } else {\n if (p_oCredentials.remember) {\n localStorage.setItem(\"RememberMe\", JSON.stringify(p_oCredentials));\n } else if (STN.isBlank(localStorage.getItem(\"RememberMe\"))) {\n localStorage.setItem(\"RememberMe\", null);\n }\n\n try {\n // setup notifications / FCM\n Notification.requestPermission().then(permission => {\n if (permission === 'granted') {\n // Permission granted, we can now use FCM getToken()\n console.log('getting token');\n\n const messaging = getMessaging();\n\n // use the PUBLIC key\n getToken(messaging, {\n vapidKey: \"BCAIXX8Y-SPzvk1tLWeqrPfHMExWkCEtkZCXEezXPROU4vi1HDavWIGAejwKzbYla48g8ynRRBGbaGXSJXBZQN0\"\n }).then(async (currentToken) => {\n if (currentToken) {\n // saveFCMToken \n console.log('got token');\n \n let l_oDataModel = {\n Token: currentToken\n };\n \n await STN.stnFetch(\n \"auth.module.js\",\n \"saveFCMToken\",\n \"POST\",\n \"SaveFCMToken\",\n l_oDataModel\n );\n \n console.log('saved token');\n \n onMessage(messaging, (payload) => {\n //console.log('onMessage Message received. ', payload);\n\n swal.fire({\n text: payload.data.title, //\"We have found new open shops near you! Would you like to see them?\",\n showCancelButton: true,\n confirmButtonColor: '#F26E17',\n cancelButtonColor: '#008CEE',\n confirmButtonText: 'YES',\n cancelButtonText: 'NO',\n allowOutsideClick: false\n }).then((result) => {\n if (result.value) {\n if (STN.isBlank(payload.data.params)) {\n STN.redirect(\"dashboard\");\n } else {\n var jsonObject = JSON.parse(payload.data.params);\n \n STN.redirect(jsonObject);\n }\n } else {\n STN.hideProgress();\n swal.close();\n }\n });\n });\n\n console.log('onMessage initialized');\n\n console.log('setup complete');\n } \n }).catch((err) => {\n console.log('An error occurred while retrieving token. ', err);\n });\n } \n });\n } catch (e) {\n // nada\n }\n \n // resolved, make sure to pass through to next() if opening from external link / autoLogin\n if (STN.isBlank(p_oCredentials.encryptedEvaluatorID)) {\n let _gaoh = store.getters.getGigspotAssignmentOnHold;\n if (!STN.isBlank(_gaoh)){\n\n // flag their login with this attribute\n await STN.setPersonAttribute(\"IS-GS\", \"YES\");\n \n STN.redirect({\n name: \"findshops_preview\",\n params: {\n assignmentID: _gaoh,\n callingPage: \"findshops_results_map\",\n pageName: this.pageName,\n },\n });\n } else {\n //router.push(\"dashboard\");\n\n // // testing\n // STN.redirect({\n // name: \"questionnaire\",\n // params: {\n // assignmentID: 5245878,\n // cQID: 5450593,\n // qID: 1734,\n // // startQuestion: 23\n // startQuestion: 9\n // }\n // });\n\n\n // make sure to pass through to next() if opening from external link / autoLogin\n if (STN.isBlank(p_oCredentials.encryptedEvaluatorID)) {\n\n // was BackgroundMessagePayloadParams saved in router -> PreRouteChecks / not logged in???\n let l_oBackgroundMessagePayloadParams = store.getters.getBackgroundMessagePayloadParams;\n if (!STN.isBlank(l_oBackgroundMessagePayloadParams)) {\n //var jsonObject = JSON.parse(l_oBackgroundMessagePayloadParams);\n\n // clear out from store\n store.commit('setBackgroundMessagePayloadParams', null);\n\n STN.redirect(l_oBackgroundMessagePayloadParams);\n } else {\n router.push(\"dashboard\");\n }\n \n // //http://localhost:59900/#/questionnaire?EID=4048550&CQID=4472793&QID=1267&SQ=152&BQ=151\n // // proceed to next page\n // router.replace({\n // name: \"questionnaire\",\n // params: {\n // assignmentID: 4675726,\n // cQID: 4986565,\n // qID: 1400,\n // startQuestion: 1,\n // }\n // }); \n } \n } \n } else if (!STN.isBlank(p_oCredentials.bn)) {\n // special case for bestmark nv manual login\n return l_oResult;\n }\n }\n } else {\n commit(\"logout\");\n return \"Your account is inactive, contact the CX Group Helpdesk for more information\";\n }\n } else {\n commit(\"logout\");\n\n if (p_oCredentials.type != \"Basic\") {\n // OAuth and does not exist in system, go to apply\n router.push({\n name: \"apply_continueapplication\",\n }); \n }\n else {\n return \"*Invalid credentials\";\n }\n }\n }\n } catch(e) {\n commit(\"logout\");\n STN.logError(\"auth.module.js\", \"login: \" + e, false, false);\n return \"There was a problem with your request, please try again\";\n }\n },\n async logout({ commit }) {\n let getLogoutResult = async() => {\n let l_oDataModel = {\n IsMobile: false,\n };\n \n return await STN.stnFetch(\n \"auth.module.js\",\n \"getLogoutResult\",\n \"POST\",\n \"Logoff\",\n l_oDataModel,\n true\n );\n };\n\n await getLogoutResult();\n\n commit(\"logout\");\n }, \n },\n mutations: {\n loginSuccess(state, user, forumAuthHeader) {\n state.status.loggedIn = true;\n state.user = user;\n state.forumAuthHeader = forumAuthHeader;\n },\n logout(state) {\n state.status.loggedIn = false;\n state.shopSearchResults = [];\n state.shopsNearMeResults = [];\n state.authHeader = null;\n state.forumAuthHeader = null;\n state.user = null;\n localStorage.setItem(\"RememberMe\", null);\n },\n },\n};","import { createStore } from \"vuex\";\nimport { auth } from \"./auth.module\";\nimport { STN } from \"@/modules/init_utilities.js\";\n\nconst store = createStore({\n modules: {\n auth,\n },\n\n // user-defined global state variables\n // https://vuex.vuejs.org/guide/state.html\n state: {\n routeParams: null, \n isShopsNavOpen: false,\n isAccountNavOpen: false,\n isHelpNavOpen: false,\n isMobileNavOpen: false,\n pageTitle: \"Login\",\n shopSearchResults: [],\n cachedShopData: [],\n shopsNearMeResults: [],\n authHeader: null,\n forumAuthHeader: null,\n user: null,\n applicant: null,\n backgroundMessagePayloadParams: null, // used to store any url the user first tried to get to, but was redirected to login page (will arrive here after logging in)\n currentQuestionnaireAnswers: [],\n currentAssignmentID: null,\n showMobileSnackbar: true,\n gigspotAssignmentOnHold: null,\n isBestmarkManualLogin: false,\n },\n\n // user-defined getters are exposed and accessible via this.$store.getters......\n // https://vuex.vuejs.org/guide/getters.html\n getters: {\n // routing\n getRouteParams: (state) => {\n if (!STN.isBlank(state.routeParams)){\n return state.routeParams;\n } else {\n return [];\n }\n },\n\n\n // nav\n isShopsNavOpen: (state) => {\n return state.isShopsNavOpen;\n },\n isAccountNavOpen: (state) => {\n return state.isAccountNavOpen;\n },\n isHelpNavOpen: (state) => {\n return state.isHelpNavOpen;\n },\n isMobileNavOpen: (state) => {\n return state.isMobileNavOpen;\n },\n\n\n // program\n getApplicant: (state) => {\n return state.applicant;\n },\n\n getAuthHeader: (state) => {\n return state.authHeader;\n },\n\n getCurrentAssignmentID: (state) => {\n return state.currentAssignmentID;\n },\n\n getForumAuthHeader: (state) => {\n return state.forumAuthHeader;\n },\n\n getUser: (state) => {\n return state.user;\n },\n\n getPageTitle: (state) => {\n return state.pageTitle;\n },\n\n getShowMobileSnackbar: (state) => {\n return state.showMobileSnackbar;\n },\n\n\n // data\n getBackgroundMessagePayloadParams: (state) => {\n return state.backgroundMessagePayloadParams;\n },\n \n getGigspotAssignmentOnHold: (state) => {\n return state.gigspotAssignmentOnHold;\n },\n\n getIsBestmarkManualLogin: (state) => {\n return state.isBestmarkManualLogin;\n },\n \n getShopSearchResults: (state) => {\n return state.shopSearchResults;\n },\n\n getShopDataFromCache: (state) => {\n return state.cachedShopData;\n },\n\n getShopsNearMeResults: (state) => {\n return state.shopsNearMeResults;\n },\n\n getCurrentQuestionnaireAnswers: (state) => {\n return state.currentQuestionnaireAnswers;\n },\n },\n\n //user-defined mutations are the only way to change state in vuex\n // https://vuex.vuejs.org/guide/mutations.html#commit-with-payload\n mutations: {\n // routing\n setRouteParams(state, in_params) {\n state.routeParams = in_params;\n },\n\n\n // nav\n setIsShopsNavOpen(state, in_truefalse) {\n state.isShopsNavOpen = in_truefalse;\n },\n toggleShopsNav(state) {\n state.isShopsNavOpen = !store.isShopsNavOpen;\n },\n setIsAccountNavOpen(state, in_truefalse) {\n state.isAccountNavOpen = in_truefalse;\n },\n toggleAccountNav(state) {\n state.isAccountNavOpen = !store.isAccountNavOpen;\n },\n setIsHelpNavOpen(state, in_truefalse) {\n state.isHelpNavOpen = in_truefalse;\n },\n toggleHelpNav(state) {\n state.isHelpNavOpen = !store.isHelpNavOpen;\n },\n setIsMobileNavOpen(state, in_truefalse) {\n state.isMobileNavOpen = in_truefalse;\n },\n toggleMobileNav(state) {\n state.isMobileNavOpen = !store.isMobileNavOpen;\n },\n\n\n // program\n setApplicant(state, in_applicant) {\n state.applicant = in_applicant;\n },\n\n setCurrentAssignmentID(state, in_currentAssignmentID) {\n state.currentAssignmentID = in_currentAssignmentID;\n },\n\n setAuthHeader(state, in_authHeader) {\n state.authHeader = in_authHeader;\n },\n\n setUser(state, in_user) {\n state.user = in_user;\n },\n\n setPageTitle(state, in_pageTitle) {\n state.pageTitle = in_pageTitle;\n },\n\n setShowMobileSnackbar: (state, in_show) => {\n state.showMobileSnackbar = in_show;\n },\n\n \n // data\n setBackgroundMessagePayloadParams(state, in_payloadParams) {\n state.backgroundMessagePayloadParams = in_payloadParams;\n },\n\n setGigspotAssignmentOnHold(state, in_gigspotAssignmentOnHold) {\n state.gigspotAssignmentOnHold = in_gigspotAssignmentOnHold;\n },\n\n setIsBestmarkManualLogin: (state, in_isBestmarkManualLogin) => {\n state.isBestmarkManualLogin = in_isBestmarkManualLogin;\n },\n\n setShopSearchResults(state, in_shopSearchResults) {\n state.shopSearchResults = in_shopSearchResults;\n },\n\n setShopDataToCache(state, in_shopData) {\n state.cachedShopData = in_shopData;\n },\n\n setShopsNearMeResults: (state, in_shopsNearMeResults) => {\n state.shopsNearMeResults = in_shopsNearMeResults;\n },\n\n setCurrentQuestionnaireAnswers: (state, in_currentQuestionnaireAnswers) => {\n state.currentQuestionnaireAnswers = in_currentQuestionnaireAnswers;\n },\n },\n});\n\nexport default store;\n","import { createWebHashHistory, createRouter } from \"vue-router\"; // createWebHashHistory needed for cordova\nimport store from \"@/store/index\";\nimport { STN } from \"@/modules/init_utilities.js\";\n\n// run before each route begins, to prevent and/or redirect where needed based on apply state, url values,\nconst PreRouteChecks = async function (to, from, next) {\n window.setTimeout(async () => {\n // open shop email\n // https://localhost:8085/#/findshops_results_map?eid=yw9PTvHckLU%3d&ProjectType=0\n // https://shopperhub-stage.cxgroup.com/#/findshops_results_map?eid=yw9PTvHckLU%3d&ProjectType=0\n\n // email verification\n // https://localhost:8085/#/myaccount_verifyemail?eid=yw9PTvHckLU%3d&ID=tLevnX9o%2fCZemLqoEqMXZb2yHzm2EqsYjkpsCI6hzSKobbAhqe4%2bWg%3d%3d\n\n // clarification\n // https://localhost:8085/#/myshops_clarification?ID=4131733&eid=yw9PTvHckLU%3d&uid=1\n // https://shopperhub.cxgroup.com/link_myshops_clarification.min.html?ID=4048550&eid=yw9PTvHckLU%3d&uid=1\n // https://shopperhub.cxgroup.com/link_myshops_clarification.min.html?ID=4048550&eid=yw9PTvHckLU%3d&uid=1\n // https://shopperhub.cxgroup.com/link_myshops_clarification.min.html?ID=5116142&eid=RNY8tkN1nk4%3d&uid=1\n // https://localhost:8085/#/myshops_clarification?ID=5116142&eid=RNY8tkN1nk4%3d&uid=1\n\n // bestmark nv manual login\n // https://localhost:8085/#/login?eid=RNY8tkN1nk4%3d&bn=lXpE%2foi%2bvfY%3d&aid=m4%2fW0m17Hbk%3d\n\n // other vendor login\n // https://localhost:8085/#/login?eid=o62b0o%2b%2bdvA%3d (eid is 3967074)\n\n let encryptedEvaluatorID = to.query.eid;\n let encryptedAssignmentID = to.query.aid;\n let bn = to.query.bn;\n\n // perform autoLogin?\n if (!STN.isBlank(encryptedEvaluatorID)) {\n window.setTimeout(async () => {\n let l_oCredentials = {\n type: \"Basic\",\n encryptedEvaluatorID: encryptedEvaluatorID,\n encryptedAssignmentID: encryptedAssignmentID,\n bn: bn,\n remember: \"\",\n }\n \n // login with vuex\n await store.dispatch(\"auth/login\", l_oCredentials).then(\n async (result) => {\n if (await STN.isVendorLogin() == true) {\n if (await FilterVendorLoginAccess(to) == true) {\n // route allowed, proceed\n STN.actionMessageClear();\n next();\n } else {\n // route not allowed, deny / redirect\n STN.redirect({\n name: \"myshops_scheduled\"\n });\n }\n } else if (await STN.isBestmarkNevadaMultishopperLogin() == true) {\n if (!STN.isBlank(result) && !STN.isBlank(result.AssignmentID)) {\n // first site hit from link, redirect\n STN.redirect({\n name: \"findshops_preview\",\n params: {\n assignmentID: result.AssignmentID,\n lastViewedShop: result.AssignmentID,\n callingPage: \"dashboard\",\n pageName: \"findshops_preview\",\n },\n });\n } else {\n if (await FilterBestmarkNevadaMultishopperLoginAccess(to) == true) {\n // route allowed, proceed\n STN.actionMessageClear();\n next();\n } else {\n // route not allowed, deny / redirect\n let error = \"Please try accessing the site again from your email link.\";\n STN.logError(\n \"router.js\",\n \"PreRouteChecks - BestmarkNevadaMultishopperLogin Link Error1: \" + error\n );\n }\n }\n } else {\n let newParams = to.query;\n delete newParams[\"eid\"];\n\n //alert(to.name + \" :: \" + JSON.stringify(newParams));\n\n if (to.name == \"login\") {\n STN.redirect({\n name: \"dashboard\",\n params: newParams\n });\n } else {\n STN.redirect({\n name: to.name,\n params: newParams\n });\n } \n }\n },\n (error) => {\n STN.logError(\n \"router.js\",\n \"PreRouteChecks - Error1: \" + error\n );\n router.replace(\"/login\");\n }\n );\n }, 1000);\n }\n else {\n if (await store.state.auth.status.loggedIn) {\n if (await STN.isVendorLogin() == true) {\n if (await FilterVendorLoginAccess(to) == true) {\n // route allowed, proceed\n STN.actionMessageClear();\n next();\n } else {\n // route not allowed, deny / redirect\n STN.redirect({\n name: \"myshops_scheduled\"\n });\n }\n } else if (await STN.isBestmarkNevadaMultishopperLogin() == true) {\n if (await FilterBestmarkNevadaMultishopperLoginAccess(to) == true) {\n // route allowed, proceed\n STN.actionMessageClear();\n next();\n } else {\n // route not allowed, deny / redirect\n let error = \"Please try accessing the site again from your email link.\";\n STN.logError(\n \"router.js\",\n \"PreRouteChecks - BestmarkNevadaMultishopperLogin Link Error2: \" + error\n );\n }\n } else {\n let l_oInfo = await store.getters.getUser;\n\n if (l_oInfo.EmailAddress.indexOf(\"privaterelay.appleid.com\") != -1 \n && to.name != \"helpdesk\" \n && to.name != \"myaccount_requirenewemail\") // emails contains \"privaterelay.appleid.com\"\n {\n router.replace(\"myaccount_requirenewemail\");\n }\n else if (l_oInfo.ForceChange \n && to.name != \"helpdesk\" \n && to.name != \"myaccount_requirenewemail\"\n && to.name != \"myaccount_changepassword\") {\n router.replace({\n name: \"myaccount_changepassword\",\n params: {\n fc: 1\n }\n });\n }\n else if (l_oInfo.HasUnsignedICA \n && to.name != \"helpdesk\" \n && to.name != \"myaccount_requirenewemail\"\n && to.name != \"myaccount_changepassword\"\n && to.name != \"myaccount_ica_sign\") {\n router.replace(\"myaccount_ica_sign\");\n }\n else if (l_oInfo.HasUnansweredRequiredDemographics \n && to.name != \"helpdesk\" \n && to.name != \"myaccount_requirenewemail\"\n && to.name != \"myaccount_changepassword\"\n && to.name != \"myaccount_ica_sign\"\n && to.name != \"myaccount_extended_required\") {\n router.replace(\"myaccount_extended_required\");\n }\n else if (l_oInfo.HasExpiredDemographics \n && to.name != \"helpdesk\" \n && to.name != \"myaccount_requirenewemail\"\n && to.name != \"myaccount_changepassword\"\n && to.name != \"myaccount_ica_sign\"\n && to.name != \"myaccount_extended_required\"\n && to.name != \"myaccount_extended_refresh\") {\n router.replace(\"myaccount_extended_refresh\");\n }\n else {\n // user logged in, proceed\n STN.actionMessageClear();\n next();\n }\n }\n }\n else {\n window.setTimeout(async () => {\n // to \n //\"fullPath\":\"/login\",\"hash\":\"\",\"query\":{},\"name\":\"login\",\"path\":\"/login\",\"params\":{},\"matched\":[{\"path\":\"/login\",\"name\":\"login\",\"meta\":{},\"props\":{\"default\":false},\"children\":[],\"instances\":{},\"leaveGuards\":{},\"updateGuards\":{},\"enterCallbacks\":{},\"components\":{}}],\"meta\":{},\"href\":\"#/login\"}\n //\n // user tried to access this page but was not logged in, so save it so they may return to it once logged in\n if (!STN.isBlank(to.name) && to.name != \"login\") {\n store.commit('setBackgroundMessagePayloadParams', to.name);\n }\n\n // user not logged in yet, see if rememberme was checked on last login \n let l_oStoredCredentials = JSON.parse(localStorage.getItem(\"RememberMe\"));\n\n if (!STN.isBlank(l_oStoredCredentials)) {\n // login with vuex\n await store.dispatch(\"auth/login\", l_oStoredCredentials).then(\n async (result) => {\n if (await STN.isVendorLogin() == true) {\n if (await FilterVendorLoginAccess(to) == true) {\n // route allowed, proceed\n STN.actionMessageClear();\n next();\n } else {\n // route not allowed, deny / redirect\n STN.redirect({\n name: \"myshops_scheduled\"\n });\n }\n } else if (await STN.isBestmarkNevadaMultishopperLogin() == true) {\n if (!STN.isBlank(result) && !STN.isBlank(result.AssignmentID)) {\n // first site hit from link, redirect\n STN.redirect({\n name: \"findshops_preview\",\n params: {\n assignmentID: result.AssignmentID,\n lastViewedShop: result.AssignmentID,\n callingPage: \"dashboard\",\n pageName: \"findshops_preview\",\n },\n });\n } else {\n if (await FilterBestmarkNevadaMultishopperLoginAccess(to) == true) {\n // route allowed, proceed\n STN.actionMessageClear();\n next();\n } else {\n // route not allowed, deny / redirect\n let error = \"Please try accessing the site again from your email link.\";\n STN.logError(\n \"router.js\",\n \"PreRouteChecks - BestmarkNevadaMultishopperLogin Link Error1: \" + error\n );\n }\n }\n } else {\n STN.redirect({\n name: \"dashboard\"\n });\n }\n },\n (error) => {\n STN.logError(\n \"router.js\",\n \"PreRouteChecks - Error2: \" + error\n );\n router.replace(\"/login\");\n }\n );\n }\n else {\n // remember me not set and not logged in, continue...\n if (to.path != \"/login\" && to.path != \"login\") {\n // prevent loop of death\n router.replace(\"/login\");\n }\n else {\n STN.actionMessageClear();\n next();\n STN.hideProgress();\n window.scroll(0, 0);\n\n // if (STN.isVendorLogin()) {\n\n // } else {\n // STN.actionMessageClear();\n // next();\n // STN.hideProgress();\n // window.scroll(0, 0);\n // }\n }\n }\n }, 1000);\n }\n }\n }, 200);\n};\n\n\nconst FilterVendorLoginAccess = async function (to) {\n if (!STN.isBlank(to) && !STN.isBlank(to.name) && to.name.indexOf(\"error\") == -1\n && to.name.indexOf(\"findshops_certifications\") == -1\n && to.name.indexOf(\"findshops_disclaimer\") == -1\n && to.name.indexOf(\"findshops_preview\") == -1\n && to.name.indexOf(\"gallery_audio\") == -1\n && to.name.indexOf(\"gallery_clarification\") == -1\n && to.name.indexOf(\"gallery_image\") == -1\n && to.name.indexOf(\"gallery_video\") == -1\n && to.name.indexOf(\"maintenance\") == -1\n && to.name.indexOf(\"myshops_attention\") == -1\n && to.name.indexOf(\"myshops_checkin\") == -1\n && to.name.indexOf(\"myshops_clarification\") == -1\n && to.name.indexOf(\"myshops_scheduled\") == -1\n && to.name.indexOf(\"questionnaire\") == -1 // covers all questionnaire pages\n && to.name.indexOf(\"reports_shopinvoice\") == -1) {\n\n // trying to go to a route that is NOT one of the above, deny and redirect \n return false;\n } else {\n // route allowed\n return true;\n }\n};\n\n\nconst FilterBestmarkNevadaMultishopperLoginAccess = async function (to) {\n if (!STN.isBlank(to) && !STN.isBlank(to.name) && to.name.indexOf(\"error\") == -1\n && to.name.indexOf(\"findshops_certifications\") == -1\n && to.name.indexOf(\"findshops_disclaimer\") == -1\n && to.name.indexOf(\"findshops_preview\") == -1\n && to.name.indexOf(\"gallery_audio\") == -1\n && to.name.indexOf(\"gallery_clarification\") == -1\n && to.name.indexOf(\"gallery_image\") == -1\n && to.name.indexOf(\"gallery_video\") == -1\n && to.name.indexOf(\"maintenance\") == -1\n && to.name.indexOf(\"myshops_checkin\") == -1\n && to.name.indexOf(\"myshops_clarification\") == -1\n && to.name.indexOf(\"questionnaire\") == -1 // covers all questionnaire pages\n && to.name.indexOf(\"reports_shopinvoice\") == -1) {\n\n // trying to go to a route that is NOT one of the above, deny and redirect \n return false;\n } else {\n // route allowed\n return true;\n }\n};\n\n\nconst routes = [\n /////////////////////////////// all other (new) routes\n {\n path: \"/\",\n component: () => import(\"@/components/login/Login.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n\n\n {\n name: \"apply\",\n path: \"/apply\",\n component: () => import(\"@/components/apply/Apply.vue\"),\n },\n {\n name: \"apply_continueapplication\",\n path: \"/apply_continueapplication\",\n component: () => import(\"@/components/apply/Apply_ContinueApplication.vue\"),\n },\n {\n name: \"apply_finishapplication\",\n path: \"/apply_finishapplication\",\n component: () => import(\"@/components/apply/Apply_FinishApplication.vue\"),\n },\n {\n name: \"apply_ica\",\n path: \"/apply_ica\",\n component: () => import(\"@/components/apply/Apply_ICA.vue\"),\n },\n\n\n {\n name: \"dashboard\",\n path: \"/dashboard\",\n component: () => import(\"@/components/dashboard/Dashboard.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"dashboard_announcement\",\n path: \"/dashboard_announcement\",\n component: () => import(\"@/components/dashboard/Dashboard_Announcement.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n\n\n {\n name: \"login\",\n path: \"/login\",\n component: () => import(\"@/components/login/Login.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n\n\n {\n name: \"error\",\n path: \"/error\",\n component: () => import(\"@/components/error/Error.vue\"),\n },\n {\n name: \"error_other\",\n path: \"/error_other\",\n component: () => import(\"@/components/error/Error_Other.vue\"),\n },\n {\n name: \"error_restricted\",\n path: \"/error_restricted\",\n component: () => import(\"@/components/error/Error_Restricted.vue\"),\n },\n\n\n {\n name: \"findshops_certifications\",\n path: \"/findshops_certifications\",\n component: () => import(\"@/components/findshops/FindShops_Certifications.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"findshops_disclaimer\",\n path: \"/findshops_disclaimer\",\n component: () => import(\"@/components/findshops/FindShops_Disclaimer.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"findshops_feedback\",\n path: \"/findshops_feedback\",\n component: () => import(\"@/components/findshops/FindShops_Feedback.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"findshops_preview\",\n path: \"/findshops_preview\",\n component: () => import(\"@/components/findshops/FindShops_Preview.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"findshops_previewshop\",\n path: \"/findshops_previewshop\",\n component: () => import(\"@/components/findshops/FindShops_PreviewShop.vue\"),\n },\n {\n name: \"findshops_results_list\",\n path: \"/findshops_results_list\",\n component: () => import(\"@/components/findshops/FindShops_Results_List.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"findshops_results_listonly\",\n path: \"/findshops_results_listonly\",\n component: () => import(\"@/components/findshops/FindShops_Results_ListOnly.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"findshops_results_map\",\n path: \"/findshops_results_map\",\n component: () => import(\"@/components/findshops/FindShops_Results_Map.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"findshops_search_list\",\n path: \"/findshops_search_list\",\n component: () => import(\"@/components/findshops/FindShops_Search_List.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"findshops_search_map\",\n path: \"/findshops_search_map\",\n component: () => import(\"@/components/findshops/FindShops_Search_Map.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n\n\n {\n name: \"gallery_audio\",\n path: \"/gallery_audio\",\n component: () => import(\"@/components/gallery_audio/Gallery_Audio.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"gallery_audio_upload\",\n path: \"/gallery_audio_upload\",\n component: () => import(\"@/components/gallery_audio/Gallery_Audio_Upload.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"gallery_audio_view\",\n path: \"/gallery_audio_view\",\n component: () => import(\"@/components/gallery_audio/Gallery_Audio_View.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"gallery_clarification\",\n path: \"/gallery_clarification\",\n component: () => import(\"@/components/gallery_clarification/Gallery_Clarification.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"gallery_clarification_edit\",\n path: \"/gallery_clarification_edit\",\n component: () => import(\"@/components/gallery_clarification/Gallery_Clarification_Edit.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"gallery_clarification_upload\",\n path: \"/gallery_clarification_upload\",\n component: () => import(\"@/components/gallery_clarification/Gallery_Clarification_Upload.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"gallery_clarification_view\",\n path: \"/gallery_clarification_view\",\n component: () => import(\"@/components/gallery_clarification/Gallery_Clarification_View.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"gallery_ein\",\n path: \"/gallery_ein\",\n component: () => import(\"@/components/gallery_ein/Gallery_EIN.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"gallery_ein_edit\",\n path: \"/gallery_ein_edit\",\n component: () => import(\"@/components/gallery_ein/Gallery_EIN_Edit.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"gallery_ein_upload\",\n path: \"/gallery_ein_upload\",\n component: () => import(\"@/components/gallery_ein/Gallery_EIN_Upload.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"gallery_image\",\n path: \"/gallery_image\",\n component: () => import(\"@/components/gallery_image/Gallery_Image.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"gallery_image_edit\",\n path: \"/gallery_image_edit\",\n component: () => import(\"@/components/gallery_image/Gallery_Image_Edit.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"gallery_image_upload\",\n path: \"/gallery_image_upload\",\n component: () => import(\"@/components/gallery_image/Gallery_Image_Upload.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"gallery_image_view\",\n path: \"/gallery_image_view\",\n component: () => import(\"@/components/gallery_image/Gallery_Image_View.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"gallery_photoid\",\n path: \"/gallery_photoid\",\n component: () => import(\"@/components/gallery_photoid/Gallery_PhotoID.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"gallery_photoid_upload\",\n path: \"/gallery_photoid_upload\",\n component: () => import(\"@/components/gallery_photoid/Gallery_PhotoID_Upload.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"gallery_profilephoto\",\n path: \"/gallery_profilephoto\",\n component: () => import(\"@/components/gallery_profilephoto/Gallery_ProfilePhoto.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"gallery_profilephoto_edit\",\n path: \"/gallery_profilephoto_edit\",\n component: () => import(\"@/components/gallery_profilephoto/Gallery_ProfilePhoto_Edit.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"gallery_profilephoto_upload\",\n path: \"/gallery_profilephoto_upload\",\n component: () => import(\"@/components/gallery_profilephoto/Gallery_ProfilePhoto_Upload.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"gallery_video\",\n path: \"/gallery_video\",\n component: () => import(\"@/components/gallery_video/Gallery_Video.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"gallery_video_upload\",\n path: \"/gallery_video_upload\",\n component: () => import(\"@/components/gallery_video/Gallery_Video_Upload.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"gallery_video_view\",\n path: \"/gallery_video_view\",\n component: () => import(\"@/components/gallery_video/Gallery_Video_View.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n\n\n {\n name: \"helpdesk\",\n path: \"/helpdesk\",\n component: () => import(\"@/components/helpdesk/HelpDesk.vue\"),\n // beforeEnter: (to, from, next) => {\n // CheckRootOrJailbreak(next);\n // },\n },\n {\n name: \"helpdesk_faq\",\n path: \"/helpdesk_faq\",\n component: () => import(\"@/components/helpdesk/Help_FAQ.vue\"),\n // beforeEnter: (to, from, next) => {\n // PreRouteChecks(next);\n // },\n },\n\n\n {\n name: \"messages\",\n path: \"/messages\",\n component: () => import(\"@/components/messages/Messages.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n\n\n {\n name: \"maintenance\",\n path: \"/maintenance\",\n component: () => import(\"@/components/maintenance/Maintenance.vue\"),\n },\n\n \n {\n name: \"myaccount_changeemail\",\n path: \"/myaccount_changeemail\",\n component: () => import(\"@/components/myaccount/MyAccount_ChangeEmail.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myaccount_changepassword\",\n path: \"/myaccount_changepassword\",\n component: () => import(\"@/components/myaccount/MyAccount_ChangePassword.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myaccount_deactivate\",\n path: \"/myaccount_deactivate\",\n component: () => import(\"@/components/myaccount/MyAccount_Deactivate.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myaccount_extended\",\n path: \"/myaccount_extended\",\n component: () => import(\"@/components/myaccount/MyAccount_Extended.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myaccount_extended_required\",\n path: \"/myaccount_extended_required\",\n component: () => import(\"@/components/myaccount/MyAccount_Extended_Required.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myaccount_extended_refresh\",\n path: \"/myaccount_extended_refresh\",\n component: () => import(\"@/components/myaccount/MyAccount_Extended_Refresh.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myaccount_general\",\n path: \"/myaccount_general\",\n component: () => import(\"@/components/myaccount/MyAccount_General.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myaccount_ica_sign\",\n path: \"/myaccount_ica_sign\",\n component: () => import(\"@/components/myaccount/MyAccount_ICA_Sign.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myaccount_ica_view\",\n path: \"/myaccount_ica_view\",\n component: () => import(\"@/components/myaccount/MyAccount_ICA_View.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myaccount_myranking\",\n path: \"/myaccount_myranking\",\n component: () => import(\"@/components/myaccount/MyAccount_MyRanking.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myaccount_notificationsettings\",\n path: \"/myaccount_notificationsettings\",\n component: () => import(\"@/components/myaccount/MyAccount_NotificationSettings.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myaccount_payment\",\n path: \"/myaccount_payment\",\n component: () => import(\"@/components/myaccount/MyAccount_Payment.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myaccount_payment_add\",\n path: \"/myaccount_payment_add\",\n component: () => import(\"@/components/myaccount/MyAccount_Payment_Add.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myaccount_payment_edit_directdeposit\",\n path: \"/myaccount_payment_edit_directdeposit\",\n component: () => import(\"@/components/myaccount/MyAccount_Payment_Edit_DirectDeposit.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myaccount_payment_edit_paypal\",\n path: \"/myaccount_payment_edit_paypal\",\n component: () => import(\"@/components/myaccount/MyAccount_Payment_Edit_Paypal.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myaccount_payment_setdefault\",\n path: \"/myaccount_payment_setdefault\",\n component: () => import(\"@/components/myaccount/MyAccount_Payment_SetDefault.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myaccount_photoid\",\n path: \"/myaccount_photoid\",\n component: () => import(\"@/components/myaccount/MyAccount_PhotoID.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myaccount_requirenewemail\",\n path: \"/myaccount_requirenewemail\",\n component: () => import(\"@/components/myaccount/MyAccount_RequireNewEmail.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myaccount_retrievepassword\",\n path: \"/myaccount_retrievepassword\",\n component: () => import(\"@/components/myaccount/MyAccount_RetrievePassword.vue\"),\n },\n {\n name: \"myaccount_tax\",\n path: \"/myaccount_tax\",\n component: () => import(\"@/components/myaccount/MyAccount_Tax.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myaccount_verifyemail\",\n path: \"/myaccount_verifyemail\",\n component: () => import(\"@/components/myaccount/MyAccount_VerifyEmail.vue\"),\n // beforeEnter: (to, from, next) => {\n // PreRouteChecks(to, from, next);\n // },\n },\n\n\n {\n name: \"myshops_attention\",\n path: \"/myshops_attention\",\n component: () => import(\"@/components/myshops/MyShops_Attention.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myshops_changeshopdate\",\n path: \"/myshops_changeshopdate\",\n component: () => import(\"@/components/myshops/MyShops_ChangeShopDate.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myshops_checkin\",\n path: \"/myshops_checkin\",\n component: () => import(\"@/components/myshops/MyShops_CheckIn.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myshops_checkininfo\",\n path: \"/myshops_checkininfo\",\n component: () => import(\"@/components/myshops/MyShops_CheckInInfo.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myshops_clarification\",\n path: \"/myshops_clarification\",\n component: () => import(\"@/components/myshops/MyShops_Clarification.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myshops_inprocess\",\n path: \"/myshops_inprocess\",\n component: () => import(\"@/components/myshops/MyShops_Inprocess.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myshops_paymentspending\",\n path: \"/myshops_paymentspending\",\n component: () => import(\"@/components/myshops/MyShops_PaymentsPending.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myshops_rejected\",\n path: \"/myshops_rejected\",\n component: () => import(\"@/components/myshops/MyShops_Rejected.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myshops_requested\",\n path: \"/myshops_requested\",\n component: () => import(\"@/components/myshops/MyShops_Requested.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"myshops_scheduled\",\n path: \"/myshops_scheduled\",\n component: () => import(\"@/components/myshops/MyShops_Scheduled.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n\n\n {\n name: \"propertyquestion_reimbursement\",\n path: \"/propertyquestion_reimbursement\",\n component: () => import(\"@/components/questionnaire/propertyquestions/PropertyQuestion_Reimbursement.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"propertyquestion_shoptimes\",\n path: \"/propertyquestion_shoptimes\",\n component: () => import(\"@/components/questionnaire/propertyquestions/PropertyQuestion_ShopTimes.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"questionnaire\",\n path: \"/questionnaire\",\n component: () => import(\"@/components/questionnaire/Questionnaire.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"questionnaire_header\",\n path: \"/questionnaire_header\",\n component: () => import(\"@/components/questionnaire/Questionnaire_Header.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"questionnaire_shopinvoice\",\n path: \"/questionnaire_shopinvoice\",\n component: () => import(\"@/components/questionnaire/Questionnaire_Shopinvoice.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n \n {\n name: \"referral\",\n path: \"/referral\",\n component: () => import(\"@/components/referral/Referral.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"referral_email\",\n path: \"/referral_email\",\n component: () => import(\"@/components/referral/Referral_Email.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"referral_email_location\",\n path: \"/referral_email_location\",\n component: () => import(\"@/components/referral/Referral_Email_Location.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"referral_search\",\n path: \"/referral_search\",\n component: () => import(\"@/components/referral/Referral_Search.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"referral_status\",\n path: \"/referral_status\",\n component: () => import(\"@/components/referral/Referral_Status.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n \n\n {\n name: \"reports_1099\",\n path: \"/reports_1099\",\n component: () => import(\"@/components/reports/Reports_1099.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"reports_paymenthistory\",\n path: \"/reports_paymenthistory\",\n component: () => import(\"@/components/reports/Reports_PaymentHistory.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"reports_paymentspending\",\n path: \"/reports_paymentspending\",\n component: () => import(\"@/components/reports/Reports_PaymentsPending.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n {\n name: \"reports_shopinvoice\",\n path: \"/reports_shopinvoice\",\n component: () => import(\"@/components/reports/Reports_Shopinvoice.vue\"),\n beforeEnter: (to, from, next) => {\n PreRouteChecks(to, from, next);\n },\n },\n];\n\n\nconst router = createRouter({\n history: createWebHashHistory(),\n mode: 'hash',\n routes,\n});\n\n\nrouter.afterEach(() => {\n STN.hideProgress();\n});\n\n\nrouter.beforeEach(() => {\n STN.showProgress();\n // store.commit('setIsShopsNavOpen', false);\n // store.commit('setIsAccountNavOpen', false);\n // store.commit('setIsHelpNavOpen', false);\n});\n\n\nexport default router;\n","export const firebaseConfig = {\r\n apiKey: \"AIzaSyDjRbyN95sGTZJtjYVd2z_IO3T6gUyCaUc\",\r\n authDomain: \"second-to-none-d28ad.firebaseapp.com\",\r\n projectId: \"second-to-none-d28ad\",\r\n storageBucket: \"second-to-none-d28ad.appspot.com\",\r\n messagingSenderId: \"625900627114\",\r\n appId: \"1:625900627114:web:046ddf06c477a9466e9cd3\",\r\n measurementId: \"G-8V68FMEHGC\"\r\n };","import { initializeApp } from \"firebase/app\";\r\nimport { firebaseConfig } from '../firebase-config'\r\nimport { register } from \"register-service-worker\"\r\n\r\nexport function initFirebaseSdk() {\r\n return new Promise(resolve => {\r\n initializeApp(firebaseConfig); \r\n\r\n register(\"../firebase-messaging-sw.js\", {\r\n ready() {\r\n console.log(\"Service worker is active.\");\r\n },\r\n registered() {\r\n console.log(\"Service worker has been registered.\");\r\n },\r\n cached() {\r\n console.log(\"Content has been cached for offline use.\");\r\n },\r\n updatefound() {\r\n console.log(\"New content is downloading.\");\r\n },\r\n updated() {\r\n console.log(\"New content is available; please refresh.\");\r\n },\r\n offline() {\r\n console.log(\"No internet connection found. App is running in offline mode.\");\r\n },\r\n error(error) {\r\n console.error(\"Error during service worker registration:\", error);\r\n },\r\n })\r\n\r\n resolve();\r\n });\r\n}","export function initFacebookSdk() {\r\n // load facebook sdk script\r\n (function (d, s, id) {\r\n var js, fjs = d.getElementsByTagName(s)[0];\r\n if (d.getElementById(id)) { return; }\r\n js = d.createElement(s); js.id = id;\r\n js.src = \"https://connect.facebook.net/en_US/sdk.js\";\r\n fjs.parentNode.insertBefore(js, fjs);\r\n }(document, 'script', 'facebook-jssdk')); \r\n\r\n return new Promise(resolve => {\r\n // wait for facebook sdk to initialize before starting the vue app\r\n window.fbAsyncInit = function () {\r\n FB.init({ // eslint-disable-line no-undef\r\n appId: '1718590075084121',\r\n cookie: true,\r\n xfbml: true,\r\n version: 'v12.0',\r\n //status: true,\r\n scope: 'email' // Make sure 'email' scope is included\r\n });\r\n\r\n resolve();\r\n };\r\n });\r\n}","import { createApp } from \"vue\";\nimport app from \"./App.vue\";\nimport router from \"./router\";\nimport store from \"./store\";\nimport 'sweetalert2/dist/sweetalert2.min.css';\nimport { STN } from \"@/modules/init_utilities.js\";\nimport { initFirebaseSdk } from \"@/modules/init_firebase.js\";\nimport { initFacebookSdk } from \"@/modules/init_facebook.js\";\n\n// wait for firebase sdk \ninitFirebaseSdk().then(() => {\n // wait for facebook sdk \n initFacebookSdk().then(() => {\n const App = createApp(app);\n\n // global error handler\n App.config.errorHandler = function (err, vm, info) {\n // handle error\n // `info` is a Vue-specific error info, e.g. which lifecycle hook\n // the error was found in. Only available in 2.2.0+\n STN.logError(\"main.js\", \"errorHandler: \\nerr:\" + err + \"\\nvm:\" + vm + \"\\ninfo:\" + info);\n //alert( \"errorHandler: \\nerr:\" + err + \"\\nvm:\" + vm + \"\\ninfo:\" + info);\n };\n\n // global error handler\n window.onerror = function (msg, url, line, col, error) {\n STN.logError(\"main.js\", \"window.onerror: \\nmsg:\" + msg + \"\\nurl:\" + url + \"\\nline:\" + line + \"\\ncol:\" + col + \"\\nerror:\" + error);\n //alert(\"window.onerror: \\nmsg:\" + msg + \"\\nurl:\" + url + \"\\nline:\" + line + \"\\ncol:\" + col + \"\\nerror:\" + error);\n };\n\n // global error handler\n window.addEventListener('unhandledrejection', function(event) {\n //event.promise contains the promise object\n //event.reason contains the reason for the rejection\n STN.logError(\"main.js\", \"unhandledrejection: \\n\" + event.reason);\n //alert(\"unhandledrejection: \\n\" + event.reason);\n });\n\n App\n .use(router)\n .use(store)\n .provide(\"STN\", App.config.globalProperties.STN = STN) // eliminates need for inject: [\"STN\"] in components\n .mount('#app');\n\n // Listen for messages from service worker\n navigator.serviceWorker.addEventListener('message', event => {\n if (event.data && event.data.type === 'navigate') {\n window.location.href = event.data.url;\n window.focus();\n }\n });\n });\n});\n\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"js/\" + chunkId + \".\" + {\"213\":\"17224ba1\",\"321\":\"66f38551\",\"548\":\"34582d13\",\"549\":\"89e02210\",\"705\":\"499532ec\",\"778\":\"14418d53\",\"803\":\"f4dc7f4c\",\"1166\":\"cbf5ded0\",\"1240\":\"c6ddf789\",\"1260\":\"145d9e22\",\"1451\":\"f09a1aaf\",\"1488\":\"c8244f46\",\"1539\":\"0f69cf9d\",\"2080\":\"d1b7b31a\",\"2162\":\"4ebfca95\",\"2274\":\"4c267b85\",\"2470\":\"e4019e32\",\"2608\":\"e94c0661\",\"2642\":\"abb214d6\",\"2695\":\"02dccbfa\",\"2776\":\"8ae3caac\",\"2886\":\"2bde3ad0\",\"3006\":\"aa9528ca\",\"3131\":\"5bcd14f9\",\"3152\":\"fd2e1a99\",\"3156\":\"ba4d1634\",\"3212\":\"0ed39b0c\",\"3288\":\"69aae9b2\",\"3373\":\"b9181551\",\"3389\":\"c6f77819\",\"3606\":\"42f7f596\",\"3611\":\"6f055dd4\",\"3638\":\"4a58faaa\",\"3751\":\"d87407f2\",\"3795\":\"e1977c8f\",\"3819\":\"683fdb84\",\"3843\":\"0c3569cb\",\"3898\":\"05ca5a50\",\"4218\":\"64b900b2\",\"4412\":\"33049d5c\",\"4548\":\"e7759378\",\"4567\":\"117b7bae\",\"4602\":\"7e060542\",\"4636\":\"9b18f661\",\"4714\":\"afca40f1\",\"5010\":\"7a310555\",\"5022\":\"03823ad1\",\"5175\":\"bebfb284\",\"5247\":\"88a2e0b5\",\"5319\":\"a94cc423\",\"5545\":\"5af758db\",\"5613\":\"b9511c7b\",\"5896\":\"b5103252\",\"5990\":\"c3464b7d\",\"6015\":\"cde4d26a\",\"6166\":\"d5fa8a5a\",\"6248\":\"f7c71b35\",\"6353\":\"4c397cf1\",\"6458\":\"70f81718\",\"6459\":\"989d8c2b\",\"6465\":\"66243f11\",\"6627\":\"acaf91d8\",\"6657\":\"825e1889\",\"6787\":\"13a4d567\",\"6836\":\"a35e828c\",\"6945\":\"83b213dd\",\"7036\":\"a82aae26\",\"7157\":\"5acfc158\",\"7302\":\"cf724576\",\"7652\":\"fc7ac62c\",\"7935\":\"a8bf348a\",\"7983\":\"8ebc090c\",\"8316\":\"ffd915d4\",\"8328\":\"b14b5640\",\"8437\":\"bb3e7016\",\"8463\":\"b146df8e\",\"8485\":\"4dbe4d33\",\"8498\":\"d25ddbd2\",\"8502\":\"a899166d\",\"8797\":\"65b0686b\",\"8921\":\"06515019\",\"8965\":\"0792ef2a\",\"9045\":\"b79220bf\",\"9239\":\"795dd4a3\",\"9325\":\"4e63baeb\",\"9339\":\"f746167f\",\"9344\":\"4c68e898\",\"9531\":\"7cbf888c\",\"9664\":\"733ad642\",\"9666\":\"811e8fde\",\"9718\":\"c64f1170\",\"9725\":\"fbbe8f48\",\"9913\":\"5466e76e\",\"9980\":\"90a87345\"}[chunkId] + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"css/\" + chunkId + \".\" + {\"213\":\"74551307\",\"321\":\"9339a11b\",\"1166\":\"6d1ca4b5\",\"1240\":\"6d1ca4b5\",\"1539\":\"5eb9343e\",\"3006\":\"74551307\",\"3131\":\"74551307\",\"3212\":\"74551307\",\"3611\":\"74551307\",\"3638\":\"74551307\",\"3795\":\"74551307\",\"3898\":\"74551307\",\"4218\":\"926d27d9\",\"4412\":\"74551307\",\"4567\":\"458a0851\",\"4602\":\"74551307\",\"4714\":\"74551307\",\"5319\":\"74551307\",\"5896\":\"74551307\",\"6353\":\"74551307\",\"6627\":\"74551307\",\"6657\":\"766929f2\",\"8328\":\"74551307\",\"8437\":\"74551307\",\"8485\":\"5eb9343e\",\"8498\":\"74551307\",\"8502\":\"74551307\",\"8921\":\"74551307\",\"9325\":\"6d1ca4b5\"}[chunkId] + \".css\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"vue-3-authentication-jwt:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.p = \"https://shopperhub.cxgroup.com/\";","if (typeof document === \"undefined\") return;\nvar createStylesheet = function(chunkId, fullhref, oldTag, resolve, reject) {\n\tvar linkTag = document.createElement(\"link\");\n\n\tlinkTag.rel = \"stylesheet\";\n\tlinkTag.type = \"text/css\";\n\tvar onLinkComplete = function(event) {\n\t\t// avoid mem leaks.\n\t\tlinkTag.onerror = linkTag.onload = null;\n\t\tif (event.type === 'load') {\n\t\t\tresolve();\n\t\t} else {\n\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\tvar realHref = event && event.target && event.target.href || fullhref;\n\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + realHref + \")\");\n\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n\t\t\terr.type = errorType;\n\t\t\terr.request = realHref;\n\t\t\tif (linkTag.parentNode) linkTag.parentNode.removeChild(linkTag)\n\t\t\treject(err);\n\t\t}\n\t}\n\tlinkTag.onerror = linkTag.onload = onLinkComplete;\n\tlinkTag.href = fullhref;\n\n\tif (oldTag) {\n\t\toldTag.parentNode.insertBefore(linkTag, oldTag.nextSibling);\n\t} else {\n\t\tdocument.head.appendChild(linkTag);\n\t}\n\treturn linkTag;\n};\nvar findStylesheet = function(href, fullhref) {\n\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n\tfor(var i = 0; i < existingLinkTags.length; i++) {\n\t\tvar tag = existingLinkTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return tag;\n\t}\n\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n\tfor(var i = 0; i < existingStyleTags.length; i++) {\n\t\tvar tag = existingStyleTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\");\n\t\tif(dataHref === href || dataHref === fullhref) return tag;\n\t}\n};\nvar loadStylesheet = function(chunkId) {\n\treturn new Promise(function(resolve, reject) {\n\t\tvar href = __webpack_require__.miniCssF(chunkId);\n\t\tvar fullhref = __webpack_require__.p + href;\n\t\tif(findStylesheet(href, fullhref)) return resolve();\n\t\tcreateStylesheet(chunkId, fullhref, null, resolve, reject);\n\t});\n}\n// object to store loaded CSS chunks\nvar installedCssChunks = {\n\t2143: 0\n};\n\n__webpack_require__.f.miniCss = function(chunkId, promises) {\n\tvar cssChunks = {\"213\":1,\"321\":1,\"1166\":1,\"1240\":1,\"1539\":1,\"3006\":1,\"3131\":1,\"3212\":1,\"3611\":1,\"3638\":1,\"3795\":1,\"3898\":1,\"4218\":1,\"4412\":1,\"4567\":1,\"4602\":1,\"4714\":1,\"5319\":1,\"5896\":1,\"6353\":1,\"6627\":1,\"6657\":1,\"8328\":1,\"8437\":1,\"8485\":1,\"8498\":1,\"8502\":1,\"8921\":1,\"9325\":1};\n\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n\t\tpromises.push(installedCssChunks[chunkId] = loadStylesheet(chunkId).then(function() {\n\t\t\tinstalledCssChunks[chunkId] = 0;\n\t\t}, function(e) {\n\t\t\tdelete installedCssChunks[chunkId];\n\t\t\tthrow e;\n\t\t}));\n\t}\n};\n\n// no hmr","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t2143: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkvue_3_authentication_jwt\"] = self[\"webpackChunkvue_3_authentication_jwt\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [4998], function() { return __webpack_require__(5812); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["class","id","_createVNode","_component_Layout_Header","_createElementVNode","_hoisted_1","_hoisted_2","_hoisted_3","_component_router_view","_component_Layout_Footer","_component_Layout_MobileSnackbar","init_fontawesome","document","querySelector","scriptA","createElement","async","defer","src","appendChild","_imports_0","_imports_1","_imports_2","_imports_3","style","srcset","alt","_hoisted_6","_hoisted_16","_hoisted_19","_hoisted_21","_hoisted_37","_hoisted_4","_hoisted_5","onClick","_cache","$event","$options","goDashboard","isLoggedIn","_createElementBlock","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_ctx","STN","redirect","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_15","args","toggleShopsNav","_hoisted_18","goMessages","toggleAccountNav","toggleHelpNav","goLogOff","_hoisted_23","_hoisted_24","_hoisted_25","_hoisted_26","goFindShops","goSubmitShops","isShopsNavOpen","_hoisted_27","_hoisted_28","_hoisted_29","_hoisted_30","goMyAccount","goMyAccountExtended","goMyAccountPayment","goMyAccountTax","goMyAccountPhotoID","goMyAccountChangePassword","isOauthUser","goMyAccountNotificationSettings","goMyAccountDeactivate","isAccountNavOpen","_hoisted_31","_hoisted_32","_hoisted_33","_hoisted_34","goHelp","goHelpFAQ","goHelpShopperGuide","isHelpNavOpen","_hoisted_35","_hoisted_36","openMobileNav","isMobileNavOpen","closeMobileNav","_hoisted_39","_hoisted_40","_hoisted_41","_hoisted_42","_hoisted_43","_hoisted_44","_hoisted_45","_hoisted_46","_hoisted_47","_hoisted_48","_hoisted_49","_hoisted_50","_hoisted_51","_hoisted_52","_hoisted_53","_hoisted_54","_hoisted_55","_hoisted_56","_hoisted_57","_hoisted_58","_toDisplayString","$store","getters","getPageTitle","_normalizeStyle","createRowStyle","innerHTML","alertMessage","name","data","computed","this","isBlank","padding","state","auth","status","loggedIn","l_oUserData","getUser","LoginSource","methods","getAlerts","isVendorLogin","MaintenanceWarnOrLogoff","HasReportsInError","GeneralMessage","commit","closeAllNavDropdowns","goAlerts","p_bIsMobile","window","open","dispatch","updated","__exports__","script","$data","isiOS","isAndroid","closeSnackbar","href","init","detectMobile","then","l_bShouldShowSnackbar","getShowMobileSnackbar","isMobile","_os","getMobileOperatingSystem","catch","error","console","Promise","resolve","reject","xmlhttp","XMLHttpRequest","key","ua","navigator","userAgent","url","onreadystatechange","readyState","match","JSON","parse","responseText","Values","IsTablet","IsMobile","Error","send","e","vendor","opera","test","MSStream","mounted","components","Layout_Footer","Layout_Header","Layout_MobileSnackbar","beforeMount","render","API_URL","BASE_URL","IMAGECONVERTER_URL","AVUPLOADHANDLER_URL","_minutesBetweenCommonDataRefresh","_minutesBetweenShopDataRefresh","_debug","_actionMessageTimerID","_lastRedirectModel","actionMessageShow","p_sMessage","p_iTimeoutSeconds","clearTimeout","l_oMsgDiv","getElementById","visibility","display","scroll","getPosition","hideProgress","setTimeout","actionMessageShowOAuth","p_sID","actionMessageClear","stnFetch","p_sCallingPage","p_sCallingFunction","p_sMethod","p_sController","p_oData","p_bGetFirstResultOnly","showProgress","l_sURL","connectionMessageClear","l_oMaintenanceModeRequest","Request","method","mode","cache","fetch","t_oMaintenanceModeResponse","ok","json","logError","l_oMaintenanceModeResponseModel","responseModel","l_oMaintenanceModeResult","getStatus","l_sStatus","getModel","Status","headers","Headers","append","store","getAuthHeader","l_oMainRequest","body","stringify","t_oMainResponse","l_oMainResponseModel","l_oMainResult","getMessage","router","replace","l_oRetModel","Message","p_sMRError","p_sMMError","checkPasswordPolicy","p_sPassword","length","getApplyData","l_oApplyData","getApplicant","EmailAddress","EncryptedReferrerID","ReferralLocationID","OauthType","OauthID","UserName","Password","FirstName","LastName","BirthDate","StreetAddress1","StreetAddress2","City","State","Country","ZipCode","HomePhone","Referrer","ServerTime","getAVUploadHandlerURL","GetBaseURL","getBase64StringFromDataURL","dataURL","getCommonPageData","l_oData","EvaluatorID","Username","Address","NeedsToEnterSSN","HasNewMessages","ServerDate","ForceChange","CurrentMobileAndroidVersions","CurrentMobileiOSVersions","APIMaintenanceMode","HasUnansweredRequiredDemographics","HasExpiredDemographics","HasUnsignedICA","ProfilePhoto","InvalidEmail","ForumUsername","FindShopsSearchType","TimeStamp","Date","l_iDiffOfLastRefresh","p_bForceRefresh","l_oDate","getMinutesBetweenDates","TimeInMinutesToRefreshCommonPageData","TimeInMinutesToRefreshShopData","getCachedShopData","l_oExistingShopData","getShopDataFromCache","timeStamp","l_oNewShopData","l_oNewStateModel","getEvaluatorBasicInfo","getEvaluatorID","getLoginSource","p_oStartDate","p_oEndDate","l_oDiff","getTime","el","rect","getBoundingClientRect","l_iTop","top","scrollY","left","scrollX","getUploadHandlerURL","getWarningCount","l_iCount","substr","l_oEvaluatorID","isBestmarkNevadaMultishopperLogin","p_oVar","constructor","Object","prop","hasOwnProperty","undefined","isDate","p_sValue","isEmail","isNumeric","numNum","isNaN","p_sErrorSource","p_sErrorText","p_bLogout","p_bRedirect","p_sErrorCode","l_sErrorCode","indexOf","l_oDataModel","ErrorSource","ErrorText","l_oLogErrorRequest","t_oLogErrorResponse","t_oLogErrorResult","params","errorCode","errorThrown","response","_err","swal","text","confirmButtonColor","confirmButtonText","allowOutsideClick","onMounted","openGuidelines","p_sUrl","title","showCancelButton","cancelButtonColor","cancelButtonText","result","value","decodeURI","l_oRedirectModel","p_oRouteData","push","redirectBack","l_sMessage","l_oModel","l_bIsEmpty","isModelEmpty","setValues","p_oModel","Model","keys","p_oModelJSON","setPersonAttribute","p_sAttributeTypeID","p_sAttributeData","AttributeTypeID","AttributeData","stateList_US","stateList_CA","radiusList","countryList","initialState","user","inject","namespaced","actions","login","p_oCredentials","l_oResult","getAutoLoginResult","EncryptedEvaluatorID","encryptedEvaluatorID","getAutoLoginResultBestmarkResult","EncryptedAssignmentID","encryptedAssignmentID","getLoginResult","btoa","username","password","getOAuthLoginResult","type","authID","bn","Active","Token","l_oGetCommonPageDataResult","fc","remember","localStorage","setItem","getItem","Notification","requestPermission","permission","log","messaging","getMessaging","getToken","vapidKey","currentToken","onMessage","payload","jsonObject","err","_gaoh","getGigspotAssignmentOnHold","l_oBackgroundMessagePayloadParams","getBackgroundMessagePayloadParams","assignmentID","callingPage","pageName","logout","getLogoutResult","mutations","loginSuccess","forumAuthHeader","shopSearchResults","shopsNearMeResults","authHeader","createStore","modules","routeParams","pageTitle","cachedShopData","applicant","backgroundMessagePayloadParams","currentQuestionnaireAnswers","currentAssignmentID","showMobileSnackbar","gigspotAssignmentOnHold","isBestmarkManualLogin","getRouteParams","getCurrentAssignmentID","getForumAuthHeader","getIsBestmarkManualLogin","getShopSearchResults","getShopsNearMeResults","getCurrentQuestionnaireAnswers","setRouteParams","in_params","setIsShopsNavOpen","in_truefalse","setIsAccountNavOpen","setIsHelpNavOpen","setIsMobileNavOpen","toggleMobileNav","setApplicant","in_applicant","setCurrentAssignmentID","in_currentAssignmentID","setAuthHeader","in_authHeader","setUser","in_user","setPageTitle","in_pageTitle","setShowMobileSnackbar","in_show","setBackgroundMessagePayloadParams","in_payloadParams","setGigspotAssignmentOnHold","in_gigspotAssignmentOnHold","setIsBestmarkManualLogin","in_isBestmarkManualLogin","setShopSearchResults","in_shopSearchResults","setShopDataToCache","in_shopData","setShopsNearMeResults","in_shopsNearMeResults","setCurrentQuestionnaireAnswers","in_currentQuestionnaireAnswers","PreRouteChecks","to","from","next","query","eid","aid","FilterVendorLoginAccess","FilterBestmarkNevadaMultishopperLoginAccess","l_oInfo","l_oStoredCredentials","path","AssignmentID","lastViewedShop","l_oCredentials","newParams","routes","component","beforeEnter","createRouter","history","createWebHashHistory","afterEach","beforeEach","firebaseConfig","apiKey","authDomain","projectId","storageBucket","messagingSenderId","appId","measurementId","initFirebaseSdk","initializeApp","register","ready","registered","cached","updatefound","offline","initFacebookSdk","d","s","js","fjs","getElementsByTagName","parentNode","insertBefore","fbAsyncInit","FB","cookie","xfbml","version","scope","App","createApp","app","config","errorHandler","vm","info","onerror","msg","line","col","addEventListener","event","reason","use","provide","globalProperties","mount","serviceWorker","location","focus","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","module","__webpack_modules__","call","m","deferred","O","chunkIds","fn","priority","notFulfilled","Infinity","i","fulfilled","j","every","splice","r","n","getter","__esModule","a","definition","o","defineProperty","enumerable","get","f","chunkId","all","reduce","promises","u","miniCssF","g","globalThis","Function","obj","prototype","inProgress","dataWebpackPrefix","l","done","needAttach","scripts","getAttribute","charset","timeout","nc","setAttribute","onScriptComplete","prev","onload","doneFns","removeChild","forEach","bind","target","head","Symbol","toStringTag","p","createStylesheet","fullhref","oldTag","linkTag","rel","onLinkComplete","errorType","realHref","code","request","nextSibling","findStylesheet","existingLinkTags","tag","dataHref","existingStyleTags","loadStylesheet","installedCssChunks","miniCss","cssChunks","installedChunks","installedChunkData","promise","loadingEnded","realSrc","message","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","self","__webpack_exports__"],"sourceRoot":""}