{"version":3,"sources":["webpack:///./src/utilities/modalDialog.js","webpack:///./src/store/modules/industryLandingPage/exhibitorList.js","webpack:///./src/store/modules/industryLandingPage/exhibitorProfile.js","webpack:///./src/store/modules/industryLandingPage/exhibitorSymposias.js","webpack:///./src/store/modules/industryLandingPage/exhibitorProducts.js","webpack:///./src/store/modules/industryLandingPage/exhibitorMeetings.js","webpack:///./src/store/modules/industryLandingPage/exhibitorProductsAll.js","webpack:///./src/store/modules/industryLandingPage/symposiaList.js","webpack:///./src/store/modules/industryLandingPage/industryModel.js","webpack:///./src/store/modules/charity.js","webpack:///./src/store/modules/header.js","webpack:///./src/store/modules/meetings.js","webpack:///./src/store/modules/config.js","webpack:///./src/store/modules/userTicket.js","webpack:///./src/store/modules/program.js","webpack:///./src/store/modules/componentVisibility.js","webpack:///./src/store/modules/singleSignOn.js","webpack:///./src/store/modules/user.js","webpack:///./src/store/modules/auth.js","webpack:///./src/store/modules/authV2.js","webpack:///./src/store/modules/vmUser.js","webpack:///./src/store/modules/contactForm.js","webpack:///./src/store/modules/publicExhibitorList.js","webpack:///./src/store/modules/highlightedSessions.js","webpack:///./src/store/modules/sessionsForEvaluation.js","webpack:///./src/store/modules/instancesState.js","webpack:///./src/store/modules/personalProgram.js","webpack:///./src/store/modules/userDocuments/UserDocuments.js","webpack:///./src/store/modules/termsAndConditions.js","webpack:///./src/store/modules/advertisements.js","webpack:///./src/store/modules/pushnotifications.js","webpack:///./src/store/modules/eventDashboard.js","webpack:///./src/store/modules/serverTime.js","webpack:///./src/store/modules/sessionRecordingData.js","webpack:///./src/store/modules/userDocuments/ModuleConfig.js","webpack:///./src/store/modules/error.js","webpack:///./src/store/index.js","webpack:///./src/utilities/theme.js","webpack:///./src/utilities/tracking.js","webpack:///./src/states/notification.js","webpack:///./src/states/event-bus.js","webpack:///./src/states/user.js","webpack:///./src/utilities/headerModel.js","webpack:///./src/utilities/accessControl.js","webpack:///./src/utilities/utils.js"],"names":["accessDeniedDialog","event","CustomEvent","detail","message","window","dispatchEvent","boothGuruDialog","hcpDialog","contactFormDialog","firstname","surname","email","speaker","Firstname","Surname","Email","info","symposiaLeadsDialog","data","callback","ratingReminderDialog","exhibitorList","namespaced","state","list","result","loading","searching","fuseJs","mutations","setList","payload","Fuse","keys","maxPatternLength","minMatchCharLength","threshold","startLoading","stopLoading","startSearching","stopSearching","actions","load","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","commit","_store$getters$config","useCompanyAccountsV2","companyAccounts","wrap","_context","prev","next","store","getters","configV2","defaultV2","exhibitionApi","getCompanyAccountsListV2","t0","sent","getCompanyAccountsList","stop","search","_ref2","_callee2","dispatch","fuseResult","i","len","filterBy","comparator","tags","_context2","text","length","push","item","Object","prototype","hasOwnProperty","call","filter","prop","Array","isArray","include","isIncluded","value","isExcluded","exclude","sorting","toLowerCase","sort","a","b","nameA","Name","toUpperCase","nameB","rankinga","Sort","rankingb","_shift","_shift2","_toConsumableArray","BoothNumbers","shift","toString","localeCompare","numeric","_item$Tags","Tags","some","t","includes","abrupt","getProfileByIdV2","_ref3","_callee3","_context3","find","exhibitor","CompanyAccountId","exhibitorProfile","profiles","profilesIdIndexMapping","symposias","loadingProfile","addProfile","idx","startLoadingProfile","stopLoadingProfile","getProfileById","id","companyAccountProfile","getCompanyAccountProfile","exhibitorSymposias","symposiaList","loadingSymposiaList","addSymposiaList","startLoadingSymposiaList","loadingSymposias","stopLoadingSymposiaList","getSymposiaListForId","_ref2$onlyPublic","onlyPublic","getCompanyAccountExhibitionSymposiaList","exhibitorProducts","products","boothItem","addProducts","addBoothItem","getProductsForId","getCompanyAccountExhibitionProducts","getVmxBoothItems","items","getVmxBoothData","getProductPdfUrl","exhibitorMeetings","meetings","addMeetings","getMeetingsForId","getCompanyAccountExhibitionMeetings","exhibitorProductsAll","setProducts","getAllExhibitorProducts","options","fuse","tag","_defineProperty","key","sortByDate","Date","StartDateTime","sortByName","undefined","sensitivity","sortTagsbyName","sortByCompanyName","CompanyAccountName","shuffleArray","array","j","Math","floor","random","companies","days","daysF","companiesBySponsorType","setTags","setCompanies","setDays","setDaysF","setCompaniesBySponsorType","filterBySessionTypeF","dayFilterByArrayF","groupByPropF","groupsSortF","dayObject","_i","spType","dayTags","getExhibitionSymposiaList","SessionType","Id","name","reduce","groupedSymposia","currentValue","groupByValueF","gSymposia","dayjs","format","sortIdx","indexOf","symposia","day","SponsorType","groups","Set","session","map","substring","date","_result","_tags","dayTagArr","company","featuredId","featuredArray","restArray","_arrLive$sort$concat","_arrLive$sort","selectedTimezone","arrLive","arrNotStarted","arrEnded","currentTime","startTime","endTime","_typefilter$filterBy","_tags2","_companies","typefilter","_result2","_i5","_result3","groupByProp","groupsSort","_i6","_j","_j2","k","ignoreLocation","oneOfTags","sortBy","concat","utilsComponents","eventTimezone","tz","forEach","x","EndDateTime","isAfter","isBetween","apply","dateTabs","groupByValue","reloadTags","getSymposiasForId","_ref4","industryModel","model","fetchModelPromise","setModel","setFetchPromise","loadModel","language","fetchConfigPromise","industryModelApi","getIndustryModel","then","initialState","config","root","charity","projects","challenges","highscores","Projects","Challenges","Companies","Participants","selectedProject","scores","exhibitorChallenges","companyId","selectedId","survey","projectById","project","parsedProject","_objectSpread","banners","BannerFiles","imageUrl","Key","selectedChallenge","_state$exhibitorChall","selectedCh","highscore","nested","selectedScores","sortedScores","Points","pageConfig","fetchConfig","uniFetch","_templateObject","_taggedTemplateLiteral","p","apiBase","query","eventId","resourcename","res","console","log","JSON","parse","resourcevalue","catch","err","fetchProjects","_templateObject2","fetchChallenges","_templateObject3","fetchHighscores","_templateObject4","fetchProjectHighscores","_ref5","projectId","_templateObject5","fetchExhibitorChallenges","_ref6","_ref7","_templateObject6","setSelectedChallenge","_ref8","_state$exhibitorChall2","formerSelectedId","rest","_objectWithoutProperties","_excluded","ch","_templateObject7","surveyApiBase","method","SurveyRequest","getSurveyRes","submitSurveyPoints","_ref9","_ref10","points","_templateObject8","userid","userId","challengeid","charityProjectId","correctedAnswers","_state$exhibitorChall3","selectedChIdx","findIndex","finishedCh","EvaluationDone","setState","_ref11","header","virutalMeetingAPI","getHeaderModel","fetchListPromise","loadList","getExhibitionMeetingsForEvent","setConfig","loadConfig","configApi","getConfig","c","configForKey","entry","e","userTicket","fetchUserPromise","setUserTicket","resetState","loadUserTicket","_arguments","arguments","reload","userApi","getUserTickets","uTicket","status","reset","EventDetails","getProgramDays","selectedDates","selectedItem","shortname","eventShortname","layer","visibilityForKey","json","singleSignOn","user","ssoLinks","ssoEvaluatedUser","token","redirectUrl","transfer","areTermsAccepted","ssoError","isUserComparisonNeeded","setConfLinks","setEvaluatedUser","setUserToken","setRedirectUrl","setTransferData","setTermsAndConditions","setSsoError","setUserDataComparisonNeeded","ssoLoadConfiguration","sso","configuration","ssoEvaluateCurrentUser","correlate","_res$data","userDataComparisonNeeded","redirect","statusAction","ssoRegisterExternalAccount","registerExternalAccount","ssoAcceptTermsAndConditions","_callee4","_context4","acceptTermsAndConditions","ssoUserConfirmPassword","_callee5","password","returnUrl","_context5","userPasswordConfirm","ssoExternalRegisterAccount","_callee6","_context6","externalRegisterAccount","loadExternalUserCompareData","_callee7","_context7","ssoSyncExternalUser","doSync","_callee8","_context8","syncExternalUser","ssoSetTokenData","_callee9","_context9","ssoUser","ssoEvaluatedUserStatusAction","ssoAreTermsAccepted","ssoUserToken","ssoRedirectUrl","ssoTransferUser","ssoUserDataComparisonNeeded","userRequest","userFormFilled","userFormPromise","userFormFilledV2","userFormPromiseV2","webcastTokenPromise","webcastToken","webcastTokenPromises","webcastTokens","setUser","setUserRequest","setUserFormFilled","setUserFormPromise","setUserFormFilledV2","setUserFormPromiseV2","setWebcastTokenPromise","setWebcastToken","setWebcastTokens","short","webcasttoken","loadUser","params","loadUserNew","getManageUser","u","loadWebcastToken","fetchWebcastTokenrPromise","getUserWebcastToken","wt","userFormCompleteV2","loadUserCompleteNew","getUserFormCompleteV2","userFormComplete","getUserFormComplete","saveUserProfile","UserModel","fetchPromise","saveUser","_state$user","UserId","getWebcastToken","auth","confirmation","authRequest","accountRequest","authSuccess","authToken","authError","authLogout","passwordRequest","Credentials","authApi","loginUser","createUser","forgotPassword","getExternalUserData","confirmationRequest","sendConfirmation","isAuthenticated","authStatus","transferRequest","confirmEmail","resetPassword","transferUser","vmUser","fetchVmUserPromise","loadVmUser","getVmUser","vUser","contactForm","emailSent","comments","presentationComment","sessionComment","commentLike","inappropriateComment","sendEmailRequest","getCommentRequest","createCommentRequest","createPresentationRequest","getCommentLike","getInappropriateComment","sendCustomMail","EmailForm","contactFormApi","getComments","createSessionComment","createPresentationComment","sortByNumber","publicExhibitorList","getPublicCompanyAccountsList","filterList","filterByKeys","filterByKey","filteredCompanyList","sortArray","includeFilter","excludeFilter","n","textA","textB","highlightedSessions","lists","sessionsList","sessionFetchPromises","fetchPromises","presentationLists","fetchPresentationPromises","authorLists","fetchAuthorPromises","programGrade","setSessionsList","setSessionFetchPromise","setPresentationList","setPresentationFetchPromise","setAuthorList","setAuthorFetchPromise","_state$lists","_state$fetchPromises","highlightedSessionsApi","getHighlightedSessions","selectedSessionsLoad","sessionIds","getSelectedSessions","loadPresentations","getHighlightedPresentations","loadAuthors","getHighlightedAuthors","presentationList","authorList","filterByValue","stringify","ascendingSessionName","SessionNameA","SessionNameB","SessionName","comparison","sessionForEval","sessions","fetchSessionsPromise","setSessions","loadSessions","evaluationAPI","getSessionsForEvaluation","s","reloadSessions","instance","instanceUrlParam","apiBaseUrl","identityUrl","surveyApi","cssVars","moduleName","modelConfig","backLink","currentTab","industryContentAccess","hcp","_paq","headerModel","themeLoaded","preview","loungePreview","linkPage","groupBy","themesStyles","superUserToggle","superUser","boothGuru","history","historyBack","menuDisabled","companyLoungeRedirect","disableHeader","headerModelInitalized","isAppContainer","isTerminalContainer","swDownload","maintenance","mtvApiBaseUrl","createAccountReturnPage","getLinkPage","getCreateAccountReturnPage","getInstance","getInstanceUrlParam","getEvent","getCompanyId","getEventId","getLanguage","getApiBaseUrl","getIdentityUrl","getSurveyApi","getModelConfig","getCssVars","getCssVarValue","getThemesStyles","getModuleName","getBackLink","getCurrentTab","getIndustryContentAccess","getHcpStatus","getToken","getPaq","getIsAppContainer","getIsTerminalContainer","getInitializedHead","getThemeLoaded","getPreview","getInVMX","inVMX","getSWDownload","getLoungePreview","getFilterBy","getGroupBy","getSortby","getSuperUser","getSuperUserToggle","getBoothGuru","getHistory","getHistoryBack","getMenuDisabled","getCompanyLoungeRedirectDisabled","getDisableHeader","getMaintenance","getMTVApiBaseUrl","removeHistory","pop","setCreateAccountReturnPage","setLinkPage","setInstance","setInstanceUrlParam","setEvent","setCompanyId","setEventId","val","setMTVApiBaseUrl","url","setLanguage","document","documentElement","setAttribute","setApiBaseUrl","setIdentityUrl","setSurveyApi","setModelConfig","setCssVars","vars","setModuleName","setBackLink","setSWDownload","setCurrentTab","setIndustryContentAccess","setInitializedHead","setHcpStatus","setPaq","paq","setHeaderModel","setThemeLoaded","loaded","setPreview","boolean","setLoungePreview","setFilterBy","setGroupBy","setSortBy","setThemesStyles","setSuperUser","setToken","setSuperUserToggle","setBoothGuru","setHistory","setHistoryBack","setMenuDisabled","setInVMX","setCompanyLoungeRedirectDisabled","setDisableHeader","setIsAppContainer","setIsTerminalContainer","setMaintenance","personalProgram","rawList","speakerList","personalList","setSymposiaFavorites","setPresentationFavorites","setSpeakerFavourites","loadScheduleNew","programApi","getPersonalProgram","listResult","Result","Schedule","SessionId","PresentationId","localStorage","setItem","String","_x","set","splice","symposiaIdList","presentationIdList","speakerIdList","userDocuments","fetchUserDocumentPromise","setUserDocuments","loadUserDocuments","userDocumentApi","getUserDocuments","events","EventShort","SocietyShort","documentTypes","FileType","termsAndConditions","dataProtection","termsAndConditionsOrg","dataProtectionOrg","fetchTermsAndConditionsPromise","fetchTermsAndConditionsPromiseOrg","setDataProtection","setTermsAndConditionsOrg","setDataProtectionOrg","setFetchPromiseOrg","loadTermsAndConditions","termsAndConditionsApi","getTermsAndConditionsOrg","tnc","IsPrivacyPolicy","Content","getTermsAndConditions","tncOrg","dataOrg","advertisement","advertisements","fetchAdvertisementPromise","setAdvertisement","loadAdvertisement","advertisementAPI","getEventAdvertisement","ad","pushnotification","pushnotifications","fetchPushnotificationsPromise","setPushnotification","loadPushnotification","pushnotificationsAPi","getEventPushnotifications","eventDashboard","eventDashboardPromise","setEventDashboard","setEventDashboardPromise","eventDashboardApi","getEventDashboard","serverTime","setServerTime","loadServerTime","serverTimeApi","getServerTime","time","getTime","sessionRecordingData","jumptimes","setJumptimes","addJumptimes","getJumptimes","moduleConfig","baseUrl","oauthUrl","apiUrl","clientId","eventShort","context","setUrlConfigs","loadEventInformation","eventInfo","getEventInformation","errorStore","errors","addError","clearErrors","error","firstError","lastError","Vue","use","Vuex","Store","plugins","createPersistedState","paths","modules","ILPIndustryModel","ILPExhibitorList","ILPExhibitorProfile","ILPExhibitorSymposias","ILPSymposiaList","ILPExhibitorProducts","ILPExhibitorMeetings","ILPExhibitorProductsAll","Error","sessionsForEvaluation","instancesState","UserDocuments","ModuleConfig","TermsAndConditions","program","AuthV2","visibilityConfig","clearAll","LB","createStyle","customStyles","styles","varName","replaceCssVar","regex","match","contrastColor","hex","cutHex","h","charAt","hexToR","parseInt","hexToG","hexToB","hRed","hGreen","hBlue","cBrightness","VueCookies","loadScript","trackerScript","settings","Promise","resolve","reject","script","createElement","async","defer","src","head","getElementsByTagName","appendChild","onload","onerror","getMatomo","Piwik","getAsyncTracker","_config","WeakMap","_matomoConfig","_googleConfig","_boothguruConfig","Tracking","_classCallCheck","_classPrivateFieldInitSpec","_classPrivateFieldSet","this","_createClass","newConfig","_this","_classPrivateFieldGet","matomoConfig","provider","googleConfig","boothguruConfig","setMatomoConfig","setGoogleConfig","setBoothGuruConfig","_classPrivateFieldGet2","_classPrivateFieldGet3","_classPrivateFieldGet4","trackUrl","siteId","disableCookies","clientScriptUrl","checkScript","boothGuruUrl","_classPrivateFieldGet5","_classPrivateFieldGet6","gaId","analyticsCode","analyticsCodeActive","disableStr","dateAdd","setDate","getUTCDate","cookieExpirationDate","$cookies","get","cookie","dataLayer","gtag2","send_page_view","gtag","$","customPageTitle","pagePath","_typeof","_classPrivateFieldGet7","_classPrivateFieldGet8","matomo","trackPageView","_classPrivateFieldGet9","_classPrivateFieldGet10","page_path","page_title","category","action","_classPrivateFieldGet11","_classPrivateFieldGet12","trackEvent","event_category","event_label","install","notificationHub","$notificationHub","connection","startedPromise","manuallyClosed","accountHub","$accountHub","aConnection","aStartedPromise","startSignalRAccount","jwt","intmodal","persist","uuid","signalrHubUrl","getInstanceConfig","signalrHub","start","_start","HubConnectionBuilder","withUrl","configureLogging","LogLevel","Information","build","on","param","$emit","onclose","startSignalR","groupName","withCredentials","invoke","setTimeout","notification","stopSignalR","stopSignalRAccount","notificationClosed","accountClosed","EventBus","getUser","getItem","unsetUser","removeItem","EventId","getDenyAllowPolicies","type","policies","useAppAccessMatrix","defaults","policyGetter","policiesConfig","policiesGroups","policies_groups","acc","PoliciesIds","restPol","Policies","policyId","denyAllowRules","deny","allow","rules","policy","_policy$Type2","_policy$Identifier2","_policy$Type","_policy$Identifier","Identifier","Type","Effect","participantType","participantTypeValid","societyMemberType","country","userTickets","todayDate","storeUserData","userLoggedIn","EnableHCP","ParticipantTypeName","ParticipantTypeValid","SocietyMemberType","Country","userState","tickets","loggedIn","formatTicketDate","accessDenyReasonsObj","evalPolicy","checkId","effect","arr","accessDenyReasons","userPaidTicket","userValidTicket","userNoCommentDeny","userNoMessagesDeny","userDenyNetworking","paid","commentDeny","messageDeny","networkingDeny","valid","vIdValid","elEval","paidEval","hcpVal","lLoggedInVal","userVisitorId","timezone","Requirements","r","PrincipalField","Values","setDefault","currentSession","Number","isInvitedByCurrentExhibitor","_step","_iterator","_createForOfIteratorHelper","done","ticket","IsPayed","f","IsValid","_step2","_iterator2","TicketTypeName","_step3","_iterator3","_step4","_iterator4","_step5","_iterator5","_step6","_iterator6","TicketFrom","TicketTo","_step7","_iterator7","dateNow","ticketFrom","ticketTo","diff","VisitorId","_step8","_iterator8","vId","ConditionType","accessControl","Version","accessControlSession","accessControlSessionRecording","accessControlPages","page","accessControlUrl","accessControlKey","addProtocolToUrlIfMissing","secure","proto","startsWith","getUrlParameter","queryString","replace","RegExp","results","exec","decodeURIComponent","redirectOAuthAuthorize","to","redirectUri","URL","location","origin","path","searchParams","append","instanceConfig","authorizeUrl","oauth2","client_id","redirect_uri","scope","response_type","encodeURIComponent","join","href","formatConvenorModelList","unformattedList","formattedList","formatChairList","formatCompanyDatabaseList","formatSearchResult","response","getSession","eventData","CompanyId","corsProxy","proxy","formButtonDeactivate","buttons","button","style","visibility","nameToCssClassName","nl2br","str","breakTag","ObjectHasNestedProperty","object","propertyPath","properties","split","obj","changeFavicon","link","oldLink","getElementById","rel","removeChild","atoz","ascendingLabel","productA","productB","label","ascending","ascendingCompanyName","CompanyName","descending","descendingCompanyName","rateAscending","Rating","rateDescending","getDomain","hostname","isUrl","isString","getRouteWithDefaultParams","route","appendDefaultParamsToRoute","mergedParams","assign","isObject","shallowEqual","object1","object2","keys1","keys2","_keys","getCETorCESTDate","localDate","utcOffset","getTimezoneOffset","cetOffset","cestOffset","cetOffsetInMilliseconds","cestOffsetInMilliseconds","cestDateStart","cestDateFinish","localDateTime","setTime","getFullYear","cestDateStartTime","cestDateFinishTime","getObjKey","appendStyletoHead","css","headerStyle","addTicketCookie","bookingString","isHcp","accessDays","getDaysArray","d","getDate","itemKey","daylist","v","toISOString","slice","advancedTracking","tConfig","_slicedToArray","advancedUserTracking","advancedTrackingFormat","source","element","elementInfo","eInfo","valueToM","mUserId","trackPageOpen","pageName","tracking","trackPageLeave","setPageTitle","newPageTitles","PageTitles","timeout","additionalProps","constructor","entries","body","loadStylesheet","deleteScript","querySelector","remove","showHome","classList","contains","openAd","setImageMapHeader","localStringFormatter","string","languageRegex","locale","test"],"mappings":"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","file":"js/app-ea1f58e8.ad41f843.js","sourcesContent":["export default {\n accessDeniedDialog() {\n const event = new CustomEvent('accessDenied', {\n detail: {\n message: 'accessDenied',\n },\n })\n window.dispatchEvent(event)\n },\n\n boothGuruDialog() {\n const event = new CustomEvent('boothGuru', {\n detail: {\n message: 'boothGuru',\n },\n })\n window.dispatchEvent(event)\n },\n\n hcpDialog() {\n const event = new CustomEvent('hcpDialog', {\n detail: {\n message: 'hcpDialog',\n },\n })\n window.dispatchEvent(event)\n },\n\n contactFormDialog(firstname, surname, email) {\n const speaker = {}\n speaker.Firstname = firstname\n speaker.Surname = surname\n speaker.Email = email\n\n const event = new CustomEvent('contactForm', {\n detail: {\n message: 'contactForm',\n info: speaker,\n },\n })\n window.dispatchEvent(event)\n },\n\n symposiaLeadsDialog(data, callback) {\n const event = new CustomEvent('symposiaLeads', {\n detail: {\n message: 'symposiaLeads',\n info: data,\n callback,\n },\n })\n window.dispatchEvent(event)\n },\n\n ratingReminderDialog() {\n const event = new CustomEvent('ratingReminder', {\n detail: {\n message: 'ratingReminder',\n },\n })\n window.dispatchEvent(event)\n },\n}\n","// import getCompanyAccountsList from '../../../api-mock/exhibitors-list.js';\nimport Fuse from 'fuse.js'\nimport exhibitionApi from '../../../api/exhibition'\nimport store from '~/store'\n\nconst exhibitorList = {\n namespaced: true,\n state: {\n list: null,\n result: [],\n loading: false,\n searching: false,\n fuseJs: null,\n },\n mutations: {\n setList(state, payload) {\n state.list = payload\n state.fuseJs = new Fuse(state.list, {\n keys: ['Name', 'Tags', 'ExhibitorBooths.BoothNumber'],\n maxPatternLength: 32,\n minMatchCharLength: 3,\n threshold: 0.3,\n })\n },\n startLoading(state) {\n state.loading = true\n },\n stopLoading(state) {\n state.loading = false\n },\n startSearching(state) {\n state.searching = true\n },\n stopSearching(state) {\n state.searching = false\n },\n },\n actions: {\n async load({ commit, state }) {\n if (state.list == null) {\n const useCompanyAccountsV2 = 'useCompanyAccountsV2' in store.getters['config/configForKey']('app_config')?.configV2?.defaultV2 ? store.getters['config/configForKey']('app_config').configV2.defaultV2.useCompanyAccountsV2 : false\n const companyAccounts = useCompanyAccountsV2 ? await exhibitionApi.getCompanyAccountsListV2() : await exhibitionApi.getCompanyAccountsList()\n commit('setList', companyAccounts)\n }\n },\n async search({ commit, state, dispatch }, payload) {\n if (state.list == null) {\n await dispatch('load')\n }\n commit('startSearching')\n let result = []\n if (payload && payload.text) {\n const fuseResult = state.fuseJs.search(payload.text)\n for (let i = 0, len = fuseResult.length; i < len; i += 1) { // TODO: check if for is really needed\n result.push(fuseResult[i].item)\n }\n } else {\n result = state.list\n }\n if (payload && Object.prototype.hasOwnProperty.call(payload, 'filterBy')) {\n const { filterBy } = payload\n result = result.filter((item) => {\n for (const prop in filterBy) { // TODO: check if for is really needed\n // prop: SponsorType oder CompanyType\n if (Object.prototype.hasOwnProperty.call(item, prop)) {\n let filter = filterBy[prop]\n if (Array.isArray(filter)) {\n filter = { include: filter }\n }\n if (Object.prototype.hasOwnProperty.call(filter, 'include')) {\n let isIncluded = false\n for (let i = 0, len = filter.include.length; i < len; i += 1) { // TODO: check if for is really needed\n const value = filter.include[i]\n if (item[prop] === value) {\n isIncluded = true\n }\n }\n if (!isIncluded) {\n return false\n }\n }\n if (Object.prototype.hasOwnProperty.call(filter, 'exclude')) {\n let isExcluded = false\n for (let i = 0, len = filter.exclude.length; i < len; i += 1) { // TODO: check if for is really needed\n const value = filter.exclude[i]\n // if (item[prop].toLowerCase() === value.toLowerCase()) {\n if (item[prop] === value) {\n isExcluded = true\n }\n }\n if (isExcluded) {\n return false\n }\n }\n }\n }\n return true\n })\n }\n\n if (payload && payload.sorting) {\n if (payload.sorting.toLowerCase() === 'alphabetically') {\n result = result.sort((a, b) => {\n const nameA = a.Name.toUpperCase()\n const nameB = b.Name.toUpperCase()\n if (nameA < nameB) {\n return -1\n }\n if (nameA > nameB) {\n return 1\n }\n return 0\n })\n }\n\n if (payload.sorting.toLowerCase() === 'ranking') {\n result = result.sort((a, b) => {\n const rankinga = a.Sort\n const rankingb = b.Sort\n if (rankinga < rankingb) {\n return -1\n }\n if (rankinga > rankingb) {\n return 1\n }\n return 0\n })\n }\n\n if (payload.sorting.toLowerCase() === 'booth') {\n // eslint-disable-next-line max-len\n const comparator = (a, b) => [...a.BoothNumbers].shift()?.toString().localeCompare([...b.BoothNumbers].shift()?.toString(), 'en', { numeric: true })\n result = result.sort(comparator)\n }\n }\n\n if (payload?.tags) {\n const { tags } = payload\n if (tags.length) {\n result = result.filter((item) => item.Tags?.some((t) => tags.includes(t)))\n }\n }\n commit('stopSearching')\n return result\n },\n async getProfileByIdV2({ commit, state, dispatch }, payload) {\n if (state.list == null) {\n await dispatch('load')\n }\n\n return state.list.find((exhibitor) => exhibitor.CompanyAccountId === payload)\n }\n },\n getters: {\n list(state) {\n return state.list\n },\n loading(state) {\n return state.loading\n },\n searching(state) {\n return state.searching\n },\n },\n}\nexport default exhibitorList\n","import exhibitionApi from '../../../api/exhibition'\n\nconst exhibitorProfile = {\n namespaced: true,\n state: {\n profiles: [],\n profilesIdIndexMapping: {},\n symposias: [],\n loadingProfile: 0,\n },\n mutations: {\n addProfile(state, payload) {\n const idx = state.profiles.push(payload) - 1\n state.profilesIdIndexMapping[payload.CompanyAccountId] = idx\n },\n\n startLoadingProfile(state) {\n state.loadingProfile++\n },\n stopLoadingProfile(state) {\n state.loadingProfile--\n },\n },\n actions: {\n async getProfileById({ commit, state }, id) {\n if (!Object.prototype.hasOwnProperty.call(state.profilesIdIndexMapping, id)) {\n commit('startLoadingProfile', id)\n const companyAccountProfile = await exhibitionApi.getCompanyAccountProfile(id)\n if (companyAccountProfile) {\n commit('addProfile', companyAccountProfile)\n }\n commit('stopLoadingProfile', id)\n }\n\n if (Object.prototype.hasOwnProperty.call(state.profilesIdIndexMapping, id)) {\n const idx = state.profilesIdIndexMapping[id]\n return state.profiles[idx]\n }\n return null\n },\n },\n getters: {\n loadingProfile(state) {\n return state.loadingProfile\n },\n },\n}\nexport default exhibitorProfile\n","import exhibitionApi from '../../../api/exhibition'\n\nconst exhibitorSymposias = {\n namespaced: true,\n state: {\n symposiaList: [],\n loadingSymposiaList: 0,\n },\n mutations: {\n\n addSymposiaList(state, payload) {\n state.symposiaList[payload.id] = payload.symposiaList\n },\n startLoadingSymposiaList(state) {\n state.loadingSymposias++\n },\n stopLoadingSymposiaList(state) {\n state.loadingSymposias--\n },\n },\n actions: {\n async getSymposiaListForId({ commit, state }, { id, onlyPublic = true }) {\n if (!Object.prototype.hasOwnProperty.call(state.symposiaList, id)) {\n commit('startLoadingSymposiaList', id)\n\n const symposiaList = exhibitionApi.getCompanyAccountExhibitionSymposiaList(id, onlyPublic)\n commit('addSymposiaList', {\n id,\n symposiaList,\n })\n commit('stopLoadingSymposiaList', id)\n }\n return Object.prototype.hasOwnProperty.call(state.symposiaList, id) ? state.symposiaList[id] : []\n },\n },\n\n getters: {\n loadingSymposiaList(state) {\n return state.loadingSymposiaList\n },\n },\n}\nexport default exhibitorSymposias\n","import exhibitionApi from '../../../api/exhibition'\n\nconst exhibitorProducts = {\n namespaced: true,\n state: {\n products: [],\n boothItem: null,\n loading: 0,\n },\n mutations: {\n addProducts(state, payload) {\n state.products[payload.id] = payload.products\n },\n addBoothItem(state, payload) {\n state.boothItem = payload\n },\n startLoading(state) {\n state.loading++\n },\n stopLoading(state) {\n state.loading--\n },\n },\n actions: {\n async getProductsForId({ commit, state }, id) {\n if (!Object.prototype.hasOwnProperty.call(state.products, id)) {\n commit('startLoading', id)\n const products = await exhibitionApi.getCompanyAccountExhibitionProducts(id)\n commit('addProducts', {\n id,\n products,\n })\n commit('stopLoading', id)\n }\n return Object.prototype.hasOwnProperty.call(state.products, id) ? state.products[id] : []\n },\n async getVmxBoothItems({ commit, state }, id) {\n // if (state.boothItem != null) {\n \n // return state.boothItem\n \n // }\n const items = await exhibitionApi.getVmxBoothData(id)\n commit('addBoothItem', items,\n )\n return items\n },\n async getProductPdfUrl({ commit, state }, id) { \n const items = await exhibitionApi.getProductPdfUrl(id) \n return items\n },\n },\n\n getters: {\n loading(state) {\n return state.loading\n },\n },\n}\nexport default exhibitorProducts\n","import exhibitionApi from '../../../api/exhibition'\n\nconst exhibitorMeetings = {\n namespaced: true,\n state: {\n meetings: [],\n loading: 0,\n },\n mutations: {\n addMeetings(state, payload) {\n state.meetings[payload.id] = payload.meetings\n },\n startLoading(state) {\n state.loading++\n },\n stopLoading(state) {\n state.loading--\n },\n },\n actions: {\n async getMeetingsForId({ commit, state }, id) {\n if (!Object.prototype.hasOwnProperty.call(state.meetings, id)) {\n commit('startLoading', id)\n const meetings = await exhibitionApi.getCompanyAccountExhibitionMeetings(id)\n commit('addMeetings', {\n id,\n meetings,\n })\n commit('stopLoading', id)\n }\n return Object.prototype.hasOwnProperty.call(state.meetings, id) ? state.meetings[id] : []\n },\n },\n getters: {\n loading(state) {\n return state.loading\n },\n },\n}\nexport default exhibitorMeetings\n","import Fuse from 'fuse.js'\nimport exhibitionApi from '../../../api/exhibition'\n\nconst exhibitorProductsAll = {\n namespaced: true,\n state: {\n products: null,\n loading: 0,\n result: [],\n fuseJs: null,\n },\n mutations: {\n addProducts(state, payload) {\n state.products[payload.id] = payload.products\n },\n setProducts(state, payload) {\n state.products = payload\n state.fuseJs = new Fuse(state.products, {\n keys: ['Name', 'Description', 'Category', 'Short', 'Website', 'Tags', 'CompanyName'],\n maxPatternLength: 32,\n minMatchCharLength: 3,\n threshold: 0.3,\n })\n },\n startLoading(state) {\n state.loading = true\n },\n stopLoading(state) {\n state.loading = false\n },\n },\n actions: {\n async load({\n commit,\n state,\n }) {\n if (!state.loading && state.products == null) {\n commit('startLoading')\n const products = await exhibitionApi.getAllExhibitorProducts()\n commit('setProducts', products)\n commit('stopLoading')\n }\n },\n async search({\n state,\n dispatch,\n }, payload) {\n if (state.products == null) {\n await dispatch('load')\n }\n let result = []\n if (payload && payload.text) {\n const options = {\n keys: [\n 'Name',\n 'Description',\n 'Category',\n 'Short',\n 'Website',\n 'Tags',\n 'CompanyName',\n ],\n maxPatternLength: 32,\n minMatchCharLength: 3,\n threshold: 0.3,\n\n }\n const fuse = new Fuse(state.products, options)\n const fuseResult = fuse.search(payload.text)\n for (let i = 0, len = fuseResult.length; i < len; i += 1) { // TODO: check if for is really needed\n result.push(fuseResult[i].item)\n }\n } else {\n result = state.products\n }\n if (payload && Object.prototype.hasOwnProperty.call(payload, 'tags')) {\n const { tags } = payload\n result = result.filter((item) => {\n for (let i = 0, len = tags.length; i < len; i += 1) { // TODO: check if for is really needed\n const tag = tags[i]\n if (!item.Tags.includes(tag)) {\n return false\n }\n }\n return true\n })\n }\n if (payload && Object.prototype.hasOwnProperty.call(payload, 'filterBy')) {\n const { filterBy } = payload\n\n result = result.filter((item) => {\n for (const prop in filterBy) { // TODO: check if for is really needed\n if (Object.prototype.hasOwnProperty.call(item, filterBy[prop])) {\n let filter = filterBy[prop]\n if (Array.isArray(filter)) {\n filter = {\n [prop]: filter,\n }\n }\n if (Object.prototype.hasOwnProperty.call(filter, 'include')) {\n let isIncluded = false\n for (let i = 0, len = filter.include.length; i < len; i += 1) { // TODO: check if for is really needed\n const value = filter.include[i]\n\n for (const key in item) { // TODO: check if for is really needed\n if (key === value) {\n if (item[key]) {\n isIncluded = true\n }\n }\n }\n // if (item[prop] === value) {\n // isIncluded = true\n // }\n }\n if (!isIncluded) {\n return false\n }\n }\n if (Object.prototype.hasOwnProperty.call(filter, 'exclude')) {\n let isExcluded = false\n for (let i = 0, len = filter.exclude.length; i < len; i += 1) { // TODO: check if for is really needed\n const value = filter.exclude[i]\n\n for (const key in item) { // TODO: check if for is really needed\n if (key === value) {\n if (item[key]) {\n isExcluded = true\n }\n }\n }\n }\n if (isExcluded) {\n return false\n }\n }\n }\n }\n\n return true\n })\n }\n\n return result\n },\n },\n\n getters: {\n products(state) {\n return state.products\n },\n loading(state) {\n return state.loading\n },\n },\n}\nexport default exhibitorProductsAll\n","import store from '~/store'\nimport Fuse from 'fuse.js'\nimport dayjs from 'dayjs'\nimport utils from '~/utilities/utils'\nimport utilsComponents from 'm-anage.com.vmx-components/src/utilities/'\n\nimport exhibitionApi from '../../../api/exhibition'\n\nfunction sortByDate(a, b) {\n return new Date(a.StartDateTime || a.value) - new Date(b.StartDateTime || b.value)\n}\n\nfunction sortByName(a, b) {\n return a.Name.localeCompare(b.Name, undefined, { numeric: true, sensitivity: 'base' })\n}\n\nfunction sortTagsbyName(a, b) {\n return a.localeCompare(b)\n}\n\nfunction sortByCompanyName(a, b) {\n return (a.CompanyAccountName || a.Name).localeCompare(b.CompanyAccountName || b.Name)\n}\n\nfunction shuffleArray(array) {\n if (array) {\n for (let i = array.length - 1; i > 0; i -= 1) { // TODO: check if for is really needed\n const j = Math.floor(Math.random() * (i + 1));\n [array[i], array[j]] = [array[j], array[i]]\n }\n }\n}\n\nconst symposiaList = {\n namespaced: true,\n state: {\n list: null,\n tags: [],\n companies: [],\n days: [],\n daysF: [],\n companiesBySponsorType: {},\n result: [],\n loading: false,\n fuseJs: null,\n },\n mutations: {\n setList(state, payload) {\n state.list = payload\n state.fuseJs = new Fuse(state.list, {\n keys: [\n 'Name',\n 'CompanyAccountName',\n 'Presentation.Title',\n 'Presentation.SpeakerFirstname',\n 'Presentation.SpeakerSurname',\n 'Chairs.Firstname',\n 'Chairs.Surname',\n 'groups.Name',\n ],\n maxPatternLength: 32,\n minMatchCharLength: 3,\n threshold: 0.3,\n })\n },\n setTags(state, payload) {\n state.tags = payload\n },\n setCompanies(state, payload) {\n state.companies = payload\n },\n setDays(state, payload) {\n state.days = payload\n },\n setDaysF(state, payload) {\n state.daysF = payload\n },\n setCompaniesBySponsorType(state, payload) {\n state.companiesBySponsorType = payload\n },\n startLoading(state) {\n state.loading = true\n },\n stopLoading(state) {\n state.loading = false\n },\n },\n actions: {\n async load({\n commit,\n state,\n }, payload) {\n if (!state.loading && state.list == null) {\n commit('startLoading')\n const list = await exhibitionApi.getExhibitionSymposiaList()\n /* region dayfilter */\n const filterBySessionTypeF = payload\n let dayFilterByArrayF = list.filter((item) => {\n if (filterBySessionTypeF?.includes(item.SessionType)) {\n return item\n } if (filterBySessionTypeF?.includes(item.Id)) {\n return item\n }\n return null\n })\n\n const daysF = [{\n value: 'all',\n name: 'All Days',\n }]\n\n dayFilterByArrayF.sort(sortByDate)\n\n const groupByPropF = 'StartDateTime'\n const groupsSortF = []\n dayFilterByArrayF = dayFilterByArrayF.reduce((groupedSymposia, currentValue) => {\n let groupByValueF = currentValue[groupByPropF] || 'Other'\n const gSymposia = groupedSymposia\n if (groupByPropF === 'StartDateTime') {\n groupByValueF = dayjs(groupByValueF).format('DD MMMM YYYY')\n }\n\n let sortIdx = groupsSortF.indexOf(groupByValueF)\n if (sortIdx === -1) {\n groupsSortF.push(groupByValueF)\n sortIdx = groupsSortF.indexOf(groupByValueF)\n }\n\n if (!groupedSymposia[sortIdx]) {\n gSymposia[sortIdx] = {\n day: groupByValueF,\n symposia: [currentValue],\n }\n } else {\n gSymposia[sortIdx].symposia.push(currentValue)\n }\n return gSymposia\n }, [])\n\n // eslint-disable-next-line max-len\n for (let i = 0; i < dayFilterByArrayF.length; i += 1) { // TODO: check if for is really needed\n if (dayFilterByArrayF[i].day) {\n const dayObject = {\n value: dayFilterByArrayF[i].day,\n text: dayFilterByArrayF[i].day,\n }\n daysF.push(dayObject)\n }\n }\n const tags = []\n const companies = []\n const companiesBySponsorType = {}\n for (let i = 0; i < list.length; i += 1) { // TODO: check if for is really needed\n list[i].Tags = []\n if (list[i].CompanyAccountName && !companies.includes(list[i].CompanyAccountName)) {\n companies.push(list[i].CompanyAccountName)\n if (list[i].SponsorType) {\n const spType = list[i].SponsorType\n if (!Object.prototype.hasOwnProperty.call(companiesBySponsorType, spType)) {\n companiesBySponsorType[spType] = []\n }\n companiesBySponsorType[spType].push(list[i].CompanyAccountName)\n }\n\n companies.sort(sortTagsbyName)\n }\n\n if (Object.prototype.hasOwnProperty.call(list[i], 'groups') && list[i].groups) {\n for (let j = 0; j < list[i].groups.length; j += 1) { // TODO: check if for is really needed\n if (!tags.includes(list[i].groups[j].Name)) {\n tags.push(list[i].groups[j].Name)\n }\n list[i].Tags.push(list[i].groups[j].Name)\n }\n tags.sort(sortTagsbyName)\n }\n }\n\n const days = [...new Set(list.filter((session) => session.StartDateTime).map((session) => session.StartDateTime.substring(0, 10)))]\n\n const dayTags = days.map((date) => ({\n name: dayjs(date).format('dddd, DD MMMM'),\n value: date,\n }))\n commit('setCompaniesBySponsorType', companiesBySponsorType)\n commit('setCompanies', companies)\n commit('setTags', tags)\n commit('setList', list)\n commit('setDays', dayTags.sort(sortByDate))\n commit('setDaysF', daysF)\n commit('stopLoading')\n }\n },\n async search({\n commit,\n state,\n dispatch,\n }, payload) {\n if (state.list == null) {\n await dispatch('load')\n }\n\n let result = []\n\n if (payload && payload.text) {\n const options = {\n keys: [\n 'Name',\n 'CompanyAccountName',\n 'Presentations.Title',\n 'Presentations.SpeakerFirstname',\n 'Presentations.SpeakerSurname',\n 'Chairs.Firstname',\n 'Chairs.Surname',\n 'groups.Name',\n ],\n maxPatternLength: 32,\n minMatchCharLength: 2,\n threshold: 0,\n ignoreLocation: true,\n }\n\n const fuse = new Fuse(state.list, options)\n const fuseResult = fuse.search(payload.text)\n for (let i = 0, len = fuseResult.length; i < len; i += 1) { // TODO: check if for is really needed\n result.push(fuseResult[i].item)\n }\n } else {\n result = state.list\n }\n\n if (payload && Object.prototype.hasOwnProperty.call(payload, 'tags') && payload.tags && payload.tags.length > 0) {\n const { tags } = payload\n result = result.filter((item) => {\n for (let i = 0, len = tags.length; i < len; i += 1) { // TODO: check if for is really needed\n const tag = tags[i]\n if (!item.Tags.includes(tag)) {\n return false\n }\n }\n return true\n })\n }\n\n if (payload && Object.prototype.hasOwnProperty.call(payload, 'oneOfTags') && payload.oneOfTags && payload.oneOfTags.length > 0) {\n const tags = payload.oneOfTags\n result = result.filter((item) => {\n for (let i = 0, len = tags.length; i < len; i += 1) { // TODO: check if for is really needed\n const tag = tags[i]\n if (item.Tags.includes(tag)) {\n return true\n }\n }\n return false\n })\n }\n\n if (payload && Object.prototype.hasOwnProperty.call(payload, 'companies') && payload.companies && payload.companies.length > 0) {\n const { companies } = payload\n result = result.filter((item) => {\n for (let i = 0, len = companies.length; i < len; i += 1) { // TODO: check if for is really needed\n const company = companies[i]\n if (item.CompanyAccountName === company) {\n return true\n }\n }\n return false\n })\n }\n\n if (payload && Object.prototype.hasOwnProperty.call(payload, 'days') && payload?.days.length > 0) {\n const dayTagArr = payload.days.map((item) => item.value)\n result = result.filter((session) => dayTagArr.includes((session.StartDateTime || '').substring(0, 10)))\n }\n\n if (payload && Object.prototype.hasOwnProperty.call(payload, 'company') && payload.company) {\n const { company } = payload\n result = result.filter((item) => item.CompanyAccountName === company)\n }\n\n if (payload && Object.prototype.hasOwnProperty.call(payload, 'sortBy') && payload.sortBy && result?.length) {\n if (payload.sortBy === 'date') {\n result.sort(sortByDate)\n } else if (payload.sortBy === 'name') {\n result.sort(sortByName)\n } else if (payload.sortBy === 'random') {\n shuffleArray(result)\n } else if (payload.sortBy === 'companyname') {\n result.sort(sortByCompanyName)\n } else if (payload.sortBy === 'featuredDateSort') {\n if (payload.featuredId) {\n const featuredId = payload.featuredId\n const featuredArray = [...result].filter((item) => featuredId.includes(item.Id)).sort(sortByDate)\n const restArray = [...result].filter((item) => !featuredId.includes(item.Id)).sort(sortByDate)\n result = featuredArray.concat(restArray)\n } else {\n result.sort(sortByDate)\n }\n } else if (payload.sortBy === 'upcoming') {\n const eventTimezone = utilsComponents.eventTimezone()\n const selectedTimezone = utilsComponents.selectedTimezone()\n const arrLive = []\n const arrNotStarted = []\n const arrEnded = []\n const currentTime = dayjs().tz()\n let startTime = ''\n let endTime = ''\n\n result.forEach(x => {\n startTime = dayjs.tz(x.StartDateTime, selectedTimezone)\n endTime = dayjs.tz(x.EndDateTime, selectedTimezone)\n if (currentTime.isAfter(endTime)) {\n arrEnded.push(x)\n } else if (currentTime.isBetween(startTime, endTime)) {\n arrLive.push(x)\n } else {\n arrNotStarted.push(x)\n }\n })\n\n result = arrLive.sort(sortByDate).concat(...arrNotStarted.sort(sortByDate)).concat(...arrEnded.sort(sortByDate))\n }\n }\n\n if (payload && Object.prototype.hasOwnProperty.call(payload, 'typefilter') && payload.typefilter) {\n let tags = []\n let companies = []\n const companiesBySponsorType = {}\n\n const { typefilter } = payload\n if (typefilter.filterBy?.length > 0) {\n result = result?.filter((item) => {\n if (typefilter.filterBy.includes(item.SessionType)) {\n return item\n } if (typefilter.filterBy.includes(item.Id)) {\n return item\n }\n return null\n })\n }\n if (payload.dateTabs && typefilter.value) {\n result = result.filter((item) => {\n if (typefilter.value === dayjs(item.StartDateTime).format('YYYY-MM-DD')) {\n return item\n }\n return null\n })\n }\n\n for (let i = 0; i < result?.length; i += 1) { // TODO: check if for is really needed\n result[i].Tags = []\n if (result[i].CompanyAccountName && !companies.includes(result[i].CompanyAccountName)) {\n companies.push(result[i].CompanyAccountName)\n if (result[i].SponsorType) {\n const spType = result[i].SponsorType\n if (!Object.prototype.hasOwnProperty.call(companiesBySponsorType, spType)) {\n companiesBySponsorType[spType] = []\n }\n companiesBySponsorType[spType].push(result[i].CompanyAccountName)\n }\n\n companies.sort(sortTagsbyName)\n }\n\n if (Object.prototype.hasOwnProperty.call(result[i], 'groups') && result[i].groups) {\n for (let j = 0; j < result[i].groups.length; j += 1) { // TODO: check if for is really needed\n if (!tags.includes(result[i].groups[j].Name)) {\n tags.push(result[i].groups[j].Name)\n }\n result[i].Tags.push(result[i].groups[j].Name)\n }\n tags.sort(sortTagsbyName)\n }\n }\n\n if (typefilter.sortBy === 'date') {\n result.sort(sortByDate)\n\n const groupByProp = 'StartDateTime'\n const groupsSort = []\n result = result.reduce((groupedSymposia, currentValue) => {\n let groupByValue = currentValue[groupByProp] || 'Other'\n const gSymposia = groupedSymposia\n if (groupByProp === 'StartDateTime') {\n groupByValue = dayjs(groupByValue).format('DD MMMM YYYY')\n }\n\n let sortIdx = groupsSort.indexOf(groupByValue)\n if (sortIdx === -1) {\n groupsSort.push(groupByValue)\n sortIdx = groupsSort.indexOf(groupByValue)\n }\n\n if (!groupedSymposia[sortIdx]) {\n gSymposia[sortIdx] = {\n day: groupByValue,\n symposia: [currentValue],\n }\n } else {\n gSymposia[sortIdx].symposia.push(currentValue)\n }\n return gSymposia\n }, [])\n\n if (payload && Object.prototype.hasOwnProperty.call(payload, 'filterBy') && payload.filterBy) {\n tags = []\n companies = []\n\n const { filterBy } = payload\n\n if (filterBy !== 'all') {\n result = result.filter((item) => {\n if (filterBy == item.day) {\n return item\n }\n return null\n })\n }\n\n for (let i = 0; i < result.length; i += 1) { // TODO: check if for is really needed\n for (let j = 0; j < result[i].symposia.length; j += 1) { // TODO: check if for is really needed\n result[i].symposia[j].Tags = []\n\n if (result[i].symposia[j].CompanyAccountName && !companies.includes(result[i].symposia[j].CompanyAccountName)) {\n companies.push(result[i].symposia[j].CompanyAccountName)\n\n companies.sort(sortTagsbyName)\n }\n }\n\n for (let j = 0; j < result[i].symposia.length; j += 1) { // TODO: check if for is really needed\n if (Object.prototype.hasOwnProperty.call(result[i].symposia[j], 'groups') && result[i].symposia[j].groups) {\n for (let k = 0; k < result[i].symposia[j].groups.length; k += 1) { // TODO: check if for is really needed\n if (!tags.includes(result[i].symposia[j].groups[k].Name)) {\n tags.push(result[i].symposia[j].groups[k].Name)\n }\n result[i].symposia[j].Tags.push(result[i].symposia[j].groups[k].Name)\n }\n tags.sort(sortTagsbyName)\n }\n }\n }\n }\n }\n if(payload.reloadTags) {\n commit('setCompaniesBySponsorType', companiesBySponsorType)\n commit('setCompanies', companies)\n commit('setTags', tags)\n }\n\n }\n return result\n },\n async getSymposiasForId({\n commit,\n state,\n dispatch\n }, payload) {\n if (state.list == null) {\n await dispatch('load')\n }\n\n return state.list.filter((symposia) => symposia.CompanyAccountId === payload.id)\n }\n },\n getters: {\n list(state) {\n return state.list\n },\n tags(state) {\n return state.tags\n },\n companies(state) {\n return state.companies\n },\n days(state) {\n return state.days\n },\n daysF(state) {\n return state.daysF\n },\n companiesBySponsorType(state) {\n return state.companiesBySponsorType\n },\n loading(state) {\n return state.loading\n },\n },\n}\nexport default symposiaList\n","import industryModelApi from '../../../api/industryLandingPage'\n\nconst industryModel = {\n namespaced: true,\n state: {\n model: null,\n fetchModelPromise: null,\n },\n mutations: {\n setModel(state, payload) {\n state.model = payload\n },\n setFetchPromise(state, payload) {\n state.fetchModelPromise = payload\n },\n },\n actions: {\n async loadModel({ commit, state }, { event, language }) {\n if (state.model !== null) {\n return state.model\n }\n if (state.fetchConfigPromise) {\n return state.fetchModelPromise\n }\n const fetchModelPromise = industryModelApi.getIndustryModel(event, language).then((model) => {\n commit('setModel', model)\n })\n commit('setFetchPromise', fetchModelPromise)\n return fetchModelPromise\n },\n },\n getters: {\n model(state) {\n return state.model\n },\n },\n}\n\nexport default industryModel\n","import uniFetch from '../../api/uniFetch'\n\nconst initialState = {\n config: {\n root: {},\n charity: {},\n },\n projects: [],\n challenges: [],\n highscores: {\n Projects: [],\n Challenges: [],\n Companies: [],\n Participants: [],\n selectedProject: {\n id: null,\n scores: {\n Projects: [],\n Companies: [],\n Participants: [],\n },\n },\n },\n exhibitorChallenges: {\n companyId: '',\n challenges: [],\n selectedId: '',\n survey: null,\n },\n}\n\nconst getters = {\n projectById: (state) => (id) => {\n const project = state.projects.find((item) => item.Id === id)\n if (project) {\n const parsedProject = { ...project }\n parsedProject.banners = parsedProject.BannerFiles.map((item) => ({\n imageUrl: item.Key,\n }))\n return parsedProject\n }\n return project\n },\n selectedChallenge: (state) => {\n const { selectedId, challenges } = state.exhibitorChallenges\n const selectedCh = challenges.find((item) => item.Id === selectedId)\n return selectedCh\n },\n highscore: (state) => (key, nested) => {\n const selectedScores = nested ? state.highscores[key].scores[nested] : state.highscores[key]\n if (!selectedScores) {\n return null\n }\n const sortedScores = [...selectedScores]\n sortedScores.sort((a, b) => {\n if (a.Points > b.Points) {\n return -1\n }\n if (a.Points < b.Points) {\n return 1\n }\n return 0\n })\n return nested ? { scores: sortedScores, id: state.highscores[key].id } : sortedScores\n },\n pageConfig: (state) => (key) => state.config[key],\n}\n\nconst actions = {\n fetchConfig({ commit }) {\n uniFetch`${(p) => p.apiBase}/api/Modules/GetConfigResource`({\n query: {\n eventId: (p) => p.eventId,\n resourcename: 'charity-page',\n },\n })\n .then((res) => {\n console.log('Charity config', res)\n const info = res[0]\n commit('setState', {\n name: 'config',\n data: JSON.parse(info.resourcevalue),\n })\n })\n .catch((err) => {\n console.log('got fetch error:', err)\n })\n },\n fetchProjects({ commit, dispatch, state }) {\n if (!state.challenges.length) {\n uniFetch`${(p) => p.apiBase}/api/Exhibition/EventProjects/${(p) => p.eventId}/${(p) => p.language}`()\n .then((res) => {\n commit('setState', {\n name: 'projects',\n data: res,\n })\n dispatch('fetchProjectHighscores', res[0].Id)\n })\n }\n },\n fetchChallenges({ commit, state }) {\n if (!state.challenges.length) {\n uniFetch`${(p) => p.apiBase}/api/Exhibition/EventChallenges/${(p) => p.eventId}/${(p) => p.language}`()\n .then((res) => {\n commit('setState', {\n name: 'challenges',\n data: res,\n })\n })\n }\n },\n fetchHighscores({ commit, state }) {\n uniFetch`${(p) => p.apiBase}/api/Exhibition/CharityHighscore/${(p) => p.eventId}/${(p) => p.language}`()\n .then((res) => {\n commit('setState', {\n name: 'highscores',\n data: {\n ...state.highscores,\n ...res,\n },\n })\n })\n },\n fetchProjectHighscores({ commit, state }, projectId) {\n uniFetch`${(p) => p.apiBase}/api/Exhibition/CharityHighscoreForProject/${(p) => p.eventId}/${(p) => p.language}`({\n query: {\n projectId,\n },\n })\n .then((res) => {\n commit('setState', {\n name: 'highscores',\n data: {\n ...state.highscores,\n selectedProject: {\n id: projectId,\n scores: {\n ...res,\n },\n },\n },\n })\n })\n },\n fetchExhibitorChallenges({ commit }, { companyId, selectedId }) {\n uniFetch`${(p) => p.apiBase}/api/Exhibition/ExhibitorChallenges/${(p) => p.eventId}/${(p) => p.language}`({\n query: {\n id: companyId,\n },\n }).then((res) => {\n commit('setState', {\n name: 'exhibitorChallenges',\n data: {\n ...selectedId ? { selectedId } : {},\n companyId,\n challenges: res,\n survey: null,\n },\n })\n })\n },\n setSelectedChallenge({ commit, state }, selectedId) {\n const { selectedId: formerSelectedId, ...rest } = state.exhibitorChallenges\n if (selectedId === formerSelectedId) {\n return\n }\n commit('setState', {\n name: 'exhibitorChallenges',\n data: {\n ...rest,\n selectedId,\n survey: null,\n },\n })\n if (selectedId) {\n const { challenges } = state.exhibitorChallenges\n const selectedCh = challenges.find((ch) => ch.Id === selectedId)\n uniFetch`${(p) => p.surveyApiBase}/Survey/Surveyjs`({\n method: 'post',\n data: selectedCh.SurveyRequest,\n }).then((getSurveyRes) => {\n commit('setState', {\n name: 'exhibitorChallenges',\n data: {\n ...state.exhibitorChallenges,\n survey: getSurveyRes,\n },\n })\n })\n }\n },\n submitSurveyPoints({ commit, state }, { projectId, points }) {\n uniFetch`${(p) => p.apiBase}/api/Survey/ChallengeEvaluationDone/${(p) => p.eventId}/${(p) => p.language}`({\n method: 'post',\n query: {\n userid: (p) => p.userId,\n challengeid: state.exhibitorChallenges.selectedId,\n charityProjectId: projectId,\n correctedAnswers: points,\n },\n }).then((res) => {\n const { selectedId, challenges } = state.exhibitorChallenges\n const selectedChIdx = challenges.findIndex((ch) => ch.Id === selectedId)\n const selectedCh = challenges[selectedChIdx]\n const finishedCh = {\n ...selectedCh,\n SurveyRequest: {\n ...selectedCh.SurveyRequest,\n EvaluationDone: true,\n },\n }\n challenges[selectedChIdx] = finishedCh\n commit('setState', {\n name: 'exhibitorChallenges',\n data: {\n ...state.exhibitorChallenges,\n challenges,\n selectedId,\n survey: null,\n },\n })\n })\n },\n}\n\nconst mutations = {\n setState: (state, { name, data }) => {\n state[name] = data\n },\n}\n\nexport default {\n state: initialState,\n actions,\n getters,\n mutations,\n namespaced: true,\n}\n","import virutalMeetingAPI from '../../api/virtualMeeting'\n\nconst header = {\n namespaced: true,\n state: {\n model: null,\n fetchModelPromise: null,\n },\n mutations: {\n setModel(state, payload) {\n state.model = payload\n },\n setFetchPromise(state, payload) {\n state.fetchModelPromise = payload\n },\n\n },\n actions: {\n async loadModel({ commit, state }, { event, language }) {\n if (state.model !== null) {\n return state.model\n }\n if (state.fetchModelPromise) {\n return state.fetchModelPromise\n }\n const fetchModelPromise = virutalMeetingAPI.getHeaderModel(event, language).then((model) => {\n commit('setModel', model)\n })\n commit('setFetchPromise', fetchModelPromise)\n return fetchModelPromise\n },\n },\n getters: {\n model(state) {\n return state.model\n },\n },\n}\n\nexport default header\n","import exhibitionApi from '../../api/exhibition'\n\nconst meetings = {\n namespaced: true,\n state: {\n list: null,\n fetchListPromise: null,\n },\n mutations: {\n setList(state, payload) {\n state.list = payload\n },\n setFetchPromise(state, payload) {\n state.fetchListPromise = payload\n },\n\n },\n actions: {\n async loadList({ commit, state }) {\n if (state.list !== null) {\n return state.list\n }\n if (state.fetchListPromise) {\n return state.fetchListPromise\n }\n const fetchListPromise = exhibitionApi.getExhibitionMeetingsForEvent().then((list) => {\n commit('setList', list)\n })\n commit('setFetchPromise', fetchListPromise)\n return fetchListPromise\n },\n },\n getters: {\n list(state) {\n return state.list\n },\n },\n}\n\nexport default meetings\n","import configApi from '../../api/config'\n\nconst config = {\n namespaced: true,\n state: {\n config: null,\n fetchConfigPromise: null,\n },\n mutations: {\n setConfig(state, payload) {\n state.config = payload\n },\n setFetchPromise(state, payload) {\n state.fetchConfigPromise = payload\n },\n\n },\n actions: {\n async loadConfig({ commit, state }) {\n if (state.config !== null) {\n return state.config\n }\n if (state.fetchConfigPromise) {\n return state.fetchConfigPromise\n }\n const fetchConfigPromise = configApi.getConfig().then((c) => {\n commit('setConfig', c)\n })\n commit('setFetchPromise', fetchConfigPromise)\n return fetchConfigPromise\n },\n },\n getters: {\n config(state) {\n return state.config\n },\n configForKey: (state) => (key) => {\n if (state.config === null) {\n return null\n }\n\n const entry = state.config.find((e) => e.resourcename === key)\n if (!entry || !entry.resourcevalue) {\n return null\n }\n return JSON.parse(entry.resourcevalue)\n },\n },\n}\n\nexport default config\n","import userApi from '../../api/user'\n\nconst userTicket = {\n namespaced: true,\n state: {\n userTicket: null,\n fetchUserPromise: null,\n },\n mutations: {\n setUserTicket(state, payload) {\n state.userTicket = payload\n },\n setFetchPromise(state, payload) {\n state.fetchUserPromise = payload\n },\n resetState(state) {\n state.userTicket = null\n state.fetchUserPromise = null\n },\n },\n actions: {\n async loadUserTicket({ commit, state }, reload = false) {\n if (state.userTicket !== null && !reload) {\n return state.userTicket\n }\n if (state.fetchUserPromise && !reload) {\n return state.fetchUserPromise\n }\n const fetchUserPromise = userApi.getUserTickets().then((uTicket) => {\n if (!uTicket?.status) commit('setUserTicket', uTicket)\n })\n commit('setFetchPromise', fetchUserPromise)\n return fetchUserPromise\n },\n\n reset({ commit }) {\n commit('resetState')\n },\n },\n getters: {\n userTicket(state) {\n return state.userTicket\n },\n },\n}\n\nexport default userTicket\n","import uniFetch from '~/api/uniFetch'\n\nconst initialState = {\n EventDetails: {\n days: [],\n },\n}\n\nconst getters = {\n getProgramDays: (state) => (selectedDates) => {\n if (!selectedDates) {\n return state.EventDetails.days\n }\n return state.EventDetails.days.filter((day) => {\n const selectedItem = selectedDates.find((item) => day.date === item.date)\n return selectedItem\n })\n },\n}\n\nconst actions = {\n fetchConfig({ commit, state }) {\n if (!state.EventDetails.days.length) {\n uniFetch`${(p) => p.apiBase}/api/Public/EventDetails`({\n query: {\n shortname: (p) => p.eventShortname,\n language: (p) => p.language,\n },\n })\n .then((res) => {\n commit('setState', { name: 'EventDetails', data: res })\n })\n }\n },\n}\n\nconst mutations = {\n setState: (state, payload) => { state[payload.name] = payload.data },\n}\n\nexport default {\n state: initialState,\n getters,\n actions,\n mutations,\n namespaced: true,\n}\n","import configApi from '~/api/visibilityConfig'\nimport store from '~/store'\n\nconst config = {\n namespaced: true,\n state: {\n config: null,\n fetchConfigPromise: null,\n },\n mutations: {\n setConfig(state, payload) {\n state.config = payload\n },\n setFetchPromise(state, payload) {\n state.fetchConfigPromise = payload\n },\n\n },\n actions: {\n async loadConfig({ commit, state }) {\n if (state.config !== null) {\n return state.config\n }\n if (state.fetchConfigPromise) {\n return state.fetchConfigPromise\n }\n const layer = store.getters['instancesState/getLayer']\n const fetchConfigPromise = configApi.getConfig(`${layer}ComponentVisibility`).then((c) => {\n commit('setConfig', c)\n })\n commit('setFetchPromise', fetchConfigPromise)\n return fetchConfigPromise\n },\n },\n getters: {\n config(state) {\n return state.config\n },\n visibilityForKey: (state) => (key) => {\n if (state.config === null) {\n return null\n }\n\n const entry = state.config.find((e) => e.resourcename === key)\n if (!entry || !entry.resourcevalue) {\n return null\n }\n try { \n const json = JSON.parse(entry.resourcevalue)\n return json\n } catch (e) { \n return null \n }\n },\n },\n}\n\nexport default config\n","import sso from '../../api/sso'\n\nconst singleSignOn = {\n namespaced: true,\n state: {\n user: '',\n ssoLinks: [], // sso configuration and sso login links\n ssoEvaluatedUser: false, // Res from outside login link // why false if it should be an object\n token: false, // Login Token\n redirectUrl: false, // Redirect URL from backend,\n transfer: false,\n areTermsAccepted: false,\n ssoError: false,\n isUserComparisonNeeded: null\n },\n mutations: {\n setConfLinks(state, payload) {\n state.ssoLinks = payload\n },\n setEvaluatedUser(state, payload) {\n state.ssoEvaluatedUser = payload\n },\n setUserToken(state, payload) {\n state.token = payload\n },\n setRedirectUrl(state, payload) {\n state.redirectUrl = payload\n },\n setTransferData(state, payload) {\n state.transfer = payload\n },\n setTermsAndConditions(state, payload) {\n state.areTermsAccepted = payload\n },\n setSsoError(state, payload) {\n state.ssoError = payload\n },\n setUserDataComparisonNeeded(state, payload) {\n state.isUserComparisonNeeded = payload\n }\n },\n actions: {\n async ssoLoadConfiguration({ commit }) {\n await sso.configuration().then((res) => {\n res.status === 200 ? commit('setConfLinks', res.data) : commit('setConfLinks', false)\n })\n },\n\n async ssoEvaluateCurrentUser({ commit }, payload) {\n return await sso.correlate(payload).then((res) => {\n if (res.status == 200 && res.data) {\n commit('setEvaluatedUser', res.data)\n commit('setTermsAndConditions', res.data.areTermsAccepted)\n commit('setTransferData', res.data?.transfer || null)\n commit('setUserDataComparisonNeeded', res.data.userDataComparisonNeeded)\n\n if (res.data.redirect) {\n commit('setUserToken', res.data.redirect.token)\n commit('setRedirectUrl', res.data.redirect.redirectUrl)\n }\n\n if (res.data.statusAction == 'ExternalUserReadyToLogin' && res.data.areTermsAccepted) {\n return 'userSync'\n }\n\n //if (res.data.statusAction == 'ExternalUserReadyToLogin') {\n // if (res.data.areTermsAccepted) {\n // let redirectUrl = res.data.redirect.redirectUrl\n // if (payload && 'returnUrl' in payload && payload.returnUrl) {\n // redirectUrl = `${redirectUrl}&returnUrl=${encodeURIComponent(`${window.location.origin}${payload.returnUrl}`)}`\n // }\n\n // return window.location.href = redirectUrl\n // }\n // if (res.data.statusAction == 'ExternalUserWithIdentityAndNoSSOLink') {\n // // Pending\n // //commit('setTermsAndConditions', res.data.areTermsAccepted)\n // }\n }\n })\n },\n\n async ssoRegisterExternalAccount({ commit, state }) {\n return await sso.registerExternalAccount().then((res) => {\n if (res.status == 200) {\n if (res.data.redirectUrl) commit('setRedirectUrl', res.data.redirectUrl)\n if (res.data.token) commit('setUserToken', res.data.token)\n }\n return res\n }).catch((res) => {\n return res\n })\n },\n\n async ssoAcceptTermsAndConditions({ state }) {\n await sso.acceptTermsAndConditions().then((res) => {\n if (res.status == 200) {\n return res\n }\n\n return null\n }).catch((err) => err)\n },\n\n async ssoUserConfirmPassword({ commit }, payload) {\n const { password, returnUrl } = payload\n return await sso.userPasswordConfirm(password, returnUrl).then((res) => {\n if (res && res.status === 200) {\n //return window.location.href = res.data.redirectUrl\n if (res.data.redirectUrl) commit('setRedirectUrl', res.data.redirectUrl)\n if (res.data.token) commit('setUserToken', res.data.token)\n }\n if (res == undefined || res.status == 401) {\n commit('setSsoError', 'Something went wrong. Please check your password and try again.')\n }\n\n return res\n }).catch((err) => {\n console.log('This error' + err)\n })\n },\n\n async ssoExternalRegisterAccount({ commit }, payload) {\n const data = payload\n return await sso.externalRegisterAccount(data).then((res) => {\n if (res.status == 200) {\n if (res.data.redirectUrl) commit('setRedirectUrl', res.data.redirectUrl)\n if (res.data.token) commit('setUserToken', res.data.token)\n }\n\n return res\n })\n },\n\n async loadExternalUserCompareData() {\n return await sso.loadExternalUserCompareData().then((res) => {\n return res\n })\n },\n\n async ssoSyncExternalUser({ commit }, doSync) {\n return await sso.syncExternalUser(doSync).then((res) => {\n return res.status\n })\n },\n\n async ssoSetTokenData({ commit }, data) {\n commit('setUserToken', data.token)\n commit('setRedirectUrl', data.redirectUrl)\n }\n },\n getters: {\n ssoLinks: state => {\n return state.ssoLinks\n },\n ssoUser: state => {\n return state.ssoEvaluatedUser.user\n },\n ssoEvaluatedUserStatusAction: state => {\n return state.ssoEvaluatedUser.statusAction\n },\n ssoAreTermsAccepted: state => {\n //return state.ssoEvaluatedUser.areTermsAccepted\n return state.areTermsAccepted\n },\n ssoUserToken: state => {\n return state.token\n },\n ssoRedirectUrl: state => {\n return state.redirectUrl\n },\n ssoTransferUser: state => {\n return state.transfer\n },\n ssoError: state => {\n return state.ssoError\n },\n ssoUserDataComparisonNeeded: state => {\n return state.isUserComparisonNeeded\n }\n },\n}\n\nexport default singleSignOn","import userApi from '../../api/user'\n\nconst user = {\n namespaced: true,\n state: {\n user: null,\n fetchUserPromise: null,\n userRequest: null,\n userFormFilled: null,\n userFormPromise: null,\n userFormFilledV2: null,\n userFormPromiseV2: null,\n webcastTokenPromise: null,\n webcastToken: null,\n webcastTokenPromises: null,\n webcastTokens: {},\n },\n mutations: {\n setUser(state, payload) {\n state.user = payload\n },\n setFetchPromise(state, payload) {\n state.fetchUserPromise = payload\n },\n setUserRequest(state, payload) {\n state.userRequest = payload\n },\n setUserFormFilled(state, payload) {\n state.userFormFilled = payload\n },\n setUserFormPromise(state, payload) {\n state.userFormPromise = payload\n },\n setUserFormFilledV2(state, payload) {\n state.userFormFilledV2 = payload\n },\n setUserFormPromiseV2(state, payload) {\n state.userFormPromiseV2 = payload\n },\n setWebcastTokenPromise(state, payload) {\n state.webcastTokenPromise = payload\n },\n setWebcastToken(state, payload) {\n state.webcastToken = payload\n },\n setWebcastTokens(state, payload) {\n state.webcastTokens[payload.short] = payload.webcasttoken\n },\n resetState(state) {\n state.user = null\n state.fetchUserPromise = null\n state.userRequest = null\n state.userFormFilled = null\n state.userFormPromise = null\n state.userFormFilledV2 = null\n state.userFormPromiseV2 = null\n state.webcastTokenPromise = null\n state.webcastToken = null\n state.webcastTokens = null\n state.webcastTokenPromises = null\n },\n },\n actions: {\n async loadUser({ commit, state }, payload) {\n const params = { ...payload }\n if (!params?.loadUserNew) {\n if (state.user !== null) {\n return state.user\n }\n if (state.fetchUserPromise) {\n return state.fetchUserPromise\n }\n }\n const fetchUserPromise = userApi.getManageUser().then((u) => {\n commit('setUser', u)\n })\n commit('setFetchPromise', fetchUserPromise)\n return fetchUserPromise\n },\n async loadWebcastToken({ commit, state }, payload) {\n\n if (state.webcastToken !== null) {\n return state.webcastToken\n }\n if (state.webcastTokenPromise) {\n return state.webcastTokenPromise\n }\n \n\n const fetchWebcastTokenrPromise = userApi.getUserWebcastToken().then((wt) => {\n commit('setWebcastToken', wt)\n })\n commit('setWebcastTokenPromise', fetchWebcastTokenrPromise)\n return fetchWebcastTokenrPromise\n \n \n\n },\n async userFormCompleteV2({ commit, state }, payload) {\n const params = { ...payload }\n if (!params?.loadUserCompleteNew) {\n if (state.userFormFilledV2 !== null) {\n return state.userFormFilledV2\n }\n if (state.userFormPromiseV2) {\n return state.userFormPromiseV2\n }\n }\n const fetchUserPromise = userApi.getUserFormCompleteV2().then((u) => {\n commit('setUserFormFilledV2', u)\n })\n commit('setUserFormPromiseV2', fetchUserPromise)\n return fetchUserPromise\n },\n\n async userFormComplete({ commit, state }, payload) {\n const params = { ...payload }\n if (!params?.loadUserCompleteNew) {\n if (state.userFormFilled !== null) {\n return state.userFormFilled\n }\n if (state.userFormPromise) {\n return state.userFormPromise\n }\n }\n const fetchUserPromise = userApi.getUserFormComplete().then((u) => {\n commit('setUserFormFilled', u)\n })\n commit('setUserFormPromise', fetchUserPromise)\n return fetchUserPromise\n },\n async saveUserProfile({ commit }, payload) {\n const UserModel = { ...payload }\n const fetchPromise = await userApi.saveUser(UserModel)\n\n commit('setUserRequest', fetchPromise)\n return fetchPromise\n },\n reset({ commit }) {\n commit('resetState')\n },\n },\n getters: {\n user(state) {\n return state.user\n },\n userId(state) {\n return state.user?.UserId\n },\n getWebcastToken(state) {\n return state.webcastToken\n },\n userFormFilled(state) {\n return state.userFormFilled\n },\n userFormFilledV2(state) {\n return state.userFormFilledV2\n },\n },\n}\n\nexport default user\n","import authApi from '../../api/auth'\n\nconst auth = {\n namespaced: true,\n state: {\n token: null,\n status: null,\n password: null,\n confirmation: null,\n },\n mutations: {\n authRequest: (state) => {\n state.status = 'attempting authentication request'\n },\n accountRequest: (state) => {\n state.status = 'attempting account creation'\n },\n authSuccess: (state, authToken) => {\n state.status = 'authentication succeeded'\n state.token = authToken\n },\n authError: (state) => {\n state.status = 'error'\n },\n authLogout: (state) => {\n state.token = ''\n },\n passwordRequest: (state, payload) => {\n state.password = payload\n },\n },\n actions: {\n async authRequest({ commit }, payload) {\n const Credentials = { ...payload }\n const fetchPromise = await authApi.loginUser(Credentials)\n\n commit('authRequest', fetchPromise)\n return fetchPromise\n },\n\n async accountRequest({ commit }, payload) {\n const Credentials = { ...payload }\n const fetchPromise = await authApi.createUser(Credentials)\n\n commit('accountRequest', fetchPromise)\n return fetchPromise\n },\n\n async passwordRequest({ commit }, payload) {\n const Credentials = { ...payload }\n const fetchPromise = await authApi.forgotPassword(Credentials)\n\n commit('passwordRequest', fetchPromise)\n return fetchPromise\n },\n\n async getExternalUserData({ commit }) {\n const fetchPromise = await authApi.getExternalUserData()\n\n return fetchPromise\n },\n\n async confirmationRequest({ commit }, payload) {\n const Credentials = { ...payload }\n const fetchPromise = await authApi.sendConfirmation(Credentials)\n\n commit('passwordRequest', fetchPromise)\n return fetchPromise\n },\n\n },\n getters: {\n isAuthenticated: (state) => !!state.token,\n authStatus: (state) => state.status,\n authToken: (state) => state.token,\n },\n}\n\nexport default auth\n","import authApi from '../../api/authV2'\n\nconst auth = {\n namespaced: true,\n state: {\n token: null,\n status: null,\n password: null,\n confirmation: null,\n },\n mutations: {\n authRequest: (state) => {\n state.status = 'attempting authentication request'\n },\n accountRequest: (state) => {\n state.status = 'attempting account creation'\n },\n authSuccess: (state, authToken) => {\n state.status = 'authentication succeeded'\n state.token = authToken\n },\n authError: (state) => {\n state.status = 'error'\n },\n authLogout: (state) => {\n state.token = ''\n },\n passwordRequest: (state, payload) => {\n state.password = payload\n },\n transferRequest: (state) => {\n state.status = 'attempting account transfer'\n },\n confirmEmail: (state) => {\n state.status = 'attempting confirming email'\n },\n resetPassword: (state) => {\n state.status = 'attempting reset password'\n },\n },\n actions: {\n async authRequest({ commit }, payload) {\n const Credentials = { ...payload }\n const fetchPromise = await authApi.loginUser(Credentials)\n\n commit('authRequest', fetchPromise)\n return fetchPromise\n },\n\n async accountRequest({ commit }, payload) {\n const Credentials = { ...payload }\n const fetchPromise = await authApi.createUser(Credentials)\n\n commit('accountRequest', fetchPromise)\n return fetchPromise\n },\n\n async passwordRequest({ commit }, payload) {\n const Credentials = { ...payload }\n const fetchPromise = await authApi.forgotPassword(Credentials)\n\n commit('passwordRequest', fetchPromise)\n return fetchPromise\n },\n\n async confirmationRequest({ commit }, payload) {\n const Credentials = { ...payload }\n const fetchPromise = await authApi.sendConfirmation(Credentials)\n\n commit('passwordRequest', fetchPromise)\n return fetchPromise\n },\n\n async transferRequest({ commit }, payload) {\n const data = { ...payload }\n const fetchPromise = await authApi.transferUser(data)\n\n commit('transferRequest', fetchPromise)\n return fetchPromise\n },\n\n async confirmEmail({ commit }, payload) {\n const data = { ...payload }\n const fetchPromise = await authApi.confirmEmail(data)\n\n commit('confirmEmail', fetchPromise)\n return fetchPromise\n },\n\n async getExternalUserData({ commit }) {\n const fetchPromise = await authApi.getExternalUserData()\n\n return fetchPromise\n },\n\n\n async resetPassword({ commit }, payload) {\n const data = { ...payload }\n const fetchPromise = await authApi.resetPassword(data)\n\n commit('resetPassword', fetchPromise)\n return fetchPromise\n },\n },\n getters: {\n isAuthenticated: (state) => !!state.token,\n authStatus: (state) => state.status,\n authToken: (state) => state.token,\n },\n}\n\nexport default auth\n","import userApi from '../../api/user'\n\nconst vmUser = {\n namespaced: true,\n state: {\n vmUser: null,\n fetchVmUserPromise: null,\n },\n mutations: {\n setUser(state, payload) {\n state.vmUser = payload\n },\n setFetchPromise(state, payload) {\n state.fetchVmUserPromise = payload\n },\n },\n actions: {\n async loadVmUser({ commit, state }) {\n if (state.vmUser !== null) {\n return state.vmUser\n }\n if (state.fetchUserPromise) {\n return state.fetchVmUserPromise\n }\n const fetchVmUserPromise = userApi.getVmUser().then((vUser) => {\n commit('setUser', vUser)\n })\n commit('setFetchPromise', fetchVmUserPromise)\n return fetchVmUserPromise\n },\n },\n getters: {\n vmUser(state) {\n return state.vmUser\n },\n },\n}\n\nexport default vmUser\n","import contactFormApi from '../../api/contactForm'\n\nconst contactForm = {\n namespaced: true,\n state: {\n emailSent: null,\n comments: null,\n presentationComment: null,\n sessionComment: null,\n commentLike: null,\n inappropriateComment: null,\n },\n mutations: {\n sendEmailRequest: (state, payload) => {\n state.emailSent = payload\n },\n getCommentRequest: (state, payload) => {\n state.comments = payload\n },\n createCommentRequest: (state, payload) => {\n state.sessionComment = payload\n },\n createPresentationRequest: (state, payload) => {\n state.presentationComment = payload\n },\n getCommentLike: (state, payload) => {\n state.commentLike = payload\n },\n getInappropriateComment: (state, payload) => {\n state.inappropriateComment = payload\n },\n },\n actions: {\n async sendCustomMail({ commit }, payload) {\n const EmailForm = { ...payload }\n const fetchPromise = await contactFormApi.sendCustomMail(EmailForm)\n\n commit('sendEmailRequest', fetchPromise)\n return fetchPromise\n },\n async getComments({ commit }, payload) {\n const params = { ...payload }\n const fetchPromise = await contactFormApi.getComments(params)\n\n commit('getCommentRequest', fetchPromise)\n return fetchPromise\n },\n async createSessionComment({ commit }, payload) {\n const params = { ...payload }\n const fetchPromise = await contactFormApi.createSessionComment(params)\n\n commit('createCommentRequest', fetchPromise)\n return fetchPromise\n },\n async createPresentationComment({ commit }, payload) {\n const params = { ...payload }\n const fetchPromise = await contactFormApi.createPresentationComment(params)\n\n commit('createPresentationRequest', fetchPromise)\n return fetchPromise\n },\n async getCommentLike({ commit }, payload) {\n const params = { ...payload }\n const fetchPromise = await contactFormApi.getCommentLike(params)\n\n commit('createPresentationRequest', fetchPromise)\n return fetchPromise\n },\n async getInappropriateComment({ commit }, payload) {\n const params = { ...payload }\n const fetchPromise = await contactFormApi.getInappropriateComment(params)\n\n commit('createPresentationRequest', fetchPromise)\n return fetchPromise\n },\n },\n}\n\nexport default contactForm\n","import exhibitionApi from '../../api/exhibition'\n\nfunction sortByNumber(a, b) {\n return a[0] - b[0]\n}\n\nconst publicExhibitorList = {\n namespaced: true,\n state: {\n list: null,\n fetchListPromise: null,\n },\n mutations: {\n setList(state, payload) {\n state.list = payload\n },\n setFetchPromise(state, payload) {\n state.fetchListPromise = payload\n },\n },\n actions: {\n async load({\n commit,\n state,\n }) {\n if (state.list !== null) {\n return state.list\n }\n if (state.fetchPromise) {\n return state.fetchPromise\n }\n const fetchPromise = exhibitionApi.getPublicCompanyAccountsList().then((config) => {\n commit('setList', config)\n })\n commit('setFetchPromise', fetchPromise)\n return fetchPromise\n },\n async filterList({\n state,\n dispatch,\n }, payload) {\n await dispatch('load')\n const { filterBy, sorting } = payload\n const filterByKeys = Object.keys(filterBy)\n if (!filterByKeys.length) {\n return state.list\n }\n const filterByKey = filterByKeys[0]\n const filteredCompanyList = state.list.filter((item) => {\n if (filterBy[filterByKey].include) {\n const includeFilter = filterBy[filterByKey].include\n return includeFilter.includes(item[filterByKey])\n }\n const excludeFilter = filterBy[filterByKey].exclude\n return !excludeFilter.includes(item[filterByKey])\n })\n if (sorting === filterByKey) {\n const sortArray = filterBy[filterByKey].include\n const result = filteredCompanyList.map((item) => {\n const n = sortArray.indexOf(item[sorting])\n sortArray[n] = ''\n return [n, item]\n }).sort(sortByNumber).map((j) => j[1])\n\n return result\n }\n if (sorting === 'alphabetically') {\n filteredCompanyList.sort((a, b) => {\n const textA = a.CompanyAccountName.toUpperCase()\n const textB = b.CompanyAccountName.toUpperCase()\n // eslint-disable-next-line no-nested-ternary\n return (textA < textB) ? -1 : (textA > textB) ? 1 : 0\n })\n }\n return filteredCompanyList\n },\n },\n getters: {\n list(state) {\n return state.list\n },\n },\n}\n\nexport default publicExhibitorList\n","import highlightedSessionsApi from '../../api/highlightedSessions'\n\nconst highlightedSessions = {\n namespaced: true,\n state: {\n lists: {},\n sessionsList: [],\n sessionFetchPromises: [],\n fetchPromises: {},\n presentationLists: [],\n fetchPresentationPromises: [],\n authorLists: [],\n fetchAuthorPromises: [],\n },\n mutations: {\n setList(state, payload) {\n state.lists[payload.programGrade] = payload.list\n },\n setSessionsList(state, payload) {\n state.sessionsList = payload\n },\n setFetchPromise(state, payload) {\n state.fetchPromises[payload.programGrade] = payload.fetchPromise\n },\n setSessionFetchPromise(state, payload) {\n state.fetchPromises = payload\n },\n setPresentationList(state, payload) {\n state.presentationLists = payload.presentationLists\n },\n setPresentationFetchPromise(state, payload) {\n state.fetchPresentationPromises = payload.fetchPresentationPromises\n },\n setAuthorList(state, payload) {\n state.authorLists = payload.authorLists\n },\n setAuthorFetchPromise(state, payload) {\n state.fetchAuthorPromises = payload.fetchAuthorPromises\n },\n },\n actions: {\n async load({ commit, state }, payload) {\n const { programGrade } = payload\n if (state.lists?.programGrade) {\n return state.lists[payload.programGrade]\n }\n if (state.fetchPromises?.programGrade) {\n return state.fetchPromises[payload.programGrade]\n }\n const fetchPromise = highlightedSessionsApi.getHighlightedSessions(payload).then((list) => {\n commit('setList', { programGrade, list })\n })\n commit('setFetchPromise', { programGrade, fetchPromise })\n return fetchPromise\n },\n async selectedSessionsLoad({ commit }, sessionIds) {\n const fetchPromise = highlightedSessionsApi.getSelectedSessions(sessionIds).then((list) => {\n commit('setSessionsList', list)\n })\n commit('setSessionFetchPromise', fetchPromise )\n return fetchPromise\n },\n async loadPresentations({ commit, state }, payload) {\n if (state.presentationLists.length > 0) {\n return state.presentationLists\n }\n if (state.fetchPresentationPromises.length > 0) {\n return state.fetchPresentationPromises\n }\n const fetchPresentationPromises = highlightedSessionsApi.getHighlightedPresentations(payload).then((presentationLists) => {\n commit('setPresentationList', { presentationLists })\n })\n commit('setPresentationFetchPromise', { fetchPresentationPromises })\n return fetchPresentationPromises\n },\n async loadAuthors({ commit, state }) {\n if (state.authorLists.length > 0) {\n return state.authorLists\n }\n if (state.fetchAuthorPromises.length > 0) {\n return state.fetchAuthorPromises\n }\n const fetchAuthorPromises = highlightedSessionsApi.getHighlightedAuthors().then((authorLists) => {\n commit('setAuthorList', { authorLists })\n })\n commit('setAuthorFetchPromise', { fetchAuthorPromises })\n return fetchAuthorPromises\n },\n },\n getters: {\n list: (state) => (programGrade) => {\n if (Object.prototype.hasOwnProperty.call(state.lists, programGrade)) {\n return state.lists[programGrade]\n }\n return null\n },\n sessionsList(state) {\n return state.sessionsList\n },\n presentationList(state) {\n return state.presentationLists\n },\n authorList(state) {\n return state.authorLists\n },\n },\n}\n\nexport default highlightedSessions\n","import evaluationAPI from '~/api/evaluation'\n\nfunction filterByValue(array, value) {\n return array.filter((data) => JSON.stringify(data).toLowerCase().indexOf(value.toLowerCase()) !== -1)\n}\n\nfunction ascendingSessionName(a, b) {\n // Use toUpperCase() to ignore character casing\n let SessionNameA\n let SessionNameB\n\n if (a.SessionName != null) {\n SessionNameA = a.SessionName.toUpperCase()\n }\n if (b.SessionName != null) {\n SessionNameB = b.SessionName.toUpperCase()\n }\n let comparison = 0\n if (SessionNameA > SessionNameB) {\n comparison = 1\n } else if (SessionNameA < SessionNameB) {\n comparison = -1\n }\n return comparison\n}\n\nconst sessionForEval = {\n namespaced: true,\n state: {\n sessions: null,\n fetchSessionsPromise: null,\n },\n mutations: {\n setSessions(state, payload) {\n state.sessions = payload\n },\n setFetchPromise(state, payload) {\n state.fetchSessionsPromise = payload\n },\n\n },\n actions: {\n async loadSessions({ commit, state }) {\n if (state.sessions !== null) {\n return state.sessions\n }\n if (state.fetchSessionsPromise) {\n return state.fetchSessionsPromise\n }\n const fetchSessionsPromise = evaluationAPI.getSessionsForEvaluation().then((s) => {\n commit('setSessions', s)\n })\n commit('setFetchPromise', fetchSessionsPromise)\n return fetchSessionsPromise\n },\n async reloadSessions({ commit }) {\n evaluationAPI.getSessionsForEvaluation().then((s) => {\n commit('setSessions', s)\n })\n },\n async search({ state, dispatch }, payload) {\n if (state.sessions == null) {\n await dispatch('loadSessions')\n }\n let result = state.sessions\n if (payload && payload.filter) {\n result = filterByValue(result, payload.filter)\n }\n if (result && payload && payload.sortBy) {\n if (payload.sortBy === 'title') {\n result = result.sort(ascendingSessionName)\n }\n if (payload.sortBy === 'status') {\n result = result.sort((a, b) => a.EvaluationDone - b.EvaluationDone)\n }\n }\n return result\n },\n },\n getters: {\n sessions(state) {\n return state.sessions\n },\n },\n}\n\nexport default sessionForEval\n","const initialState = {\n instance: null,\n instanceUrlParam: null,\n event: null,\n eventId: null,\n companyId: null,\n language: null,\n apiBaseUrl: null,\n identityUrl: null,\n surveyApi: null,\n cssVars: {},\n moduleName: null,\n modelConfig: null,\n backLink: false,\n webcastToken: null,\n\n currentTab: null,\n industryContentAccess: null,\n hcp: null,\n _paq: null,\n headerModel: null,\n themeLoaded: false,\n preview: false,\n loungePreview: false,\n linkPage: null,\n filterBy: null,\n groupBy: null,\n sortBy: null,\n themesStyles: null,\n superUserToggle: false,\n superUser: false,\n boothGuru: false,\n history: [],\n historyBack: false,\n menuDisabled: false,\n companyLoungeRedirect: false,\n disableHeader: false,\n headerModelInitalized: false,\n token: null,\n isAppContainer: false,\n isTerminalContainer: false,\n swDownload: false,\n maintenance: false,\n mtvApiBaseUrl: null,\n createAccountReturnPage: 'home',\n}\n\nconst getters = {\n getLinkPage(state) {\n return state.linkPage\n },\n getCreateAccountReturnPage(state) {\n return state.createAccountReturnPage\n },\n getInstance(state) {\n return state.instance\n },\n getInstanceUrlParam(state) {\n return state.instanceUrlParam\n },\n getEvent(state) {\n return state.event\n },\n getCompanyId(state) {\n return state.companyId\n },\n getEventId(state) {\n return state.eventId\n },\n getLanguage(state) {\n return state.language\n },\n getApiBaseUrl(state) {\n return state.apiBaseUrl\n },\n getIdentityUrl(state) {\n return state.identityUrl\n },\n getSurveyApi(state) {\n return state.surveyApi\n },\n getModelConfig(state) {\n return state.modelConfig\n },\n getCssVars(state) {\n return state.cssVars\n },\n getCssVarValue: (state) => (name) => {\n if (!Object.prototype.hasOwnProperty.call(state.cssVars, name)) {\n return ''\n }\n return state.cssVars[name]\n },\n getThemesStyles(state) {\n return state.themesStyles\n },\n getModuleName(state) {\n return state.moduleName\n },\n getBackLink(state) {\n return state.backLink\n },\n getCurrentTab(state) {\n return state.currentTab\n },\n getIndustryContentAccess(state) {\n return state.industryContentAccess\n },\n getHcpStatus(state) {\n return state.hcp\n },\n getToken(state) {\n return state.token\n },\n getPaq(state) {\n return state._paq\n },\n getIsAppContainer(state) {\n return state.isAppContainer\n },\n getIsTerminalContainer(state) {\n return state.isTerminalContainer\n },\n getHeaderModel(state) {\n return state.headerModel\n },\n getInitializedHead(state) {\n return state.headerModelInitalized\n },\n getThemeLoaded(state) {\n return state.themeLoaded\n },\n getPreview(state) {\n return state.preview\n },\n getInVMX(state) {\n return state.inVMX\n },\n getSWDownload(state) {\n return state.swDownload\n },\n getLoungePreview(state) {\n return state.loungePreview\n },\n getFilterBy(state) {\n return state.filterBy\n },\n getGroupBy(state) {\n return state.groupBy\n },\n getSortby(state) {\n return state.sortBy\n },\n getSuperUser(state) {\n return state.superUser\n },\n getSuperUserToggle(state) {\n return state.superUserToggle\n },\n getBoothGuru(state) {\n return state.boothGuru\n },\n getHistory(state) {\n return state.history\n },\n getHistoryBack(state) {\n return state.historyBack\n },\n getMenuDisabled(state) {\n return state.menuDisabled\n },\n getCompanyLoungeRedirectDisabled(state) {\n return state.companyLoungeRedirect\n },\n getDisableHeader(state) {\n return state.disableHeader\n },\n getMaintenance(state) {\n return state.maintenance\n },\n getMTVApiBaseUrl(state) {\n return state.mtvApiBaseUrl\n },\n}\n\nconst actions = {\n removeHistory({ state }) {\n if (state.history.length > 1) {\n state.history.pop()\n }\n },\n}\n\nconst mutations = {\n setWebcastToken(state, data) {\n state.token = data\n },\n setCreateAccountReturnPage(state, value) {\n state.createAccountReturnPage = value\n },\n setLinkPage(state, key) {\n state.linkPage = key\n },\n setInstance(state, key) {\n state.instance = key\n },\n setInstanceUrlParam(state, value) {\n state.instanceUrlParam = value\n },\n setEvent(state, key) {\n state.event = key\n },\n setCompanyId(state, key) {\n state.companyId = key\n },\n setEventId(state, val) {\n state.eventId = val\n },\n setMTVApiBaseUrl(state, url) {\n state.mtvApiBaseUrl = url\n },\n setLanguage(state, key) {\n document.documentElement.setAttribute('lang', key.substring(0,2) || 'en')\n state.language = key\n },\n setApiBaseUrl(state, url) {\n state.apiBaseUrl = url\n },\n setIdentityUrl(state, url) {\n state.identityUrl = url\n },\n setSurveyApi(state, url) {\n state.surveyApi = url\n },\n setModelConfig(state, key) {\n state.modelConfig = key\n },\n setCssVars(state, vars) {\n state.cssVars = vars\n },\n setModuleName(state, key) {\n state.moduleName = key\n },\n setBackLink(state, key) {\n state.backLink = key\n },\n setSWDownload(state, key) {\n state.swDownload = key\n },\n setCurrentTab(state, key) {\n state.currentTab = key\n },\n setIndustryContentAccess(state, key) {\n state.industryContentAccess = key\n },\n setInitializedHead(state, key) {\n state.headerModelInitalized = key\n },\n setHcpStatus(state, key) {\n state.hcp = key\n },\n setPaq(state, paq) {\n state._paq = paq\n },\n setHeaderModel(state, data) {\n state.headerModel = data\n },\n setThemeLoaded(state, loaded) {\n state.themeLoaded = loaded\n },\n setPreview(state, boolean) {\n state.preview = boolean\n },\n setLoungePreview(state, boolean) {\n state.loungePreview = boolean\n },\n setFilterBy(state, data) {\n state.filterBy = data\n },\n setGroupBy(state, data) {\n state.groupBy = data\n },\n setSortBy(state, data) {\n state.sortBy = data\n },\n setThemesStyles(state, data) {\n state.themesStyles = data\n },\n setSuperUser(state, boolean) {\n state.superUser = boolean\n },\n setToken(state, data) {\n state.token = data\n },\n setSuperUserToggle(state, boolean) {\n state.superUserToggle = boolean\n },\n setBoothGuru(state, boolean) {\n state.boothGuru = boolean\n },\n setHistory(state, history) {\n state.history.push(history)\n },\n setHistoryBack(state, boolean) {\n state.historyBack = boolean\n },\n setMenuDisabled(state, boolean) {\n state.menuDisabled = boolean\n },\n setInVMX(state, data) {\n state.inVMX = data\n },\n setCompanyLoungeRedirectDisabled(state, boolean) {\n state.companyLoungeRedirect = boolean\n },\n setDisableHeader(state, boolean) {\n state.disableHeader = boolean\n },\n setIsAppContainer(state, boolean) {\n state.isAppContainer = boolean\n },\n setIsTerminalContainer(state, boolean) {\n state.isTerminalContainer = boolean\n },\n setMaintenance(state, data) {\n state.maintenance = data\n },\n}\n\nexport default {\n state: initialState,\n getters,\n actions,\n mutations,\n namespaced: true,\n}\n","import programApi from '../../api/program'\n\nconst personalProgram = {\n namespaced: true,\n state: {\n rawList: {},\n lists: {},\n fetchPromises: {},\n symposiaList: [],\n presentationList: [],\n speakerList: [],\n personalList: [],\n },\n mutations: {\n setList(state, payload) {\n state.rawList = payload.list\n state.lists = payload.list\n },\n setSymposiaFavorites(state, payload) {\n state.symposiaList = payload.symposiaList\n },\n setPresentationFavorites(state, payload) {\n state.presentationList = payload.presentationList\n },\n setSpeakerFavourites(state, payload) {\n state.speakerList = payload.speakerList\n },\n setFetchPromise(state, payload) {\n state.fetchPromises = payload.fetchPromise\n },\n resetState(state) {\n state.lists = {}\n state.fetchPromises = {}\n state.symposiaList = []\n },\n },\n actions: {\n async load({ commit, state }, payload) {\n const params = { ...payload }\n if (!params?.loadScheduleNew) {\n if (Object.prototype.hasOwnProperty.call(state.lists)) {\n return state.lists\n }\n if (Object.prototype.hasOwnProperty.call(state.fetchPromises)) {\n return state.fetchPromises\n }\n }\n\n const fetchPromise = programApi.getPersonalProgram().then(async (listResult) => {\n const list = listResult.Result ? listResult.Result : listResult\n commit('setList', { list })\n // set symposia id's\n let symposiaList = list?.Schedule ? list?.Schedule.map((item) => item.SessionId) : []\n if (symposiaList.length > 0) symposiaList = symposiaList.filter((item) => item !== 0)\n // set presentation id's\n let presentationList = list?.Schedule ? list?.Schedule.map((item) => item.PresentationId) : []\n if (presentationList.length > 0) presentationList = presentationList.filter((item) => item !== 0)\n // set speaker id's\n let speakerList = list?.Schedule ? list?.Schedule.map((item) => item.UserId) : []\n if (speakerList.length > 0) speakerList = speakerList.filter((item) => item !== 0)\n localStorage.setItem('favoriteSessions', JSON.stringify(symposiaList.map(String)))\n localStorage.setItem('favoritePresentations', JSON.stringify(presentationList.map(String)))\n localStorage.setItem('favoriteSpeakers', JSON.stringify(speakerList.map(String)))\n commit('setSymposiaFavorites', { symposiaList })\n commit('setPresentationFavorites', { presentationList })\n commit('setSpeakerFavourites', { speakerList })\n })\n commit('setFetchPromise', { fetchPromise })\n return true\n },\n\n reset({ commit }) {\n commit('resetState')\n },\n\n set({ commit, state }, payload) {\n const idx = state.lists.Schedule\n .findIndex((item) => item.SessionId === payload.session.SessionId)\n state.lists.Schedule.splice(idx, 1)\n state.lists.Schedule.push(payload.session)\n const list = state.lists\n commit('setList', { list })\n },\n\n symposiaList({ commit, state }, payload) {\n state.symposiaList.push(payload)\n const { symposiaList } = state\n commit('setSymposiaFavorites', { symposiaList })\n },\n\n presentationList({ commit, state }, payload) {\n state.presentationList.push(payload)\n const { presentationList } = state\n commit('setPresentationFavorites', { presentationList })\n },\n\n speakerList({ commit, state }, payload) {\n state.speakerList.push(payload)\n const { speakerList } = state\n commit('setSpeakerFavourites', { speakerList })\n },\n },\n getters: {\n list(state) {\n return state.lists\n },\n rawList(state) {\n return state.rawList\n },\n symposiaIdList(state) {\n return state.symposiaList\n },\n presentationIdList(state) {\n return state.presentationList\n },\n speakerIdList(state) {\n return state.speakerList\n },\n },\n}\n\nexport default personalProgram\n","import userDocumentApi from '~/api/userDocuments'\n\nconst userDocuments = {\n namespaced: true,\n state: {\n userDocuments: null,\n fetchUserDocumentPromise: null,\n },\n mutations: {\n setUserDocuments(state, payload) {\n state.userDocuments = payload\n },\n setFetchPromise(state, payload) {\n state.fetchUserDocumentPromise = payload\n },\n },\n actions: {\n async loadUserDocuments({ commit, state }) {\n if (state.userDocuments !== null) {\n return state.userDocuments\n }\n if (state.fetchUserDocumentPromise) {\n return state.fetchUserDocumentPromise\n }\n\n const fetchUserDocumentPromise = userDocumentApi.getUserDocuments().then((u) => {\n commit('setUserDocuments', u)\n })\n\n commit('setFetchPromise', fetchUserDocumentPromise)\n return fetchUserDocumentPromise\n },\n async search({ state, dispatch }, payload) {\n if (state.userDocuments == null) {\n await dispatch('loadUserDocuments')\n }\n let result = state.userDocuments\n if (payload && payload.events) {\n if (payload.events.length) {\n result = result.filter((data) => payload.events.map((e) => e.toLowerCase()).includes(data.EventShort.toLowerCase())\n || payload.events.map((e) => e.toLowerCase()).includes(data.SocietyShort.toLowerCase()))\n }\n }\n\n if (payload && payload.documentTypes) {\n if (payload.documentTypes.length) {\n result = result.filter((data) => payload.documentTypes.includes(data.FileType))\n }\n }\n\n return result\n },\n },\n getters: {\n userDocuments(state) {\n return state.userDocuments\n },\n },\n}\n\nexport default userDocuments\n","import termsAndConditionsApi from '../../api/termsAndConditions'\n\nconst termsAndConditions = {\n namespaced: true,\n state: {\n termsAndConditions: null,\n dataProtection: null,\n termsAndConditionsOrg: null,\n dataProtectionOrg: null,\n fetchTermsAndConditionsPromise: null,\n fetchTermsAndConditionsPromiseOrg: null,\n\n },\n mutations: {\n setTermsAndConditions: (state, payload) => {\n state.termsAndConditions = payload\n },\n setDataProtection: (state, payload) => {\n state.dataProtection = payload\n },\n setFetchPromise: (state, payload) => {\n state.fetchTermsAndConditionsPromise = payload\n },\n setTermsAndConditionsOrg: (state, payload) => {\n state.termsAndConditionsOrg = payload\n },\n setDataProtectionOrg: (state, payload) => {\n state.dataProtectionOrg = payload\n },\n setFetchPromiseOrg: (state, payload) => {\n state.fetchTermsAndConditionsPromiseOrg = payload\n },\n },\n actions: {\n async loadTermsAndConditions({ commit, state }) {\n\n const fetchTermsAndConditionsPromiseOrg = termsAndConditionsApi.getTermsAndConditionsOrg().then((tnc) => {\n tnc.forEach((item) => {\n if (item.IsPrivacyPolicy === true) {\n commit('setDataProtectionOrg', item.Content)\n }\n if (item.IsPrivacyPolicy === false) {\n commit('setTermsAndConditionsOrg', item.Content)\n }\n })\n })\n const fetchTermsAndConditionsPromise = termsAndConditionsApi.getTermsAndConditions().then((tnc) => {\n tnc.forEach((item) => {\n if (item.IsPrivacyPolicy === true) {\n commit('setDataProtection', item.Content)\n }\n if (item.IsPrivacyPolicy === false) {\n commit('setTermsAndConditions', item.Content)\n }\n })\n })\n\n commit('setFetchPromise', fetchTermsAndConditionsPromise)\n commit('setFetchPromiseOrg', fetchTermsAndConditionsPromiseOrg)\n\n return { fetchTermsAndConditionsPromise, fetchTermsAndConditionsPromiseOrg }\n },\n },\n getters: {\n tnc(state) {\n return state.termsAndConditions\n },\n data(state) {\n return state.dataProtection\n },\n tncOrg(state) {\n return state.termsAndConditionsOrg\n },\n dataOrg(state) {\n return state.dataProtectionOrg\n },\n },\n}\n\nexport default termsAndConditions\n","import advertisementAPI from '../../api/advertisement'\n\nconst advertisement = {\n namespaced: true,\n state: {\n advertisements: null,\n fetchAdvertisementPromise: null,\n },\n mutations: {\n setAdvertisement(state, payload) {\n state.advertisements = payload\n },\n setFetchPromise(state, payload) {\n state.fetchAdvertisementPromise = payload\n },\n\n },\n actions: {\n async loadAdvertisement({ commit, state }) {\n if (state.advertisements !== null) {\n return state.advertisements\n }\n if (state.fetchAdvertisementPromise) {\n return state.fetchAdvertisementPromise\n }\n const fetchAdvertisementPromise = advertisementAPI.getEventAdvertisement().then((ad) => {\n commit('setAdvertisement', ad)\n })\n commit('setFetchPromise', fetchAdvertisementPromise)\n return fetchAdvertisementPromise\n },\n },\n getters: {\n advertisement(state) {\n return state.advertisements\n },\n },\n}\n\nexport default advertisement\n","import pushnotificationsAPi from '../../api/pushnotifications'\n\nconst pushnotification = {\n namespaced: true,\n state: {\n pushnotifications: null,\n fetchPushnotificationsPromise: null,\n },\n mutations: {\n setPushnotification(state, payload) {\n state.pushnotifications = payload\n },\n setFetchPromise(state, payload) {\n state.fetchPushnotificationsPromise = payload\n },\n\n },\n actions: {\n async loadPushnotification({ commit, state }) {\n if (state.pushnotifications !== null) {\n return state.pushnotifications\n }\n if (state.fetchPushnotificationsPromise) {\n return state.fetchPushnotificationsPromise\n }\n const fetchPushnotificationsPromise = pushnotificationsAPi.getEventPushnotifications().then((ad) => {\n commit('setPushnotification', ad)\n })\n commit('setFetchPromise', fetchPushnotificationsPromise)\n return fetchPushnotificationsPromise\n },\n },\n getters: {\n pushnotification(state) {\n return state.pushnotifications\n },\n },\n}\n\nexport default pushnotification\n","import eventDashboardApi from '../../api/eventDashboard'\n\nconst eventDashboard = {\n namespaced: true,\n state: {\n eventDashboard: null,\n eventDashboardPromise: null,\n },\n mutations: {\n setEventDashboard(state, payload) {\n state.eventDashboard = payload\n },\n setEventDashboardPromise(state, payload) {\n state.eventDashboardPromise = payload\n },\n },\n actions: {\n async load({ commit, state }, programGrade) {\n if (state.eventDashboard) {\n return state.eventDashboard\n }\n if (state.eventDashboardPromise) {\n return state.eventDashboardPromise\n }\n const fetchPromise = eventDashboardApi.getEventDashboard().then((res) => {\n commit('setEventDashboard', res)\n })\n commit('setEventDashboardPromise', fetchPromise)\n\n return fetchPromise\n },\n },\n getters: {\n eventDashboard(state) {\n return state.eventDashboard\n },\n },\n}\n\nexport default eventDashboard\n","import serverTimeApi from '~/api/serverTime'\n\nconst serverTime = {\n namespaced: true,\n state: {\n serverTime: null,\n fetchPromise: null,\n },\n mutations: {\n setServerTime(state, payload) {\n state.serverTime = payload\n },\n setFetchPromise(state, payload) {\n state.fetchPromise = payload\n },\n },\n actions: {\n async loadServerTime({ commit }) {\n const fetchPromise = serverTimeApi.getServerTime().then((time) => {\n commit('setServerTime', time)\n })\n commit('setFetchPromise', fetchPromise)\n return fetchPromise\n },\n },\n getters: {\n getTime(state) {\n return state.serverTime\n },\n },\n}\n\nexport default serverTime\n","const sessionRecordingData = {\n namespaced: true,\n state: {\n jumptimes: null,\n },\n mutations: {\n setJumptimes(state, payload) {\n state.jumptimes = payload\n },\n },\n actions: {\n async addJumptimes({ commit }, payload) {\n commit('setJumptimes', payload)\n },\n },\n getters: {\n getJumptimes(state) {\n return state.jumptimes\n },\n },\n}\nexport default sessionRecordingData\n","import configApi from '~/api/config'\n\nconst moduleConfig = {\n namespaced: true,\n state: {\n token: '',\n baseUrl: '',\n oauthUrl: '',\n apiUrl: '',\n clientId: '',\n event: '',\n identityUrl: '',\n instance: '',\n language: '',\n eventShort: '',\n context: '',\n returnUrl: '',\n },\n mutations: {\n setToken: (state, payload) => { state.token = payload.token },\n setEventId: (state, payload) => {\n state.eventId = payload\n },\n\n setUrlConfigs: (state, payload) => {\n state.baseUrl = payload.baseUrl\n state.oauthUrl = payload.oauthUrl\n state.apiUrl = payload.apiUrl\n state.clientId = payload.clientId\n state.identityUrl = payload.identityUrl\n state.instance = payload.instance\n state.language = payload.language\n state.eventShort = payload.eventShort\n state.context = payload.context\n state.returnUrl = payload.returnUrl\n state.event = payload.event\n },\n },\n actions: {\n async loadEventInformation({ commit }) {\n const eventInfo = configApi.getEventInformation().then((data) => {\n commit('setEventId', data.Id)\n })\n return eventInfo\n },\n },\n getters: {\n moduleConfig(state) {\n return state\n },\n },\n}\n\nexport default moduleConfig\n","const errorStore = {\n namespaced: true,\n state: {\n errors: [],\n },\n mutations: {\n addError(state, payload) {\n state.errors.push(payload)\n },\n clearErrors(state) {\n state.errors = []\n },\n },\n actions: {\n async addError({ commit }, error) {\n commit('addError', error)\n },\n async clearErrors({ commit }) {\n commit('clearErrors')\n },\n },\n getters: {\n errors(state) {\n return state.errors\n },\n firstError(state) {\n return state.errors.length > 0 ? state.errors[0] : null\n },\n lastError(state) {\n return state.errors.length > 0 ? state.errors[state.errors.length - 1] : null\n },\n },\n}\nexport default errorStore\n","import Vuex from 'vuex'\nimport Vue from 'vue'\nimport createPersistedState from 'vuex-persistedstate'\n\nimport ILPExhibitorList from './modules/industryLandingPage/exhibitorList'\nimport ILPExhibitorProfile from './modules/industryLandingPage/exhibitorProfile'\nimport ILPExhibitorSymposias from './modules/industryLandingPage/exhibitorSymposias'\nimport ILPExhibitorProducts from './modules/industryLandingPage/exhibitorProducts'\nimport ILPExhibitorMeetings from './modules/industryLandingPage/exhibitorMeetings'\nimport ILPExhibitorProductsAll from './modules/industryLandingPage/exhibitorProductsAll'\nimport ILPSymposiaList from './modules/industryLandingPage/symposiaList'\nimport ILPIndustryModel from './modules/industryLandingPage/industryModel'\n\nimport charity from './modules/charity'\nimport header from './modules/header'\nimport meetings from './modules/meetings'\nimport config from './modules/config'\nimport userTicket from './modules/userTicket'\nimport program from './modules/program'\nimport visibilityConfig from './modules/componentVisibility'\nimport singleSignOn from './modules/singleSignOn'\n\n\nimport user from './modules/user'\nimport auth from './modules/auth'\nimport AuthV2 from './modules/authV2'\nimport vmUser from './modules/vmUser'\nimport contactForm from './modules/contactForm'\nimport publicExhibitorList from './modules/publicExhibitorList'\nimport highlightedSessions from './modules/highlightedSessions'\nimport sessionsForEvaluation from '~/store/modules/sessionsForEvaluation'\nimport instancesState from './modules/instancesState'\nimport personalProgram from './modules/personalProgram'\nimport UserDocuments from './modules/userDocuments/UserDocuments'\nimport TermsAndConditions from './modules/termsAndConditions'\nimport advertisements from './modules/advertisements'\nimport pushnotifications from './modules/pushnotifications'\nimport eventDashboard from './modules/eventDashboard'\nimport serverTime from './modules/serverTime'\nimport sessionRecordingData from './modules/sessionRecordingData'\n\nimport ModuleConfig from './modules/userDocuments/ModuleConfig'\n\nimport Error from './modules/error'\n\nVue.use(Vuex)\n\nconst store = new Vuex.Store({\n plugins: [createPersistedState({\n paths: ['personalProgram'],\n })],\n modules: {\n singleSignOn,\n config,\n userTicket,\n user,\n auth,\n contactForm,\n charity,\n vmUser,\n header,\n meetings,\n ILPIndustryModel,\n ILPExhibitorList,\n ILPExhibitorProfile,\n ILPExhibitorSymposias,\n ILPSymposiaList,\n ILPExhibitorProducts,\n ILPExhibitorMeetings,\n ILPExhibitorProductsAll,\n publicExhibitorList,\n highlightedSessions,\n Error,\n sessionsForEvaluation,\n instancesState,\n personalProgram,\n UserDocuments,\n ModuleConfig,\n TermsAndConditions,\n advertisements,\n pushnotifications,\n program,\n AuthV2,\n visibilityConfig,\n serverTime,\n eventDashboard,\n sessionRecordingData\n },\n actions: {\n clearAll({ dispatch }) {\n dispatch('personalProgram/reset')\n dispatch('userTicket/reset')\n dispatch('user/reset')\n },\n },\n})\nexport default store\n","import store from '~/store'\n\nconst LB = '\\n'\n\nfunction createStyle(cssVars, customStyles) {\n let styles = LB\n styles += `:root {${LB}`\n // TODO: check if for is really needed\n for (const varName in cssVars) {\n if (Object.prototype.hasOwnProperty.call(cssVars, varName)) {\n const val = cssVars[varName]\n styles += `--${varName}: ${val};${LB}`\n }\n }\n styles += `}${LB}`\n styles += customStyles\n return styles\n}\n\nfunction replaceCssVar(value) {\n const regex = /var\\(\\s*--(.+?)\\)/i\n const match = value.match(regex)\n if (match === null) {\n return value\n }\n const varName = match[1]\n return store.getters['instancesState/getCssVarValue'](varName)\n}\n\nfunction contrastColor(hex) {\n /*\n From this W3C document: http://www.webmasterworld.com/r.cgi?f=88&d=9769&url=http://www.w3.org/TR/AERT#color-contrast\n\n Color brightness is determined by the following formula:\n ((Red value X 299) + (Green value X 587) + (Blue value X 114)) / 1000\n\n I know this could be more compact, but I think this is easier to read/explain.\n\n */\n\n function cutHex(h) { return (h.charAt(0) === '#') ? h.substring(1, 7) : h }\n function hexToR(h) { return parseInt((cutHex(h)).substring(0, 2), 16) }\n function hexToG(h) { return parseInt((cutHex(h)).substring(2, 4), 16) }\n function hexToB(h) { return parseInt((cutHex(h)).substring(4, 6), 16) }\n\n /* about half of 256. Lower threshold equals more dark text on dark background */\n const threshold = 130\n\n const hRed = hexToR(hex)\n const hGreen = hexToG(hex)\n const hBlue = hexToB(hex)\n const cBrightness = ((hRed * 299) + (hGreen * 587) + (hBlue * 114)) / 1000\n if (cBrightness > threshold) { return '#000000' } return '#ffffff'\n}\n\nexport default {\n createStyle,\n replaceCssVar,\n contrastColor,\n}\n","import VueCookies from 'vue-cookies'\nimport Vue from 'vue'\nimport store from '~/store'\n\nVue.use(VueCookies)\n\nconst loadScript = (trackerScript, settings = true) => new Promise((resolve, reject) => {\n const script = document.createElement('script')\n if (settings) {\n script.async = true\n script.defer = true\n }\n script.src = trackerScript\n\n const head = document.head || document.getElementsByTagName('head')[0]\n head.appendChild(script)\n\n script.onload = resolve\n script.onerror = reject\n})\n\nconst getMatomo = () => {\n if (window.Piwik) {\n return window.Piwik.getAsyncTracker()\n }\n return null\n}\nclass Tracking {\n #config\n\n #matomoConfig\n\n #googleConfig\n\n #boothguruConfig\n\n constructor() {\n this.#config = null\n this.#matomoConfig = null\n this.#googleConfig = null\n this.#boothguruConfig = null\n }\n\n setConfig(payload) { this.#config = payload }\n\n setGoogleConfig(payload) { this.#googleConfig = payload }\n\n setMatomoConfig(payload) { this.#matomoConfig = payload }\n\n setBoothGuruConfig(payload) { this.#boothguruConfig = payload }\n\n init(newConfig) {\n this.setConfig(newConfig)\n if (Array.isArray(this.#config)) {\n const matomoConfig = this.#config.find((c) => c.provider === 'matomo')\n const googleConfig = this.#config.find((c) => c.provider === 'google-tag-manager')\n const boothguruConfig = this.#config.find((c) => c.provider === 'boothguru')\n\n this.setMatomoConfig(matomoConfig)\n this.setGoogleConfig(googleConfig)\n this.setBoothGuruConfig(boothguruConfig)\n } else {\n this.setMatomoConfig(newConfig)\n this.setGoogleConfig(newConfig)\n this.setBoothGuruConfig(newConfig)\n }\n\n return new Promise((resolve) => {\n if (this.#matomoConfig?.provider === 'matomo') {\n if (window._paq) {\n resolve()\n return\n }\n\n window._paq = []\n window._paq.push(['enableLinkTracking'])\n window._paq.push(['setTrackerUrl', this.#matomoConfig.settings.trackUrl])\n window._paq.push(['setSiteId', this.#matomoConfig.settings.siteId])\n if (this.#matomoConfig.settings.disableCookies) {\n window._paq.push(['disableCookies'])\n }\n\n loadScript(this.#matomoConfig.settings.clientScriptUrl).then(() => {\n resolve()\n }).catch(() => {\n resolve()\n })\n }\n if (this.#boothguruConfig?.provider === 'boothguru') {\n store.commit('instancesState/setBoothGuru', true)\n // loadScript('/assets/boothGuru/bg-integration_latest.js').then(() => {\n if (this.checkScript(this.#boothguruConfig.settings.boothGuruUrl)) {\n loadScript(this.#boothguruConfig.settings.boothGuruUrl, false).then(() => {\n resolve()\n }).catch(() => {\n resolve()\n })\n }\n resolve()\n }\n if (this.#googleConfig?.provider === 'google-tag-manager') {\n const gaId = this.#googleConfig.settings.id\n const analyticsCode = this.#googleConfig.settings?.analyticsCode\n const analyticsCodeActive = this.#googleConfig.settings?.analyticsCodeActive\n\n const disableStr = `ga-disable-${gaId}`\n const dateAdd = new Date(new Date().setDate(new Date().getUTCDate() + 14))\n const cookieExpirationDate = `expires=+${dateAdd}`\n const event = store.getters['instancesState/getEvent']\n\n if (Vue.$cookies.get(`${event}.cookie`)) {\n if (Vue.$cookies.get(`${event}.cookie`) == null || Vue.$cookies.get(`${event}.cookie`) === 'declined') {\n document.cookie = `${disableStr}=true; ${cookieExpirationDate}; path=/`\n window[disableStr] = true\n } else {\n document.cookie = `${disableStr}=false; ${cookieExpirationDate}; path=/`\n window[disableStr] = false\n }\n if (document.cookie.indexOf(`${disableStr}=true`) > -1) {\n window[disableStr] = true\n }\n } else {\n window[disableStr] = true\n }\n if (analyticsCode && analyticsCodeActive) {\n loadScript(`https://www.googletagmanager.com/gtag/js?id=${analyticsCode}`).then(() => {\n resolve()\n }).catch(() => {\n resolve()\n })\n window.dataLayer = window.dataLayer || []\n const gtag2 = function () {\n window.dataLayer.push(arguments)\n }\n gtag2('js', new Date())\n gtag2('config', gaId, {\n send_page_view: false,\n })\n window.gtag2 = gtag2\n }\n loadScript(`https://www.googletagmanager.com/gtag/js?id=${gaId}`).then(() => {\n resolve()\n }).catch(() => {\n resolve()\n })\n window.dataLayer = window.dataLayer || []\n const gtag = function () {\n window.dataLayer.push(arguments)\n }\n gtag('js', new Date())\n gtag('config', gaId, {\n send_page_view: false,\n })\n window.gtag = gtag\n }\n })\n }\n\n checkScript(script) {\n return !$(`script[src='${script}']`).length > 0\n }\n\n trackPageView(customPageTitle, pagePath) {\n if ((typeof this.#config === 'object' || Array.isArray(this.#config)) && this.#config !== null) {\n if (this.#matomoConfig?.provider === 'matomo') {\n const matomo = getMatomo()\n if (matomo) {\n matomo.trackPageView(customPageTitle)\n }\n }\n\n if (this.#googleConfig?.provider === 'google-tag-manager') {\n const gaId = this.#googleConfig.settings.id\n const analyticsCode = this.#googleConfig.settings?.analyticsCode\n const analyticsCodeActive = this.#googleConfig.settings?.analyticsCodeActive\n if (window.gtag2 && analyticsCodeActive) {\n window.gtag2('config', analyticsCode, {\n send_page_view: true,\n page_path: pagePath,\n page_title: customPageTitle,\n })\n }\n if (window.gtag && !window.gtag2) {\n window.gtag('config', gaId, {\n send_page_view: true,\n page_path: pagePath,\n page_title: customPageTitle,\n })\n }\n }\n }\n }\n\n\n trackEvent(category, action, name) {\n if ((typeof this.#config === 'object' || Array.isArray(this.#config)) && this.#config !== null) {\n if (this.#matomoConfig?.provider === 'matomo') {\n const matomo = getMatomo()\n if (matomo) {\n matomo.trackEvent(category, action, name)\n }\n }\n if (this.#googleConfig?.provider === 'google-tag-manager') {\n if (window.gtag) {\n window.gtag('event', action, {\n event_category: category,\n event_label: name,\n })\n }\n }\n }\n }\n}\n\nexport default new Tracking()\n","import { HubConnectionBuilder, LogLevel } from '@microsoft/signalr'\nimport config from '../config'\n\nexport default {\n install(Vue) {\n // use a new Vue instance as the interface for Vue components to receive/send SignalR events\n // this way every component can listen to events or send new events using this.$questionHub\n const notificationHub = new Vue()\n Vue.prototype.$notificationHub = notificationHub\n\n\n // Provide methods to connect/disconnect from the SignalR hub\n let connection = null\n let startedPromise = null\n let manuallyClosed = false\n\n const accountHub = new Vue()\n Vue.prototype.$accountHub = accountHub\n\n let aConnection = null\n let aStartedPromise = null\n let aManuallyClosed = false\n\n Vue.prototype.startSignalRAccount = (instance, eventShort, jwt, intmodal = 0, persist, uuid) => {\n const signalrHubUrl = `${config.getInstanceConfig(instance).signalrHub}`\n aConnection = new HubConnectionBuilder()\n .withUrl(`${signalrHubUrl}/singlelogin?eventShort=${eventShort}&jwt=${jwt}&intmodal=${intmodal}&persist=${persist}&uuid=${uuid}`)\n .configureLogging(LogLevel.Information)\n .build()\n\n aConnection.on('remoteLogout', (param) => {\n accountHub.$emit('remote-logout', { ...param })\n\n if (intmodal === 0) {\n aConnection.stop()\n }\n })\n\n aConnection.onclose(async (e) => {\n console.log('Connection Closed by Server: ' + e)\n })\n\n // Call connection.start() to establish the connection\n // but the client wont handle reconnecting for you!\n // Docs recommend listening onclose and handling it there.\n // This is the simplest of the strategies\n\n async function start() {\n try {\n // Set Event Handler for Connections closed by the server e.g. wrong paramter set\n await aConnection.start()\n } catch (err) {\n console.log(\"Connection Error: \" + err)\n // setTimeout(() => start(), 5000);\n }\n }\n\n start()\n }\n\n Vue.prototype.startSignalR = (instance, groupName) => {\n const signalrHubUrl = `${config.getInstanceConfig(instance).signalrHub}`\n connection = new HubConnectionBuilder()\n .withUrl(`${signalrHubUrl}/notificationhub`)\n .configureLogging(LogLevel.Information)\n .build()\n\n // Forward hub events through the event, so we can listen for them in the Vue components\n connection.on('NotificationAdded', (notification) => {\n notificationHub.$emit('notification-added', { notification })\n })\n\n // Call connection.start() to establish the connection\n // but the client wont handle reconnecting for you!\n // Docs recommend listening onclose and handling it there.\n // This is the simplest of the strategies\n\n function start() {\n startedPromise = connection\n .start({ withCredentials: false })\n .then(() => connection.invoke('JoinGroup', groupName)).catch(console.error)\n .catch((err) => {\n console.error('Failed to connect with hub', err)\n return new Promise((resolve, reject) => setTimeout(() => start()\n .then(resolve)\n .catch(reject), 5000))\n })\n return startedPromise\n }\n\n connection.onclose(() => {\n if (!manuallyClosed) start()\n })\n\n // Start everything\n manuallyClosed = false\n start()\n }\n\n Vue.prototype.stopSignalR = () => {\n if (!startedPromise) return\n manuallyClosed = true\n return startedPromise.then(() => connection.stop()).then(() => { startedPromise = null })\n }\n\n Vue.prototype.stopSignalRAccount = () => {\n if (!aStartedPromise) return\n aManuallyClosed = true\n return aStartedPromise.then(() => aConnection.stop()).then(() => { aStartedPromise = null })\n }\n\n // Provide methods for components to send messages back to server\n // Make sure no invocation happens until the connection is established\n notificationHub.notificationClosed = () => {\n if (!startedPromise) return\n return startedPromise.then(() => connection.invoke('CloseNotification', groupName)).catch(console.error)\n }\n\n accountHub.accountClosed = () => {\n if (!aStartedPromise) return\n return aStartedPromise.then(() => aConnection.invoke('CloseConnection', groupName)).catch(console.error)\n }\n },\n}\n","import Vue from 'vue'\n\nconst EventBus = new Vue()\n\nexport default EventBus\n","export default {\n setUser(instance, user) {\n localStorage.setItem(`${instance}.user`, JSON.stringify(user))\n },\n getUser(instance) {\n return JSON.parse(localStorage.getItem(`${instance}.user`))\n },\n unsetUser(instance) {\n localStorage.removeItem(`${instance}.user`)\n },\n}\n","import store from '../store'\n\nexport default async function () {\n await store.dispatch(\n 'header/loadModel',\n {\n event: store.getters['instancesState/getEvent'],\n language: store.getters['instancesState/getLanguage'],\n },\n )\n const headerModel = store.getters['header/model']\n if (headerModel && headerModel.EventId) {\n store.commit('instancesState/setEventId', headerModel.EventId)\n }\n}\n","import VueCookies from 'vue-cookies'\nimport Vue from 'vue'\nimport dayjs from 'dayjs'\n\nimport store from '~/store'\n\nimport userState from '~/states/user'\nimport utilsComponents from 'm-anage.com.vmx-components/src/utilities/'\n\n\nVue.use(VueCookies)\n\n// splitt policies into deny and allow policies\nfunction getDenyAllowPolicies(type, id) {\n const useAppAccessMatrix = 'useAppAccessMatrix' in store.getters['config/configForKey']('app_config').config[0].defaults ? store.getters['config/configForKey']('app_config').config[0].defaults.useAppAccessMatrix : false\n let policies\n const policyGetter = (localStorage.getItem('isApp') === 'true') && useAppAccessMatrix ? store.getters['config/configForKey']('access_policies_app') : store.getters['config/configForKey']('access_policies')\n if (policyGetter) {\n const {\n policies: policiesConfig,\n policies_groups: policiesGroups,\n } = policyGetter\n // TODO: create an interceptor for when the config is an empty object\n policies = policiesConfig.reduce((acc, val) => {\n const { PoliciesIds, ...restPol } = val\n acc.push({\n ...restPol,\n Policies: [\n ...PoliciesIds.map((policyId) => policiesGroups.find((item) => item.id === policyId)),\n ],\n })\n return acc\n }, [])\n } else {\n const config = store.getters['config/configForKey']('app_config').config[0]\n policies = config.policies\n }\n const denyAllowRules = {\n deny: [],\n allow: [],\n }\n\n if (policies) {\n const rules = policies.filter((policy) => {\n if (Array.isArray(policy.Identifier)) {\n return (\n policy.Type?.toLowerCase() === type?.toLowerCase()\n && policy.Identifier?.some((x) => x.toLowerCase() === id?.toLowerCase())\n )\n }\n return (\n policy.Type?.toLowerCase() === type?.toLowerCase()\n && policy.Identifier?.toLowerCase() === id?.toLowerCase()\n )\n })\n if (rules.length > 1) {\n // TODO: check if for is really needed\n console.log(`WARNING: multiple policy for type:${type}id:${id}`)\n }\n if (rules.length > 0) {\n // TODO: check if for is really needed\n for (let i = 0, len = rules[0].Policies.length; i < len; i += 1) {\n if (rules[0].Policies[i].Effect.indexOf('Allow') > -1) {\n denyAllowRules.allow.push(rules[0].Policies[i])\n }\n\n if (rules[0].Policies[i].Effect.indexOf('Deny') > -1) {\n denyAllowRules.deny.push(rules[0].Policies[i])\n }\n }\n }\n }\n return denyAllowRules\n}\n\n// get usser & tickets\nfunction getUser() {\n let user = []\n let hcp = false\n let participantType = ''\n let participantTypeValid = false\n let societyMemberType = ''\n let country = ''\n let userTickets = []\n const todayDate = null\n const storeUserData = store.getters['userTicket/userTicket']\n let userLoggedIn = false\n if (storeUserData) {\n userTickets = storeUserData\n }\n hcp = JSON.parse(Vue.$cookies.get('hcp'))\n if (userTickets.length > 0) {\n hcp = userTickets[0].EnableHCP\n participantType = userTickets[0].ParticipantTypeName\n participantTypeValid = userTickets[0].ParticipantTypeValid\n societyMemberType = userTickets[0].SocietyMemberType\n country = userTickets[0].Country\n }\n\n if (userState.getUser(store.getters['instancesState/getInstance'])) {\n userLoggedIn = true\n }\n\n user = {\n hcp,\n participantTypeValid,\n participantType,\n societyMemberType,\n country,\n tickets: userTickets,\n todayDate,\n loggedIn: userLoggedIn,\n }\n return user\n}\n\nfunction formatTicketDate(date) {\n return dayjs(date)\n}\n\n\n\nlet accessDenyReasonsObj = {}\n\nfunction resetADR() {\n accessDenyReasonsObj = []\n}\n// evaluate each ticket and policy\nfunction evalPolicy(policy, checkId, effect) {\n const user = getUser()\n let result = false\n const arr = []\n const accessDenyReasons = []\n let userPaidTicket = []\n let userValidTicket = []\n let userNoCommentDeny = []\n let userNoMessagesDeny = []\n let userDenyNetworking = []\n let paid = false\n let commentDeny = false\n let messageDeny = false\n let networkingDeny = false\n let valid = false\n let vIdValid = false\n let elEval = null\n let paidEval = false\n let hcpVal = null\n let loggedIn = false\n let lLoggedInVal = null\n let userVisitorId = []\n let timezone = utilsComponents.eventTimezone()\n let serverTime = ''\n\n if (store.getters['instancesState/getSuperUser']) {\n result = true\n } else {\n policy.Requirements.forEach((r) => {\n // requirement concatenation bug fixed by Florian Oberleitner, to be reviewed for further bugs and reset values\n // TODO: at this position all result values need to be reset for each requirement iteration\n paid = false\n switch (r.PrincipalField) {\n case 'SocietyMemberType':\n if(!r.Values.includes(user.societyMemberType)) {\n accessDenyReasons.push(r.PrincipalField)\n }\n arr.push(r.Values.includes(user.societyMemberType))\n break\n // CC: dm 10.11.2020 - https://jmarquardt.atlassian.net/browse/MANAGE-14754\n case 'EventParticipantType':\n if(!r.Values.includes(user.participantType)) {\n accessDenyReasons.push(r.PrincipalField)\n }\n arr.push(r.Values.includes(user.participantType))\n break\n // CC: dm 10.11.2020 - https://jmarquardt.atlassian.net/browse/MANAGE-14754\n case 'ParticipantTypeCheck':\n if(!r.Values.includes(user.participantType)) {\n accessDenyReasons.push(r.PrincipalField)\n }\n\n if(!user.participantTypeValid) {\n accessDenyReasons.push(r.PrincipalField)\n }\n arr.push(user.participantTypeValid)\n break\n // CC: mc: 17.01.2024 https://jmarquardt.atlassian.net/browse/JMT-15386\n case 'UserCountry':\n if(!r.Values.includes(user.country)) {\n accessDenyReasons.push(r.PrincipalField)\n }\n arr.push(r.Values.includes(user.country))\n break\n\n case 'TimeAccess':\n dayjs.tz.setDefault(timezone)\n serverTime = store.getters['serverTime/getTime']\n if (serverTime) {\n serverTime = dayjs.tz(dayjs(serverTime), timezone)\n } else {\n serverTime = dayjs().tz()\n }\n if(effect === 'Allow') {\n if(!dayjs.tz(r.Values[0], timezone).isAfter(serverTime)) {\n accessDenyReasons.push(r.PrincipalField)\n }\n }\n if(effect === 'Deny') {\n if(dayjs.tz(r.Values[0], timezone).isAfter(serverTime)) {\n accessDenyReasons.push(r.PrincipalField)\n }\n }\n\n arr.push(dayjs.tz(r.Values[0], timezone).isAfter(serverTime))\n\n break\n case 'ExhibitorExclusive':\n const symposiaList = store.getters['ILPSymposiaList/list']\n const currentSession = symposiaList.find((item) => item.Id === Number(checkId))\n const { CompanyAccountId } = currentSession\n const { tickets } = user\n const isInvitedByCurrentExhibitor = tickets.some((item) => item.CompanyAccountId === CompanyAccountId)\n if(!isInvitedByCurrentExhibitor) {\n accessDenyReasons.push(r.PrincipalField)\n }\n arr.push(isInvitedByCurrentExhibitor)\n\n break\n case 'EventTicketPaid':\n for (const ticket of user.tickets) { // TODO: check if for is really needed\n if (ticket.IsPayed) {\n paidEval = true\n break\n }\n }\n if(!paidEval) {\n accessDenyReasons.push(r.PrincipalField)\n }\n arr.push(paidEval)\n break\n case 'Hcp':\n case 'UserHcp':\n elEval = false\n if (r.Values) {\n hcpVal = r.Values[0]\n }\n if (hcpVal === null || hcpVal === true) {\n if (user.hcp) {\n elEval = true\n }\n } else if (hcpVal === false) {\n if (user.hcp === false) {\n elEval = true\n }\n }\n if(!elEval) {\n accessDenyReasons.push(r.PrincipalField)\n }\n arr.push(elEval)\n break\n case 'UserLoggedIn':\n loggedIn = false\n if (r.Values) {\n lLoggedInVal = (r.Values[0] === 'true')\n }\n if (lLoggedInVal === null || lLoggedInVal === true) {\n if (user.loggedIn) {\n loggedIn = true\n }\n } else if (lLoggedInVal === false) {\n if (user.loggedIn === false) {\n loggedIn = true\n }\n }\n if(!loggedIn) {\n accessDenyReasons.push(r.PrincipalField)\n }\n arr.push(loggedIn)\n break\n case 'EventTicketNameValid':\n userValidTicket = user.tickets.filter((ticket) => ticket.IsValid === true)\n for (const ticket of userValidTicket) {\n if (r.Values.includes(ticket.TicketTypeName)) {\n valid = true\n break\n }\n }\n if(!valid) {\n accessDenyReasons.push(r.PrincipalField)\n }\n arr.push(valid)\n break\n case 'EventTicketNamePaid':\n userPaidTicket = user.tickets.filter((ticket) => ticket.IsPayed === true)\n\n for (const ticket of userPaidTicket) { // TODO: check if for is really needed\n if (r.Values.includes(ticket.TicketTypeName)) {\n paid = true\n break\n }\n }\n if(!paid) {\n accessDenyReasons.push(r.PrincipalField)\n }\n arr.push(paid)\n break\n case 'EventTicketNameForComments':\n userNoCommentDeny = user.tickets.filter((ticket) => ticket.IsPayed === true)\n for (const ticket of userNoCommentDeny) { // TODO: check if for is really needed\n if (r.Values.includes(ticket.TicketTypeName)) {\n commentDeny = true\n break\n }\n }\n if(!commentDeny) {\n accessDenyReasons.push(r.PrincipalField)\n }\n arr.push(commentDeny)\n break\n case 'EventTicketNameForMessages':\n userNoMessagesDeny = user.tickets.filter((ticket) => ticket.IsPayed === true)\n for (const ticket of userNoMessagesDeny) { // TODO: check if for is really needed\n if (r.Values.includes(ticket.TicketTypeName)) {\n messageDeny = true\n break\n }\n }\n arr.push(messageDeny)\n break\n case 'EventTicketNetworking':\n userDenyNetworking = user.tickets.filter((ticket) => ticket.IsPayed === true)\n for (const ticket of userDenyNetworking) { // TODO: check if for is really needed\n if (r.Values.includes(ticket.TicketTypeName)) {\n networkingDeny = true\n break\n }\n }\n if(!networkingDeny) {\n accessDenyReasons.push(r.PrincipalField)\n }\n arr.push(networkingDeny)\n break\n case 'EventTicketNamePaidAndTime':\n userPaidTicket = user.tickets.filter((ticket) => (\n ticket.IsPayed === true\n && ticket.TicketFrom\n && ticket.TicketTo\n ))\n\n // TODO: check if for is really needed\n for (const ticket of userPaidTicket) {\n if (r.Values.includes(ticket.TicketTypeName)) {\n const dateNow = dayjs()\n\n const ticketFrom = formatTicketDate(ticket.TicketFrom)\n const ticketTo = formatTicketDate(ticket.TicketTo)\n\n if (dateNow.diff(ticketFrom) >= 0 && dateNow.diff(ticketTo) <= 0) {\n paid = true\n break\n }\n }\n }\n if(!paid) {\n accessDenyReasons.push(r.PrincipalField)\n }\n arr.push(paid)\n break\n case 'VisitorIdIncluded':\n userVisitorId = user.tickets.filter((ticket) => ticket.VisitorId)\n\n for (const vId of userVisitorId) {\n if (r.Values.includes(vId.VisitorId)) {\n vIdValid = true\n break\n }\n }\n if(!vIdValid) {\n accessDenyReasons.push(r.PrincipalField)\n }\n arr.push(vIdValid)\n break\n }\n\n })\n switch (policy.ConditionType) {\n case 'All':\n if (!arr.includes(false)) {\n result = true\n }\n break\n case 'Any':\n if (arr.includes(true)) {\n result = true\n }\n break\n }\n }\n\n accessDenyReasonsObj[policy.Name] = accessDenyReasons\n localStorage.setItem('accessDenyReasons', JSON.stringify(accessDenyReasonsObj))\n return result\n} \n\nexport default {\n accessControl(type, id) {\n const policies = getDenyAllowPolicies(type, id)\n if (policies.deny.length === 0 && policies.allow.length === 0) {\n console.log('Access Control: allowed - no rules assigned')\n return true\n }\n\n if (policies.deny && policies.deny.length > 0) {\n // TODO: check if for is really needed\n for (let i = 0, len = policies.deny.length; i < len; i += 1) {\n if (evalPolicy(policies.deny[i], id, policies.deny[i].Effect)) {\n console.log(`policy: ${policies.deny[i].Name}`, `, version: ${policies.deny[i].Version}`)\n console.log('Access Control: denied')\n if (store.getters['instancesState/getSuperUser']) return true\n return false\n }\n }\n\n }\n\n if (policies.deny.length > 0 && policies.allow.length === 0) {\n console.log('Access Control: allowed - no allow rules assigned')\n return true\n }\n\n if (policies.allow && policies.allow.length > 0) {\n // TODO: check if for is really needed\n for (let i = 0, len = policies.allow.length; i < len; i += 1) {\n if (evalPolicy(policies.allow[i], id, policies.allow[i].Effect)) {\n console.log(`policy: ${policies.allow[i].Name}`, `, version: ${policies.allow[i].Version}`)\n console.log('Access Control: allowed')\n return true\n }\n }\n }\n\n if (policies > 0) {\n policies.deny.forEach((policy) => {\n console.log(`policy: ${policy.Name}`, `, version: ${policy.Version}`)\n })\n policies.allow.forEach((policy) => {\n console.log(`policy: ${policy.Name}`, `, version: ${policy.Version}`)\n })\n }\n console.log('Access Control: denied')\n return false\n },\n\n accessControlSession(id) {\n return this.accessControl('Session', id)\n },\n\n accessControlSessionRecording(id) {\n return this.accessControl('SessionRecording', id)\n },\n\n accessControlPages(page) {\n return this.accessControl('Page', page)\n },\n\n accessControlUrl(url) {\n return this.accessControl('Url', url)\n },\n\n accessControlKey(key) {\n return this.accessControl('Key', key)\n },\n\n accessDeniedDialog(data) {\n const event = new CustomEvent('accessDenied', {\n detail: {\n message: 'accessDenied',\n info: data,\n },\n })\n window.dispatchEvent(event)\n },\n}\n","import dayjs from 'dayjs'\n\nimport Vue from 'vue'\nimport VueCookies from 'vue-cookies'\n\nimport config from '~/config'\nimport store from '~/store'\nimport userState from '~/states/user'\nimport tracking from '~/utilities/tracking'\n\nVue.use(VueCookies)\n\nexport default {\n addProtocolToUrlIfMissing(url, secure = true) {\n const proto = secure ? 'https://' : 'http://'\n let u = url\n if (!url.startsWith('http')) {\n u = proto + url\n }\n return u\n },\n getUrlParameter(queryString, name) {\n const n = name.replace(/[[]/, '\\\\[').replace(/[\\]]/, '\\\\]')\n const regex = new RegExp(`[\\\\?&]${n}=([^&#]*)`)\n const results = regex.exec(queryString)\n return results === null ? '' : decodeURIComponent(results[1].replace(/\\+/g, ' '))\n },\n redirectOAuthAuthorize(to) {\n let redirectUri = new URL(window.location.origin + to.path)\n\n if (to.name === 'LoginPage') {\n redirectUri = new URL(`${window.location.origin}/home/${to.params.instance}/${to.params.event}/${to.params.language}`)\n }\n for (const name in to.query) { // TODO: check if for is really needed\n if (Object.prototype.hasOwnProperty.call(to.query, name)) {\n redirectUri.searchParams.append(name, to.query[name])\n }\n }\n redirectUri.searchParams.append('state', '123')\n\n const instanceConfig = config.getInstanceConfig(store.getters['instancesState/getInstance'])\n\n userState.unsetUser(store.getters['instancesState/getInstance'])\n store.commit('instancesState/setToken', null)\n\n const { authorizeUrl } = instanceConfig.oauth2\n const params = {\n client_id: instanceConfig.oauth2.clientId,\n redirect_uri: redirectUri,\n scope: instanceConfig.oauth2.scope,\n response_type: 'token',\n }\n const queryString = Object.keys(params).map((key) => `${encodeURIComponent(key)}=${encodeURIComponent(params[key])}`).join('&')\n window.location.href = `${authorizeUrl}?${queryString}`\n },\n formatConvenorModelList(unformattedList) {\n const formattedList = []\n // TODO: check if for is really needed\n for (let i = 0, len = unformattedList.length; i < len; i += 1) {\n formattedList.push({\n value: unformattedList[i].Id,\n text: unformattedList[i].Name,\n })\n }\n return formattedList\n },\n formatChairList(unformattedList) {\n const formattedList = []\n // TODO: check if for is really needed\n for (let i = 0, len = unformattedList.length; i < len; i += 1) {\n formattedList.push({\n value: unformattedList[i].Key,\n text: unformattedList[i].Name,\n })\n }\n return formattedList\n },\n formatCompanyDatabaseList(unformattedList) {\n const formattedList = []\n // TODO: check if for is really needed\n for (let i = 0, len = unformattedList.length; i < len; i += 1) {\n formattedList.push({\n company: unformattedList[i],\n })\n }\n return formattedList\n },\n formatSearchResult(unformattedList) {\n const formattedList = []\n // TODO: check if for is really needed\n for (let i = 0, len = unformattedList.length; i < len; i += 1) {\n formattedList.push(\n unformattedList[i].item,\n )\n }\n return formattedList\n },\n getEventId(data) {\n const response = data\n return response.EventId\n },\n getSession(eventData) {\n const response = eventData\n return response[0].Id\n },\n getCompanyId(data) {\n const response = data\n return response.CompanyId\n },\n corsProxy() {\n const proxy = ''\n return proxy\n },\n formButtonDeactivate(status) {\n if (status === 'Done' || status === 'Accepted' || status === 'Rejected') {\n const buttons = document.getElementsByTagName('button')\n // TODO: check if for is really needed\n for (let i = 0; i < buttons.length; i += 1) {\n const button = buttons[i]\n button.style.visibility = 'hidden'\n }\n }\n },\n nameToCssClassName(name) {\n return name.toLowerCase().replace(/\\s/g, '_').replace(/[^a-z_]/g, '')\n },\n nl2br(str) {\n const breakTag = '
'\n return String(str).replace(/([^>\\r\\n]?)(\\r\\n|\\n\\r|\\r|\\n)/g, `$1${breakTag}$2`)\n },\n ObjectHasNestedProperty(object, propertyPath) {\n if (!propertyPath) {\n return false\n }\n\n const properties = propertyPath.split('.')\n let obj = object\n\n // TODO: check if for is really needed\n for (let i = 0; i < properties.length; i += 1) {\n const prop = properties[i]\n\n if (!obj || !Object.prototype.hasOwnProperty.call(obj, prop)) {\n return false\n }\n obj = obj[prop]\n }\n return true\n },\n changeFavicon(src) {\n const link = document.createElement('link')\n const oldLink = document.getElementById('dynamic-favicon')\n link.id = 'dynamic-favicon'\n link.rel = 'icon'\n link.href = src\n if (oldLink) {\n document.head.removeChild(oldLink)\n }\n document.head.appendChild(link)\n },\n atoz(a, b) {\n // Use toUpperCase() to ignore character casing\n\n let comparison = 0\n if (a > b) {\n comparison = 1\n } else if (a < b) {\n comparison = -1\n }\n return comparison\n },\n ascendingLabel(a, b) {\n // Use toUpperCase() to ignore character casing\n let productA\n let productB\n\n if (a.label != null) {\n productA = a.label.toUpperCase()\n }\n if (b.label != null) {\n productB = b.label.toUpperCase()\n }\n let comparison = 0\n if (productA > productB) {\n comparison = 1\n } else if (productA < productB) {\n comparison = -1\n }\n return comparison\n },\n ascending(a, b) {\n // Use toUpperCase() to ignore character casing\n let productA\n let productB\n\n if (a.Name != null) {\n productA = a.Name.toUpperCase()\n }\n if (b.Name != null) {\n productB = b.Name.toUpperCase()\n }\n let comparison = 0\n if (productA > productB) {\n comparison = 1\n } else if (productA < productB) {\n comparison = -1\n }\n return comparison\n },\n ascendingCompanyName(a, b) {\n // Use toUpperCase() to ignore character casing\n let productA\n let productB\n\n if (a.CompanyName != null) {\n productA = a.CompanyName.toUpperCase()\n }\n if (b.CompanyName != null) {\n productB = b.CompanyName.toUpperCase()\n }\n let comparison = 0\n if (productA > productB) {\n comparison = 1\n } else if (productA < productB) {\n comparison = -1\n }\n return comparison\n },\n descending(a, b) {\n // Use toUpperCase() to ignore character casing\n let productA\n let productB\n\n if (a.Name != null) {\n productA = a.Name.toUpperCase()\n }\n if (b.Name != null) {\n productB = b.Name.toUpperCase()\n }\n let comparison = 0\n if (productA > productB) {\n comparison = 1\n } else if (productA < productB) {\n comparison = -1\n }\n return comparison * -1\n },\n descendingCompanyName(a, b) {\n // Use toUpperCase() to ignore character casing\n let productA\n let productB\n\n if (a.CompanyName != null) {\n productA = a.CompanyName.toUpperCase()\n }\n if (b.CompanyName != null) {\n productB = b.CompanyName.toUpperCase()\n }\n let comparison = 0\n if (productA > productB) {\n comparison = 1\n } else if (productA < productB) {\n comparison = -1\n }\n return comparison * -1\n },\n rateAscending(a, b) {\n // Use toUpperCase() to ignore character casing\n const productA = a.Rating\n const productB = b.Rating\n\n let comparison = 0\n if (productA > productB) {\n comparison = 1\n } else if (productA < productB) {\n comparison = -1\n }\n return comparison\n },\n rateDescending(a, b) {\n const productA = a.Rating\n const productB = b.Rating\n\n let comparison = 0\n if (productA > productB) {\n comparison = 1\n } else if (productA < productB) {\n comparison = -1\n }\n return comparison * -1\n },\n getDomain() {\n return window.location.hostname\n },\n isUrl(link) {\n if (!this.isString(link)) {\n return false\n }\n return link.startsWith('http')\n },\n getRouteWithDefaultParams(name, params = {}, query = {}) {\n const route = {\n name,\n params,\n query,\n }\n return this.appendDefaultParamsToRoute(route)\n },\n appendDefaultParamsToRoute(route) {\n const r = route\n const mergedParams = {\n instance: store.getters['instancesState/getInstanceUrlParam'],\n event: store.getters['instancesState/getEvent'],\n language: store.getters['instancesState/getLanguage'],\n }\n Object.assign(mergedParams, r.params)\n r.params = mergedParams\n return r\n },\n isObject(obj) {\n const type = typeof obj\n return type === 'function' || type === 'object' && !!obj\n },\n isString(str) {\n return Object.prototype.toString.call(str) === '[object String]'\n },\n queryString(params) {\n const queryString = Object.keys(params).map((key) => `${encodeURIComponent(key)}=${encodeURIComponent(params[key])}`).join('&')\n return queryString\n },\n // compare 2 objects with without nested objects\n shallowEqual(object1, object2) {\n const keys1 = Object.keys(object1)\n const keys2 = Object.keys(object2)\n\n if (keys1.length !== keys2.length) {\n return false\n }\n\n for (const key of keys1) {\n if (object1[key] !== object2[key]) {\n return false\n }\n }\n\n return true\n },\n shuffleArray(array) {\n for (let i = array.length - 1; i > 0; i -= 1) { // TODO: check if for is really needed\n const j = Math.floor(Math.random() * (i + 1));\n [array[i], array[j]] = [array[j], array[i]]\n }\n },\n\n getCETorCESTDate() {\n const localDate = new Date()\n const utcOffset = localDate.getTimezoneOffset()\n const cetOffset = utcOffset + 60\n const cestOffset = utcOffset + 120\n const cetOffsetInMilliseconds = cetOffset * 60 * 1000\n const cestOffsetInMilliseconds = cestOffset * 60 * 1000\n const cestDateStart = new Date()\n const cestDateFinish = new Date()\n const localDateTime = localDate.getTime()\n let result\n cestDateStart.setTime(Date.parse(`29 March ${localDate.getFullYear()} 02:00:00 GMT+0100`))\n cestDateFinish.setTime(Date.parse(`25 October ${localDate.getFullYear()} 03:00:00 GMT+0200`))\n const cestDateStartTime = cestDateStart.getTime()\n const cestDateFinishTime = cestDateFinish.getTime()\n if (localDateTime >= cestDateStartTime && localDateTime <= cestDateFinishTime) {\n result = new Date(localDateTime + cestOffsetInMilliseconds)\n } else {\n result = new Date(localDateTime + cetOffsetInMilliseconds)\n }\n return result\n },\n getObjKey(key, obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n return obj[key]\n }\n return null\n },\n\n appendStyletoHead(css) {\n const headerStyle = css\n\n const style = document.createElement('link')\n style.type = 'text/css'\n style.rel = 'stylesheet'\n style.href = headerStyle\n document.head.appendChild(style)\n },\n\n addTicketCookie(userTicket) {\n let bookingString = ''\n let isHcp = ''\n const accessDays = []\n function getDaysArray(s, e) {\n const a = []\n const d = new Date(s)\n // TODO: check if for is really needed\n for (; d <= e; d.setDate(d.getDate() + 1)) {\n a.push(new Date(d))\n }\n return a\n }\n\n if (userTicket && userTicket.length > 0) {\n userTicket.forEach((itemKey) => {\n bookingString = itemKey.TicketTypeName ? `${bookingString}manage_admission_valid_booked_ticket|${itemKey.TicketTypeName};` : ''\n if (itemKey.TicketFrom && itemKey.TicketTo) {\n const daylist = getDaysArray(new Date(itemKey?.TicketFrom.split('T')[0]), new Date(itemKey?.TicketTo.split('T')[0]))\n accessDays.push(daylist.map((v) => v.toISOString().slice(0, 10)).join(',').split(','))\n }\n })\n }\n\n if (userTicket && userTicket.length > 0 && userTicket[0].EnableHCP) {\n isHcp = userTicket[0].EnableHCP\n Vue.$cookies.set('hcp', isHcp)\n } else {\n Vue.$cookies.set('hcp', false)\n }\n\n Vue.$cookies.set('accessOnDays', JSON.stringify(accessDays))\n if (bookingString) Vue.$cookies.set('tickets', bookingString)\n },\n\n advancedTracking() {\n let tConfig = null\n if (store.getters['config/configForKey']('app_config')) {\n [tConfig] = store.getters['config/configForKey']('app_config').config\n }\n if (tConfig[0] && tConfig[0].advancedUserTracking) {\n return tConfig[0].advancedUserTracking\n }\n return false\n },\n advancedTrackingFormat(userId, source, element, elementInfo) {\n let eInfo = ''\n const valueToM = 23571113\n const mUserId = parseInt(userId, 10) + valueToM\n if (elementInfo) {\n eInfo = `, \"ElementInfo\": \"${elementInfo}\"`\n }\n return `\"UserId\": \"${mUserId}\", \"Date\": \"${dayjs().format('YYYY-MM-DD')}\", \"Time\": \"${dayjs().format('hh:mm')\n }\", \"Source\": \"${source}\", \"Element\": \"${element}\"${eInfo}`\n },\n trackPageOpen(user, pageName) {\n if (this.advancedTracking()) {\n tracking.trackEvent(\n pageName,\n 'Open',\n this.advancedTrackingFormat(\n user.UserId,\n 'Page',\n pageName,\n ),\n )\n }\n },\n trackPageLeave(user, pageName) {\n if (this.advancedTracking()) {\n tracking.trackEvent(\n pageName,\n 'Leave',\n this.advancedTrackingFormat(\n user.UserId,\n 'Page',\n pageName,\n ),\n )\n }\n },\n\n setPageTitle(pageName) {\n const newPageTitles = store.getters['config/configForKey']('app_config').config[0].PageTitles\n if (newPageTitles) {\n if (Object.prototype.hasOwnProperty.call(newPageTitles, pageName)) {\n return newPageTitles[pageName]\n }\n }\n return null\n },\n\n loadScript(url, timeout, additionalProps = null) {\n let time = 0\n if (timeout) {\n time = timeout\n }\n setTimeout(() => {\n const script = document.createElement('script')\n script.setAttribute('type', 'text/javascript')\n if (additionalProps && Object.keys(additionalProps).length > 0 && additionalProps.constructor === Object) {\n Object.entries(additionalProps).forEach((item) => {\n script.setAttribute(item[0], item[1])\n })\n }\n script.setAttribute('src', url)\n document.body.appendChild(script)\n }, time)\n },\n\n loadStylesheet(url) {\n const link = document.createElement('link')\n link.setAttribute('rel', 'stylesheet')\n link.setAttribute('href', url)\n document.head.appendChild(link)\n },\n\n deleteScript(url) {\n if (document.querySelector(`script[src=\"${url}\"]`)) {\n document.querySelector(`script[src=\"${url}\"]`).remove()\n }\n },\n\n showHome() {\n document.getElementById('app').classList.remove('hasSplashscreen')\n if (!document.getElementById('app').classList.contains('par21')) {\n localStorage.setItem('hasSeenSplashscreen', 'true')\n }\n window.openAd()\n window.setImageMapHeader()\n },\n localStringFormatter(string) {\n const languageRegex = /^([a-zA-Z]{2})-([a-zA-Z]{2})$/\n let locale = string\n if (locale && languageRegex.test(locale)) {\n locale = `${locale.substring(0, 2).toLowerCase()}-${locale.substring(3, 5).toUpperCase()}`\n return locale\n }\n return string\n },\n}\n"],"sourceRoot":""}