{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/errorTags.js","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./src/router/index.js","webpack:///./src/store/_user.js","webpack:///./src/store/_account.js","webpack:///./src/store/_promotion.js","webpack:///./src/store/_report.js","webpack:///./src/locales/en/_ui.js","webpack:///./src/locales/en/_error.js","webpack:///./src/locales/en/_language.js","webpack:///./src/locales/en/_message.js","webpack:///./src/locales/en/index.js","webpack:///./src/locales/zh/_ui.js","webpack:///./src/locales/zh/_error.js","webpack:///./src/locales/zh/_language.js","webpack:///./src/locales/zh/_message.js","webpack:///./src/locales/zh/index.js","webpack:///./src/i18n.js","webpack:///./src/store/_layout.js","webpack:///./src/store/_survey.js","webpack:///./src/store/index.js","webpack:///./src/app.vue?c07a","webpack:///src/app.vue","webpack:///./src/app.vue?eedb","webpack:///./src/app.vue","webpack:///./src/plugins/helpers.js","webpack:///./src/main.js","webpack:///./src/app.vue?8523","webpack:///./src/config.js"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","login","succeed","failed","usernameRequired","passwordRequired","logout","processing","session","invalidToken","expired","accountDetails","accountIdRequired","accountProfileUnblock","profileIdRequired","addMaster","currencyCodeRequired","getAccountList","passwordReset","newPasswordRequired","statusUpdate","statusRequired","updateAccount","getPromotionList","addPromotion","promoIdRequired","promoNameRequired","updatePromotion","getIBankList","updateIBankStatus","bankIdRequired","claimTypeLookup","addPromoPackage","packageIdRequired","packageNameRequired","claimTypeRequired","minDepositRequired","bonusRateRequired","maxBonusRequired","rolloverRequired","criteriaRequired","startDateRequired","endDateRequired","getPromoPackageList","updatePromoPackageStatus","dailyStatementCompany","dailyWinlose","gameResultSlots","addSurvey","questionRequired","surveyLookup","updateSurveyStatus","surveyIdRequired","map","webpackContext","req","id","webpackContextResolve","keys","Vue","use","Router","router","base","process","routes","path","component","children","redirect","meta","requiredLoggedIn","includedPages","config","accessRoles","account","promotion","report","function","page","role","user","setting","namespaced","state","_loading","sessionToken","username","password","mutations","update","payload","delete","loading","action","status","actions","context","url","loginUrl","body","user_id","feedback","success","errorTags","canRequest","commit","http","post","successResponse","statusdesc","session_token","token","access_right","errorResponse","accountDetailsUrl","auth","action_by","this","page_id","account_id","errorTag","dsvalue","details","root","accountProfileUnblockUrl","addMasterUrl","full_name","currency_code","contact_phone","contact_email","audit_by","search_id","start_date","end_date","page_number","page_size","sort_key","sort_type","accountList","passwordResetUrl","login_id","new_password","statusUpdateUrl","new_status","updateAccountUrl","getIBankListUrl","bankList","updateIBankStatusUrl","bank_id","addPromotionUrl","promo_id","promo_name","promo_desc","promoNameequired","getPromotionListUrl","promoList","updatePromotionUrl","claimTypeLookupUrl","claimTypeList","addPromoPackageUrl","package_id","package_name","claim_type","min_deposit","bonus_rate","max_bonus","rollover","criteria","category","getPromoPackageListUrl","packageList","updatePromoPackageStatusUrl","dailyStatementCompanyUrl","grandTotal","dailyWinloseUrl","drill_down","gameResultSlotsUrl","combine","add_function","add_page","add_role","add_user","edit_function","edit_page","edit_role","edit_user","edit_password","delete_function","delete_page","delete_role","delete_user","assign_functions","assign_roles","confirm_password","change_password","old_password","account_status","account_settings","layout_settings","edit_profile","ok","cancel","home","add","edit","refresh","assign","search","remove","save","load","settings","on","off","new","clear","system","functions","pages","roles","users","created_on","modified_on","modified_by","created_by","active","disabled","blocked","suspended","no_data","login_attempt","user_roles","layout","master","operator","account_list","add_master","add_promotion","add_package","bank_name","bet_count","bet_time","currency","closed","company","closing_balance","date_range","daily_statement","deposit_amount","daily_winlose","edit_promotion","freezed","grand_total","game_result_slots","game_provider","game_type","game_name","ibank_list","login_ip","opening_balance","promotion_list","package_list","payout","result_id","self_operate","sub_total","turnover","valid_turnover","working_date","winlose","withdrawal_amount","survey","survey_list","question","add_survey","OK","loginFailed","requestFailed","invalidLogin","invalidPassword","thisFunctionExists","thisFunctionNotAllowDelete","thisFunctionNotExists","targetFunctionIdRequired","thisPageExists","thisPageNotAllowDelete","thisRoleExists","thisRoleNotAllowDelete","targetRoleIdRequired","invalidParameter","systemError","spErrorMessage","actionbyRequired","sessionTokenRequired","functionIdRequired","functionNameRequired","newFunctionNameRequired","pageIdRequired","newPageIdRequired","newPageNameRequired","targetPageIdRequired","userIdRequired","userNameRequired","passwordValidation","pageNumRequired","pageSizeRequired","roleIdRequired","oldPasswordRequired","userStatusRequired","newRoleIdRequired","newRoleNameRequired","startDateIsGteEndDate","sportsTypeRequired","teamTypeRequired","thisRoleNotExists","thisPageNotExists","thisUserExists","thisUserNotExists","thisUserBlackListed","thisUserInactive","thisUserBlocked","thisUserNotActive","InvalidPageFunction","invalidUser","NoUserAccessRight","unableSPProcess","connection","isRequired","isMinValue","isMaxValue","isMinLength","isMaxLength","isAlpha","isAlphaNum","isNumeric","isEmail","isIpAddress","isSameAs","isUrl","containAlphaNum","selectOption","notSameAs","greaterThanZero","selection","english","simplified_chinese","traditional_chinese","vietnamese","thai","indonesian","malay","japanese","korean","native","app","full","minimized","welcome","relogin","denied","search_by_id_name","search_by_name","change_user_status_confirm","delete_confirm","successful_change_password","add_master_confirm","add_master_success","add_master_cancel","add_promotion_confirm","add_promotion_success","add_promotion_cancel","edit_promotion_confirm","edit_promotion_success","edit_promotion_cancel","update_account_status_confirm","update_account_status_success","update_account_status_cancel","edit_profile_confirm","edit_profile_success","edit_profile_cancel","update_account_password_confirm","update_account_password_success","update_account_password_cancel","unblock_account_profile_confirm","unblock_account_profile_cancel","unblock_account_profile_success","update_ibank_status_confirm","update_ibank_status_success","update_ibank_status_cancel","update_package_status_confirm","update_package_status_success","update_package_status_cancel","add_package_confirm","add_package_success","add_package_cancel","select_date_range","no_records","add_survey_confirm","add_survey_success","add_survey_cancel","update_survey_status_confirm","update_survey_status_success","update_survey_status_cancel","account_id_required","account_id_not_exists","account_inactive","profile_not_exists","not_blocked_account","password_required","currency_code_required","account_id_exists","promo_id_required","package_id_required","package_name_required","claim_type_required","criteria_required","min_deposit_required","bonus_rate_required","max_bonus_required","rollover_required","start_date_required","end_date_required","start_date_gt_end_date","package_id_unavailable","promo_id_not_exists","package_id_exists","invalid_claim_type","invalid_criteria","promo_name_required","promo_id_unavailable","promo_id_exists","account_not_exists","bank_id_required","new_status_required","ui","language","thisRoleExist","VueI18n","messages","en","zh","i18n","locale","fallbackLocale","silentTranslationWarn","numberFormats","style","currencyDisplay","dateTimeFormats","short","year","month","day","hour","minute","second","hour12","long","weekday","sidebar","dateRange","startDate","moment","startOf","toDate","endDate","endOf","accountID","pageSize","pageSizeOptions","updateLanguage","updateSidebarMinimized","updatePageSize","updateDateRange","updateAccountID","setLanguage","setSidebarMinimized","setPageSize","setDateRange","setAccountID","surveyAddUrl","surveyLookupUrl","surveyList","surveyStatusUpdateUrl","survey_id","VueResource","Vuex","storageKey","localStorage","VuexPersistence","storage","reducer","cookieStorage","restoreState","Cookies","getJSON","saveState","set","expires","store","Store","getters","displayName","replace","txt","charAt","toUpperCase","substr","toLowerCase","isLoggedIn","isMinimized","plugins","plugin","_h","_vm","_c","staticRenderFns","components","install","options","LOGOUT","$helpers","$router","$store","dispatch","catch","log","getNumberClass","handleFeedback","alert","title","variant","$swal","showDialog","showToast","caption","productionTip","BootstrapVue","Vuelidate","VueSweetalert2","Snotify","helpers","$t","swal","DatePicker","DateRangePicker","VueCurrencyFilter","symbol","thousandsSeparator","fractionCount","fractionSeparator","symbolPosition","symbolSpacing","beforeEach","to","from","next","query","fullPath","match","matched","some","record","haveRole","render","h","App","$mount","appTitle","appVersion","baseUrl","userBaseUrl","gameResultDetailUrl","accessUrlPrefix","functionListUrl","addFunctionUrl","editFunctionUrl","deleteFunctionUrl","pageListUrl","addPageUrl","editPageUrl","deletePageUrl","roleListUrl","addRoleUrl","editRoleUrl","deleteRoleUrl","userListUrl","editUserStatusUrl","addUserUrl","editUserUrl","resetPwdUserUrl","getUserRoleUrl","addUserRoleUrl","pageFunctionListUrl","pageRoleListUrl","editPageFunctionUrl","editPageRoleUrl","changePwdUserUrl","getMasterListUrl","getMemberListUrl","getOperatorListUrl"],"mappings":"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ACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,UAAW,OACX,aAAc,OACd,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,gBAAiB,OACjB,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,UAAW,OACX,aAAc,OACd,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,OAAQ,OACR,UAAW,OACX,aAAc,OACd,UAAW,OACX,OAAQ,OACR,UAAW,OACX,UAAW,OACX,aAAc,OACd,OAAQ,OACR,UAAW,OACX,OAA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","file":"js/app.ee890157.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"js/\" + ({}[chunkId]||chunkId) + \".\" + {\"chunk-063abd4d\":\"015c4878\",\"chunk-08c2df07\":\"7d19f523\",\"chunk-0bc32126\":\"2b87f825\",\"chunk-1f3d131c\":\"1329967a\",\"chunk-2d0b3248\":\"525ca94d\",\"chunk-2d0c515d\":\"4d5fa449\",\"chunk-2d0d4407\":\"5730b5b9\",\"chunk-2d0d6610\":\"aec44bd8\",\"chunk-2d0a4f43\":\"c65a2aba\",\"chunk-6531dc62\":\"66b5580e\",\"chunk-7bb6a0f1\":\"b52b2490\",\"chunk-87fa18d2\":\"1f5b0a98\",\"chunk-e446be74\":\"ea0fa9fa\",\"chunk-0b72db7e\":\"55add194\",\"chunk-2d0d0b2c\":\"b2227bf0\",\"chunk-2d0f04af\":\"e8d5e338\",\"chunk-2d224b22\":\"a7b92634\",\"chunk-358f8ed8\":\"d17228e9\",\"chunk-6f35d97e\":\"272b163c\",\"chunk-770668bd\":\"ee5c4ab9\",\"chunk-862fef76\":\"a4d53b52\",\"chunk-865b9544\":\"902d6b2a\",\"chunk-ec44f74a\":\"5a4d4dc7\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"chunk-063abd4d\":1,\"chunk-08c2df07\":1,\"chunk-1f3d131c\":1,\"chunk-6531dc62\":1,\"chunk-7bb6a0f1\":1,\"chunk-87fa18d2\":1,\"chunk-e446be74\":1,\"chunk-0b72db7e\":1,\"chunk-358f8ed8\":1,\"chunk-ec44f74a\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"css/\" + ({}[chunkId]||chunkId) + \".\" + {\"chunk-063abd4d\":\"26246212\",\"chunk-08c2df07\":\"26246212\",\"chunk-0bc32126\":\"31d6cfe0\",\"chunk-1f3d131c\":\"a1607d9a\",\"chunk-2d0b3248\":\"31d6cfe0\",\"chunk-2d0c515d\":\"31d6cfe0\",\"chunk-2d0d4407\":\"31d6cfe0\",\"chunk-2d0d6610\":\"31d6cfe0\",\"chunk-2d0a4f43\":\"31d6cfe0\",\"chunk-6531dc62\":\"67a8d1fa\",\"chunk-7bb6a0f1\":\"3661f41e\",\"chunk-87fa18d2\":\"26246212\",\"chunk-e446be74\":\"f71a2c69\",\"chunk-0b72db7e\":\"f373e215\",\"chunk-2d0d0b2c\":\"31d6cfe0\",\"chunk-2d0f04af\":\"31d6cfe0\",\"chunk-2d224b22\":\"31d6cfe0\",\"chunk-358f8ed8\":\"26246212\",\"chunk-6f35d97e\":\"31d6cfe0\",\"chunk-770668bd\":\"31d6cfe0\",\"chunk-862fef76\":\"31d6cfe0\",\"chunk-865b9544\":\"31d6cfe0\",\"chunk-ec44f74a\":\"0e433876\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\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\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","export default {\r\n login: {\r\n succeed: \"loginSucceed\",\r\n failed: \"loginFailed\",\r\n usernameRequired: \"usernameRequired\",\r\n passwordRequired: \"passwordRequired\"\r\n },\r\n logout: {\r\n succeed: \"logoutSucceed\",\r\n failed: \"logoutFailed\"\r\n },\r\n request: {\r\n succeed: \"requestSucceed\",\r\n failed: \"requestFailed\",\r\n processing: \"requestProcessing\"\r\n },\r\n session: {\r\n invalidToken: \"invalidToken\",\r\n expired: \"invalidToken\",\r\n // expired: \"sessionTokenRequired\"\r\n },\r\n accountDetails: {\r\n succeed: \"accountDetailsSucceed\",\r\n failed: \"accountDetailsFailed\",\r\n accountIdRequired: \"accountIdRequired\"\r\n },\r\n accountProfileUnblock: {\r\n succeed: \"accountProfileUnblockSucceed\",\r\n failed: \"aaccountProfileUnblockFailed\",\r\n profileIdRequired: \"profileIdRequired\"\r\n },\r\n addMaster: {\r\n succeed: \"addMasterSucceed\",\r\n failed: \"addMasterFailed\",\r\n accountIdRequired: \"accountIdRequired\",\r\n passwordRequired: \"passwordRequired\",\r\n currencyCodeRequired: \"currencyCodeRequired\"\r\n },\r\n getAccountList: {\r\n succeed: \"getAccountListSucceed\",\r\n failed: \"getAccountListFailed\"\r\n },\r\n passwordReset: {\r\n succeed: \"passwordResetSucceed\",\r\n failed: \"passwordResetFailed\",\r\n accountIdRequired: \"accountIdRequired\",\r\n newPasswordRequired: \"newPasswordRequired\"\r\n },\r\n statusUpdate: {\r\n succeed: \"statusUpdateSucceed\",\r\n failed: \"statusUpdateFailed\",\r\n accountIdRequired: \"accountIdRequired\",\r\n statusRequired: \"statusRequired\"\r\n },\r\n updateAccount: {\r\n succeed: \"updateAccountSucceed\",\r\n failed: \"updateAccountFailed\",\r\n accountIdRequired: \"accountIdRequired\"\r\n },\r\n getPromotionList: {\r\n succeed: \"getPromotionListSucceed\",\r\n failed: \"getPromotionListFailed\"\r\n },\r\n addPromotion: {\r\n succeed: \"addPromotionSucceed\",\r\n failed: \"addPromotionFailed\",\r\n promoIdRequired: \"promoIdRequired\",\r\n promoNameRequired: \"promoNameRequired\"\r\n },\r\n updatePromotion: {\r\n succeed: \"updatePromotionSucceed\",\r\n failed: \"updatePromotionFailed\",\r\n promoIdRequired: \"promoIdRequired\",\r\n promoNameRequired: \"promoNameRequired\"\r\n },\r\n getIBankList: {\r\n succeed: \"getIBankListSucceed\",\r\n failed: \"getIBankListFailed\"\r\n },\r\n updateIBankStatus: {\r\n succeed: \"updateIBankStatusSucceed\",\r\n failed: \"updateIBankStatusFailed\",\r\n bankIdRequired: \"bankIdRequired\",\r\n statusRequired: \"statusRequired\"\r\n },\r\n claimTypeLookup: {\r\n succeed: \"claimTypeLookupSucceed\",\r\n failed: \"claimTypeLookupFailed\"\r\n },\r\n addPromoPackage: {\r\n succeed: \"addPromoPackageSucceed\",\r\n failed: \"addPromoPackageFailed\",\r\n promoIdRequired: \"promoIdRequired\",\r\n packageIdRequired: \"packageIdRequired\",\r\n packageNameRequired: \"packageNameRequired\",\r\n claimTypeRequired: \"claimTypeRequired\",\r\n minDepositRequired: \"minDepositRequired\",\r\n bonusRateRequired: \"bonusRateRequired\",\r\n maxBonusRequired: \"maxBonusRequired\",\r\n rolloverRequired: \"rolloverRequired\",\r\n criteriaRequired: \"criteriaRequired\",\r\n startDateRequired: \"startDateRequired\",\r\n endDateRequired: \"endDateRequired\"\r\n },\r\n getPromoPackageList: {\r\n succeed: \"getPromoPackageListSucceed\",\r\n failed: \"getPromoPackageListFailed\",\r\n promoIdRequired: \"promoIdRequired\"\r\n },\r\n updatePromoPackageStatus: {\r\n succeed: \"updatePromoPackageStatusSucceed\",\r\n failed: \"updatePromoPackageStatusFailed\",\r\n packageIdRequired: \"packageIdRequired\",\r\n statusRequired: \"statusRequired\"\r\n },\r\n dailyStatementCompany: {\r\n succeed: \"dailyStatementCompanySucceed\",\r\n failed: \"dailyStatementCompanyFailed\"\r\n },\r\n dailyWinlose: {\r\n succeed: \"dailyWinloseSucceed\",\r\n failed: \"ddailyWinloseFailed\"\r\n },\r\n gameResultSlots: {\r\n succeed: \"gameResultSlotsSucceed\",\r\n failed: \"gameResultSlotsFailed\"\r\n },\r\n addSurvey: {\r\n succeed: \"addSurveySucceed\",\r\n failed: \"addSurveyFailed\",\r\n questionRequired: \"questionRequired\",\r\n },\r\n surveyLookup: {\r\n succeed: \"surveyLookupSucceed\",\r\n failed: \"surveyLookupFailed\"\r\n },\r\n updateSurveyStatus: {\r\n succeed: \"updateSurveyStatusSucceed\",\r\n failed: \"updateSurveyStatusFailed\",\r\n surveyIdRequired: \"surveyIdRequired\",\r\n statusRequired: \"statusRequired\"\r\n },\r\n};\r\n","var map = {\n\t\"./af\": \"2bfb\",\n\t\"./af.js\": \"2bfb\",\n\t\"./ar\": \"8e73\",\n\t\"./ar-dz\": \"a356\",\n\t\"./ar-dz.js\": \"a356\",\n\t\"./ar-kw\": \"423e\",\n\t\"./ar-kw.js\": \"423e\",\n\t\"./ar-ly\": \"1cfd\",\n\t\"./ar-ly.js\": \"1cfd\",\n\t\"./ar-ma\": \"0a84\",\n\t\"./ar-ma.js\": \"0a84\",\n\t\"./ar-sa\": \"8230\",\n\t\"./ar-sa.js\": \"8230\",\n\t\"./ar-tn\": \"6d83\",\n\t\"./ar-tn.js\": \"6d83\",\n\t\"./ar.js\": \"8e73\",\n\t\"./az\": \"485c\",\n\t\"./az.js\": \"485c\",\n\t\"./be\": \"1fc1\",\n\t\"./be.js\": \"1fc1\",\n\t\"./bg\": \"84aa\",\n\t\"./bg.js\": \"84aa\",\n\t\"./bm\": \"a7fa\",\n\t\"./bm.js\": \"a7fa\",\n\t\"./bn\": \"9043\",\n\t\"./bn.js\": \"9043\",\n\t\"./bo\": \"d26a\",\n\t\"./bo.js\": \"d26a\",\n\t\"./br\": \"6887\",\n\t\"./br.js\": \"6887\",\n\t\"./bs\": \"2554\",\n\t\"./bs.js\": \"2554\",\n\t\"./ca\": \"d716\",\n\t\"./ca.js\": \"d716\",\n\t\"./cs\": \"3c0d\",\n\t\"./cs.js\": \"3c0d\",\n\t\"./cv\": \"03ec\",\n\t\"./cv.js\": \"03ec\",\n\t\"./cy\": \"9797\",\n\t\"./cy.js\": \"9797\",\n\t\"./da\": \"0f14\",\n\t\"./da.js\": \"0f14\",\n\t\"./de\": \"b469\",\n\t\"./de-at\": \"b3eb\",\n\t\"./de-at.js\": \"b3eb\",\n\t\"./de-ch\": \"bb71\",\n\t\"./de-ch.js\": \"bb71\",\n\t\"./de.js\": \"b469\",\n\t\"./dv\": \"598a\",\n\t\"./dv.js\": \"598a\",\n\t\"./el\": \"8d47\",\n\t\"./el.js\": \"8d47\",\n\t\"./en-SG\": \"cdab\",\n\t\"./en-SG.js\": \"cdab\",\n\t\"./en-au\": \"0e6b\",\n\t\"./en-au.js\": \"0e6b\",\n\t\"./en-ca\": \"3886\",\n\t\"./en-ca.js\": \"3886\",\n\t\"./en-gb\": \"39a6\",\n\t\"./en-gb.js\": \"39a6\",\n\t\"./en-ie\": \"e1d3\",\n\t\"./en-ie.js\": \"e1d3\",\n\t\"./en-il\": \"7333\",\n\t\"./en-il.js\": \"7333\",\n\t\"./en-nz\": \"6f50\",\n\t\"./en-nz.js\": \"6f50\",\n\t\"./eo\": \"65db\",\n\t\"./eo.js\": \"65db\",\n\t\"./es\": \"898b\",\n\t\"./es-do\": \"0a3c\",\n\t\"./es-do.js\": \"0a3c\",\n\t\"./es-us\": \"55c9\",\n\t\"./es-us.js\": \"55c9\",\n\t\"./es.js\": \"898b\",\n\t\"./et\": \"ec18\",\n\t\"./et.js\": \"ec18\",\n\t\"./eu\": \"0ff2\",\n\t\"./eu.js\": \"0ff2\",\n\t\"./fa\": \"8df4\",\n\t\"./fa.js\": \"8df4\",\n\t\"./fi\": \"81e9\",\n\t\"./fi.js\": \"81e9\",\n\t\"./fo\": \"0721\",\n\t\"./fo.js\": \"0721\",\n\t\"./fr\": \"9f26\",\n\t\"./fr-ca\": \"d9f8\",\n\t\"./fr-ca.js\": \"d9f8\",\n\t\"./fr-ch\": \"0e49\",\n\t\"./fr-ch.js\": \"0e49\",\n\t\"./fr.js\": \"9f26\",\n\t\"./fy\": \"7118\",\n\t\"./fy.js\": \"7118\",\n\t\"./ga\": \"5120\",\n\t\"./ga.js\": \"5120\",\n\t\"./gd\": \"f6b4\",\n\t\"./gd.js\": \"f6b4\",\n\t\"./gl\": \"8840\",\n\t\"./gl.js\": \"8840\",\n\t\"./gom-latn\": \"0caa\",\n\t\"./gom-latn.js\": \"0caa\",\n\t\"./gu\": \"e0c5\",\n\t\"./gu.js\": \"e0c5\",\n\t\"./he\": \"c7aa\",\n\t\"./he.js\": \"c7aa\",\n\t\"./hi\": \"dc4d\",\n\t\"./hi.js\": \"dc4d\",\n\t\"./hr\": \"4ba9\",\n\t\"./hr.js\": \"4ba9\",\n\t\"./hu\": \"5b14\",\n\t\"./hu.js\": \"5b14\",\n\t\"./hy-am\": \"d6b6\",\n\t\"./hy-am.js\": \"d6b6\",\n\t\"./id\": \"5038\",\n\t\"./id.js\": \"5038\",\n\t\"./is\": \"0558\",\n\t\"./is.js\": \"0558\",\n\t\"./it\": \"6e98\",\n\t\"./it-ch\": \"6f12\",\n\t\"./it-ch.js\": \"6f12\",\n\t\"./it.js\": \"6e98\",\n\t\"./ja\": \"079e\",\n\t\"./ja.js\": \"079e\",\n\t\"./jv\": \"b540\",\n\t\"./jv.js\": \"b540\",\n\t\"./ka\": \"201b\",\n\t\"./ka.js\": \"201b\",\n\t\"./kk\": \"6d79\",\n\t\"./kk.js\": \"6d79\",\n\t\"./km\": \"e81d\",\n\t\"./km.js\": \"e81d\",\n\t\"./kn\": \"3e92\",\n\t\"./kn.js\": \"3e92\",\n\t\"./ko\": \"22f8\",\n\t\"./ko.js\": \"22f8\",\n\t\"./ku\": \"2421\",\n\t\"./ku.js\": \"2421\",\n\t\"./ky\": \"9609\",\n\t\"./ky.js\": \"9609\",\n\t\"./lb\": \"440c\",\n\t\"./lb.js\": \"440c\",\n\t\"./lo\": \"b29d\",\n\t\"./lo.js\": \"b29d\",\n\t\"./lt\": \"26f9\",\n\t\"./lt.js\": \"26f9\",\n\t\"./lv\": \"b97c\",\n\t\"./lv.js\": \"b97c\",\n\t\"./me\": \"293c\",\n\t\"./me.js\": \"293c\",\n\t\"./mi\": \"688b\",\n\t\"./mi.js\": \"688b\",\n\t\"./mk\": \"6909\",\n\t\"./mk.js\": \"6909\",\n\t\"./ml\": \"02fb\",\n\t\"./ml.js\": \"02fb\",\n\t\"./mn\": \"958b\",\n\t\"./mn.js\": \"958b\",\n\t\"./mr\": \"39bd\",\n\t\"./mr.js\": \"39bd\",\n\t\"./ms\": \"ebe4\",\n\t\"./ms-my\": \"6403\",\n\t\"./ms-my.js\": \"6403\",\n\t\"./ms.js\": \"ebe4\",\n\t\"./mt\": \"1b45\",\n\t\"./mt.js\": \"1b45\",\n\t\"./my\": \"8689\",\n\t\"./my.js\": \"8689\",\n\t\"./nb\": \"6ce3\",\n\t\"./nb.js\": \"6ce3\",\n\t\"./ne\": \"3a39\",\n\t\"./ne.js\": \"3a39\",\n\t\"./nl\": \"facd\",\n\t\"./nl-be\": \"db29\",\n\t\"./nl-be.js\": \"db29\",\n\t\"./nl.js\": \"facd\",\n\t\"./nn\": \"b84c\",\n\t\"./nn.js\": \"b84c\",\n\t\"./pa-in\": \"f3ff\",\n\t\"./pa-in.js\": \"f3ff\",\n\t\"./pl\": \"8d57\",\n\t\"./pl.js\": \"8d57\",\n\t\"./pt\": \"f260\",\n\t\"./pt-br\": \"d2d4\",\n\t\"./pt-br.js\": \"d2d4\",\n\t\"./pt.js\": \"f260\",\n\t\"./ro\": \"972c\",\n\t\"./ro.js\": \"972c\",\n\t\"./ru\": \"957c\",\n\t\"./ru.js\": \"957c\",\n\t\"./sd\": \"6784\",\n\t\"./sd.js\": \"6784\",\n\t\"./se\": \"ffff\",\n\t\"./se.js\": \"ffff\",\n\t\"./si\": \"eda5\",\n\t\"./si.js\": \"eda5\",\n\t\"./sk\": \"7be6\",\n\t\"./sk.js\": \"7be6\",\n\t\"./sl\": \"8155\",\n\t\"./sl.js\": \"8155\",\n\t\"./sq\": \"c8f3\",\n\t\"./sq.js\": \"c8f3\",\n\t\"./sr\": \"cf1e\",\n\t\"./sr-cyrl\": \"13e9\",\n\t\"./sr-cyrl.js\": \"13e9\",\n\t\"./sr.js\": \"cf1e\",\n\t\"./ss\": \"52bd\",\n\t\"./ss.js\": \"52bd\",\n\t\"./sv\": \"5fbd\",\n\t\"./sv.js\": \"5fbd\",\n\t\"./sw\": \"74dc\",\n\t\"./sw.js\": \"74dc\",\n\t\"./ta\": \"3de5\",\n\t\"./ta.js\": \"3de5\",\n\t\"./te\": \"5cbb\",\n\t\"./te.js\": \"5cbb\",\n\t\"./tet\": \"576c\",\n\t\"./tet.js\": \"576c\",\n\t\"./tg\": \"3b1b\",\n\t\"./tg.js\": \"3b1b\",\n\t\"./th\": \"10e8\",\n\t\"./th.js\": \"10e8\",\n\t\"./tl-ph\": \"0f38\",\n\t\"./tl-ph.js\": \"0f38\",\n\t\"./tlh\": \"cf75\",\n\t\"./tlh.js\": \"cf75\",\n\t\"./tr\": \"0e81\",\n\t\"./tr.js\": \"0e81\",\n\t\"./tzl\": \"cf51\",\n\t\"./tzl.js\": \"cf51\",\n\t\"./tzm\": \"c109\",\n\t\"./tzm-latn\": \"b53d\",\n\t\"./tzm-latn.js\": \"b53d\",\n\t\"./tzm.js\": \"c109\",\n\t\"./ug-cn\": \"6117\",\n\t\"./ug-cn.js\": \"6117\",\n\t\"./uk\": \"ada2\",\n\t\"./uk.js\": \"ada2\",\n\t\"./ur\": \"5294\",\n\t\"./ur.js\": \"5294\",\n\t\"./uz\": \"2e8c\",\n\t\"./uz-latn\": \"010e\",\n\t\"./uz-latn.js\": \"010e\",\n\t\"./uz.js\": \"2e8c\",\n\t\"./vi\": \"2921\",\n\t\"./vi.js\": \"2921\",\n\t\"./x-pseudo\": \"fd7e\",\n\t\"./x-pseudo.js\": \"fd7e\",\n\t\"./yo\": \"7f33\",\n\t\"./yo.js\": \"7f33\",\n\t\"./zh-cn\": \"5c3a\",\n\t\"./zh-cn.js\": \"5c3a\",\n\t\"./zh-hk\": \"49ab\",\n\t\"./zh-hk.js\": \"49ab\",\n\t\"./zh-tw\": \"90ea\",\n\t\"./zh-tw.js\": \"90ea\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"4678\";","import Vue from \"vue\";\r\nimport Router from \"vue-router\";\r\nimport config from \"@/config\";\r\n\r\nVue.use(Router);\r\n\r\nconst router = new Router({\r\n mode: \"history\",\r\n base: process.env.BASE_URL,\r\n routes: [\r\n {\r\n path: \"\",\r\n component: () => import(\"@/views/default/index.vue\"),\r\n children: [\r\n {\r\n path: \"\",\r\n component: () => import(\"@/views/default/_login.vue\")\r\n },\r\n {\r\n path: \"/login\",\r\n component: () => import(\"@/views/default/_login.vue\")\r\n },\r\n {\r\n path: \"/logout\",\r\n component: () => import(\"@/views/default/_logout.vue\")\r\n },\r\n {\r\n path: \"/expired\",\r\n component: () => import(\"@/views/default/_expired.vue\")\r\n },\r\n {\r\n path: \"/denied\",\r\n component: () => import(\"@/views/default/_denied.vue\")\r\n }\r\n ]\r\n },\r\n {\r\n path: \"/account\",\r\n component: () => import(\"@/views/account/index.vue\"),\r\n children: [\r\n {\r\n path: \"/account\",\r\n redirect: \"/account/account_list\"\r\n },\r\n {\r\n path: \"/account/account_list\",\r\n component: () => import(\"@/views/account/_account_list.vue\"),\r\n meta: { requiredLoggedIn: true, includedPages: [config.accessRoles.account] }\r\n },\r\n {\r\n path: \"/account/ibank_list\",\r\n component: () => import(\"@/views/account/_ibank_list.vue\"),\r\n meta: { requiredLoggedIn: true, includedPages: [config.accessRoles.account] }\r\n }\r\n ],\r\n meta: { requiredLoggedIn: true, includedPages: [config.accessRoles.account] }\r\n },\r\n {\r\n path: \"/promotion\",\r\n component: () => import(\"@/views/promotion/index.vue\"),\r\n children: [\r\n {\r\n path: \"/promotion\",\r\n redirect: \"/promotion/promotion_list\"\r\n },\r\n {\r\n path: \"/promotion/promotion_list\",\r\n component: () => import(\"@/views/promotion/_promotion_list.vue\"),\r\n meta: { requiredLoggedIn: true, includedPages: [config.accessRoles.promotion] }\r\n },\r\n {\r\n path: \"/promotion/package_list\",\r\n component: () => import(\"@/views/promotion/_package_list.vue\"),\r\n meta: { requiredLoggedIn: true, includedPages: [config.accessRoles.promotion] }\r\n }\r\n ],\r\n meta: { requiredLoggedIn: true, includedPages: [config.accessRoles.promotion] }\r\n },\r\n {\r\n path: \"/report\",\r\n component: () => import(\"@/views/report/index.vue\"),\r\n children: [\r\n {\r\n path: \"/report\",\r\n redirect: \"/report/daily_statement\"\r\n },\r\n {\r\n path: \"/report/daily_statement\",\r\n component: () => import(\"@/views/report/_daily_statement.vue\"),\r\n meta: { requiredLoggedIn: true, includedPages: [config.accessRoles.report] }\r\n },\r\n {\r\n path: \"/report/daily_winlose\",\r\n component: () => import(\"@/views/report/_daily_winlose.vue\"),\r\n meta: { requiredLoggedIn: true, includedPages: [config.accessRoles.report] }\r\n },\r\n {\r\n path: \"/report/game_result_slots\",\r\n component: () => import(\"@/views/report/_game_result_slots.vue\"),\r\n meta: { requiredLoggedIn: true, includedPages: [config.accessRoles.report] }\r\n }\r\n ],\r\n meta: { requiredLoggedIn: true, includedPages: [config.accessRoles.report] }\r\n },\r\n // {\r\n // path: \"/survey\",\r\n // component: () => import(\"@/views/survey/index.vue\"),\r\n // children: [\r\n // {\r\n // path: \"/survey\",\r\n // redirect: \"/survey/survey_list\"\r\n // },\r\n // {\r\n // path: \"/survey/survey_list\",\r\n // component: () => import(\"@/views/survey/_survey_list.vue\"),\r\n // meta: { requiredLoggedIn: true, includedPages: [config.accessRoles.survey] }\r\n // }\r\n // ],\r\n // meta: { requiredLoggedIn: true, includedPages: [config.accessRoles.survey] }\r\n // },\r\n {\r\n path: \"/system\",\r\n component: () => import(\"@/views/system/index.vue\"),\r\n children: [\r\n {\r\n path: \"/system\",\r\n redirect: \"/system/page\"\r\n },\r\n {\r\n path: \"/system/function\",\r\n component: () => import(\"@/views/system/_function.vue\"),\r\n meta: { requiredLoggedIn: true, includedPages: [config.accessRoles.function] }\r\n },\r\n {\r\n path: \"/system/page\",\r\n component: () => import(\"@/views/system/_page.vue\"),\r\n meta: { requiredLoggedIn: true, includedPages: [config.accessRoles.page] }\r\n },\r\n {\r\n path: \"/system/role\",\r\n component: () => import(\"@/views/system/_role.vue\"),\r\n meta: { requiredLoggedIn: true, includedPages: [config.accessRoles.role] }\r\n },\r\n {\r\n path: \"/system/user\",\r\n component: () => import(\"@/views/system/_user.vue\"),\r\n meta: { requiredLoggedIn: true, includedPages: [config.accessRoles.user] }\r\n },\r\n {\r\n path: \"/system/setting\",\r\n component: () => import(\"@/views/system/_setting.vue\"),\r\n meta: { requiredLoggedIn: true, includedPages: [config.accessRoles.setting] }\r\n }\r\n ],\r\n meta: { requiredLoggedIn: true, includedPages: [config.accessRoles.function, config.accessRoles.page, config.accessRoles.role, config.accessRoles.user, config.accessRoles.setting] }\r\n }\r\n ]\r\n});\r\n\r\nexport default router;\r\n","import Vue from \"vue\";\r\n// import md5 from \"js-md5\";\r\nimport config from \"@/config\";\r\nimport errorTags from \"@/errorTags\";\r\n\r\nexport default {\r\n namespaced: true,\r\n state: {\r\n _loading: {\r\n login: false,\r\n logout: false\r\n },\r\n sessionToken: \"\",\r\n username: \"\",\r\n password: \"\",\r\n accessRoles: []\r\n },\r\n mutations: {\r\n update(state, payload) {\r\n state.sessionToken = payload.sessionToken;\r\n state.username = payload.user.username;\r\n state.password = payload.user.password;\r\n state.accessRoles = payload.user.accessRoles;\r\n },\r\n delete(state) {\r\n state.sessionToken = \"\";\r\n // state.username = \"\";\r\n // state.password = \"\";\r\n // state.accessRoles = [];\r\n },\r\n loading(state, payload) {\r\n if (\"action\" in payload) {\r\n const action = payload.action;\r\n const status = payload.status;\r\n state._loading[action] = status;\r\n }\r\n }\r\n },\r\n actions: {\r\n login(context, user) {\r\n const url = config.loginUrl();\r\n const body = {\r\n user_id: user.username,\r\n password: user.password\r\n };\r\n const feedback = {\r\n success: false,\r\n status: errorTags.login.failed\r\n };\r\n return new Promise((resolve, reject) => {\r\n var canRequest = true;\r\n\r\n if (!(\"username\" in user)) {\r\n feedback.status = errorTags.login.usernameRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (!(\"password\" in user)) {\r\n feedback.status = errorTags.login.passwordRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.username.length <= 0) {\r\n feedback.status = errorTags.login.usernameRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.password.length <= 0) {\r\n feedback.status = errorTags.login.passwordRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n\r\n if (this.state.user._loading.login == true) {\r\n feedback.status = errorTags.request.processing;\r\n canRequest = false;\r\n }\r\n\r\n if (canRequest == true) {\r\n context.commit(\"loading\", { action: \"login\", status: true });\r\n Vue.http.post(url, body).then(\r\n successResponse => {\r\n context.commit(\"loading\", { action: \"login\", status: false });\r\n if (successResponse) {\r\n if (typeof successResponse.body.status == \"string\") {\r\n feedback.success = successResponse.body.status == \"1\";\r\n } else {\r\n feedback.success = successResponse.body.status == 1;\r\n }\r\n feedback.status = successResponse.body.statusdesc;\r\n if (feedback.success == true) {\r\n var sessionToken = null;\r\n try {\r\n sessionToken = successResponse.body.value.session_token[0].token;\r\n if (sessionToken) {\r\n user.accessRoles = successResponse.body.value.access_right;\r\n context.commit(\"update\", { sessionToken, user });\r\n resolve(feedback);\r\n } else {\r\n context.commit(\"delete\");\r\n feedback.success = false;\r\n feedback.status = errorTags.login.failed;\r\n reject(feedback);\r\n }\r\n } catch (error) {\r\n context.commit(\"delete\");\r\n feedback.success = false;\r\n feedback.status = errorTags.login.failed;\r\n reject(feedback);\r\n }\r\n } else {\r\n context.commit(\"delete\");\r\n reject(feedback);\r\n }\r\n } else {\r\n // Response is empty...\r\n context.commit(\"delete\");\r\n reject(feedback);\r\n }\r\n },\r\n errorResponse => {\r\n context.commit(\"loading\", { action: \"login\", status: false });\r\n context.commit(\"delete\");\r\n feedback.error = errorResponse;\r\n reject(feedback);\r\n }\r\n );\r\n } else {\r\n reject(feedback);\r\n }\r\n });\r\n },\r\n logout(context) {\r\n const feedback = {\r\n success: true,\r\n status: errorTags.logout.succeed\r\n };\r\n return new Promise(resolve => {\r\n context.commit(\"delete\");\r\n resolve(feedback);\r\n });\r\n }\r\n }\r\n};\r\n","import Vue from \"vue\";\r\nimport config from \"@/config\";\r\nimport errorTags from \"@/errorTags\";\r\nimport router from \"@/router\";\r\n\r\nexport default {\r\n namespaced: true,\r\n state: {\r\n _loading: {\r\n accountDetails: false,\r\n accountProfileUnblock: false,\r\n addMaster: false,\r\n getAccountList: false,\r\n passwordReset: false,\r\n statusUpdate: false,\r\n updateAccount: false,\r\n getIBankList: false,\r\n updateIBankStatus: false\r\n }\r\n },\r\n mutations: {\r\n loading(state, payload) {\r\n if (\"action\" in payload) {\r\n const action = payload.action;\r\n const status = payload.status;\r\n state._loading[action] = status;\r\n }\r\n }\r\n },\r\n actions: {\r\n accountDetails(context, user){\r\n const url = config.accountDetailsUrl();\r\n const body = {\r\n auth: {\r\n action_by: this.state.user.username,\r\n session_token: this.state.user.sessionToken,\r\n page_id: config.accessRoles.account\r\n },\r\n data: {\r\n account_id: user.account_id\r\n }\r\n };\r\n const feedback = {\r\n data: [],\r\n success: false,\r\n errorTag: errorTags.accountDetails.failed\r\n };\r\n return new Promise((resolve, reject) => {\r\n var canRequest = true;\r\n if (!(\"account_id\" in user)) {\r\n feedback.errorTag = errorTags.accountDetails.accountIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.account_id.length <= 0) {\r\n feedback.errorTag = errorTags.accountDetails.accountIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (this.state.user._loading.accountDetails == true) {\r\n feedback.errorTag = errorTags.request.processing;\r\n canRequest = false;\r\n }\r\n if (canRequest == true) {\r\n context.commit(\"loading\", { action: \"accountDetails\", status: true });\r\n Vue.http.post(url, body).then(\r\n successResponse => {\r\n context.commit(\"loading\", { action: \"accountDetails\", status: false });\r\n if (successResponse) {\r\n if (typeof successResponse.body.success == \"string\") {\r\n feedback.success = successResponse.body.success == \"1\";\r\n } else {\r\n feedback.success = successResponse.body.success == true;\r\n }\r\n feedback.errorTag = successResponse.body.errorTag;\r\n if (feedback.success == true) {\r\n try {\r\n feedback.data = successResponse.body.dsvalue.details;\r\n resolve(feedback);\r\n } catch (error) {\r\n feedback.success = false;\r\n feedback.errorTag = errorTags.accountDetails.failed;\r\n reject(feedback);\r\n }\r\n } else {\r\n if (feedback.errorTag == errorTags.session.expired) {\r\n context.commit(\"user/delete\", user, { root: true });\r\n router.push(\"/expired\");\r\n }\r\n reject(feedback);\r\n }\r\n } else {\r\n // Response is empty...\r\n reject(feedback);\r\n }\r\n },\r\n errorResponse => {\r\n context.commit(\"loading\", { action: \"accountDetails\", status: false });\r\n feedback.errorTag = errorResponse;\r\n reject(feedback);\r\n }\r\n );\r\n } else {\r\n reject(feedback);\r\n }\r\n });\r\n },\r\n accountProfileUnblock(context, user){\r\n const url = config.accountProfileUnblockUrl();\r\n const body = {\r\n auth: {\r\n action_by: this.state.user.username,\r\n session_token: this.state.user.sessionToken,\r\n page_id: config.accessRoles.account\r\n },\r\n data: {\r\n account_id: user.account_id\r\n }\r\n };\r\n const feedback = {\r\n success: false,\r\n errorTag: errorTags.accountProfileUnblock.failed\r\n };\r\n return new Promise((resolve, reject) => {\r\n var canRequest = true;\r\n if (!(\"account_id\" in user)) {\r\n feedback.errorTag = errorTags.accountProfileUnblock.profileIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.account_id.length <= 0) {\r\n feedback.errorTag = errorTags.accountProfileUnblock.profileIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (this.state.user._loading.accountProfileUnblock == true) {\r\n feedback.errorTag = errorTags.request.processing;\r\n canRequest = false;\r\n }\r\n if (canRequest == true) {\r\n context.commit(\"loading\", { action: \"accountProfileUnblock\", status: true });\r\n Vue.http.post(url, body).then(\r\n successResponse => {\r\n context.commit(\"loading\", { action: \"accountProfileUnblock\", status: false });\r\n if (successResponse) {\r\n if (typeof successResponse.body.success == \"string\") {\r\n feedback.success = successResponse.body.success == \"1\";\r\n } else {\r\n feedback.success = successResponse.body.success == true;\r\n }\r\n feedback.errorTag = successResponse.body.errorTag;\r\n if (feedback.success == true) {\r\n try {\r\n resolve(feedback);\r\n } catch (error) {\r\n feedback.success = false;\r\n feedback.errorTag = errorTags.accountProfileUnblock.failed;\r\n reject(feedback);\r\n }\r\n } else {\r\n if (feedback.errorTag == errorTags.session.expired) {\r\n context.commit(\"delete\");\r\n router.push(\"/expired\");\r\n }\r\n reject(feedback);\r\n }\r\n } else {\r\n // Response is empty...\r\n reject(feedback);\r\n }\r\n },\r\n errorResponse => {\r\n context.commit(\"loading\", { action: \"accountProfileUnblock\", status: false });\r\n feedback.errorTag = errorResponse;\r\n reject(feedback);\r\n }\r\n );\r\n } else {\r\n reject(feedback);\r\n }\r\n });\r\n },\r\n addMaster(context, user){\r\n const url = config.addMasterUrl();\r\n const body = {\r\n auth: {\r\n action_by: this.state.user.username,\r\n session_token: this.state.user.sessionToken,\r\n page_id: config.accessRoles.account\r\n },\r\n data: {\r\n account_id: user.account_id,\r\n full_name: user.full_name,\r\n password: user.password,\r\n currency_code: user.currency_code,\r\n contact_phone: user.contact_phone,\r\n contact_email: user.contact_email,\r\n audit_by: this.state.user.username\r\n }\r\n };\r\n const feedback = {\r\n data: [],\r\n success: false,\r\n errorTag: errorTags.addMaster.failed\r\n };\r\n return new Promise((resolve, reject) => {\r\n var canRequest = true;\r\n if (this.state.user._loading.addMaster == true) {\r\n feedback.errorTag = errorTags.request.processing;\r\n canRequest = false;\r\n }\r\n if (canRequest == true) {\r\n context.commit(\"loading\", { action: \"addMaster\", status: true });\r\n Vue.http.post(url, body).then(\r\n successResponse => {\r\n context.commit(\"loading\", { action: \"addMaster\", status: false });\r\n if (successResponse) {\r\n if (typeof successResponse.body.success == \"string\") {\r\n feedback.success = successResponse.body.success == \"1\";\r\n } else {\r\n feedback.success = successResponse.body.success == true;\r\n }\r\n feedback.errorTag = successResponse.body.errorTag;\r\n if (feedback.success == true) {\r\n try {\r\n resolve(feedback);\r\n } catch (error) {\r\n feedback.success = false;\r\n feedback.errorTag = errorTags.addMaster.failed;\r\n reject(feedback);\r\n }\r\n } else {\r\n if (feedback.errorTag == errorTags.session.expired) {\r\n context.commit(\"user/delete\", user, { root: true });\r\n router.push(\"/expired\");\r\n }\r\n reject(feedback);\r\n }\r\n } else {\r\n // Response is empty...\r\n reject(feedback);\r\n }\r\n },\r\n errorResponse => {\r\n context.commit(\"loading\", { action: \"addMaster\", status: false });\r\n feedback.errorTag = errorResponse;\r\n reject(feedback);\r\n }\r\n );\r\n } else {\r\n reject(feedback);\r\n }\r\n });\r\n },\r\n getAccountList(context, user){\r\n const url = user.url;\r\n const body = {\r\n auth: {\r\n action_by: this.state.user.username,\r\n session_token: this.state.user.sessionToken,\r\n page_id: config.accessRoles.account\r\n },\r\n data: {\r\n account_id: user.account_id,\r\n search_id: user.search_id,\r\n start_date: user.start_date,\r\n end_date: user.end_date,\r\n page_number: user.page_number,\r\n page_size: user.page_size,\r\n sort_key: user.sort_key,\r\n sort_type: user.sort_type\r\n }\r\n };\r\n const feedback = {\r\n data: [],\r\n success: false,\r\n errorTag: errorTags.getAccountList.failed\r\n };\r\n return new Promise((resolve, reject) => {\r\n var canRequest = true;\r\n if (this.state.user._loading.getAccountList == true) {\r\n feedback.errorTag = errorTags.request.processing;\r\n canRequest = false;\r\n }\r\n if (canRequest == true) {\r\n context.commit(\"loading\", { action: \"getAccountList\", status: true });\r\n Vue.http.post(url, body).then(\r\n successResponse => {\r\n context.commit(\"loading\", { action: \"getAccountList\", status: false });\r\n if (successResponse) {\r\n if (typeof successResponse.body.success == \"string\") {\r\n feedback.success = successResponse.body.success == \"1\";\r\n } else {\r\n feedback.success = successResponse.body.success == true;\r\n }\r\n feedback.errorTag = successResponse.body.errorTag;\r\n if (feedback.success == true) {\r\n try {\r\n feedback.data = successResponse.body.dsvalue.accountList;\r\n resolve(feedback);\r\n } catch (error) {\r\n feedback.success = false;\r\n feedback.errorTag = errorTags.getAccountList.failed;\r\n reject(feedback);\r\n }\r\n } else {\r\n if (feedback.errorTag == errorTags.session.expired) {\r\n context.commit(\"user/delete\", user, { root: true });\r\n router.push(\"/expired\");\r\n }\r\n reject(feedback);\r\n }\r\n } else {\r\n // Response is empty...\r\n reject(feedback);\r\n }\r\n },\r\n errorResponse => {\r\n context.commit(\"loading\", { action: \"getAccountList\", status: false });\r\n feedback.errorTag = errorResponse;\r\n reject(feedback);\r\n }\r\n );\r\n } else {\r\n reject(feedback);\r\n }\r\n });\r\n },\r\n passwordReset(context, user){\r\n const url = config.passwordResetUrl();\r\n const body = {\r\n auth: {\r\n action_by: this.state.user.username,\r\n session_token: this.state.user.sessionToken,\r\n page_id: config.accessRoles.account\r\n },\r\n data: {\r\n login_id: user.login_id,\r\n new_password: user.new_password\r\n }\r\n };\r\n const feedback = {\r\n success: false,\r\n errorTag: errorTags.passwordReset.failed\r\n };\r\n return new Promise((resolve, reject) => {\r\n var canRequest = true;\r\n if (!(\"login_id\" in user)) {\r\n feedback.errorTag = errorTags.passwordReset.accountIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (!(\"new_password\" in user)) {\r\n feedback.errorTag = errorTags.passwordReset.newPasswordRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.login_id.length <= 0) {\r\n feedback.errorTag = errorTags.passwordReset.accountIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.new_password.length <= 0) {\r\n feedback.errorTag = errorTags.passwordReset.newPasswordRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (this.state.user._loading.passwordReset == true) {\r\n feedback.errorTag = errorTags.request.processing;\r\n canRequest = false;\r\n }\r\n if (canRequest == true) {\r\n context.commit(\"loading\", { action: \"passwordReset\", status: true });\r\n Vue.http.post(url, body).then(\r\n successResponse => {\r\n context.commit(\"loading\", { action: \"passwordReset\", status: false });\r\n if (successResponse) {\r\n if (typeof successResponse.body.success == \"string\") {\r\n feedback.success = successResponse.body.success == \"1\";\r\n } else {\r\n feedback.success = successResponse.body.success == true;\r\n }\r\n feedback.errorTag = successResponse.body.errorTag;\r\n if (feedback.success == true) {\r\n try {\r\n resolve(feedback);\r\n } catch (error) {\r\n feedback.success = false;\r\n feedback.errorTag = errorTags.passwordReset.failed;\r\n reject(feedback);\r\n }\r\n } else {\r\n if (feedback.errorTag == errorTags.session.expired) {\r\n context.commit(\"user/delete\", user, { root: true });\r\n router.push(\"/expired\");\r\n }\r\n reject(feedback);\r\n }\r\n } else {\r\n // Response is empty...\r\n reject(feedback);\r\n }\r\n },\r\n errorResponse => {\r\n context.commit(\"loading\", { action: \"passwordReset\", status: false });\r\n feedback.errorTag = errorResponse;\r\n reject(feedback);\r\n }\r\n );\r\n } else {\r\n reject(feedback);\r\n }\r\n });\r\n },\r\n statusUpdate(context, user){\r\n const url = config.statusUpdateUrl();\r\n const body = {\r\n auth: {\r\n action_by: this.state.user.username,\r\n session_token: this.state.user.sessionToken,\r\n page_id: config.accessRoles.account\r\n },\r\n data: {\r\n account_id: user.account_id,\r\n new_status: user.new_status\r\n }\r\n };\r\n const feedback = {\r\n success: false,\r\n errorTag: errorTags.statusUpdate.failed\r\n };\r\n return new Promise((resolve, reject) => {\r\n var canRequest = true;\r\n if (!(\"account_id\" in user)) {\r\n feedback.errorTag = errorTags.statusUpdate.accountIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (!(\"new_status\" in user)) {\r\n feedback.errorTag = errorTags.statusUpdate.statusRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.account_id.length <= 0) {\r\n feedback.errorTag = errorTags.statusUpdate.accountIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.new_status.length <= 0) {\r\n feedback.errorTag = errorTags.statusUpdate.statusRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (this.state.user._loading.statusUpdate == true) {\r\n feedback.errorTag = errorTags.request.processing;\r\n canRequest = false;\r\n }\r\n if (canRequest == true) {\r\n context.commit(\"loading\", { action: \"statusUpdate\", status: true });\r\n Vue.http.post(url, body).then(\r\n successResponse => {\r\n context.commit(\"loading\", { action: \"statusUpdate\", status: false });\r\n if (successResponse) {\r\n if (typeof successResponse.body.success == \"string\") {\r\n feedback.success = successResponse.body.success == \"1\";\r\n } else {\r\n feedback.success = successResponse.body.success == true;\r\n }\r\n feedback.errorTag = successResponse.body.errorTag;\r\n if (feedback.success == true) {\r\n try {\r\n resolve(feedback);\r\n } catch (error) {\r\n feedback.success = false;\r\n feedback.errorTag = errorTags.statusUpdate.failed;\r\n reject(feedback);\r\n }\r\n } else {\r\n if (feedback.errorTag == errorTags.session.expired) {\r\n context.commit(\"user/delete\", user, { root: true });\r\n router.push(\"/expired\");\r\n }\r\n reject(feedback);\r\n }\r\n } else {\r\n // Response is empty...\r\n reject(feedback);\r\n }\r\n },\r\n errorResponse => {\r\n context.commit(\"loading\", { action: \"statusUpdate\", status: false });\r\n feedback.errorTag = errorResponse;\r\n reject(feedback);\r\n }\r\n );\r\n } else {\r\n reject(feedback);\r\n }\r\n });\r\n },\r\n updateAccount(context, user){\r\n const url = config.updateAccountUrl();\r\n const body = {\r\n auth: {\r\n action_by: this.state.user.username,\r\n session_token: this.state.user.sessionToken,\r\n page_id: config.accessRoles.account\r\n },\r\n data: {\r\n account_id: user.account_id,\r\n full_name: user.full_name,\r\n contact_phone: user.contact_phone,\r\n contact_email: user.contact_email,\r\n audit_by: this.state.user.username\r\n }\r\n };\r\n const feedback = {\r\n data: [],\r\n success: false,\r\n errorTag: errorTags.updateAccount.failed\r\n };\r\n return new Promise((resolve, reject) => {\r\n var canRequest = true;\r\n if (!(\"account_id\" in user)) {\r\n feedback.errorTag = errorTags.updateAccount.accountIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.account_id.length <= 0) {\r\n feedback.errorTag = errorTags.updateAccount.accountIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (this.state.user._loading.updateAccount == true) {\r\n feedback.errorTag = errorTags.request.processing;\r\n canRequest = false;\r\n }\r\n if (canRequest == true) {\r\n context.commit(\"loading\", { action: \"updateAccount\", status: true });\r\n Vue.http.post(url, body).then(\r\n successResponse => {\r\n context.commit(\"loading\", { action: \"updateAccount\", status: false });\r\n if (successResponse) {\r\n if (typeof successResponse.body.success == \"string\") {\r\n feedback.success = successResponse.body.success == \"1\";\r\n } else {\r\n feedback.success = successResponse.body.success == true;\r\n }\r\n feedback.errorTag = successResponse.body.errorTag;\r\n if (feedback.success == true) {\r\n try {\r\n resolve(feedback);\r\n } catch (error) {\r\n feedback.success = false;\r\n feedback.errorTag = errorTags.updateAccount.failed;\r\n reject(feedback);\r\n }\r\n } else {\r\n if (feedback.errorTag == errorTags.session.expired) {\r\n context.commit(\"user/delete\", user, { root: true });\r\n router.push(\"/expired\");\r\n }\r\n reject(feedback);\r\n }\r\n } else {\r\n // Response is empty...\r\n reject(feedback);\r\n }\r\n },\r\n errorResponse => {\r\n context.commit(\"loading\", { action: \"updateAccount\", status: false });\r\n feedback.errorTag = errorResponse;\r\n reject(feedback);\r\n }\r\n );\r\n } else {\r\n reject(feedback);\r\n }\r\n });\r\n },\r\n getIBankList(context, user){\r\n const url = config.getIBankListUrl();\r\n const body = {\r\n auth: {\r\n action_by: this.state.user.username,\r\n session_token: this.state.user.sessionToken,\r\n page_id: config.accessRoles.account\r\n }\r\n };\r\n const feedback = {\r\n data: [],\r\n success: false,\r\n errorTag: errorTags.getIBankList.failed\r\n };\r\n return new Promise((resolve, reject) => {\r\n var canRequest = true;\r\n if (this.state.user._loading.getIBankList == true) {\r\n feedback.errorTag = errorTags.request.processing;\r\n canRequest = false;\r\n }\r\n if (canRequest == true) {\r\n context.commit(\"loading\", { action: \"getIBankList\", status: true });\r\n Vue.http.post(url, body).then(\r\n successResponse => {\r\n context.commit(\"loading\", { action: \"getIBankList\", status: false });\r\n if (successResponse) {\r\n if (typeof successResponse.body.success == \"string\") {\r\n feedback.success = successResponse.body.success == \"1\";\r\n } else {\r\n feedback.success = successResponse.body.success == true;\r\n }\r\n feedback.errorTag = successResponse.body.errorTag;\r\n if (feedback.success == true) {\r\n try {\r\n feedback.data = successResponse.body.dsvalue.bankList;\r\n resolve(feedback);\r\n } catch (error) {\r\n feedback.success = false;\r\n feedback.errorTag = errorTags.getIBankList.failed;\r\n reject(feedback);\r\n }\r\n } else {\r\n if (feedback.errorTag == errorTags.session.expired) {\r\n context.commit(\"user/delete\", user, { root: true });\r\n router.push(\"/expired\");\r\n }\r\n reject(feedback);\r\n }\r\n } else {\r\n // Response is empty...\r\n reject(feedback);\r\n }\r\n },\r\n errorResponse => {\r\n context.commit(\"loading\", { action: \"getIBankList\", status: false });\r\n feedback.errorTag = errorResponse;\r\n reject(feedback);\r\n }\r\n );\r\n } else {\r\n reject(feedback);\r\n }\r\n });\r\n },\r\n updateIBankStatus(context, user){\r\n const url = config.updateIBankStatusUrl();\r\n const body = {\r\n auth: {\r\n action_by: this.state.user.username,\r\n session_token: this.state.user.sessionToken,\r\n page_id: config.accessRoles.account\r\n },\r\n data: {\r\n bank_id: user.bank_id,\r\n new_status: user.new_status\r\n }\r\n };\r\n const feedback = {\r\n success: false,\r\n errorTag: errorTags.updateIBankStatus.failed\r\n };\r\n return new Promise((resolve, reject) => {\r\n var canRequest = true;\r\n if (!(\"bank_id\" in user)) {\r\n feedback.errorTag = errorTags.updateIBankStatus.bankIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (!(\"new_status\" in user)) {\r\n feedback.errorTag = errorTags.updateIBankStatus.statusRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.bank_id.length <= 0) {\r\n feedback.errorTag = errorTags.updateIBankStatus.bankIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.new_status.length <= 0) {\r\n feedback.errorTag = errorTags.updateIBankStatus.statusRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (this.state.user._loading.updateIBankStatus == true) {\r\n feedback.errorTag = errorTags.request.processing;\r\n canRequest = false;\r\n }\r\n if (canRequest == true) {\r\n context.commit(\"loading\", { action: \"updateIBankStatus\", status: true });\r\n Vue.http.post(url, body).then(\r\n successResponse => {\r\n context.commit(\"loading\", { action: \"updateIBankStatus\", status: false });\r\n if (successResponse) {\r\n if (typeof successResponse.body.success == \"string\") {\r\n feedback.success = successResponse.body.success == \"1\";\r\n } else {\r\n feedback.success = successResponse.body.success == true;\r\n }\r\n feedback.errorTag = successResponse.body.errorTag;\r\n if (feedback.success == true) {\r\n try {\r\n resolve(feedback);\r\n } catch (error) {\r\n feedback.success = false;\r\n feedback.errorTag = errorTags.updateIBankStatus.failed;\r\n reject(feedback);\r\n }\r\n } else {\r\n if (feedback.errorTag == errorTags.session.expired) {\r\n context.commit(\"user/delete\", user, { root: true });\r\n router.push(\"/expired\");\r\n }\r\n reject(feedback);\r\n }\r\n } else {\r\n // Response is empty...\r\n reject(feedback);\r\n }\r\n },\r\n errorResponse => {\r\n context.commit(\"loading\", { action: \"updateIBankStatus\", status: false });\r\n feedback.errorTag = errorResponse;\r\n reject(feedback);\r\n }\r\n );\r\n } else {\r\n reject(feedback);\r\n }\r\n });\r\n },\r\n }\r\n};\r\n","import Vue from \"vue\";\r\nimport config from \"@/config\";\r\nimport errorTags from \"@/errorTags\";\r\nimport router from \"@/router\";\r\n\r\nexport default {\r\n namespaced: true,\r\n state: {\r\n _loading: {\r\n addPromotion: false,\r\n getPromotionList: false,\r\n updatePromotion: false,\r\n claimTypeLookup: false,\r\n addPromoPackage: false,\r\n getPromoPackageList: false,\r\n updatePromoPackageStatus: false\r\n }\r\n },\r\n mutations: {\r\n loading(state, payload) {\r\n if (\"action\" in payload) {\r\n const action = payload.action;\r\n const status = payload.status;\r\n state._loading[action] = status;\r\n }\r\n }\r\n },\r\n actions: {\r\n addPromotion(context, user){\r\n const url = config.addPromotionUrl();\r\n const body = {\r\n auth: {\r\n action_by: this.state.user.username,\r\n session_token: this.state.user.sessionToken,\r\n page_id: config.accessRoles.promotion\r\n },\r\n data: {\r\n promo_id: user.promo_id,\r\n promo_name: user.promo_name,\r\n promo_desc: user.promo_desc\r\n }\r\n };\r\n const feedback = {\r\n data: [],\r\n success: false,\r\n errorTag: errorTags.addPromotion.failed\r\n };\r\n return new Promise((resolve, reject) => {\r\n var canRequest = true;\r\n if (!(\"promo_id\" in user)) {\r\n feedback.status = errorTags.addPromotion.promoIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (!(\"promo_name\" in user)) {\r\n feedback.status = errorTags.addPromotion.promoNameequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.promo_id.length <= 0) {\r\n feedback.status = errorTags.addPromotion.promoIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.promo_name.length <= 0) {\r\n feedback.status = errorTags.addPromotion.promoNameequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (this.state.user._loading.addPromotion == true) {\r\n feedback.errorTag = errorTags.request.processing;\r\n canRequest = false;\r\n }\r\n if (canRequest == true) {\r\n context.commit(\"loading\", { action: \"addPromotion\", status: true });\r\n Vue.http.post(url, body).then(\r\n successResponse => {\r\n context.commit(\"loading\", { action: \"addPromotion\", status: false });\r\n if (successResponse) {\r\n if (typeof successResponse.body.success == \"string\") {\r\n feedback.success = successResponse.body.success == \"1\";\r\n } else {\r\n feedback.success = successResponse.body.success == true;\r\n }\r\n feedback.errorTag = successResponse.body.errorTag;\r\n if (feedback.success == true) {\r\n try {\r\n resolve(feedback);\r\n } catch (error) {\r\n feedback.success = false;\r\n feedback.errorTag = errorTags.addPromotion.failed;\r\n reject(feedback);\r\n }\r\n } else {\r\n if (feedback.errorTag == errorTags.session.expired) {\r\n context.commit(\"user/delete\", user, { root: true });\r\n router.push(\"/expired\");\r\n }\r\n reject(feedback);\r\n }\r\n } else {\r\n // Response is empty...\r\n reject(feedback);\r\n }\r\n },\r\n errorResponse => {\r\n context.commit(\"loading\", { action: \"addPromotion\", status: false });\r\n feedback.errorTag = errorResponse;\r\n reject(feedback);\r\n }\r\n );\r\n } else {\r\n reject(feedback);\r\n }\r\n });\r\n },\r\n getPromotionList(context, user){\r\n const url = config.getPromotionListUrl();\r\n const body = {\r\n auth: {\r\n action_by: this.state.user.username,\r\n session_token: this.state.user.sessionToken,\r\n page_id: config.accessRoles.promotion\r\n },\r\n data: {\r\n search_id: user.search_id,\r\n page_number: user.page_number,\r\n page_size: user.page_size,\r\n sort_key: user.sort_key,\r\n sort_type: user.sort_type\r\n }\r\n };\r\n const feedback = {\r\n data: [],\r\n success: false,\r\n errorTag: errorTags.getPromotionList.failed\r\n };\r\n return new Promise((resolve, reject) => {\r\n var canRequest = true;\r\n if (this.state.user._loading.getPromotionList == true) {\r\n feedback.errorTag = errorTags.request.processing;\r\n canRequest = false;\r\n }\r\n if (canRequest == true) {\r\n context.commit(\"loading\", { action: \"getPromotionList\", status: true });\r\n Vue.http.post(url, body).then(\r\n successResponse => {\r\n context.commit(\"loading\", { action: \"getPromotionList\", status: false });\r\n if (successResponse) {\r\n if (typeof successResponse.body.success == \"string\") {\r\n feedback.success = successResponse.body.success == \"1\";\r\n } else {\r\n feedback.success = successResponse.body.success == true;\r\n }\r\n feedback.errorTag = successResponse.body.errorTag;\r\n if (feedback.success == true) {\r\n try {\r\n feedback.data = successResponse.body.dsvalue.promoList;\r\n resolve(feedback);\r\n } catch (error) {\r\n feedback.success = false;\r\n feedback.errorTag = errorTags.getPromotionList.failed;\r\n reject(feedback);\r\n }\r\n } else {\r\n if (feedback.errorTag == errorTags.session.expired) {\r\n context.commit(\"user/delete\", user, { root: true });\r\n router.push(\"/expired\");\r\n }\r\n reject(feedback);\r\n }\r\n } else {\r\n // Response is empty...\r\n reject(feedback);\r\n }\r\n },\r\n errorResponse => {\r\n context.commit(\"loading\", { action: \"getPromotionList\", status: false });\r\n feedback.errorTag = errorResponse;\r\n reject(feedback);\r\n }\r\n );\r\n } else {\r\n reject(feedback);\r\n }\r\n });\r\n },\r\n updatePromotion(context, user){\r\n const url = config.updatePromotionUrl();\r\n const body = {\r\n auth: {\r\n action_by: this.state.user.username,\r\n session_token: this.state.user.sessionToken,\r\n page_id: config.accessRoles.promotion\r\n },\r\n data: {\r\n promo_id: user.promo_id,\r\n promo_name: user.promo_name,\r\n promo_desc: user.promo_desc\r\n }\r\n };\r\n const feedback = {\r\n data: [],\r\n success: false,\r\n errorTag: errorTags.updatePromotion.failed\r\n };\r\n return new Promise((resolve, reject) => {\r\n var canRequest = true;\r\n if (!(\"promo_id\" in user)) {\r\n feedback.errorTag = errorTags.updatePromotion.promoIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (!(\"promo_name\" in user)) {\r\n feedback.errorTag = errorTags.updatePromotion.promoNameRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.promo_id.length <= 0) {\r\n feedback.errorTag = errorTags.updatePromotion.promoIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.promo_name.length <= 0) {\r\n feedback.errorTag = errorTags.updatePromotion.promoNameRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (this.state.user._loading.updatePromotion == true) {\r\n feedback.errorTag = errorTags.request.processing;\r\n canRequest = false;\r\n }\r\n if (canRequest == true) {\r\n context.commit(\"loading\", { action: \"updatePromotion\", status: true });\r\n Vue.http.post(url, body).then(\r\n successResponse => {\r\n context.commit(\"loading\", { action: \"updatePromotion\", status: false });\r\n if (successResponse) {\r\n if (typeof successResponse.body.success == \"string\") {\r\n feedback.success = successResponse.body.success == \"1\";\r\n } else {\r\n feedback.success = successResponse.body.success == true;\r\n }\r\n feedback.errorTag = successResponse.body.errorTag;\r\n if (feedback.success == true) {\r\n try {\r\n resolve(feedback);\r\n } catch (error) {\r\n feedback.success = false;\r\n feedback.errorTag = errorTags.updatePromotion.failed;\r\n reject(feedback);\r\n }\r\n } else {\r\n if (feedback.errorTag == errorTags.session.expired) {\r\n context.commit(\"user/delete\", user, { root: true });\r\n router.push(\"/expired\");\r\n }\r\n reject(feedback);\r\n }\r\n } else {\r\n // Response is empty...\r\n reject(feedback);\r\n }\r\n },\r\n errorResponse => {\r\n context.commit(\"loading\", { action: \"updatePromotion\", status: false });\r\n feedback.errorTag = errorResponse;\r\n reject(feedback);\r\n }\r\n );\r\n } else {\r\n reject(feedback);\r\n }\r\n });\r\n },\r\n claimTypeLookup(context, user){\r\n const url = config.claimTypeLookupUrl();\r\n const body = {\r\n auth: {\r\n action_by: this.state.user.username,\r\n session_token: this.state.user.sessionToken,\r\n page_id: config.accessRoles.promotion\r\n }\r\n };\r\n const feedback = {\r\n data: [],\r\n success: false,\r\n errorTag: errorTags.claimTypeLookup.failed\r\n };\r\n return new Promise((resolve, reject) => {\r\n var canRequest = true;\r\n if (this.state.user._loading.claimTypeLookup == true) {\r\n feedback.errorTag = errorTags.request.processing;\r\n canRequest = false;\r\n }\r\n if (canRequest == true) {\r\n context.commit(\"loading\", { action: \"claimTypeLookup\", status: true });\r\n Vue.http.post(url, body).then(\r\n successResponse => {\r\n context.commit(\"loading\", { action: \"claimTypeLookup\", status: false });\r\n if (successResponse) {\r\n if (typeof successResponse.body.success == \"string\") {\r\n feedback.success = successResponse.body.success == \"1\";\r\n } else {\r\n feedback.success = successResponse.body.success == true;\r\n }\r\n feedback.errorTag = successResponse.body.errorTag;\r\n if (feedback.success == true) {\r\n try {\r\n feedback.data = successResponse.body.dsvalue.claimTypeList;\r\n resolve(feedback);\r\n } catch (error) {\r\n feedback.success = false;\r\n feedback.errorTag = errorTags.claimTypeLookup.failed;\r\n reject(feedback);\r\n }\r\n } else {\r\n if (feedback.errorTag == errorTags.session.expired) {\r\n context.commit(\"user/delete\", user, { root: true });\r\n router.push(\"/expired\");\r\n }\r\n reject(feedback);\r\n }\r\n } else {\r\n // Response is empty...\r\n reject(feedback);\r\n }\r\n },\r\n errorResponse => {\r\n context.commit(\"loading\", { action: \"claimTypeLookup\", status: false });\r\n feedback.errorTag = errorResponse;\r\n reject(feedback);\r\n }\r\n );\r\n } else {\r\n reject(feedback);\r\n }\r\n });\r\n },\r\n addPromoPackage(context, user){\r\n const url = config.addPromoPackageUrl();\r\n const body = {\r\n auth: {\r\n action_by: this.state.user.username,\r\n session_token: this.state.user.sessionToken,\r\n page_id: config.accessRoles.promotion\r\n },\r\n data: {\r\n promo_id: user.promo_id,\r\n package_id: user.package_id,\r\n package_name: user.package_name,\r\n claim_type: user.claim_type,\r\n min_deposit: user.min_deposit,\r\n bonus_rate: user.bonus_rate,\r\n max_bonus: user.max_bonus,\r\n rollover: user.rollover,\r\n criteria: user.criteria,\r\n category: user.category,\r\n start_date: user.start_date,\r\n end_date: user.end_date\r\n }\r\n };\r\n const feedback = {\r\n data: [],\r\n success: false,\r\n errorTag: errorTags.addPromoPackage.failed\r\n };\r\n return new Promise((resolve, reject) => {\r\n var canRequest = true;\r\n if (!(\"promo_id\" in user)) {\r\n feedback.status = errorTags.addPromoPackage.promoIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (!(\"package_id\" in user)) {\r\n feedback.status = errorTags.addPromoPackage.packageIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (!(\"package_name\" in user)) {\r\n feedback.status = errorTags.addPromoPackage.packageNameRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (!(\"claim_type\" in user)) {\r\n feedback.status = errorTags.addPromoPackage.claimTypeRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (!(\"min_deposit\" in user)) {\r\n feedback.status = errorTags.addPromoPackage.minDepositRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (!(\"bonus_rate\" in user)) {\r\n feedback.status = errorTags.addPromoPackage.bonusRateRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (!(\"max_bonus\" in user)) {\r\n feedback.status = errorTags.addPromoPackage.maxBonusRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (!(\"rollover\" in user)) {\r\n feedback.status = errorTags.addPromoPackage.rolloverRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (!(\"criteria\" in user)) {\r\n feedback.status = errorTags.addPromoPackage.criteriaRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (!(\"start_date\" in user)) {\r\n feedback.status = errorTags.addPromoPackage.startDateRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (!(\"end_date\" in user)) {\r\n feedback.status = errorTags.addPromoPackage.endDateRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n\r\n if (user.promo_id.length <= 0) {\r\n feedback.status = errorTags.addPromoPackage.promoIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.package_id.length <= 0) {\r\n feedback.status = errorTags.addPromoPackage.packageIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.package_name.length <= 0) {\r\n feedback.status = errorTags.addPromoPackage.packageNameRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.claim_type.length <= 0) {\r\n feedback.status = errorTags.addPromoPackage.claimTypeRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.min_deposit.length <= 0) {\r\n feedback.status = errorTags.addPromoPackage.minDepositRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.bonus_rate.length <= 0) {\r\n feedback.status = errorTags.addPromoPackage.bonusRateRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.max_bonus.length <= 0) {\r\n feedback.status = errorTags.addPromoPackage.maxBonusRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.rollover.length <= 0) {\r\n feedback.status = errorTags.addPromoPackage.rolloverRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.criteria.length <= 0) {\r\n feedback.status = errorTags.addPromoPackage.criteriaRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.start_date.length <= 0) {\r\n feedback.status = errorTags.addPromoPackage.startDateRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.end_date.length <= 0) {\r\n feedback.status = errorTags.addPromoPackage.endDateRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (this.state.user._loading.addPromoPackage == true) {\r\n feedback.errorTag = errorTags.request.processing;\r\n canRequest = false;\r\n }\r\n if (canRequest == true) {\r\n context.commit(\"loading\", { action: \"addPromoPackage\", status: true });\r\n Vue.http.post(url, body).then(\r\n successResponse => {\r\n context.commit(\"loading\", { action: \"addPromoPackage\", status: false });\r\n if (successResponse) {\r\n if (typeof successResponse.body.success == \"string\") {\r\n feedback.success = successResponse.body.success == \"1\";\r\n } else {\r\n feedback.success = successResponse.body.success == true;\r\n }\r\n feedback.errorTag = successResponse.body.errorTag;\r\n if (feedback.success == true) {\r\n try {\r\n resolve(feedback);\r\n } catch (error) {\r\n feedback.success = false;\r\n feedback.errorTag = errorTags.addPromoPackage.failed;\r\n reject(feedback);\r\n }\r\n } else {\r\n if (feedback.errorTag == errorTags.session.expired) {\r\n context.commit(\"user/delete\", user, { root: true });\r\n router.push(\"/expired\");\r\n }\r\n reject(feedback);\r\n }\r\n } else {\r\n // Response is empty...\r\n reject(feedback);\r\n }\r\n },\r\n errorResponse => {\r\n context.commit(\"loading\", { action: \"addPromoPackage\", status: false });\r\n feedback.errorTag = errorResponse;\r\n reject(feedback);\r\n }\r\n );\r\n } else {\r\n reject(feedback);\r\n }\r\n });\r\n },\r\n getPromoPackageList(context, user){\r\n const url = config.getPromoPackageListUrl();\r\n const body = {\r\n auth: {\r\n action_by: this.state.user.username,\r\n session_token: this.state.user.sessionToken,\r\n page_id: config.accessRoles.promotion\r\n },\r\n data: {\r\n promo_id: user.promo_id,\r\n search_id: user.search_id,\r\n page_number: user.page_number,\r\n page_size: user.page_size,\r\n sort_key: user.sort_key,\r\n sort_type: user.sort_type\r\n }\r\n };\r\n const feedback = {\r\n data: [],\r\n success: false,\r\n errorTag: errorTags.getPromoPackageList.failed\r\n };\r\n return new Promise((resolve, reject) => {\r\n var canRequest = true;\r\n if (!(\"promo_id\" in user)) {\r\n feedback.status = errorTags.addPromoPackage.promoIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.promo_id.length <= 0) {\r\n feedback.status = errorTags.addPromoPackage.promoIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (this.state.user._loading.getPromoPackageList == true) {\r\n feedback.errorTag = errorTags.request.processing;\r\n canRequest = false;\r\n }\r\n if (canRequest == true) {\r\n context.commit(\"loading\", { action: \"getPromoPackageList\", status: true });\r\n Vue.http.post(url, body).then(\r\n successResponse => {\r\n context.commit(\"loading\", { action: \"getPromoPackageList\", status: false });\r\n if (successResponse) {\r\n if (typeof successResponse.body.success == \"string\") {\r\n feedback.success = successResponse.body.success == \"1\";\r\n } else {\r\n feedback.success = successResponse.body.success == true;\r\n }\r\n feedback.errorTag = successResponse.body.errorTag;\r\n if (feedback.success == true) {\r\n try {\r\n feedback.data = successResponse.body.dsvalue.packageList;\r\n resolve(feedback);\r\n } catch (error) {\r\n feedback.success = false;\r\n feedback.errorTag = errorTags.getPromoPackageList.failed;\r\n reject(feedback);\r\n }\r\n } else {\r\n if (feedback.errorTag == errorTags.session.expired) {\r\n context.commit(\"user/delete\", user, { root: true });\r\n router.push(\"/expired\");\r\n }\r\n reject(feedback);\r\n }\r\n } else {\r\n // Response is empty...\r\n reject(feedback);\r\n }\r\n },\r\n errorResponse => {\r\n context.commit(\"loading\", { action: \"getPromoPackageList\", status: false });\r\n feedback.errorTag = errorResponse;\r\n reject(feedback);\r\n }\r\n );\r\n } else {\r\n reject(feedback);\r\n }\r\n });\r\n },\r\n updatePromoPackageStatus(context, user){\r\n const url = config.updatePromoPackageStatusUrl();\r\n const body = {\r\n auth: {\r\n action_by: this.state.user.username,\r\n session_token: this.state.user.sessionToken,\r\n page_id: config.accessRoles.promotion\r\n },\r\n data: {\r\n package_id: user.package_id,\r\n new_status: user.new_status\r\n }\r\n };\r\n const feedback = {\r\n data: [],\r\n success: false,\r\n errorTag: errorTags.updatePromoPackageStatus.failed\r\n };\r\n return new Promise((resolve, reject) => {\r\n var canRequest = true;\r\n if (!(\"package_id\" in user)) {\r\n feedback.errorTag = errorTags.updatePromoPackageStatus.packageIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (!(\"new_status\" in user)) {\r\n feedback.errorTag = errorTags.updatePromoPackageStatus.statusRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.package_id.length <= 0) {\r\n feedback.errorTag = errorTags.updatePromoPackageStatus.packageIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.new_status.length <= 0) {\r\n feedback.errorTag = errorTags.updatePromoPackageStatus.statusRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (this.state.user._loading.updatePromoPackageStatus == true) {\r\n feedback.errorTag = errorTags.request.processing;\r\n canRequest = false;\r\n }\r\n if (canRequest == true) {\r\n context.commit(\"loading\", { action: \"updatePromoPackageStatus\", status: true });\r\n Vue.http.post(url, body).then(\r\n successResponse => {\r\n context.commit(\"loading\", { action: \"updatePromoPackageStatus\", status: false });\r\n if (successResponse) {\r\n if (typeof successResponse.body.success == \"string\") {\r\n feedback.success = successResponse.body.success == \"1\";\r\n } else {\r\n feedback.success = successResponse.body.success == true;\r\n }\r\n feedback.errorTag = successResponse.body.errorTag;\r\n if (feedback.success == true) {\r\n try {\r\n resolve(feedback);\r\n } catch (error) {\r\n feedback.success = false;\r\n feedback.errorTag = errorTags.updatePromoPackageStatus.failed;\r\n reject(feedback);\r\n }\r\n } else {\r\n if (feedback.errorTag == errorTags.session.expired) {\r\n context.commit(\"user/delete\", user, { root: true });\r\n router.push(\"/expired\");\r\n }\r\n reject(feedback);\r\n }\r\n } else {\r\n // Response is empty...\r\n reject(feedback);\r\n }\r\n },\r\n errorResponse => {\r\n context.commit(\"loading\", { action: \"updatePromoPackageStatus\", status: false });\r\n feedback.errorTag = errorResponse;\r\n reject(feedback);\r\n }\r\n );\r\n } else {\r\n reject(feedback);\r\n }\r\n });\r\n },\r\n }\r\n};","import Vue from \"vue\";\r\nimport config from \"@/config\";\r\nimport errorTags from \"@/errorTags\";\r\nimport router from \"@/router\";\r\n\r\nexport default {\r\n namespaced: true,\r\n state: {\r\n _loading: {\r\n dailyStatementCompany: false,\r\n dailyWinlose: false,\r\n gameResultSlots: false\r\n }\r\n },\r\n mutations: {\r\n loading(state, payload) {\r\n if (\"action\" in payload) {\r\n const action = payload.action;\r\n const status = payload.status;\r\n state._loading[action] = status;\r\n }\r\n }\r\n },\r\n actions: {\r\n dailyStatementCompany(context, user){\r\n const url = config.dailyStatementCompanyUrl();\r\n const body = {\r\n auth: {\r\n action_by: this.state.user.username,\r\n session_token: this.state.user.sessionToken,\r\n page_id: config.accessRoles.report\r\n },\r\n data: {\r\n start_date: user.start_date,\r\n end_date: user.end_date,\r\n page_number: user.page_number,\r\n page_size: user.page_size,\r\n sort_key: user.sort_key,\r\n sort_type: user.sort_type\r\n }\r\n };\r\n const feedback = {\r\n data: [],\r\n grandTotal: [],\r\n success: false,\r\n errorTag: errorTags.dailyStatementCompany.failed\r\n };\r\n return new Promise((resolve, reject) => {\r\n var canRequest = true;\r\n if (this.state.user._loading.dailyStatementCompany == true) {\r\n feedback.errorTag = errorTags.request.processing;\r\n canRequest = false;\r\n }\r\n if (canRequest == true) {\r\n context.commit(\"loading\", { action: \"dailyStatementCompany\", status: true });\r\n Vue.http.post(url, body).then(\r\n successResponse => {\r\n context.commit(\"loading\", { action: \"dailyStatementCompany\", status: false });\r\n if (successResponse) {\r\n if (typeof successResponse.body.success == \"string\") {\r\n feedback.success = successResponse.body.success == \"1\";\r\n } else {\r\n feedback.success = successResponse.body.success == true;\r\n }\r\n feedback.errorTag = successResponse.body.errorTag;\r\n if (feedback.success == true) {\r\n try {\r\n feedback.data = successResponse.body.dsvalue.details;\r\n feedback.grandTotal = successResponse.body.dsvalue.grandTotal;\r\n resolve(feedback);\r\n } catch (error) {\r\n feedback.success = false;\r\n feedback.errorTag = errorTags.dailyStatementCompany.failed;\r\n reject(feedback);\r\n }\r\n } else {\r\n if (feedback.errorTag == errorTags.session.expired) {\r\n context.commit(\"user/delete\", user, { root: true });\r\n router.push(\"/expired\");\r\n }\r\n reject(feedback);\r\n }\r\n } else {\r\n // Response is empty...\r\n reject(feedback);\r\n }\r\n },\r\n errorResponse => {\r\n context.commit(\"loading\", { action: \"dailyStatementCompany\", status: false });\r\n feedback.errorTag = errorResponse;\r\n reject(feedback);\r\n }\r\n );\r\n } else {\r\n reject(feedback);\r\n }\r\n });\r\n },\r\n dailyWinlose(context, user){\r\n const url = config.dailyWinloseUrl();\r\n const body = {\r\n auth: {\r\n action_by: this.state.user.username,\r\n session_token: this.state.user.sessionToken,\r\n page_id: config.accessRoles.report\r\n },\r\n data: {\r\n account_id: user.account_id,\r\n start_date: user.start_date,\r\n end_date: user.end_date,\r\n page_number: user.page_number,\r\n page_size: user.page_size,\r\n sort_key: user.sort_key,\r\n sort_type: user.sort_type,\r\n drill_down: user.drill_down\r\n }\r\n };\r\n const feedback = {\r\n data: [],\r\n grandTotal: [],\r\n success: false,\r\n errorTag: errorTags.dailyWinlose.failed\r\n };\r\n return new Promise((resolve, reject) => {\r\n var canRequest = true;\r\n if (this.state.user._loading.dailyWinlose == true) {\r\n feedback.errorTag = errorTags.request.processing;\r\n canRequest = false;\r\n }\r\n if (canRequest == true) {\r\n context.commit(\"loading\", { action: \"dailyWinlose\", status: true });\r\n Vue.http.post(url, body).then(\r\n successResponse => {\r\n context.commit(\"loading\", { action: \"dailyWinlose\", status: false });\r\n if (successResponse) {\r\n if (typeof successResponse.body.success == \"string\") {\r\n feedback.success = successResponse.body.success == \"1\";\r\n } else {\r\n feedback.success = successResponse.body.success == true;\r\n }\r\n feedback.errorTag = successResponse.body.errorTag;\r\n if (feedback.success == true) {\r\n try {\r\n feedback.data = successResponse.body.dsvalue.details;\r\n feedback.grandTotal = successResponse.body.dsvalue.grandTotal;\r\n resolve(feedback);\r\n } catch (error) {\r\n feedback.success = false;\r\n feedback.errorTag = errorTags.dailyWinlose.failed;\r\n reject(feedback);\r\n }\r\n } else {\r\n if (feedback.errorTag == errorTags.session.expired) {\r\n context.commit(\"user/delete\", user, { root: true });\r\n router.push(\"/expired\");\r\n }\r\n reject(feedback);\r\n }\r\n } else {\r\n // Response is empty...\r\n reject(feedback);\r\n }\r\n },\r\n errorResponse => {\r\n context.commit(\"loading\", { action: \"dailyWinlose\", status: false });\r\n feedback.errorTag = errorResponse;\r\n reject(feedback);\r\n }\r\n );\r\n } else {\r\n reject(feedback);\r\n }\r\n });\r\n },\r\n gameResultSlots(context, user){\r\n const url = config.gameResultSlotsUrl();\r\n const body = {\r\n auth: {\r\n action_by: this.state.user.username,\r\n session_token: this.state.user.sessionToken,\r\n page_id: config.accessRoles.report\r\n },\r\n data: {\r\n account_id: user.account_id,\r\n start_date: user.start_date,\r\n end_date: user.end_date,\r\n page_number: user.page_number,\r\n page_size: user.page_size,\r\n sort_key: user.sort_key,\r\n sort_type: user.sort_type\r\n }\r\n };\r\n const feedback = {\r\n data: [],\r\n grandTotal: [],\r\n success: false,\r\n errorTag: errorTags.gameResultSlots.failed\r\n };\r\n return new Promise((resolve, reject) => {\r\n var canRequest = true;\r\n if (this.state.user._loading.gameResultSlots == true) {\r\n feedback.errorTag = errorTags.request.processing;\r\n canRequest = false;\r\n }\r\n if (canRequest == true) {\r\n context.commit(\"loading\", { action: \"gameResultSlots\", status: true });\r\n Vue.http.post(url, body).then(\r\n successResponse => {\r\n context.commit(\"loading\", { action: \"gameResultSlots\", status: false });\r\n if (successResponse) {\r\n if (typeof successResponse.body.success == \"string\") {\r\n feedback.success = successResponse.body.success == \"1\";\r\n } else {\r\n feedback.success = successResponse.body.success == true;\r\n }\r\n feedback.errorTag = successResponse.body.errorTag;\r\n if (feedback.success == true) {\r\n try {\r\n feedback.data = successResponse.body.dsvalue.details;\r\n feedback.grandTotal = successResponse.body.dsvalue.grandTotal;\r\n resolve(feedback);\r\n } catch (error) {\r\n feedback.success = false;\r\n feedback.errorTag = errorTags.gameResultSlots.failed;\r\n reject(feedback);\r\n }\r\n } else {\r\n if (feedback.errorTag == errorTags.session.expired) {\r\n context.commit(\"user/delete\", user, { root: true });\r\n router.push(\"/expired\");\r\n }\r\n reject(feedback);\r\n }\r\n } else {\r\n // Response is empty...\r\n reject(feedback);\r\n }\r\n },\r\n errorResponse => {\r\n context.commit(\"loading\", { action: \"gameResultSlots\", status: false });\r\n feedback.errorTag = errorResponse;\r\n reject(feedback);\r\n }\r\n );\r\n } else {\r\n reject(feedback);\r\n }\r\n });\r\n }\r\n }\r\n};\r\n","export default {\r\n combine: {\r\n add_function: \"@:ui.add Function\",\r\n add_page: \"@:ui.add Page\",\r\n add_role: \"@:ui.add Role\",\r\n add_user: \"@:ui.add User\",\r\n edit_function: \"@:ui.edit Function\",\r\n edit_page: \"@:ui.edit Page\",\r\n edit_role: \"@:ui.edit Role\",\r\n edit_user: \"@:ui.edit User\",\r\n edit_password: \"@:ui.edit @:ui.password\",\r\n delete_function: \"@:ui.delete Function\",\r\n delete_page: \"@:ui.delete Page\",\r\n delete_role: \"@:ui.delete Role\",\r\n delete_user: \"@:ui.delete User\",\r\n assign_functions: \"@:ui.assign Functions\",\r\n assign_roles: \"@:ui.assign Roles\",\r\n confirm_password: \"Confirm @:ui.password\",\r\n change_password: \"Change @:ui.password\",\r\n old_password: \"Old @:ui.password\",\r\n new_password: \"@:ui.new @:ui.password\",\r\n account_status: \"@:ui.account @:ui.status\",\r\n account_settings: \"@:ui.account @:ui.settings\",\r\n layout_settings: \"@:ui.layout @:ui.settings\",\r\n edit_profile: \"@:ui.edit Profile\"\r\n },\r\n ok: \"OK\",\r\n failed: \"Failed\",\r\n cancel: \"Cancel\",\r\n apply: \"Apply\",\r\n login: \"Login\",\r\n logout: \"Logout\",\r\n home: \"Home\",\r\n add: \"Add\",\r\n edit: \"Edit\",\r\n delete: \"Delete\",\r\n refresh: \"Refresh\",\r\n assign: \"Assign\",\r\n action: \"Action\",\r\n id: \"ID\",\r\n name: \"Name\",\r\n all: \"All\",\r\n search: \"Search\",\r\n remove: \"Remove\",\r\n save: \"Save\",\r\n load: \"Load\",\r\n account: \"Account\",\r\n settings: \"Settings\",\r\n on: \"ON\",\r\n off: \"OFF\",\r\n new: \"New\",\r\n clear: \"Clear\",\r\n system: \"System\",\r\n functions: \"Function | Functions\",\r\n pages: \"Page | Pages\",\r\n roles: \"Role | Roles\",\r\n users: \"User | Users\",\r\n username: \"Username\",\r\n password: \"Password\",\r\n created_on: \"Created On\",\r\n modified_on: \"Modified On\",\r\n modified_by: \"Modified By\",\r\n created_by: \"Created By\",\r\n active: \"Active\",\r\n disabled: \"Disabled\",\r\n blocked: \"Blocked\",\r\n suspended: \"Suspended\",\r\n page_size: \"Page Size\",\r\n no_data: \"No Data Available\",\r\n status: \"Status\",\r\n login_attempt: \"Login Attempt\",\r\n user_roles: \"Roles\",\r\n layout: \"Layout\",\r\n master: \"Master\",\r\n operator: \"Operator\",\r\n\r\n\r\n account_list: \"Account List\",\r\n add_master: \"@:ui.add Master\",\r\n account_id: \"Account ID\",\r\n add_promotion: \"@:ui.add @:ui.promotion\",\r\n add_package: \"@:ui.add Package\",\r\n\r\n bank_id: \"Bank ID\",\r\n bank_name: \"Bank Name\",\r\n bonus_rate: \"Bonus Rate\",\r\n bet_count: \"Bet Count\",\r\n bet_time: \"Bet Time\",\r\n\r\n contact_phone: \"Contact Phone\",\r\n contact_email: \"Contact Email\",\r\n currency: \"Currency\",\r\n closed: \"Closed\",\r\n company: \"Company\",\r\n claim_type: \"Claim Type\",\r\n criteria: \"Criteria\",\r\n closing_balance: \"Closing Balance\",\r\n\r\n date_range: \"Date Range\",\r\n daily_statement: \"Daily Statement\",\r\n deposit_amount: \"Deposit Amount\",\r\n daily_winlose: \"Daily Winlose\",\r\n\r\n edit_promotion: \"@:ui.edit @:ui.promotion\",\r\n end_date: \"End Date\",\r\n\r\n full_name: \"Full Name\",\r\n freezed: \"Freezed\",\r\n\r\n grand_total: \"Grand Total\",\r\n game_result_slots: \"Game Result (Slots)\",\r\n game_provider: \"Game Provider\",\r\n game_type: \"Game Type\",\r\n game_name: \"Game Name\",\r\n\r\n ibank_list: \"iBank List\",\r\n\r\n login_id: \"Login Id\",\r\n login_ip: \"Login IP\",\r\n\r\n max_bonus: \"Max Bonus\",\r\n min_deposit: \"Min Deposit\",\r\n\r\n opening_balance: \"Opening Balance\",\r\n\r\n promotion: \"Promotion\",\r\n promotion_list: \"Promotion List\",\r\n promo_id: \"Promotion ID\",\r\n promo_name: \"Promotion Name\",\r\n promo_desc: \"Promotion Description\",\r\n package_list: \"Package List \",\r\n package_id: \"Package ID\",\r\n package_name: \"Package Name\",\r\n payout: \"Payout\",\r\n category: \"Category\",\r\n\r\n rollover: \"Rollover\",\r\n report: \"Report\",\r\n result_id: \"Result ID\",\r\n\r\n start_date: \"Start Date\",\r\n self_operate: \"Self Operate\",\r\n succeed: \"Succeed\",\r\n sub_total: \"Sub Total\",\r\n\r\n turnover: \"Turnover\",\r\n\r\n valid_turnover: \"Valid Turnover\",\r\n\r\n working_date: \"Working Date\",\r\n winlose: \"Winlose\",\r\n withdrawal_amount: \"Withdrawal Amount\",\r\n\r\n survey: \"Survey\",\r\n survey_list: \"Survey List\",\r\n question: \"Question\",\r\n add_survey: \"@:ui.add @:ui.survey\",\r\n\r\n};\r\n","export default {\r\n OK: \"OK\",\r\n ok: \"OK\",\r\n loginFailed: \"Login failed, please try again.\",\r\n requestFailed: \"Request failed, please check your internet connection.\",\r\n invalidLogin: \"Invalid Username or Password.\",\r\n invalidPassword: \"Invalid Username or Password.\",\r\n thisFunctionExists: \"This function is already exists.\",\r\n thisFunctionNotAllowDelete: \"This function is not allow to delete.\",\r\n thisFunctionNotExists: \"This function is not exists.\",\r\n targetFunctionIdRequired: \"Target Function ID is required.\",\r\n thisPageExists: \"This page is already exists.\",\r\n thisPageNotAllowDelete: \"This page is not allow to delete.\",\r\n thisRoleExists: \"This role is already exists.\",\r\n thisRoleNotAllowDelete: \"This role is not allow to delete.\",\r\n targetRoleIdRequired: \"Target Role ID is required.\",\r\n invalidParameter: \"Invalid Parameter.\",\r\n systemError: \"System unable to process your request.\",\r\n spErrorMessage: \"SP Message Error (Depend what error).\",\r\n actionbyRequired: \"Current User is required.\",\r\n sessionTokenRequired: \"Session Token is required.\",\r\n functionIdRequired: \"Function ID is required.\",\r\n functionNameRequired: \"Function name is required.\",\r\n newFunctionNameRequired: \"Function name is required.\",\r\n pageIdRequired: \"Page ID is required.\",\r\n newPageIdRequired: \"Page ID is required.\",\r\n newPageNameRequired: \"Page name is required.\",\r\n targetPageIdRequired: \"Target Page ID is required.\",\r\n userIdRequired: \"User ID is required\",\r\n passwordRequired: \"Password is required.\",\r\n userNameRequired: \"Full Name is required.\",\r\n passwordValidation: \"Password must be 6-20 characters and a combination of number(s) and letter(s).\",\r\n pageNumRequired: \"Page Number is required.\",\r\n pageSizeRequired: \"Page Size is required.\",\r\n roleIdRequired: \"Role ID is required\",\r\n oldPasswordRequired: \"Current Password is required.\",\r\n userStatusRequired: \"User Status is required.\",\r\n newRoleIdRequired: \"Role ID is required.\",\r\n newRoleNameRequired: \"Role Name is required.\",\r\n startDateRequired: \"Start Date is required.\",\r\n endDateRequired: \"End Date is required.\",\r\n startDateIsGteEndDate: \"Start Date is greater than End Date.\",\r\n sportsTypeRequired: \"Sports Type is required.\",\r\n teamTypeRequired: \"Team Type is required.\",\r\n thisRoleNotExists: \"This Role is not exists.\",\r\n thisPageNotExists: \"This Page is not exists.\",\r\n thisUserExists: \"This User is already exists.\",\r\n thisUserNotExists: \"This User is not exists.\",\r\n thisUserBlackListed: \"Your account has been suspended.\",\r\n thisUserInactive: \"Your account has been disabled.\",\r\n thisUserBlocked: \"Your account has been blocked.\",\r\n thisUserNotActive: \"Your account has been disabled.\",\r\n InvalidPageFunction:\"Invalid Page Function.\",\r\n invalidUser: \"Invalid User!\",\r\n invalidToken: \"Invalid Session!\",\r\n NoUserAccessRight: \"Permission Denied!\",\r\n unableSPProcess: \"System unable to process your request.\",\r\n connection: \"Connection Error\",\r\n\r\n isRequired: \"Please enter a {fname}.\",\r\n isMinValue: \"{fname} must have minimal of {fvalue}.\",\r\n isMaxValue: \"{fname} must be less than or equal to {fvalue}.\",\r\n isMinLength: \"{fname} must have at least {fvalue} characters.\",\r\n isMaxLength: \"{fname} must be less than or equal to {fvalue} characters.\",\r\n isAlpha: \"{fname} accept only alphabet.\",\r\n isAlphaNum: \"{fname} accept only alphanumerics.\",\r\n isNumeric: \"{fname} accept only numerics.\",\r\n isEmail: \"{fname} accept only valid email addresses.\",\r\n isIpAddress: \"{fname} accept only valid IPv4 addresses.\",\r\n isSameAs: \"{fname} must be same as {fname2}.\",\r\n isUrl: \"{fname} accept only URLs.\",\r\n containAlphaNum: \"{fname} must have at least one alphabet and one number.\",\r\n selectOption: \"Please select a {fname}\",\r\n notSameAs: \"{fname} and {fname2} cannot be the same.\",\r\n greaterThanZero: \"{fname} must be greater than zero.\"\r\n};\r\n","export default {\r\n name: \"Language\",\r\n selection: \"System Language Selection\",\r\n english: \"English\",\r\n simplified_chinese: \"中文(简体)\",\r\n traditional_chinese: \"中文(繁体)\",\r\n vietnamese: \"Tiếng Việt\",\r\n thai: \"ไทย\",\r\n indonesian: \"Bahasa Indonesia\",\r\n malay: \"Melayu\",\r\n japanese: \"日本\",\r\n korean: \"한국어\",\r\n native: {\r\n english: \"English\",\r\n simplified_chinese: \"Chinese (CN)\",\r\n traditional_chinese: \"Chinese (TW)\",\r\n vietnamese: \"Vietnamese\",\r\n thai: \"Thai\",\r\n indonesian: \"Indonesian\",\r\n malay: \"Malay\",\r\n japanese: \"Japanese\",\r\n korean: \"Korean\"\r\n }\r\n};\r\n","export default {\r\n app: {\r\n name: \"Live22\",\r\n full: \"Live22 Back Office\",\r\n minimized: \"Live22 BO\"\r\n },\r\n welcome: \"Welcome back, {user}!\",\r\n login: \"Sign In to your account\",\r\n relogin: \"Please re-login to your account again.\",\r\n expired: \"Session Expired!\",\r\n denied: \"Permission Denied!\",\r\n success: \"You have successfully completed!\",\r\n search_by_id_name: \"Search by ID or Name\",\r\n search_by_name: \"Search by Name\",\r\n change_user_status_confirm: \"Are you sure you want to change the Account Status?\",\r\n delete_confirm: \"Are you sure you want to delete \\\"{name}\\\"?\",\r\n successful_change_password: \"You have successfully change password.\",\r\n\r\n\r\n add_master_confirm: \"Are you sure you want to create Master account?\",\r\n add_master_success: \"Master account created successfully!\",\r\n add_master_cancel: \"Create Master account failed!\",\r\n add_promotion_confirm: \"Are you sure you want to create new promotion?\",\r\n add_promotion_success: \"New promotion created successfully!\",\r\n add_promotion_cancel: \"Create new promotion failed!\",\r\n edit_promotion_confirm: \"Are you sure you want to edit promotion?\",\r\n edit_promotion_success: \"Promotion edited successfully!\",\r\n edit_promotion_cancel: \"Edit new promotion failed!\",\r\n update_account_status_confirm: \"Are you sure you want to update account status?\",\r\n update_account_status_success: \"Account status updated successfully!\",\r\n update_account_status_cancel: \"Update account status failed!\",\r\n edit_profile_confirm: \"Are you sure you want to edit account profile?\",\r\n edit_profile_success: \"Account profile edited successfully!\",\r\n edit_profile_cancel: \"Edit account profile failed!\",\r\n update_account_password_confirm: \"Are you sure you want to update account password?\",\r\n update_account_password_success: \"Account password updated successfully!\",\r\n update_account_password_cancel: \"Update account password failed!\",\r\n unblock_account_profile_confirm: \"Are you sure want to unblock account profile?\",\r\n unblock_account_profile_cancel: \"Unblock account profile failed.\",\r\n unblock_account_profile_success: \"Account profile successfully unblocked!\",\r\n update_ibank_status_confirm: \"Are you sure you want to update iBank status?\",\r\n update_ibank_status_success: \"iBank status updated successfully!\",\r\n update_ibank_status_cancel: \"Update iBank status failed!\",\r\n update_package_status_confirm: \"Are you sure you want to update package status?\",\r\n update_package_status_success: \"Package status updated successfully!\",\r\n update_package_status_cancel: \"Update package status failed!\",\r\n add_package_confirm: \"Are you sure you want to add new package?\",\r\n add_package_success: \"New package created successfully!\",\r\n add_package_cancel: \"Create new package failed!\",\r\n select_date_range: \"Please select date\",\r\n no_records: \"No records found\",\r\n add_survey_confirm: \"Are you sure you want to create new survey?\",\r\n add_survey_success: \"New survey created successfully!\",\r\n add_survey_cancel: \"Create new survey failed!\",\r\n update_survey_status_confirm: \"Are you sure you want to update survey status?\",\r\n update_survey_status_success: \"Survey status updated successfully!\",\r\n update_survey_status_cancel: \"Update survey status failed!\",\r\n\r\n account_id_required: \"Account ID is required.\",\r\n account_id_not_exists: \"Account ID not exists.\",\r\n account_inactive: \"Account is inactive\",\r\n profile_not_exists: \"Profile not exists\",\r\n not_blocked_account: \"Not a blocked account\",\r\n password_required: \"Password is required.\",\r\n currency_code_required: \"Currency code is required.\",\r\n account_id_exists: \"Account ID exists\",\r\n promo_id_required: \"Promo ID is required.\",\r\n package_id_required: \"Package ID is required.\",\r\n package_name_required: \"Package name is required.\",\r\n claim_type_required: \"Claim Type is required.\",\r\n criteria_required: \"Criteria is required.\",\r\n min_deposit_required: \"Minimum deposit is required.\",\r\n bonus_rate_required: \"Bonus rate is required.\",\r\n max_bonus_required: \"Maximum bonus is required.\",\r\n rollover_required: \"Rollover is required.\",\r\n start_date_required: \"Start date is required.\",\r\n end_date_required: \"End date is required.\",\r\n start_date_gt_end_date: \"Start date greater than end date.\",\r\n package_id_unavailable: \"Package Id unavailable.\",\r\n promo_id_not_exists: \"Promo Id not exists.\",\r\n package_id_exists: \"Package Id exists.\",\r\n invalid_claim_type: \"Invalid claim type.\",\r\n invalid_criteria: \"Invalid criteria\",\r\n promo_name_required: \"Promo name is required.\",\r\n promo_id_unavailable: \"Promo Id unavailable.\",\r\n promo_id_exists: \"Promo Id exists.\",\r\n account_not_exists: \"Account not exists.\",\r\n bank_id_required: \"Bank ID is required.\",\r\n new_status_required: \"New status is required.\",\r\n bank_id_required: \"Bank ID is required.\",\r\n no_changes: \"No changes.\",\r\n login_id_required: \"Login ID is required.\",\r\n new_password_required: \"New password is required.\",\r\n login_id_not_exists: \"Login ID not exists.\",\r\n profile_inactive: \"Profile is inactive.\",\r\n promo_package_not_exists: \"Promotion package not exists.\",\r\n invalid_account_status: \"Invalid account status.\",\r\n permission_denied: \"Permission denied.\",\r\n question_required: \"Question is required.\",\r\n question_exists: \"Question exists.\",\r\n survey_id_required: \"Survey ID is required.\",\r\n survey_not_exists: \"Survey not exists.\",\r\n\r\n invalidParameter: \"Invalid Parameter.\",\r\n sessionTokenRequired: \"Session Token is required.\",\r\n actionbyRequired: \"Current User is required.\",\r\n pageIdRequired: \"Page ID is required.\",\r\n accountIdRequired: \"Account ID is required.\",\r\n profileIdRequired: \"Profile ID is required.\",\r\n accountIdLengthError: \"Account ID length error.\",\r\n accountIdFormatError: \"Account ID format error.\",\r\n passwordRequired: \"Password is required.\",\r\n passwordValidation: \"Password must be 6-20 characters and a combination of number(s) and letter(s).\",\r\n currencyRequired: \"Currency is required.\",\r\n invalidPageNumber: \"Invalid page number.\",\r\n invalidPageSize: \"Invalid page size.\",\r\n StartDateGreaterThanEndDate: \"Start date greater than end date.\",\r\n newPasswordRequired: \"New Password is required.\",\r\n statusRequired: \"Status is required.\",\r\n bankIdRequired: \"Bank ID is required.\",\r\n newStatusRequired: \"New status is required.\",\r\n functionIdRequired: \"Function ID is required.\",\r\n functionNameRequired: \"Function name is required.\",\r\n targetFunctionIdRequired: \"Target Function ID is required.\",\r\n newFunctionNameRequired: \"Function name is required.\",\r\n systemError: \"System unable to process your request.\",\r\n newPageIdRequired: \"New Page ID is required.\",\r\n newPageNameRequired: \"New Page Name is required.\",\r\n targetPageIdRequired: \"Target Page ID is required.\",\r\n promoIdRequired: \"Promo ID is required.\",\r\n promoNameRequired: \"Promo name is required.\",\r\n packageIdeRequired: \"Package ID is required.\",\r\n packageNameRequired: \"Package name is required.\",\r\n claimTypeRequired: \"Claim type is required.\",\r\n minDepositRequired: \"Minimum Deposit is required.\",\r\n bonusRateRequired: \"Bonus rate is required.\",\r\n maxBonusRequired: \"Maximum Bonus is required.\",\r\n rolloverRequired: \"Rollover is required.\",\r\n criteriaRequired: \"Criteria is required.\",\r\n packageIdRequired: \"Package ID is required.\",\r\n questionRequired: \"Question is required.\",\r\n surveyIdRequired: \"Survey ID is required.\",\r\n newRoleIdRequired: \"Role ID is required.\",\r\n newRoleNameRequired: \"Role Name is required.\",\r\n targetRoleIdRequired: \"Target Role ID is required.\",\r\n pageNumRequired: \"Page Number is required.\",\r\n pageSizeRequired: \"Page Size is required.\",\r\n userIdRequired: \"User ID is required\",\r\n userNameRequired: \"Full Name is required.\",\r\n roleIdRequired: \"Role ID is required.\",\r\n oldPasswordRequired: \"Current Password is required.\",\r\n userStatusRequired: \"User Status is required.\",\r\n};\r\n","import ui from \"./_ui\";\r\nimport error from \"./_error\";\r\nimport language from \"./_language\";\r\nimport message from \"./_message\";\r\n\r\nexport default {\r\n ui: ui,\r\n error: error,\r\n language: language,\r\n message: message\r\n};\r\n","export default {\r\n combine: {\r\n add_function: \"@:ui.add@:ui.functions\",\r\n add_page: \"@:ui.add@:ui.pages\",\r\n add_role: \"@:ui.add@:ui.roles\",\r\n add_user: \"@:ui.add@:ui.users\",\r\n edit_function: \"@:ui.edit@:ui.functions\",\r\n edit_page: \"@:ui.edit@:ui.pages\",\r\n edit_role: \"@:ui.edit@:ui.roles\",\r\n edit_user: \"@:ui.edit@:ui.users\",\r\n edit_password: \"@:ui.edit@:ui.password\",\r\n delete_function: \"@:ui.delete@:ui.functions\",\r\n delete_page: \"@:ui.delete@:ui.pages\",\r\n delete_role: \"@:ui.delete@:ui.roles\",\r\n delete_user: \"@:ui.delete@:ui.users\",\r\n assign_functions: \"@:ui.assign@:ui.functions\",\r\n assign_roles: \"@:ui.assign@:ui.roles\",\r\n confirm_password: \"确认@:ui.password\",\r\n change_password: \"更改@:ui.password\",\r\n old_password: \"旧@:ui.password\",\r\n new_password: \"新@:ui.password\",\r\n account_status: \"@:ui.account@:ui.status\",\r\n account_settings: \"@:ui.account@:ui.settings\",\r\n layout_settings: \"@:ui.layout@:ui.settings\",\r\n },\r\n ok: \"确认\",\r\n cancel: \"取消\",\r\n apply: \"应用\",\r\n login: \"登录\",\r\n logout: \"登出\",\r\n home: \"主页\",\r\n add: \"添加\",\r\n edit: \"编辑\",\r\n delete: \"删除\",\r\n refresh: \"刷新\",\r\n assign: \"分配\",\r\n action: \"操作\",\r\n name: \"名称\",\r\n all: \"全部\",\r\n search: \"搜索\",\r\n remove: \"撤除\",\r\n save: \"保存\",\r\n load: \"加载\",\r\n account: \"帐户\",\r\n settings: \"设置\",\r\n on: \"开\",\r\n off: \"关\",\r\n new: \"新\",\r\n clear: \"清除\",\r\n system: \"系统\",\r\n functions: \"功能\",\r\n pages: \"页面\",\r\n roles: \"角色\",\r\n users: \"用户\",\r\n username: \"用户名\",\r\n password: \"密码\",\r\n created_on: \"创建于\",\r\n active: \"活跃\",\r\n disabled: \"禁用\",\r\n blocked: \"阻塞\",\r\n suspended: \"暂停\",\r\n page_size: \"页面大小\",\r\n no_data: \"没有数据\",\r\n status: \"状态\",\r\n login_attempt: \"登录尝试\",\r\n};\r\n","export default {\r\n loginFailed: \"登录失败,请再尝试。\",\r\n requestFailed: \"请求失败,请检查您的互联网连接。\",\r\n invalidLogin: \"无效的用户名或密码。\",\r\n invalidPassword: \"无效的用户名或密码。\",\r\n thisFunctionExists: \"此功能已存在。\",\r\n thisFunctionNotAllowDelete: \"此功能不允许删除。\",\r\n thisFunctionNotExists: \"此功能不存在。\",\r\n targetFunctionIdRequired: \"目标功能ID不能为空。\",\r\n thisPageExists: \"此页面已存在。\",\r\n thisPageNotAllowDelete: \"此页面不允许删除。\",\r\n thisRoleExists: \"此角色已存在。\",\r\n thisRoleExist: \"此角色已存在\",\r\n thisRoleNotAllowDelete: \"此角色不允许删除。\",\r\n targetRoleIdRequired: \"目标角色ID不能为空\",\r\n systemError: \"系统无法处理您的请求。\",\r\n actionbyRequired: \"当前用户登录ID不能为空。\",\r\n sessionTokenRequired: \"Session Token 不能为空。\",\r\n functionIdRequired: \"功能ID不能为空。\",\r\n functionNameRequired: \"功能名称不能为空。\",\r\n newFunctionNameRequired: \"新功能名称不能为空。\",\r\n pageIdRequired: \"页面ID不能为空。\",\r\n newPageIdRequired: \"新页面不能为空 (添加页面)。\",\r\n newPageNameRequired: \"新页面名称不能为空 (添加页面/编辑页面)。\",\r\n targetPageIdRequired: \"页面ID (删除页面/获取页面角色列表/设置页面角色/编辑页面)。\",\r\n userIdRequired: \"用户ID不能为空。\",\r\n passwordRequired: \"密码不能为空。\",\r\n userNameRequired: \"用户名不能为空。\",\r\n passwordValidation: \"密码必须是6-20个字符以及数字和字母的组合。\",\r\n pageNumRequired: \"页码。\",\r\n pageSizeRequired: \"页面大小(行)。\",\r\n roleIdRequired: \"角色ID不能为空。\",\r\n oldPasswordRequired: \"当前密码不能为空。\",\r\n userStatusRequired: \"用户状态不能为空。\",\r\n newRoleIdRequired: \"新角色不能为空 (添加角色)。\",\r\n newRoleNameRequired: \"新角色名称不能为空 (添加角色/编辑角色)。\",\r\n startDateRequired: \"开始日期不能为空。\",\r\n endDateRequired: \"结束日期不能为空。\",\r\n startDateIsGteEndDate: \"开始日期大于结束日期。\",\r\n sportsTypeRequired: \"运动类型不能为空。\",\r\n teamTypeRequired: \"团队类型不能为空。\",\r\n thisRoleNotExists: \"此角色不存在。\",\r\n thisPageNotExists: \"此页面不存在。\",\r\n thisUserExists: \"此用户ID已存在。\",\r\n thisUserNotExists: \"此用户ID不存在。\",\r\n thisUserBlackListed: \"此用户已被列入黑名单。\",\r\n thisUserInactive: \"此用户冻结。\",\r\n thisUserBlocked: \"此用户已被阻塞。\",\r\n thisUserNotActive: \"此用户未激活。\",\r\n invalidUser: \"无效的用户。\",\r\n NoUserAccessRight: \"该用户无权访问此页面。\",\r\n unableSPProcess: \"系统无法处理您的请求。\",\r\n connection: \"连接错误\",\r\n\r\n isRequired: \"请输入{fname}。\",\r\n isMinValue: \"{fname}必须至少为{fvalue}.\",\r\n isMaxValue: \"{fname}必须小于或等于{fvalue}.\",\r\n isMinLength: \"{fname}必须至少包含{fvalue}个字符。\",\r\n isMaxLength: \"{fname}必须小于或等于{fvalue}个字符。\",\r\n isAlphaNum: \"{fname}必须是字母数字。\",\r\n isSameAs: \"{fname}必须与{fname2}相同\",\r\n containAlphaNum: \"{fname}必须至少有一个数字和一个字母。\",\r\n selectOption: \"请选择{fname}\",\r\n notSameAs: \"{fname}和{fname2}不能一样。\"\r\n};\r\n","export default {\r\n name: \"语言\",\r\n selection: \"系统语言选择\",\r\n native: {\r\n english: \"英文\",\r\n simplified_chinese: \"中文 (简体)\",\r\n traditional_chinese: \"中文 (繁体)\",\r\n vietnamese: \"越南文\",\r\n thai: \"泰文\",\r\n indonesian: \"印度尼西亚文\",\r\n malay: \"马来文\",\r\n japanese: \"日文\",\r\n korean: \"韩文\"\r\n }\r\n};\r\n","export default {\r\n app: {\r\n full: \"后端办公室\",\r\n minimized: \"后台\"\r\n },\r\n welcome: \"欢迎回来,{user}!\",\r\n login: \"登录到您的帐户\",\r\n relogin: \"请重新登录您的帐户。\",\r\n expired: \"会话过期!\",\r\n denied: \"无权访问!\",\r\n success: \"你顺利完成了!\",\r\n search_by_id_name: \"按ID或名称搜索\",\r\n search_by_name: \"按名称搜索\",\r\n change_user_status_confirm: \"您确定要更改户口状态吗?\",\r\n delete_confirm: \"你确定你要删除 \\\"{name}\\\" 吗?\",\r\n successful_change_password: \"您已成功更改密码。\"\r\n};\r\n","import ui from \"./_ui\";\r\nimport error from \"./_error\";\r\nimport language from \"./_language\";\r\nimport message from \"./_message\";\r\n\r\nexport default {\r\n ui: ui,\r\n error: error,\r\n language: language,\r\n message: message\r\n};\r\n","import Vue from \"vue\";\r\nimport VueI18n from \"vue-i18n\";\r\nimport en from \"@/locales/en\";\r\nimport zh from \"@/locales/zh\";\r\n\r\nVue.use(VueI18n);\r\n\r\nconst messages = {\r\n en: en,\r\n zh: zh\r\n};\r\n\r\n// import\r\n\r\n// function loadLocaleMessages() {\r\n// const locales = require.context(\"./locales/old\", true, /[A-Za-z0-9-_,\\s]+\\.json$/i);\r\n// const messages = {};\r\n// locales.keys().forEach(key => {\r\n// const matched = key.match(/([a-z0-9]+)\\./i);\r\n\r\n// if (matched && matched.length > 1) {\r\n// const locale = matched[1];\r\n// messages[locale] = locales(key);\r\n// }\r\n// });\r\n// console.log(messages);\r\n// return messages;\r\n// }\r\n\r\n// console.log(messages);\r\n\r\n// const loadedLanguages = [\"en\"];\r\n\r\n// function setI18nLanguage(lang) {\r\n// i18n.locale = lang;\r\n// document.querySelector(\"html\").setAttribute(\"lang\", lang);\r\n// return lang;\r\n// }\r\n\r\n// export function loadLanguageAsync(lang) {\r\n// if (i18n.locale !== lang) {\r\n// if (!loadedLanguages.includes(lang)) {\r\n// return import(/* webpackChunkName: \"lang-[request]\" */ `@/locales/${lang}`).then(msgs => {\r\n// i18n.setLocaleMessage(lang, msgs.default);\r\n// loadedLanguages.push(lang);\r\n// return setI18nLanguage(lang);\r\n// });\r\n// }\r\n// return Promise.resolve(setI18nLanguage(lang));\r\n// }\r\n// return Promise.resolve(lang);\r\n// }\r\n\r\nconst i18n = new VueI18n({\r\n locale: \"en\",\r\n fallbackLocale: \"en\",\r\n messages: messages,\r\n silentTranslationWarn: true,\r\n numberFormats: {\r\n en: {\r\n currency: {\r\n style: \"currency\",\r\n currency: \"VND\",\r\n currencyDisplay: \"code\"\r\n }\r\n }\r\n },\r\n dateTimeFormats: {\r\n en: {\r\n short: {\r\n year: \"numeric\",\r\n month: \"2-digit\",\r\n day: \"2-digit\",\r\n hour: \"2-digit\",\r\n minute: \"2-digit\",\r\n second: \"2-digit\",\r\n hour12: false\r\n },\r\n long: {\r\n year: \"numeric\",\r\n month: \"short\",\r\n day: \"numeric\",\r\n weekday: \"short\",\r\n hour: \"numeric\",\r\n minute: \"numeric\",\r\n second: \"numeric\",\r\n hour12: true\r\n }\r\n }\r\n }\r\n});\r\n\r\nexport default i18n;\r\n","import i18n from \"@/i18n\";\r\nimport moment from \"moment\";\r\n\r\nexport default {\r\n namespaced: true,\r\n state: {\r\n language: \"en\",\r\n sidebar: {\r\n minimized: false\r\n },\r\n // dateRange: [\r\n // moment().startOf(\"day\").toDate(),\r\n // moment().endOf(\"day\").toDate()\r\n // ],\r\n dateRange: {\r\n startDate: moment().startOf(\"day\").toDate(),\r\n endDate: moment().endOf(\"day\").toDate()\r\n },\r\n accountID: \"\",\r\n pageSize: 10,\r\n pageSizeOptions: [10, 20, 50, 100]\r\n },\r\n mutations: {\r\n updateLanguage(state, payload) {\r\n state.language = payload;\r\n },\r\n updateSidebarMinimized(state, payload) {\r\n state.sidebar.minimized = payload;\r\n },\r\n updatePageSize(state, payload) {\r\n state.pageSize = payload;\r\n },\r\n updateDateRange(state, payload){\r\n state.dateRange = payload;\r\n },\r\n updateAccountID(state, payload){\r\n state.accountID = payload;\r\n }\r\n },\r\n actions: {\r\n setLanguage(context, payload) {\r\n i18n.locale = payload;\r\n context.commit(\"updateLanguage\", payload);\r\n },\r\n setSidebarMinimized(context, payload) {\r\n context.commit(\"updateSidebarMinimized\", payload);\r\n },\r\n setPageSize(context, payload) {\r\n context.commit(\"updatePageSize\", payload);\r\n },\r\n setDateRange(context, payload) {\r\n context.commit(\"updateDateRange\", payload);\r\n },\r\n setAccountID(context, payload) {\r\n context.commit(\"updateAccountID\", payload);\r\n }\r\n }\r\n};\r\n","import Vue from \"vue\";\r\nimport config from \"@/config\";\r\nimport errorTags from \"@/errorTags\";\r\nimport router from \"@/router\";\r\n\r\nexport default {\r\n namespaced: true,\r\n state: {\r\n _loading: {\r\n addSurvey: false,\r\n surveyLookup: false,\r\n updateSurveyStatus: false\r\n }\r\n },\r\n mutations: {\r\n loading(state, payload) {\r\n if (\"action\" in payload) {\r\n const action = payload.action;\r\n const status = payload.status;\r\n state._loading[action] = status;\r\n }\r\n }\r\n },\r\n actions: {\r\n addSurvey(context, user){\r\n const url = config.surveyAddUrl();\r\n const body = {\r\n auth: {\r\n action_by: this.state.user.username,\r\n session_token: this.state.user.sessionToken,\r\n page_id: config.accessRoles.survey\r\n },\r\n data: {\r\n question: user.question,\r\n audit_by: this.state.user.username\r\n }\r\n };\r\n const feedback = {\r\n data: [],\r\n success: false,\r\n errorTag: errorTags.addSurvey.failed\r\n };\r\n return new Promise((resolve, reject) => {\r\n var canRequest = true;\r\n if (!(\"question\" in user)) {\r\n feedback.status = errorTags.addSurvey.questionRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.question.length <= 0) {\r\n feedback.status = errorTags.addSurvey.questionRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (this.state.user._loading.addSurvey == true) {\r\n feedback.errorTag = errorTags.request.processing;\r\n canRequest = false;\r\n }\r\n if (canRequest == true) {\r\n context.commit(\"loading\", { action: \"addSurvey\", status: true });\r\n Vue.http.post(url, body).then(\r\n successResponse => {\r\n context.commit(\"loading\", { action: \"addSurvey\", status: false });\r\n if (successResponse) {\r\n if (typeof successResponse.body.success == \"string\") {\r\n feedback.success = successResponse.body.success == \"1\";\r\n } else {\r\n feedback.success = successResponse.body.success == true;\r\n }\r\n feedback.errorTag = successResponse.body.errorTag;\r\n if (feedback.success == true) {\r\n try {\r\n resolve(feedback);\r\n } catch (error) {\r\n feedback.success = false;\r\n feedback.errorTag = errorTags.addSurvey.failed;\r\n reject(feedback);\r\n }\r\n } else {\r\n if (feedback.errorTag == errorTags.session.expired) {\r\n context.commit(\"user/delete\", user, { root: true });\r\n router.push(\"/expired\");\r\n }\r\n reject(feedback);\r\n }\r\n } else {\r\n // Response is empty...\r\n reject(feedback);\r\n }\r\n },\r\n errorResponse => {\r\n context.commit(\"loading\", { action: \"addSurvey\", status: false });\r\n feedback.errorTag = errorResponse;\r\n reject(feedback);\r\n }\r\n );\r\n } else {\r\n reject(feedback);\r\n }\r\n });\r\n },\r\n surveyLookup(context, user){\r\n const url = config.surveyLookupUrl();\r\n const body = {\r\n auth: {\r\n action_by: this.state.user.username,\r\n session_token: this.state.user.sessionToken,\r\n page_id: config.accessRoles.survey\r\n }\r\n };\r\n const feedback = {\r\n data: [],\r\n success: false,\r\n errorTag: errorTags.surveyLookup.failed\r\n };\r\n return new Promise((resolve, reject) => {\r\n var canRequest = true;\r\n if (this.state.user._loading.surveyLookup == true) {\r\n feedback.errorTag = errorTags.request.processing;\r\n canRequest = false;\r\n }\r\n if (canRequest == true) {\r\n context.commit(\"loading\", { action: \"surveyLookup\", status: true });\r\n Vue.http.post(url, body).then(\r\n successResponse => {\r\n context.commit(\"loading\", { action: \"surveyLookup\", status: false });\r\n if (successResponse) {\r\n if (typeof successResponse.body.success == \"string\") {\r\n feedback.success = successResponse.body.success == \"1\";\r\n } else {\r\n feedback.success = successResponse.body.success == true;\r\n }\r\n feedback.errorTag = successResponse.body.errorTag;\r\n if (feedback.success == true) {\r\n try {\r\n feedback.data = successResponse.body.dsvalue.surveyList;\r\n resolve(feedback);\r\n } catch (error) {\r\n feedback.success = false;\r\n feedback.errorTag = errorTags.surveyLookup.failed;\r\n reject(feedback);\r\n }\r\n } else {\r\n if (feedback.errorTag == errorTags.session.expired) {\r\n context.commit(\"user/delete\", user, { root: true });\r\n router.push(\"/expired\");\r\n }\r\n reject(feedback);\r\n }\r\n } else {\r\n // Response is empty...\r\n reject(feedback);\r\n }\r\n },\r\n errorResponse => {\r\n context.commit(\"loading\", { action: \"surveyLookup\", status: false });\r\n feedback.errorTag = errorResponse;\r\n reject(feedback);\r\n }\r\n );\r\n } else {\r\n reject(feedback);\r\n }\r\n });\r\n },\r\n updateSurveyStatus(context, user){\r\n const url = config.surveyStatusUpdateUrl();\r\n const body = {\r\n auth: {\r\n action_by: this.state.user.username,\r\n session_token: this.state.user.sessionToken,\r\n page_id: config.accessRoles.survey\r\n },\r\n data: {\r\n survey_id: user.survey_id,\r\n new_status: user.new_status,\r\n audit_by: this.state.user.username\r\n }\r\n };\r\n const feedback = {\r\n data: [],\r\n success: false,\r\n errorTag: errorTags.updateSurveyStatus.failed\r\n };\r\n return new Promise((resolve, reject) => {\r\n var canRequest = true;\r\n if (!(\"survey_id\" in user)) {\r\n feedback.errorTag = errorTags.updateSurveyStatus.surveyIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (!(\"new_status\" in user)) {\r\n feedback.errorTag = errorTags.updateSurveyStatus.statusRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.survey_id.length <= 0) {\r\n feedback.errorTag = errorTags.updateSurveyStatus.surveyIdRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (user.new_status.length <= 0) {\r\n feedback.errorTag = errorTags.updateSurveyStatus.statusRequired;\r\n reject(feedback);\r\n canRequest = false;\r\n }\r\n if (this.state.user._loading.updateSurveyStatus == true) {\r\n feedback.errorTag = errorTags.request.processing;\r\n canRequest = false;\r\n }\r\n if (canRequest == true) {\r\n context.commit(\"loading\", { action: \"updateSurveyStatus\", status: true });\r\n Vue.http.post(url, body).then(\r\n successResponse => {\r\n context.commit(\"loading\", { action: \"updateSurveyStatus\", status: false });\r\n if (successResponse) {\r\n if (typeof successResponse.body.success == \"string\") {\r\n feedback.success = successResponse.body.success == \"1\";\r\n } else {\r\n feedback.success = successResponse.body.success == true;\r\n }\r\n feedback.errorTag = successResponse.body.errorTag;\r\n if (feedback.success == true) {\r\n try {\r\n resolve(feedback);\r\n } catch (error) {\r\n feedback.success = false;\r\n feedback.errorTag = errorTags.updateSurveyStatus.failed;\r\n reject(feedback);\r\n }\r\n } else {\r\n if (feedback.errorTag == errorTags.session.expired) {\r\n context.commit(\"user/delete\", user, { root: true });\r\n router.push(\"/expired\");\r\n }\r\n reject(feedback);\r\n }\r\n } else {\r\n // Response is empty...\r\n reject(feedback);\r\n }\r\n },\r\n errorResponse => {\r\n context.commit(\"loading\", { action: \"updateSurveyStatus\", status: false });\r\n feedback.errorTag = errorResponse;\r\n reject(feedback);\r\n }\r\n );\r\n } else {\r\n reject(feedback);\r\n }\r\n });\r\n },\r\n }\r\n};","import Vue from \"vue\";\r\nimport Vuex from \"vuex\";\r\nimport VueResource from \"vue-resource\";\r\nimport VuexPersistence from \"vuex-persist\";\r\n\r\nimport Cookies from \"js-cookie\";\r\n\r\nimport user from \"@/store/_user\";\r\nimport account from \"@/store/_account\";\r\nimport promotion from \"@/store/_promotion\";\r\nimport report from \"@/store/_report\";\r\nimport layout from \"@/store/_layout\";\r\nimport survey from \"@/store/_survey\";\r\n\r\nVue.use(VueResource);\r\nVue.use(Vuex);\r\n\r\nconst storageKey = \"uOEOCRFfVy\";\r\n\r\nconst localStorage = new VuexPersistence({\r\n key: storageKey,\r\n storage: window.localStorage,\r\n reducer: state => ({\r\n layout: {\r\n language: state.layout.language,\r\n sidebar: state.layout.sidebar,\r\n pageSize: state.layout.pageSize\r\n }\r\n })\r\n});\r\n\r\nconst cookieStorage = new VuexPersistence({\r\n key: storageKey,\r\n restoreState: (key, storage) => Cookies.getJSON(key),\r\n saveState: (key, state, storage) =>\r\n Cookies.set(key, state, {\r\n expires: 3\r\n }),\r\n reducer: state => ({\r\n user: {\r\n username: state.user.username,\r\n sessionToken: state.user.sessionToken,\r\n accessRoles: state.user.accessRoles\r\n }\r\n })\r\n});\r\n\r\nconst store = new Vuex.Store({\r\n modules: {\r\n user,\r\n account,\r\n layout,\r\n promotion,\r\n report,\r\n survey\r\n },\r\n getters: {\r\n language: state => {\r\n return state.layout.language;\r\n },\r\n pageSize: state => {\r\n return state.layout.pageSize;\r\n },\r\n pageSizeOptions: state => {\r\n return state.layout.pageSizeOptions;\r\n },\r\n username: state => {\r\n return state.user.username;\r\n },\r\n displayName: state => {\r\n return state.user.username.replace(/\\w\\S*/g, function(txt) {\r\n return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase();\r\n });\r\n },\r\n accessRoles: state => {\r\n return state.user.accessRoles;\r\n },\r\n sessionToken: state => {\r\n return state.user.sessionToken;\r\n },\r\n isLoggedIn: state => {\r\n if (state.user.sessionToken) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n },\r\n dateRange: state => {\r\n return state.layout.dateRange;\r\n },\r\n accountID: state => {\r\n return state.layout.accountID;\r\n },\r\n isMinimized: state => {\r\n return state.layout.sidebar.minimized;\r\n }\r\n },\r\n plugins: [localStorage.plugin, cookieStorage.plugin]\r\n});\r\n\r\nexport default store;\r\n","var render = function (_h,_vm) {var _c=_vm._c;return _c('router-view')}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--11-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./app.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--11-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./app.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./app.vue?vue&type=template&id=6685c360&functional=true&lang=pug&\"\nimport script from \"./app.vue?vue&type=script&lang=js&\"\nexport * from \"./app.vue?vue&type=script&lang=js&\"\nimport style0 from \"./app.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n true,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export default {\r\n install: (Vue, options) => {\r\n const LOGOUT = \"user/logout\";\r\n\r\n Vue.prototype.$helpers = {\r\n login() {\r\n options.$router.push(\"/login\");\r\n },\r\n logout() {\r\n options.$store\r\n .dispatch(LOGOUT)\r\n .then(() => options.$router.push(\"/\"))\r\n .catch(err => console.log(err));\r\n },\r\n getNumberClass(n) {\r\n let result = \"text-primary\";\r\n if (n < 0) {\r\n result = \"text-danger\";\r\n }\r\n return result;\r\n },\r\n handleFeedback(e) {\r\n let result = false;\r\n switch (e) {\r\n case \"invalidToken\":\r\n result = true;\r\n options.$store\r\n .dispatch(LOGOUT)\r\n .then(() => options.$router.push(\"/expired\"))\r\n .catch(err => console.log(err));\r\n break;\r\n case \"NoUserAccessRight\":\r\n result = true;\r\n options.$store\r\n .dispatch(LOGOUT)\r\n .then(() => options.$router.push(\"/denied\"))\r\n .catch(err => console.log(err));\r\n break;\r\n }\r\n\r\n return result;\r\n },\r\n alert(title, message, variant) {\r\n return options.$swal(title, message, variant);\r\n },\r\n showDialog(title, message, variant) {\r\n options.$swal(title, message, variant);\r\n // options.$snotify.create({\r\n // title: caption,\r\n // body: message,\r\n // config: {\r\n // type: variant,\r\n // position: \"rightTop\"\r\n // }\r\n // });\r\n },\r\n showToast(caption, message, variant) {\r\n options.$swal(title, message, variant);\r\n // options.$snotify.create({\r\n // title: caption,\r\n // body: message,\r\n // config: {\r\n // type: variant,\r\n // position: \"rightTop\"\r\n // }\r\n // });\r\n }\r\n };\r\n }\r\n};\r\n","import \"core-js/es6/promise\";\r\nimport \"core-js/es6/string\";\r\nimport \"core-js/es7/array\";\r\n\r\nimport Vue from \"vue\";\r\nimport Vuelidate from \"vuelidate\";\r\nimport router from \"@/router\";\r\nimport store from \"@/store\";\r\nimport i18n from \"@/i18n\";\r\nimport App from \"@/app.vue\";\r\n// import \"@/common/registerServiceWorker\";\r\n\r\nimport VueResource from \"vue-resource\";\r\nimport BootstrapVue from \"bootstrap-vue\";\r\nimport VueSweetalert2 from \"vue-sweetalert2\";\r\nimport Snotify from \"vue-snotify\";\r\nimport helpers from \"@/plugins/helpers\";\r\nimport VueCurrencyFilter from \"vue-currency-filter\";\r\nimport DatePicker from \"vue2-datepicker\";\r\nimport DateRangePicker from 'vue2-daterange-picker';\r\n\r\nVue.config.productionTip = process.env.NODE_ENV === \"production\" || false;\r\n\r\nVue.use(BootstrapVue);\r\nVue.use(Vuelidate);\r\nVue.use(VueResource);\r\nVue.use(VueSweetalert2);\r\nVue.use(Snotify);\r\nVue.use(helpers, { $store: store, $router: router, $t: i18n, $swal: Vue.swal });\r\nVue.use(DatePicker);\r\nVue.use(DateRangePicker);\r\nVue.use(VueCurrencyFilter, {\r\n symbol: \"\",\r\n thousandsSeparator: \",\",\r\n fractionCount: 2,\r\n fractionSeparator: \".\",\r\n symbolPosition: \"front\",\r\n symbolSpacing: false\r\n});\r\n\r\n\r\nimport moment from \"moment\";\r\nObject.defineProperty(Vue.prototype, '$moment', { value: moment });\r\n\r\n/* eslint-disable no-new */\r\n\r\nrouter.beforeEach((to, from, next) => {\r\n let query = to.fullPath.match(/^\\/$/) ? {} : { redirect: to.fullPath };\r\n let path = \"/denied\";\r\n\r\n if (\r\n to.matched.some(record => {\r\n return record.meta.requiredLoggedIn && record.meta.includedPages;\r\n })\r\n ) {\r\n if (!store.getters.isLoggedIn) {\r\n next({ path: path, query: query });\r\n return;\r\n }\r\n\r\n let haveRole = false;\r\n let pages = to.matched[0].meta.includedPages;\r\n let roles = store.getters.accessRoles;\r\n for (var i = 0; i < pages.length; i++) {\r\n for (var j = 0; j < roles.length; j++) {\r\n if (roles[j].page_id == pages[i]) {\r\n haveRole = true;\r\n break;\r\n }\r\n }\r\n }\r\n if (haveRole == false) {\r\n next({ path: path, query: query });\r\n return;\r\n }\r\n }\r\n\r\n // if (\r\n // to.matched.some(record => {\r\n // return record.meta.requiredLoggedIn && record.meta.page;\r\n // })\r\n // ) {\r\n // if (!store.getters.isLoggedIn) {\r\n // next({ path: path, query: query });\r\n // return;\r\n // }\r\n\r\n // let haveRole = false;\r\n // let page = to.matched[1].meta.page;\r\n // let roles = store.getters.accessRoles;\r\n // for (var k = 0; k < roles.length; k++) {\r\n // if (roles[k].page_id == page) {\r\n // haveRole = true;\r\n // break;\r\n // }\r\n // }\r\n // if (haveRole == false) {\r\n // next({ path: path, query: query });\r\n // return;\r\n // }\r\n // }\r\n\r\n next();\r\n});\r\n\r\ni18n.locale = store.state.layout.language;\r\n// i18n.locale = \"zh\";\r\n\r\nexport const app = new Vue({\r\n router,\r\n store,\r\n i18n,\r\n render: h => h(App)\r\n}).$mount(\"#app\");\r\n","import mod from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./app.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../node_modules/css-loader/index.js??ref--7-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./app.vue?vue&type=style&index=0&lang=scss&\"","export default {\r\n appTitle: process.env.VUE_APP_TITLE,\r\n appVersion: process.env.VUE_APP_VERSION,\r\n baseUrl: process.env.VUE_APP_BASE_URL,\r\n userBaseUrl: \"/IipuSIvXMU\",\r\n gameResultDetailUrl: \"https://result.apilive22.com/result?bet_id=\",\r\n accessRoles: {\r\n function: \"function\",\r\n page: \"page\",\r\n role: \"role\",\r\n user: \"user\",\r\n setting: \"setting\",\r\n account: \"account\",\r\n promotion: \"promotion\",\r\n report: \"report\",\r\n survey: \"survey\",\r\n },\r\n accessUrlPrefix: {\r\n function: \"/system\",\r\n page: \"/system\",\r\n role: \"/system\",\r\n user: \"/system\",\r\n setting: \"/system\"\r\n },\r\n loginUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/userlogin\";\r\n },\r\n functionListUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/getfunctionlist\";\r\n },\r\n addFunctionUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/addfunction\";\r\n },\r\n editFunctionUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/editfunctioninfo\";\r\n },\r\n deleteFunctionUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/deletefunction\";\r\n },\r\n pageListUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/getpagelist\";\r\n },\r\n addPageUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/addpage\";\r\n },\r\n editPageUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/editpageinfo\";\r\n },\r\n deletePageUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/deletepage\";\r\n },\r\n roleListUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/getrolelist\";\r\n },\r\n addRoleUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/addrole\";\r\n },\r\n editRoleUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/editroleinfo\";\r\n },\r\n deleteRoleUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/deleterole\";\r\n },\r\n userListUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/getuserlist\";\r\n },\r\n editUserStatusUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/userstatusupdate\";\r\n },\r\n addUserUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/createuser\";\r\n },\r\n editUserUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/updateuser\";\r\n },\r\n resetPwdUserUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/userpasswordreset\";\r\n },\r\n getUserRoleUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/getuserrole\";\r\n },\r\n addUserRoleUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/useraddroles\";\r\n },\r\n pageFunctionListUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/getpagefunctionlist\";\r\n },\r\n pageRoleListUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/getpagerolelist\";\r\n },\r\n editPageFunctionUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/upsertpagefunction\";\r\n },\r\n editPageRoleUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/upsertpagerole\";\r\n },\r\n changePwdUserUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/userchangepassword\";\r\n },\r\n accountDetailsUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/accountdetail\";\r\n },\r\n accountProfileUnblockUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/accountprofileunblock\";\r\n },\r\n addMasterUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/addmaster\";\r\n },\r\n getMasterListUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/getmasterlist\";\r\n },\r\n getMemberListUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/getmemberlist\";\r\n },\r\n getOperatorListUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/getoperatorlist\";\r\n },\r\n passwordResetUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/passwordreset\";\r\n },\r\n statusUpdateUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/statusupdate\";\r\n },\r\n updateAccountUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/updateaccount\";\r\n },\r\n getPromotionListUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/getpromotionlist\";\r\n },\r\n addPromotionUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/addpromotion\";\r\n },\r\n updatePromotionUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/updatepromotion\";\r\n },\r\n getIBankListUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/getibanklist\";\r\n },\r\n updateIBankStatusUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/updateibankstatus\";\r\n },\r\n claimTypeLookupUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/claimtypelookup\";\r\n },\r\n addPromoPackageUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/addpromotionpackage\";\r\n },\r\n getPromoPackageListUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/getpromotionpackagelist\";\r\n },\r\n updatePromoPackageStatusUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/updatepromopackagestatus\";\r\n },\r\n dailyStatementCompanyUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/dailystatementcompany\";\r\n },\r\n dailyWinloseUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/dailywinlose\";\r\n },\r\n gameResultSlotsUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/gameresultslots\";\r\n },\r\n surveyAddUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/surveyadd\";\r\n },\r\n surveyLookupUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/surveylookup\";\r\n },\r\n surveyStatusUpdateUrl() {\r\n return this.baseUrl + this.userBaseUrl + \"/surveystatusupdate\";\r\n },\r\n};\r\n"],"sourceRoot":""}