{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./themeConfig.js","webpack:///./src/App.vue?b518","webpack:///src/App.vue","webpack:///./src/App.vue?8b47","webpack:///./src/App.vue","webpack:///./src/router.js","webpack:///./src/acl/acl.js","webpack:///./src/components/FeatherIcon.vue","webpack:///./src/layouts/components/vx-tooltip/VxTooltip.vue?e624","webpack:///./src/assets/utils/index.js","webpack:///src/layouts/components/vx-tooltip/VxTooltip.vue","webpack:///./src/layouts/components/vx-tooltip/VxTooltip.vue?e195","webpack:///./src/layouts/components/vx-tooltip/VxTooltip.vue","webpack:///./src/components/vx-card/VxCard.vue?599b","webpack:///src/components/vx-card/VxCard.vue","webpack:///./src/components/vx-card/VxCard.vue?a3ca","webpack:///./src/components/vx-card/VxCard.vue","webpack:///./src/components/vx-list/VxList.vue?de27","webpack:///src/components/vx-list/VxList.vue","webpack:///./src/components/vx-list/VxList.vue?f59b","webpack:///./src/components/vx-list/VxList.vue","webpack:///./src/layouts/components/VxBreadcrumb.vue?be18","webpack:///src/layouts/components/VxBreadcrumb.vue","webpack:///./src/layouts/components/VxBreadcrumb.vue?156a","webpack:///./src/layouts/components/VxBreadcrumb.vue","webpack:///src/components/FeatherIcon.vue","webpack:///./src/components/FeatherIcon.vue?c816","webpack:///./src/components/vx-input-group/VxInputGroup.vue?1c0e","webpack:///src/components/vx-input-group/VxInputGroup.vue","webpack:///./src/components/vx-input-group/VxInputGroup.vue?0b64","webpack:///./src/components/vx-input-group/VxInputGroup.vue","webpack:///./src/gen-2/components/CustomSkeleton.vue?15a9","webpack:///src/gen-2/components/CustomSkeleton.vue","webpack:///./src/gen-2/components/CustomSkeleton.vue?4302","webpack:///./src/gen-2/components/CustomSkeleton.vue","webpack:///./src/globalComponents.js","webpack:///./src/layouts/components/navbarSearchAndPinList.js","webpack:///./src/store/state.js","webpack:///./src/store/getters.js","webpack:///./src/store/mutations.js","webpack:///./src/store/actions.js","webpack:///./src/store/auth/moduleAuthState.js","webpack:///./src/store/auth/moduleAuthMutations.js","webpack:///./src/store/auth/moduleAuthActions.js","webpack:///./src/store/auth/moduleAuthGetters.js","webpack:///./src/store/auth/moduleAuth.js","webpack:///./src/store/chat/moduleChatState.js","webpack:///./src/store/chat/moduleChatMutations.js","webpack:///./src/store/chat/moduleChatActions.js","webpack:///./src/store/chat/moduleChatGetters.js","webpack:///./src/store/chat/moduleChat.js","webpack:///./src/store/store.js","webpack:///./src/i18n/i18nData.js","webpack:///./src/i18n/i18n.js","webpack:///./src/filters/filters.js","webpack:///./src/main.js","webpack:///./src/App.vue?a0de","webpack:///./src/components/vx-card/VxCard.vue?d419","webpack:///./src/components/FeatherIcon.vue?13e4","webpack:///./src/components/vx-input-group/VxInputGroup.vue?4103","webpack:///./src/components/vx-list/VxList.vue?25d4","webpack:///./src/components/chat/contacts.js","webpack:///./src/assets/utils/color.js"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","colors","primary","secondary","tertiary","success","danger","warning","dark","background","prependslotbg","fontcolor","use","theme","themeConfig","sidebarCollapsed","navbarColor","navbarType","footerType","routerTransition","disableCustomizer","hideScrollToTop","disableThemeTour","schoolTheme","fontType","render","_vm","this","_h","$createElement","_c","_self","attrs","staticRenderFns","watch","val","toggleClassInBody","getNewSessionId","methods","className","body","match","classList","remove","add","sessionStorage","sessionId","self","setItem","$uuid","v4","onSuccess","response","localStorage","$store","dispatch","split","$ajaxGet","$setColors","location","pathname","$setCEPSiteInfo","$setSiteInfo","getItem","$getSiteId","$getSiteIdWithContent","getValidSubscription","link","querySelector","component","router","base","x","y","routes","path","children","redirect","meta","rule","pageTitle","afterEach","to","from","next","currentModuleId","appLoading","getElementById","style","display","beforeEach","permissionArray","initial","notfound","acceptLocalRules","globalRules","Login","generate","MaintainSites","MaintainUsers","MaintainBackgrounds","MaintainMusic","MaintainScenes","MaintainCharacters","MaintainVideos","BuildCourses","MaintainISpringQuizzes","MaintainISpringPresentations","MaintainDocuments","MaintainNavigations","MaintainQuizzes","ViewCourses","AssessModerate","Assess","Moderate","ReviewVideos","MaintainLanguages","MaintainClassifications","MaintainModuleGroups","MaintainMarketingVideos","AssessModerateEvaluate","Evaluate","ViewReports","or","MaintainDocumentTypes","MaintainAssessmentQuestions","MaintainLibraryResources","Student","Teacher","Librarian","SuperAdmin","SiteAdmin","CourseBuilder","Assessor","Moderator","Evaluator","VideoEditor","Marketer","LibraryAdmin","Mentor","ViewDashboard","MaintainPracticalQuestions","School","and","Other","Guardian","CEPAdmin","MaintainVendors","Monitor","Principal","ref","staticClass","on","mouseoutx","mouseoverx","directives","rawName","expression","class","positionx","position","color","noneAfter","_v","_s","title","_e","text","_t","elx","insertBefore","firstChild","element","bodyx","content","conditional","topx","leftx","widthx","scrollTopx","pageYOffset","documentElement","scrollTop","getBoundingClientRect","top","innerHeight","clientHeight","left","offsetWidth","cords","width","props","default","String","Number","delay","active","computed","transitionDelay","getColor","$nextTick","utils","insertBody","$refs","vstooltip","changePosition","convstooltip","elxEvent","tooltip","closest","clientWidth","Math","sign","innerWidth","_g","tempHidden","noShadow","noRadius","cardBorder","cardClasses","$listeners","$props","titleClasses","subtitleClasses","subtitle","actionButtons","collapseAction","refreshContentAction","removeCardAction","codeToggler","rotate180","isContentCollapsed","toggleContent","refreshcard","removeCard","showCode","toggleCode","collapsed","$slots","$vs","rtl","codeLanguage","Boolean","actionButtonsColor","headerBackground","cardBackground","contentColor","titleColor","subtitleColor","maxHeight","cardMaxHeight","codeContainerMaxHeight","actions","hasAction","obj","isColor","str","trim","overflow","scrollHeight","$emit","loading","container","scale","time","close","card","$el","codeContainer","components","Prism","_l","item","index","icon","domProps","list","Array","required","$route","breadcrumb","url","svgClasses","badge","h","svg","badgeEl","attr","click","clickFeather","mouseover","mouseoverFeather","mouseout","mouseoutFeather","slots","prependClasses","appendClasses","size","count","animation","VxTooltip","VxCard","VxList","VxBreadcrumb","FeatherIcon","VxInputGroup","CustomSkeleton","actionIcon","highlightColor","isSidebarActive","breakpoint","sidebarWidth","reduceButton","bodyOverlay","sidebarItemsMin","navbarSearchAndPinList","AppActiveUser","id","about","img","status","themePrimaryColor","starredPages","filter","page","highlightAction","userRole","aclSubscription","mutations","state","payload","findIndex","starredPagesMore","concat","downToUp","lastItemInStarredLimited","starredPagesLimited","map","indexOf","commit","locale","isUserLoggedIn","isAuthenticated","user","JSON","stringify","newPayload","userDetails","notify","checkbox_remember_me","login","iconPack","$signIn","email","password","localStorageString","currentUserId","displayName","apiToken","$getSites","$getProfilePicture","userInfo","parse","photoURL","$setPermissions","$acl","change","includes","currentRoute","query","hasRoleForDigiCEP","sitePermissions","siteId","hasRoleForDigiUsers","hasRoleForSiteWithContent","permissions","isGuardianOrStudent","hasSitePermissionForDigiCampus","hasSitePermissionWithALanguage","languageId","hasSitePermissionWithAGrade","courseClassificationId","language","grade","userPermissions","isStudent","resultObj","setSitePermissionsForAuth","check","siteTypeId","routeData","open","token","$signInWithToken","externalString","$signInWithEncryptedKey","siteInfo","siteName","siteLogoUrl","schoolPrimaryColor","schoolSecondaryColor","schoolTertiaryColor","schoolFontColor","isMentoringAvailable","virtualClassroom","hasSignature","oneTaskAttempt","profilePictureUrl","isGuardian","namespaced","getters","chatSearchQuery","chats","1","isPinned","msg","textContent","isSent","isSeen","2","chatData","keys","find","chatId","set","forEach","root","chatDataOfUser","chatArray","contacts","contact","toLowerCase","sort","timeX","chatLastMessaged","timeY","Date","chatcontacts","chatUnseenMessages","unseenMsg","Store","auth","moduleAuth","chat","moduleChat","strict","en","Dashboard","Settings","Sites","Users","Languages","Classifications","ModuleGroups","SelectCourse","ModuleDocuments","BulkUploadCourses","BulkUploadSchedules","PremiumContent","Navigation","Scene","Background","Music","Scenes","Characters","Video","iSpringQuiz","iSpringPresentation","Document","Quiz","Manage","Courses","Students","studentDocs","Snapshot","DeviceType","Assessment","PredefinedComment","AssessTask","ModerateTask","Assign","Companies","Marketing","ManageVideos","EvaluateTask","Reports","DocumentTypes","LearnerReviewQuestions","WitnessTestimonyQuestion","ResourceCategory","AdditionalResources","PracticalQuestions","Guardians","AddShortCourse","ShortCourseList","SARSQuestions","AddBundle","BundleList","Vendors","Assessments","DataPlans","MobilePlans","Banners","BulkUploadFeedback","SubscriptionReport","messages","i18nData","toString","arr","capitalized_array","word","capitalized","charAt","toUpperCase","join","limit","substring","tail","is24HrFormat","date","hours","getHours","min","getMinutes","fullDate","month","year","replace","num","toFixed","$http","a","load","libraries","disableClick","touchClass","tapTolerance","touchHoldTolerance","swipeTolerance","longTapTimeInterval","namespace","$VUE_APP_VIDEO_CAPTURE_URL","$VUE_APP_HLS_PLAYER_URL","$VUE_APP_HLS_PLAYER_URL_LIBRARY","$VUE_APP_HLS_PLAYER_URL_LIVESTREAM","$VUE_APP_ROOT_API","$VUE_APP_SIGNALR","$VUE_APP_SITE_WITH_CONTENT","$VUE_APP_ENVIROMENT","$isProductionEnv","$buildUrl","$getAccessToken","$hasSignature","$getTaskAttempt","$isMentoringAvailable","$siteTypeId","myUrl","onFinally","mySelf","myAccessToken","mySiteId","method","headers","catch","exception","colour","sessionExpired","clear","finally","$dummyAjaxGet","$ajaxGetAnon","$ajaxGetAnonNoCache","$ajaxPost","formData","$ajaxPostAnon","onError","$ajaxDelete","MD5","Email","Password","Token","encodeURIComponent","$digiGetSites","siteData","$digiSetPermissions","$endUserSession","$unauthorizedMessage","config","productionTip","uploaderConfig","uploadFileUrl","deleteFileUrl","showMessage","vue","itemLimit","zeroIfEmpty","isMobile","test","substr","navigator","userAgent","vendor","opera","$formatDate","getMonth","day","getDate","getFullYear","$componentClass","extend","$setSchoolTheme","store","override","redirectedFromPublicSite","siteIds","$_primary","$_secondary","$_tertiary","$_prependslotbg","$_background","$_fontcolor","userSiteInfo","$_fontType","fontStyle","$redirectToRegPage","$getTutorials","tutorials","what","ax","arguments","L","$isEmpty","$findIndexWithAttr","array","i18n","acl","App","$mount","percent","f","R","parseInt","G","B","round","colorx","alphax","defaultx","hexToRgb","g","b","search","vscolors","getRandomInt","max","floor","random","opacity","colorSplit","elementx","rgbx","rgb","yiq","propertyName","setProperty","hex","shorthandRegex","exec","styles","getPropertyValue","colorInicial","colores","getComputedStyle","getVariable"],"mappings":"aACE,SAASA,EAAqBC,GAQ7B,IAPA,IAMIC,EAAUC,EANVC,EAAWH,EAAK,GAChBI,EAAcJ,EAAK,GACnBK,EAAiBL,EAAK,GAIHM,EAAI,EAAGC,EAAW,GACpCD,EAAIH,EAASK,OAAQF,IACzBJ,EAAUC,EAASG,GAChBG,OAAOC,UAAUC,eAAeC,KAAKC,EAAiBX,IAAYW,EAAgBX,IACpFK,EAASO,KAAKD,EAAgBX,GAAS,IAExCW,EAAgBX,GAAW,EAE5B,IAAID,KAAYG,EACZK,OAAOC,UAAUC,eAAeC,KAAKR,EAAaH,KACpDc,EAAQd,GAAYG,EAAYH,IAG/Be,GAAqBA,EAAoBhB,GAE5C,MAAMO,EAASC,OACdD,EAASU,OAATV,GAOD,OAHAW,EAAgBJ,KAAKK,MAAMD,EAAiBb,GAAkB,IAGvDe,IAER,SAASA,IAER,IADA,IAAIC,EACIf,EAAI,EAAGA,EAAIY,EAAgBV,OAAQF,IAAK,CAG/C,IAFA,IAAIgB,EAAiBJ,EAAgBZ,GACjCiB,GAAY,EACRC,EAAI,EAAGA,EAAIF,EAAed,OAAQgB,IAAK,CAC9C,IAAIC,EAAQH,EAAeE,GACG,IAA3BX,EAAgBY,KAAcF,GAAY,GAE3CA,IACFL,EAAgBQ,OAAOpB,IAAK,GAC5Be,EAASM,EAAoBA,EAAoBC,EAAIN,EAAe,KAItE,OAAOD,EAIR,IAAIQ,EAAmB,GAGnBC,EAAqB,CACxB,IAAO,GAMJjB,EAAkB,CACrB,IAAO,GAGJK,EAAkB,GAGtB,SAASa,EAAe7B,GACvB,OAAOyB,EAAoBK,EAAI,OAAS,GAAG9B,IAAUA,GAAW,IAAM,CAAC,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,YAAYA,GAAW,MAIpjL,SAASyB,EAAoB1B,GAG5B,GAAG4B,EAAiB5B,GACnB,OAAO4B,EAAiB5B,GAAUgC,QAGnC,IAAIC,EAASL,EAAiB5B,GAAY,CACzCK,EAAGL,EACHkC,GAAG,EACHF,QAAS,IAUV,OANAlB,EAAQd,GAAUW,KAAKsB,EAAOD,QAASC,EAAQA,EAAOD,QAASN,GAG/DO,EAAOC,GAAI,EAGJD,EAAOD,QAKfN,EAAoBS,EAAI,SAAuBlC,GAC9C,IAAImC,EAAW,GAIXC,EAAY,CAAC,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,GACl7ER,EAAmB5B,GAAUmC,EAASvB,KAAKgB,EAAmB5B,IACzB,IAAhC4B,EAAmB5B,IAAkBoC,EAAUpC,IACtDmC,EAASvB,KAAKgB,EAAmB5B,GAAW,IAAIqC,SAAQ,SAASC,EAASC,GAIzE,IAHA,IAAIC,EAAO,QAAU,GAAGxC,IAAUA,GAAW,IAAM,CAAC,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,iBAAiB,WAAW,i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","file":"js/app.3cd92e9c.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"js/\" + ({}[chunkId]||chunkId) + \".\" + {\"chunk-033c6fbc\":\"ca7d4e72\",\"chunk-03734cce\":\"3bb0efcb\",\"chunk-08339251\":\"6f7c8391\",\"chunk-0a481853\":\"bdef2b1b\",\"chunk-0aabcc8a\":\"dd09757a\",\"chunk-1742a1ea\":\"f2323fd9\",\"chunk-2d210665\":\"c3363eec\",\"chunk-51c207ae\":\"8a3e1c41\",\"chunk-207b073f\":\"f47f6335\",\"chunk-27159cb0\":\"3a559d30\",\"chunk-d9c6d6d2\":\"6d90fd3e\",\"chunk-40bb8710\":\"5225c3b1\",\"chunk-f8dda7b2\":\"d32a5e53\",\"chunk-2a74b216\":\"07ff07bc\",\"chunk-2d0aa587\":\"90e4ae6a\",\"chunk-2d0aab48\":\"0b15b3cc\",\"chunk-2d0aecf8\":\"c1b43883\",\"chunk-2d0b1a55\":\"a0a0722b\",\"chunk-2d0c0ad0\":\"a4d4d3f3\",\"chunk-2d0c1d19\":\"516990a4\",\"chunk-25ec5b84\":\"a02b97d1\",\"chunk-2d0ded32\":\"94900818\",\"chunk-2d0d7bcd\":\"fcaa91a9\",\"chunk-2d0e5d9f\":\"9383926b\",\"chunk-2d0c81d7\":\"5f7871c2\",\"chunk-3583d504\":\"6e2ba841\",\"chunk-412984ff\":\"878818f7\",\"chunk-92b8a4f6\":\"549756b0\",\"chunk-00d919a8\":\"6710b35e\",\"chunk-0f5071ed\":\"dadfa62f\",\"chunk-53d8e3f8\":\"53a2c7d6\",\"chunk-4d59d202\":\"7f220354\",\"chunk-5cc026b1\":\"cb20a9ad\",\"chunk-5cc12005\":\"054bbf0f\",\"chunk-5cc23f62\":\"6f599eff\",\"chunk-5cc448b2\":\"b5ac6772\",\"chunk-5cd688c0\":\"e2b02bb7\",\"chunk-5cd8cb33\":\"510ef67b\",\"chunk-74a2128a\":\"cb2d1eb2\",\"chunk-2d0bff90\":\"8ed62f3c\",\"chunk-2d0d83eb\":\"5bcbc5bb\",\"chunk-69b312a0\":\"6533ccf8\",\"chunk-3964d084\":\"6324d7ee\",\"chunk-2d0c4636\":\"7220bf87\",\"chunk-2d0c7acf\":\"259f93a7\",\"chunk-2d0c7b80\":\"528bae83\",\"chunk-2d0cb76d\":\"62544b50\",\"chunk-03c0b1e8\":\"000742b6\",\"chunk-2d0a54e0\":\"01ac3906\",\"chunk-2d0ae90a\":\"9f4f9d62\",\"chunk-2d0b37ef\":\"6975f9cf\",\"chunk-2d0cf101\":\"f8594bfe\",\"chunk-2d0e9cf3\":\"7eb06b7f\",\"chunk-2d208a09\":\"23095349\",\"chunk-2d2105dc\":\"dae5d8b9\",\"chunk-2d21a426\":\"0bb86359\",\"chunk-2d237151\":\"2d689be8\",\"chunk-2d0aa5b8\":\"c32e7151\",\"chunk-2d2160ef\":\"37cb9634\",\"chunk-510f71e8\":\"97849bec\",\"chunk-3a8852e5\":\"18db87ba\",\"chunk-3d862751\":\"044bd18b\",\"chunk-f08eba66\":\"5faa6c74\",\"chunk-85bce826\":\"788f5655\",\"chunk-9f99abd6\":\"fd79a0d5\",\"chunk-43c3d840\":\"f67c55a9\",\"chunk-490a0062\":\"55c664d2\",\"chunk-51ad9126\":\"ea0bbe6c\",\"chunk-57a6fca8\":\"8eb4b0b6\",\"chunk-589a5ceb\":\"8d598f05\",\"chunk-b239b902\":\"b0873488\",\"chunk-6bc76f2e\":\"f8618cb1\",\"chunk-6be5692c\":\"c65ec50d\",\"chunk-236f3d86\":\"616c06d6\",\"chunk-550d687e\":\"266e226e\",\"chunk-cd1144ce\":\"730db78d\",\"chunk-5d17e793\":\"7a0fb7b1\",\"chunk-7550dd6b\":\"7a5d045c\",\"chunk-b1254402\":\"45bf838e\",\"chunk-f0271786\":\"6ec6003c\",\"chunk-4e408bda\":\"bee20457\",\"chunk-5e7f41f0\":\"5e09fba8\",\"chunk-f2ad9cba\":\"4a0e80fb\",\"chunk-72ce2592\":\"968ebe43\",\"chunk-7d3d5626\":\"777692cc\",\"chunk-2d0a54d5\":\"19cc7603\",\"chunk-2d0efc47\":\"ab83f9b8\",\"chunk-725b3866\":\"c4ba36f4\",\"chunk-36b7cd48\":\"d42abd7f\",\"chunk-3c72ba02\":\"271afd90\",\"chunk-38565ee9\":\"b99f7261\",\"chunk-68a27674\":\"5f666bac\",\"chunk-4a49d1f9\":\"e94fda9c\",\"chunk-0b03bd27\":\"fe9c2c9a\",\"chunk-23a462c8\":\"6705f0c6\",\"chunk-63ef240c\":\"7e0785a9\",\"chunk-120abd17\":\"fe114b51\",\"chunk-15de486e\":\"0dab32d3\",\"chunk-3d18ffd6\":\"fc3ed6c5\",\"chunk-5865a0eb\":\"b6ac085d\",\"chunk-c99458ae\":\"fdf0ae8f\",\"chunk-0d01cb62\":\"7bcd1153\",\"chunk-6cccee0f\":\"4f735785\",\"chunk-3eb8a12e\":\"68fd69ce\",\"chunk-ffc18ef8\":\"02f7d38a\",\"chunk-4bd8dfee\":\"444c0dd4\",\"chunk-0bb4b0c2\":\"4427c175\",\"chunk-1393953c\":\"f5af2387\",\"chunk-60aedee8\":\"4325aa39\",\"chunk-76a931d8\":\"9596d55f\",\"chunk-f0ee4fbe\":\"feef72cd\",\"chunk-f63112d0\":\"44bdedf0\",\"chunk-7e7389ae\":\"06f8600f\",\"chunk-7ea83e84\":\"143c7b4b\",\"chunk-8ab98ea6\":\"c8215ece\",\"chunk-bbb3d412\":\"2904999f\",\"chunk-c4958fa4\":\"8f1bc204\",\"chunk-01db7a53\":\"5627bca7\",\"chunk-1165a3d8\":\"b3b1dcf4\",\"chunk-ff8c53ec\":\"28fcceaf\",\"chunk-c4f6ef24\":\"2c85f1a6\",\"chunk-2d0d67dc\":\"bd6d9feb\",\"chunk-2d207b43\":\"75d1cbba\",\"chunk-2d216804\":\"1f7baf8f\",\"chunk-2d216fc1\":\"e7de220d\",\"chunk-2d21a957\":\"239eb408\",\"chunk-2d21ed09\":\"ea516bd8\",\"chunk-2d22c341\":\"5afee3ab\",\"chunk-2d237c38\":\"4aeeeb78\",\"chunk-3305ab3a\":\"6dd6b6d1\",\"chunk-55242cab\":\"02880319\",\"chunk-5927fdb7\":\"b304605e\",\"chunk-86d2dcfc\":\"7cde0f1b\",\"chunk-2d0de528\":\"758b263b\",\"chunk-a948482a\":\"2928b426\",\"chunk-6c463481\":\"3241dda1\",\"chunk-1a731ad1\":\"d66377c4\",\"chunk-b0032bf8\":\"9309f08b\",\"chunk-44cdc844\":\"420c1b98\",\"chunk-4e01820c\":\"c139705a\",\"chunk-5377935a\":\"2c488209\",\"chunk-5693103a\":\"0a243594\",\"chunk-56f2dc82\":\"6a07d049\",\"chunk-0ff02f12\":\"f6ba4c02\",\"chunk-4cd62d2e\":\"09571df2\",\"chunk-b2b04da6\":\"8c53db18\",\"chunk-c7e12694\":\"9735ef16\",\"chunk-58db7a62\":\"8bb6cc5a\",\"chunk-59c47205\":\"dab45ec3\",\"chunk-59f0c1a4\":\"b68ede05\",\"chunk-5b701f8c\":\"2fd4e0b6\",\"chunk-62c2dd1a\":\"e2e33d31\",\"chunk-62c64a38\":\"877adc90\",\"chunk-2467781e\":\"0f3d142d\",\"chunk-2d0b1e40\":\"73821545\",\"chunk-1891027c\":\"d128d47b\",\"chunk-00f9d89c\":\"e88119e4\",\"chunk-02ddbe64\":\"83c2ee66\",\"chunk-2bd01900\":\"9fb625dc\",\"chunk-42ae1382\":\"f790ad19\",\"chunk-72c3713c\":\"b03a9d86\",\"chunk-7306732f\":\"5821d788\",\"chunk-75800137\":\"987724da\",\"chunk-2d0b301c\":\"446f74d4\",\"chunk-749f86b6\":\"adf1335f\",\"chunk-2d207f58\":\"037bac4a\",\"chunk-62602f0b\":\"82082ec8\",\"chunk-72376b89\":\"39c44b78\",\"chunk-2d21e7e1\":\"53398edc\",\"chunk-21b1f5a5\":\"7ef1cec7\",\"chunk-32e579cc\":\"6f7ea660\",\"chunk-4fe257c7\":\"3724511b\",\"chunk-638f9aeb\":\"a720231a\",\"chunk-72642597\":\"771471cd\",\"chunk-f441b4b4\":\"f4bcde7c\",\"chunk-5a645bd4\":\"f7e1a338\",\"chunk-7c830d02\":\"104ac345\",\"chunk-0e47dcfe\":\"e28ad5a3\",\"chunk-17c57826\":\"08471470\",\"chunk-2edbbb9e\":\"6ed5b522\",\"chunk-87d13f6c\":\"5b3118ef\",\"chunk-9691730a\":\"18499f17\",\"chunk-821a1826\":\"ee92d79c\",\"chunk-819ac8e6\":\"4260161f\",\"chunk-9bc21e1e\":\"9bfb6e3d\",\"chunk-9614c35c\":\"9966b434\",\"chunk-98f0745a\":\"b1f24130\",\"chunk-77c260aa\":\"cb0a6c4f\",\"chunk-d95372da\":\"c7593920\",\"chunk-5814df1e\":\"1ca8e2be\",\"chunk-2d2228f8\":\"7de2defd\",\"chunk-2d229074\":\"dc4ec083\",\"chunk-2d22bd23\":\"615d968f\",\"chunk-2d238446\":\"77829ca7\",\"chunk-5521b1b4\":\"5fe0d91a\",\"chunk-dabbfb64\":\"b86f7e5a\",\"chunk-ea8556d8\":\"6d6896da\",\"chunk-ecc4e0ac\":\"0abeb51f\",\"chunk-067c6bc8\":\"82021b92\",\"chunk-f463b15a\":\"32458099\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"chunk-033c6fbc\":1,\"chunk-03734cce\":1,\"chunk-08339251\":1,\"chunk-0a481853\":1,\"chunk-0aabcc8a\":1,\"chunk-51c207ae\":1,\"chunk-207b073f\":1,\"chunk-27159cb0\":1,\"chunk-d9c6d6d2\":1,\"chunk-40bb8710\":1,\"chunk-f8dda7b2\":1,\"chunk-2a74b216\":1,\"chunk-412984ff\":1,\"chunk-0f5071ed\":1,\"chunk-53d8e3f8\":1,\"chunk-4d59d202\":1,\"chunk-74a2128a\":1,\"chunk-69b312a0\":1,\"chunk-3964d084\":1,\"chunk-03c0b1e8\":1,\"chunk-510f71e8\":1,\"chunk-3a8852e5\":1,\"chunk-f08eba66\":1,\"chunk-85bce826\":1,\"chunk-9f99abd6\":1,\"chunk-43c3d840\":1,\"chunk-490a0062\":1,\"chunk-51ad9126\":1,\"chunk-57a6fca8\":1,\"chunk-589a5ceb\":1,\"chunk-b239b902\":1,\"chunk-6bc76f2e\":1,\"chunk-550d687e\":1,\"chunk-cd1144ce\":1,\"chunk-5d17e793\":1,\"chunk-b1254402\":1,\"chunk-f0271786\":1,\"chunk-4e408bda\":1,\"chunk-5e7f41f0\":1,\"chunk-f2ad9cba\":1,\"chunk-72ce2592\":1,\"chunk-725b3866\":1,\"chunk-36b7cd48\":1,\"chunk-3c72ba02\":1,\"chunk-38565ee9\":1,\"chunk-68a27674\":1,\"chunk-0b03bd27\":1,\"chunk-23a462c8\":1,\"chunk-63ef240c\":1,\"chunk-120abd17\":1,\"chunk-15de486e\":1,\"chunk-3d18ffd6\":1,\"chunk-5865a0eb\":1,\"chunk-c99458ae\":1,\"chunk-0d01cb62\":1,\"chunk-6cccee0f\":1,\"chunk-3eb8a12e\":1,\"chunk-ffc18ef8\":1,\"chunk-4bd8dfee\":1,\"chunk-0bb4b0c2\":1,\"chunk-1393953c\":1,\"chunk-60aedee8\":1,\"chunk-76a931d8\":1,\"chunk-f0ee4fbe\":1,\"chunk-f63112d0\":1,\"chunk-7e7389ae\":1,\"chunk-7ea83e84\":1,\"chunk-8ab98ea6\":1,\"chunk-bbb3d412\":1,\"chunk-01db7a53\":1,\"chunk-1165a3d8\":1,\"chunk-ff8c53ec\":1,\"chunk-c4f6ef24\":1,\"chunk-3305ab3a\":1,\"chunk-55242cab\":1,\"chunk-5927fdb7\":1,\"chunk-86d2dcfc\":1,\"chunk-a948482a\":1,\"chunk-6c463481\":1,\"chunk-1a731ad1\":1,\"chunk-b0032bf8\":1,\"chunk-4e01820c\":1,\"chunk-5377935a\":1,\"chunk-5693103a\":1,\"chunk-56f2dc82\":1,\"chunk-0ff02f12\":1,\"chunk-4cd62d2e\":1,\"chunk-b2b04da6\":1,\"chunk-c7e12694\":1,\"chunk-58db7a62\":1,\"chunk-59f0c1a4\":1,\"chunk-5b701f8c\":1,\"chunk-62c64a38\":1,\"chunk-2467781e\":1,\"chunk-1891027c\":1,\"chunk-00f9d89c\":1,\"chunk-02ddbe64\":1,\"chunk-2bd01900\":1,\"chunk-42ae1382\":1,\"chunk-72c3713c\":1,\"chunk-7306732f\":1,\"chunk-75800137\":1,\"chunk-749f86b6\":1,\"chunk-62602f0b\":1,\"chunk-72376b89\":1,\"chunk-21b1f5a5\":1,\"chunk-32e579cc\":1,\"chunk-4fe257c7\":1,\"chunk-638f9aeb\":1,\"chunk-72642597\":1,\"chunk-f441b4b4\":1,\"chunk-5a645bd4\":1,\"chunk-7c830d02\":1,\"chunk-0e47dcfe\":1,\"chunk-17c57826\":1,\"chunk-2edbbb9e\":1,\"chunk-87d13f6c\":1,\"chunk-9691730a\":1,\"chunk-819ac8e6\":1,\"chunk-9bc21e1e\":1,\"chunk-9614c35c\":1,\"chunk-98f0745a\":1,\"chunk-77c260aa\":1,\"chunk-d95372da\":1,\"chunk-5814df1e\":1,\"chunk-5521b1b4\":1,\"chunk-dabbfb64\":1,\"chunk-ea8556d8\":1,\"chunk-ecc4e0ac\":1,\"chunk-f463b15a\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"css/\" + ({}[chunkId]||chunkId) + \".\" + {\"chunk-033c6fbc\":\"b73e0da2\",\"chunk-03734cce\":\"2ae9a649\",\"chunk-08339251\":\"4950c124\",\"chunk-0a481853\":\"8c498f57\",\"chunk-0aabcc8a\":\"14a954f3\",\"chunk-1742a1ea\":\"31d6cfe0\",\"chunk-2d210665\":\"31d6cfe0\",\"chunk-51c207ae\":\"d374ba6d\",\"chunk-207b073f\":\"6e93c63a\",\"chunk-27159cb0\":\"a5b5877e\",\"chunk-d9c6d6d2\":\"27e46991\",\"chunk-40bb8710\":\"27f46a8a\",\"chunk-f8dda7b2\":\"f86c9a19\",\"chunk-2a74b216\":\"69760fe4\",\"chunk-2d0aa587\":\"31d6cfe0\",\"chunk-2d0aab48\":\"31d6cfe0\",\"chunk-2d0aecf8\":\"31d6cfe0\",\"chunk-2d0b1a55\":\"31d6cfe0\",\"chunk-2d0c0ad0\":\"31d6cfe0\",\"chunk-2d0c1d19\":\"31d6cfe0\",\"chunk-25ec5b84\":\"31d6cfe0\",\"chunk-2d0ded32\":\"31d6cfe0\",\"chunk-2d0d7bcd\":\"31d6cfe0\",\"chunk-2d0e5d9f\":\"31d6cfe0\",\"chunk-2d0c81d7\":\"31d6cfe0\",\"chunk-3583d504\":\"31d6cfe0\",\"chunk-412984ff\":\"b62c1126\",\"chunk-92b8a4f6\":\"31d6cfe0\",\"chunk-00d919a8\":\"31d6cfe0\",\"chunk-0f5071ed\":\"15fdad44\",\"chunk-53d8e3f8\":\"ec077fc3\",\"chunk-4d59d202\":\"0b991203\",\"chunk-5cc026b1\":\"31d6cfe0\",\"chunk-5cc12005\":\"31d6cfe0\",\"chunk-5cc23f62\":\"31d6cfe0\",\"chunk-5cc448b2\":\"31d6cfe0\",\"chunk-5cd688c0\":\"31d6cfe0\",\"chunk-5cd8cb33\":\"31d6cfe0\",\"chunk-74a2128a\":\"ad1cd512\",\"chunk-2d0bff90\":\"31d6cfe0\",\"chunk-2d0d83eb\":\"31d6cfe0\",\"chunk-69b312a0\":\"f569e14a\",\"chunk-3964d084\":\"d50f46c7\",\"chunk-2d0c4636\":\"31d6cfe0\",\"chunk-2d0c7acf\":\"31d6cfe0\",\"chunk-2d0c7b80\":\"31d6cfe0\",\"chunk-2d0cb76d\":\"31d6cfe0\",\"chunk-03c0b1e8\":\"3f69d79d\",\"chunk-2d0a54e0\":\"31d6cfe0\",\"chunk-2d0ae90a\":\"31d6cfe0\",\"chunk-2d0b37ef\":\"31d6cfe0\",\"chunk-2d0cf101\":\"31d6cfe0\",\"chunk-2d0e9cf3\":\"31d6cfe0\",\"chunk-2d208a09\":\"31d6cfe0\",\"chunk-2d2105dc\":\"31d6cfe0\",\"chunk-2d21a426\":\"31d6cfe0\",\"chunk-2d237151\":\"31d6cfe0\",\"chunk-2d0aa5b8\":\"31d6cfe0\",\"chunk-2d2160ef\":\"31d6cfe0\",\"chunk-510f71e8\":\"4fb3212d\",\"chunk-3a8852e5\":\"9c44e755\",\"chunk-3d862751\":\"31d6cfe0\",\"chunk-f08eba66\":\"7a76decb\",\"chunk-85bce826\":\"044d0cf1\",\"chunk-9f99abd6\":\"21738470\",\"chunk-43c3d840\":\"3f69d79d\",\"chunk-490a0062\":\"a19c5808\",\"chunk-51ad9126\":\"45a8e7dc\",\"chunk-57a6fca8\":\"adb85578\",\"chunk-589a5ceb\":\"fa1a7931\",\"chunk-b239b902\":\"4d06119c\",\"chunk-6bc76f2e\":\"e6262f65\",\"chunk-6be5692c\":\"31d6cfe0\",\"chunk-236f3d86\":\"31d6cfe0\",\"chunk-550d687e\":\"e14c11a0\",\"chunk-cd1144ce\":\"37cd2df4\",\"chunk-5d17e793\":\"2bb25829\",\"chunk-7550dd6b\":\"31d6cfe0\",\"chunk-b1254402\":\"63ad9c75\",\"chunk-f0271786\":\"504bc675\",\"chunk-4e408bda\":\"a0fd9601\",\"chunk-5e7f41f0\":\"fb1bb55a\",\"chunk-f2ad9cba\":\"2c488a93\",\"chunk-72ce2592\":\"3f69d79d\",\"chunk-7d3d5626\":\"31d6cfe0\",\"chunk-2d0a54d5\":\"31d6cfe0\",\"chunk-2d0efc47\":\"31d6cfe0\",\"chunk-725b3866\":\"28402dc1\",\"chunk-36b7cd48\":\"0b7a8ada\",\"chunk-3c72ba02\":\"904f120c\",\"chunk-38565ee9\":\"56354abd\",\"chunk-68a27674\":\"bb034d23\",\"chunk-4a49d1f9\":\"31d6cfe0\",\"chunk-0b03bd27\":\"835d3998\",\"chunk-23a462c8\":\"0453c7b6\",\"chunk-63ef240c\":\"060a5b96\",\"chunk-120abd17\":\"191c27d3\",\"chunk-15de486e\":\"781a132a\",\"chunk-3d18ffd6\":\"c196ff98\",\"chunk-5865a0eb\":\"a60d3c1b\",\"chunk-c99458ae\":\"ed7d3b0d\",\"chunk-0d01cb62\":\"f0d1fe28\",\"chunk-6cccee0f\":\"b712e9a5\",\"chunk-3eb8a12e\":\"d486062f\",\"chunk-ffc18ef8\":\"f3e74fe3\",\"chunk-4bd8dfee\":\"4126276b\",\"chunk-0bb4b0c2\":\"a9a12661\",\"chunk-1393953c\":\"93ed28b0\",\"chunk-60aedee8\":\"e53a7080\",\"chunk-76a931d8\":\"801beb8a\",\"chunk-f0ee4fbe\":\"0a4c6453\",\"chunk-f63112d0\":\"62bdb677\",\"chunk-7e7389ae\":\"35bc12ee\",\"chunk-7ea83e84\":\"d9ccc4e7\",\"chunk-8ab98ea6\":\"ac127db9\",\"chunk-bbb3d412\":\"7610d5e6\",\"chunk-c4958fa4\":\"31d6cfe0\",\"chunk-01db7a53\":\"4c24d352\",\"chunk-1165a3d8\":\"e1a4443b\",\"chunk-ff8c53ec\":\"f1171f4f\",\"chunk-c4f6ef24\":\"1c32058d\",\"chunk-2d0d67dc\":\"31d6cfe0\",\"chunk-2d207b43\":\"31d6cfe0\",\"chunk-2d216804\":\"31d6cfe0\",\"chunk-2d216fc1\":\"31d6cfe0\",\"chunk-2d21a957\":\"31d6cfe0\",\"chunk-2d21ed09\":\"31d6cfe0\",\"chunk-2d22c341\":\"31d6cfe0\",\"chunk-2d237c38\":\"31d6cfe0\",\"chunk-3305ab3a\":\"29d0273f\",\"chunk-55242cab\":\"9ab07718\",\"chunk-5927fdb7\":\"c4e01355\",\"chunk-86d2dcfc\":\"c05b3b29\",\"chunk-2d0de528\":\"31d6cfe0\",\"chunk-a948482a\":\"53f94bb0\",\"chunk-6c463481\":\"06c31bdc\",\"chunk-1a731ad1\":\"9ae485a4\",\"chunk-b0032bf8\":\"a2a9d0e4\",\"chunk-44cdc844\":\"31d6cfe0\",\"chunk-4e01820c\":\"c2004486\",\"chunk-5377935a\":\"d0b84c03\",\"chunk-5693103a\":\"b77271ef\",\"chunk-56f2dc82\":\"806621c0\",\"chunk-0ff02f12\":\"fffab9fa\",\"chunk-4cd62d2e\":\"8e15a945\",\"chunk-b2b04da6\":\"70785636\",\"chunk-c7e12694\":\"0f4ae7ea\",\"chunk-58db7a62\":\"a5b5877e\",\"chunk-59c47205\":\"31d6cfe0\",\"chunk-59f0c1a4\":\"72a464f5\",\"chunk-5b701f8c\":\"5c405b8f\",\"chunk-62c2dd1a\":\"31d6cfe0\",\"chunk-62c64a38\":\"8d9ce87b\",\"chunk-2467781e\":\"9eaa2344\",\"chunk-2d0b1e40\":\"31d6cfe0\",\"chunk-1891027c\":\"b93f62ee\",\"chunk-00f9d89c\":\"06348a35\",\"chunk-02ddbe64\":\"74e2c0f9\",\"chunk-2bd01900\":\"87df76bb\",\"chunk-42ae1382\":\"4f6d2869\",\"chunk-72c3713c\":\"87727cd6\",\"chunk-7306732f\":\"87727cd6\",\"chunk-75800137\":\"723ca81e\",\"chunk-2d0b301c\":\"31d6cfe0\",\"chunk-749f86b6\":\"04d75902\",\"chunk-2d207f58\":\"31d6cfe0\",\"chunk-62602f0b\":\"cd34f292\",\"chunk-72376b89\":\"0d596e6b\",\"chunk-2d21e7e1\":\"31d6cfe0\",\"chunk-21b1f5a5\":\"a4195923\",\"chunk-32e579cc\":\"a4195923\",\"chunk-4fe257c7\":\"f76c1da7\",\"chunk-638f9aeb\":\"f76c1da7\",\"chunk-72642597\":\"4d06119c\",\"chunk-f441b4b4\":\"b33f4768\",\"chunk-5a645bd4\":\"714cd296\",\"chunk-7c830d02\":\"9eaa2344\",\"chunk-0e47dcfe\":\"c2e222a5\",\"chunk-17c57826\":\"6cb8d98f\",\"chunk-2edbbb9e\":\"7df87b84\",\"chunk-87d13f6c\":\"250d9d51\",\"chunk-9691730a\":\"fe55ef95\",\"chunk-821a1826\":\"31d6cfe0\",\"chunk-819ac8e6\":\"4c5c448e\",\"chunk-9bc21e1e\":\"d4fe064a\",\"chunk-9614c35c\":\"d7589b57\",\"chunk-98f0745a\":\"d2059271\",\"chunk-77c260aa\":\"f50be1e9\",\"chunk-d95372da\":\"95749b2e\",\"chunk-5814df1e\":\"16564d91\",\"chunk-2d2228f8\":\"31d6cfe0\",\"chunk-2d229074\":\"31d6cfe0\",\"chunk-2d22bd23\":\"31d6cfe0\",\"chunk-2d238446\":\"31d6cfe0\",\"chunk-5521b1b4\":\"e2019ea5\",\"chunk-dabbfb64\":\"72a464f5\",\"chunk-ea8556d8\":\"6bf74db6\",\"chunk-ecc4e0ac\":\"8c498f57\",\"chunk-067c6bc8\":\"31d6cfe0\",\"chunk-f463b15a\":\"089d5bae\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","/*=========================================================================================\r\n File Name: themeConfig.js\r\n Description: Theme configuration\r\n ----------------------------------------------------------------------------------------\r\n Item Name: Modern Admin - Clean Bootstrap 4 Dashboard HTML Template\r\n Author: Pixinvent\r\n Author URL: hhttp://www.themeforest.net/user/pixinvent\r\n==========================================================================================*/\r\n\r\n// MAIN COLORS - VUESAX THEME COLORS\r\nlet colors = {\r\n\tprimary: '#7367F0',\r\n\tsecondary: '#8ac544',\r\n\ttertiary: '#3566f9',\r\n\tsuccess: '#28C76F',\r\n\tdanger: '#EA5455',\r\n\twarning: '#FF9F43',\r\n\tdark: '#1E1E1E',\r\n\tbackground: '#262d4a',\r\n\tprependslotbg: '#41475E',\r\n\tfontcolor: '#54bd5f'\r\n}\r\n\r\nimport Vue from 'vue'\r\nimport Vuesax from 'vuesax'\r\nVue.use(Vuesax, { theme:{ colors } });\r\n\r\n\r\n// CONFIGS\r\nconst themeConfig = {\r\n\ttheme: 'light',\t\t\t\t\t\t// options[String]: 'light'(default), 'dark', 'semi-dark'\r\n\tsidebarCollapsed: false,\t\t\t// options[Boolean]: true, false(default)\r\n\tnavbarColor: \"#fff\",\t\t\t\t// options[String]: HEX color / rgb / rgba / Valid HTML Color name - (default: #fff)\r\n\tnavbarType: \"floating\",\t\t\t\t// options[String]: floating(default) / static / sticky / hidden\r\n\tfooterType: \"static\",\t\t\t\t// options[String]: static(default) / sticky / hidden\r\n\trouterTransition: 'zoom-fade',\t\t// options[String]: zoom-fade / slide-fade / fade-bottom / fade / zoom-out / none(default)\r\n\tdisableCustomizer: false,\t\t\t// options[Boolean]: true, false(default)\r\n\thideScrollToTop: false,\t\t\t\t// options[Boolean]: true, false(default)\r\n\tdisableThemeTour: false,\t\t\t// options[Boolean]: true, false(default)\r\n\tschoolTheme: \"digi\"\t,\t\t\t\t\t// options[String]: 'digi'(default), 'red', 'istudy', 'wced', 'swales', 'ligbron', 'moetapele', 'spesres', 'bdce', 'digicentral', 'shayela', 'sonke', 'route', 'e-ligbron', 'cocacola'\r\n\tfontType: \"Montserrat\"\t\t\t\t\r\n // NOTE: themeTour will be disabled in screens < 1200. Please refer docs for more info.\r\n}\r\n\r\nexport default themeConfig\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"app\"}},[_c('div',[_c('vue-headful',{attrs:{\"title\":\"DigiCampus\"}})],1),_c('router-view')],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=27325bd0&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","/*=========================================================================================\r\n File Name: router.js\r\n Description: Routes for vue-router. Lazy loading is enabled.\r\n Object Strucutre:\r\n path => router path\r\n name => router name\r\n component(lazy loading) => component to load\r\n meta : {\r\n rule => which user can have access (ACL)\r\n breadcrumb => Add breadcrumb to specific page\r\n pageTitle => Display title besides breadcrumb\r\n }\r\n ----------------------------------------------------------------------------------------\r\n Item Name: Vuesax Admin - VueJS Dashboard Admin Template\r\n Author: Pixinvent\r\n Author URL: http://www.themeforest.net/user/pixinvent\r\n==========================================================================================*/\r\n\r\n\r\nimport Vue from 'vue'\r\nimport Router from 'vue-router'\r\n\r\nVue.use(Router)\r\n\r\nconst router = new Router({\r\n mode: 'history',\r\n base: process.env.BASE_URL,\r\n scrollBehavior() {\r\n return { x: 0, y: 0 }\r\n },\r\n routes: [\r\n\r\n {\r\n // =============================================================================\r\n // MAIN LAYOUT ROUTES\r\n // =============================================================================\r\n path: '',\r\n component: () =>\r\n import('./layouts/main/Main.vue'),\r\n children: [\r\n // =============================================================================\r\n // Theme Routes\r\n // =============================================================================\r\n {\r\n path: '/',\r\n redirect: '/dashboard'\r\n },\r\n {\r\n path: '/dashboard',\r\n name: 'dashboard',\r\n component: () =>\r\n import('./views/Dashboard.vue'),\r\n meta: {\r\n rule: 'MeViewDashboardntor'\r\n }\r\n },\r\n\r\n // =============================================================================\r\n // Application Routes\r\n // =============================================================================\r\n {\r\n path: '/bulkuploadcourse',\r\n name: 'BulkUploadCourses',\r\n component: () =>\r\n import('@/views/coursebuilder/BulkUploadCourse.vue'),\r\n meta: {\r\n pageTitle: 'Bulk Upload Courses',\r\n rule: 'BuildCourses'\r\n },\r\n },\r\n {\r\n path: '/bulkuploadSchedules',\r\n name: 'BulkUploadSchedules',\r\n component: () =>\r\n import('@/views/coursebuilder/BulkUploadSchedules.vue'),\r\n meta: {\r\n pageTitle: 'Bulk Upload Schedules',\r\n rule: 'BuildCourses'\r\n },\r\n },\r\n {\r\n path: '/selectcourse',\r\n name: 'SelectCourse',\r\n component: () =>\r\n import('@/views/coursebuilder/SelectCourse.vue'),\r\n meta: {\r\n pageTitle: 'Select Course',\r\n rule: 'BuildCourses'\r\n },\r\n },\r\n {\r\n path:'/premiumContent',\r\n name: 'PremiumContent',\r\n component: () =>\r\n import('@/views/coursebuilder/PremiumContent.vue'),\r\n meta:{\r\n pageTitle: 'Premium Content',\r\n rule: 'School', \r\n }\r\n },\r\n {\r\n path: '/navigations',\r\n name: 'NavigationList',\r\n component: () =>\r\n import('@/views/coursebuilder/NavigationList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Navigation Maps',\r\n rule: 'MaintainNavigations'\r\n },\r\n },\r\n {\r\n path: '/backgrounds',\r\n name: 'BackgroundList',\r\n component: () =>\r\n import('@/views/coursebuilder/BackgroundList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Backgrounds',\r\n rule: 'MaintainBackgrounds'\r\n },\r\n },\r\n {\r\n path: '/music',\r\n name: 'MusicList',\r\n component: () =>\r\n import('@/views/coursebuilder/MusicList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Audio / Podcasts',\r\n rule: 'MaintainMusic'\r\n },\r\n },\r\n {\r\n path: '/characters',\r\n name: 'CharacterList',\r\n component: () =>\r\n import('@/views/coursebuilder/CharacterList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Characters',\r\n rule: 'MaintainCharacters'\r\n }\r\n },\r\n {\r\n path: '/scenes',\r\n name: 'SceneList',\r\n component: () =>\r\n import('@/views/coursebuilder/SceneList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Scenes',\r\n rule: 'MaintainScenes'\r\n }\r\n },\r\n {\r\n path: '/builder',\r\n name: 'CourseBuilder',\r\n component: () =>\r\n import('@/views/coursebuilder/CourseBuilder.vue'),\r\n meta: {\r\n pageTitle: 'Course Builder: ' + localStorage.getItem(\"currentModuleName\"),\r\n rule: 'BuildCourses'\r\n }\r\n },\r\n {\r\n path: '/builderB',\r\n name: 'CourseBuilderB',\r\n component: () =>\r\n import('@/views/coursebuilder/CourseBuilderB.vue'),\r\n meta: {\r\n pageTitle: 'Module Based Course Builder',\r\n // pageTitle: 'Module Based Course Builder: ' + localStorage.getItem(\"currentModuleName\"),\r\n rule: 'BuildCourses'\r\n }\r\n },\r\n {\r\n path: '/videos',\r\n name: 'VideoList',\r\n component: () =>\r\n import('@/views/coursebuilder/VideoList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Videos',\r\n rule: 'MaintainVideos'\r\n }\r\n },\r\n {\r\n path: '/webcam-test',\r\n name: 'WebcamTest',\r\n component: () =>\r\n import('@/layouts/components/WebcamTest.vue'),\r\n meta: {\r\n pageTitle: 'Webcam Test'\r\n }\r\n },\r\n {\r\n path: '/deviceinfo',\r\n name: 'DeviceInfo',\r\n component: () =>\r\n import('@/layouts/components/DeviceInfo.vue'),\r\n meta: {\r\n pageTitle: 'Device Info'\r\n }\r\n },\r\n {\r\n path: '/sites',\r\n name: 'SitesList',\r\n component: () =>\r\n import('@/views/coursebuilder/SitesList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Sites',\r\n rule: 'MaintainSites'\r\n }\r\n },\r\n {\r\n path: '/documenttypes',\r\n name: 'DocumentTypeList',\r\n component: () =>\r\n import('@/views/coursebuilder/DocumentTypeList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Document Types',\r\n rule: 'MaintainDocumentTypes'\r\n }\r\n },\r\n {\r\n path: '/languages',\r\n name: 'LanguagesList',\r\n component: () =>\r\n import('@/views/coursebuilder/LanguageList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Languages',\r\n rule: 'MaintainLanguages'\r\n }\r\n },\r\n {\r\n path: '/classifications',\r\n name: 'ClassificationsList',\r\n component: () =>\r\n import('@/views/coursebuilder/CourseClassificationList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Classifications',\r\n rule: 'MaintainClassifications'\r\n }\r\n },\r\n {\r\n path: '/groups',\r\n name: 'ModuleGroupList',\r\n component: () =>\r\n import('@/views/coursebuilder/ModuleGroupList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Module Groups',\r\n rule: 'MaintainModuleGroups'\r\n }\r\n },\r\n {\r\n path: '/users',\r\n name: 'UsersList',\r\n component: () =>\r\n import('@/views/coursebuilder/UsersList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Users',\r\n rule: 'MaintainUsers'\r\n }\r\n },\r\n {\r\n path: '/ispringquizzes',\r\n name: 'iSpringQuizList',\r\n component: () =>\r\n import('@/views/coursebuilder/iSpringQuizList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain iSpring Quizzes',\r\n rule: 'MaintainISpringQuizzes'\r\n }\r\n },\r\n {\r\n path: '/ispringpresentations',\r\n name: 'iSpringPresentationList',\r\n component: () =>\r\n import('@/views/coursebuilder/iSpringPresentationList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain iSpring Presentations',\r\n rule: 'MaintainISpringPresentations'\r\n }\r\n },\r\n {\r\n path: '/documents',\r\n name: 'DocumentList',\r\n component: () =>\r\n import('@/views/coursebuilder/DocumentList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Documents',\r\n rule: 'MaintainDocuments'\r\n }\r\n },\r\n {\r\n path: '/quizzes',\r\n name: 'QuizList',\r\n component: () =>\r\n import('@/views/coursebuilder/Quiz.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Quizzes',\r\n rule: 'MaintainQuizzes'\r\n }\r\n },\r\n {\r\n path: '/courses',\r\n name: 'Course',\r\n component: () =>\r\n import('@/views/coursebuilder/CourseList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Courses & Modules',\r\n rule: 'BuildCourses'\r\n }\r\n },\r\n {\r\n path: '/students',\r\n name: 'StudentsList',\r\n component: () =>\r\n import('@/views/coursebuilder/StudentsList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Students',\r\n rule: 'MaintainUsers'\r\n }\r\n },\r\n {\r\n path: '/studentDocs',\r\n name: 'studentDocs',\r\n component: () =>\r\n import('@/views/coursebuilder/StudentsDocs.vue'),\r\n meta: {\r\n pageTitle: 'Student Documents',\r\n rule: 'AssessModerateEvaluate'\r\n }\r\n },\r\n {\r\n path: '/predefinedcomments',\r\n name: 'PredefinedComment',\r\n component: () =>\r\n import('@/views/assessor/PredefinedComment.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Predefined Comments',\r\n rule: 'AssessModerateEvaluate'\r\n }\r\n },\r\n {\r\n path: '/assessmentquestions',\r\n name: 'AssessmentQuestion',\r\n component: () =>\r\n import('@/views/assessor/AssessmentQuestion.vue'),\r\n meta: {\r\n pageTitle: 'Learner Review Questions ',\r\n rule: 'MaintainAssessmentQuestions'\r\n }\r\n },\r\n {\r\n path: '/witnesstestimonyquestion',\r\n name: 'WitnessTestimonyQuestion',\r\n component: () =>\r\n import('@/views/assessor/WitnessTestimonyQuestion.vue'),\r\n meta: {\r\n pageTitle: 'Witness Testimony Question',\r\n rule: 'MaintainAssessmentQuestions'\r\n }\r\n },\r\n {\r\n path: '/resourcecategory',\r\n name: 'ResourceCategory',\r\n component: () =>\r\n import('@/views/coursebuilder/ResourceCategory.vue'),\r\n meta: {\r\n pageTitle: 'Resource Category',\r\n rule: 'BuildCourses'\r\n }\r\n },\r\n {\r\n path: '/additionalresources',\r\n name: 'AdditionalResources',\r\n component: () =>\r\n import('@/views/coursebuilder/AdditionalResources.vue'),\r\n meta: {\r\n pageTitle: 'Additional Resources',\r\n rule: 'BuildCourses'\r\n }\r\n },\r\n {\r\n path: '/practicalquestions',\r\n name: 'PracticalQuestion',\r\n component: () =>\r\n import('@/views/coursebuilder/PracticalQuestion.vue'),\r\n meta: {\r\n pageTitle: 'Practical Questions',\r\n rule: 'MaintainPracticalQuestions'\r\n }\r\n },\r\n {\r\n path: '/sarsquestions',\r\n name: 'SARSQuestion',\r\n component: () =>\r\n import('@/views/coursebuilder/SARSQuestion.vue'),\r\n meta: {\r\n pageTitle: 'SARS Questions',\r\n rule: 'SiteAdmin'\r\n }\r\n },\r\n {\r\n path: '/vendors',\r\n name: 'Vendor',\r\n component: () =>\r\n import('@/views/coursebuilder/Vendor.vue'),\r\n meta: {\r\n pageTitle: 'Vendors',\r\n rule: 'MaintainVendors'\r\n }\r\n },\r\n {\r\n path: '/subscription-report',\r\n name: 'SubscriptionReport',\r\n component: () =>\r\n import('@/views/coursebuilder/SubscriptionReport.vue'),\r\n meta: {\r\n pageTitle: 'Subscription Report',\r\n rule: 'CEPAdmin'\r\n }\r\n },\r\n {\r\n path: '/moduledocuments',\r\n name: 'Module Documents',\r\n component: () =>\r\n import('@/views/coursebuilder/ModuleDocuments.vue'),\r\n meta: {\r\n pageTitle: 'Module Documents',\r\n rule: 'AssessModerateEvaluate'\r\n },\r\n },\r\n {\r\n path: '/assesstask',\r\n name: 'AssessTask',\r\n component: () =>\r\n import('@/views/assessor/AssessTask.vue'),\r\n meta: {\r\n pageTitle: 'Assess Tasks',\r\n rule: 'Assess'\r\n }\r\n },\r\n {\r\n path: 'assessor/viewtask',\r\n name: 'ViewTaskAssess',\r\n component: () =>\r\n import('@/views/assessor/ViewTask.vue'),\r\n meta: {\r\n pageTitle: 'Assess Task',\r\n rule: 'Assess'\r\n }\r\n },\r\n {\r\n path: '/monitor/ViewTask',\r\n name: 'MonitorViewTask',\r\n component: () =>\r\n import('@/views/monitor/monitorviews/ViewTask.vue'),\r\n meta: {\r\n pageTitle: 'Monitor Task',\r\n rule: 'Monitor'\r\n }\r\n },\r\n {\r\n path: '/moderatetask',\r\n name: 'ModerateTask',\r\n component: () =>\r\n import('@/views/moderator/ModerateTask.vue'),\r\n meta: {\r\n pageTitle: 'Moderate Tasks',\r\n rule: 'Moderate'\r\n }\r\n },\r\n {\r\n path: 'moderator/viewtask',\r\n name: 'ViewTaskModerate',\r\n component: () =>\r\n import('@/views/moderator/ViewTask.vue'),\r\n meta: {\r\n pageTitle: 'Moderate Task',\r\n rule: 'Moderate'\r\n }\r\n },\r\n {\r\n path: '/assign',\r\n name: 'Assign',\r\n component: () =>\r\n import('@/views/coursebuilder/Assign.vue'),\r\n meta: {\r\n pageTitle: 'Assign',\r\n rule: 'MaintainUsers'\r\n }\r\n },\r\n {\r\n path: '/evaluatetask',\r\n name: 'Evaluate',\r\n component: () =>\r\n import('@/views/evaluator/EvaluateTask.vue'),\r\n meta: {\r\n pageTitle: 'Evaluate',\r\n rule: 'Evaluate'\r\n }\r\n },\r\n {\r\n path: 'evaluator/viewtask',\r\n name: 'ViewTaskEvaluate',\r\n component: () =>\r\n import('@/views/evaluator/ViewTask.vue'),\r\n meta: {\r\n pageTitle: 'Evaluate Task',\r\n rule: 'Evaluate'\r\n }\r\n },\r\n {\r\n path: '/companies',\r\n name: 'CompanyList',\r\n component: () =>\r\n import('@/views/coursebuilder/CompanyList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Companies',\r\n rule: 'MaintainUsers'\r\n }\r\n },\r\n {\r\n path: '/marketingcontent',\r\n name: 'MarketingVideos',\r\n component: () =>\r\n import('@/views/marketer/ManageVideos.vue'),\r\n meta: {\r\n pageTitle: 'Manage Marketing Videos',\r\n rule: 'MaintainMarketingVideos'\r\n }\r\n },\r\n {\r\n path: '/reports',\r\n name: 'ReportsList',\r\n component: () =>\r\n import('@/views/coursebuilder/ReportsList.vue'),\r\n meta: {\r\n pageTitle: 'View Reports',\r\n rule: 'ViewReports'\r\n }\r\n },\r\n {\r\n path: '/profile',\r\n name: 'Profile',\r\n component: () =>\r\n import('@/views/pages/Profile.vue'),\r\n meta: {\r\n rule: 'admin'\r\n }\r\n },\r\n {\r\n path: '/guardians',\r\n name: 'GuardiansList',\r\n component: () =>\r\n import('@/views/coursebuilder/GuardiansList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Guardians',\r\n rule: 'MaintainUsers'\r\n }\r\n },\r\n {\r\n path: '/add-shortcourse',\r\n name: 'AddShortCourse',\r\n component: () =>\r\n import('@/views/coursebuilder/AddShortCourses.vue'),\r\n meta: {\r\n pageTitle: 'Add Short Course',\r\n rule: 'CEPAdmin'\r\n }\r\n },\r\n {\r\n path: '/shortcourses',\r\n name: 'ShortCourses',\r\n component: () =>\r\n import('@/views/coursebuilder/ShortCourseList.vue'),\r\n meta: {\r\n pageTitle: 'Manage Short Courses',\r\n rule: 'CEPAdmin'\r\n }\r\n },\r\n {\r\n path: '/shortcourse-bundles',\r\n name: 'ShortCourseBundles',\r\n component: () =>\r\n import('@/views/ShortCourseBundles/ShortCourseBundles.vue'),\r\n meta: {\r\n pageTitle: 'Bundles',\r\n rule: 'CEPAdmin'\r\n }\r\n },\r\n {\r\n path: '/add-bundle',\r\n name: 'AddShortCourseBundle',\r\n component: () =>\r\n import('@/views/ShortCourseBundles/AddShortCourseBundle.vue'),\r\n meta: {\r\n pageTitle: 'Bundles',\r\n rule: 'CEPAdmin'\r\n }\r\n },\r\n {\r\n path: '/data-plan-banner',\r\n name: 'Banners',\r\n component: () =>\r\n import('@/views/MobilePlans/DataPlansBanner'),\r\n meta: {\r\n pageTitle: 'Banners',\r\n rule: 'CEPAdmin'\r\n }\r\n },\r\n {\r\n path: '/dataplans',\r\n name: 'DataPlans',\r\n component: () =>\r\n import('@/views/MobilePlans/DataPlans.vue'),\r\n meta: {\r\n pageTitle: 'Data Plans',\r\n rule: 'CEPAdmin'\r\n }\r\n },\r\n {\r\n path: '/studentdocuments-monitor',\r\n name: 'StudentDocumentsMonitor',\r\n component: () =>\r\n import('@/views/coursebuilder/StudentsDocs.vue'),\r\n meta: {\r\n pageTitle: 'Monitor Student Documents',\r\n rule: 'Monitor'\r\n }\r\n },\r\n {\r\n path: '/assessments-monitor',\r\n name: 'Assessments',\r\n component: () =>\r\n import('@/views/monitor/AssessmentMonitor.vue'),\r\n meta: {\r\n pageTitle: 'Monitor Assessments',\r\n rule: 'Monitor'\r\n }\r\n },\r\n {\r\n path: '/bulkupload-feedback',\r\n name: 'BulkUploadFeedback',\r\n component: ()=> \r\n import('@/views/coursebuilder/BulkUploadFeedback.vue'),\r\n meta: {\r\n pageTitle: 'Bulk Upload Feedback',\r\n rule: 'SiteAdmin'\r\n }\r\n },\r\n \r\n // {\r\n // path: '/manage-short-courses',\r\n // name: 'ShortCourses',\r\n // component: () =>\r\n // import('@/views/coursebuilder/ShortCourses.vue'),\r\n // meta: {\r\n // pageTitle: 'ShortCourse',\r\n // rule: 'CEPAdmin'\r\n // }\r\n // },\r\n ],\r\n },\r\n\r\n\r\n // =============================================================================\r\n // FULL PAGE - Course Viewer LAYOUTS\r\n // =============================================================================\r\n {\r\n path: '',\r\n component: () =>\r\n import('@/layouts/full-page/FullPageCourseViewer.vue'),\r\n children: [\r\n // =============================================================================\r\n // PAGES\r\n // =============================================================================\r\n {\r\n path: '/story',\r\n name: 'StoryViewer',\r\n component: () =>\r\n import('@/components/courseviewer/CourseViewer.vue'),\r\n meta: {\r\n pageTitle: 'Course Viewer',\r\n rule: 'BuildCourses'\r\n }\r\n },\r\n {\r\n path: '/quizdraganddropreview',\r\n name: 'QuizDragAndDropPreview',\r\n component: () =>\r\n import('@/views/coursebuilder/QuizDragAndDropPreview.vue'),\r\n meta: {\r\n pageTitle: 'Drag And Drop Preview',\r\n rule: 'BuildCourses'\r\n }\r\n },\r\n ]\r\n },\r\n // =============================================================================\r\n // FULL PAGE - Course Viewer LAYOUTS (DigiCampus)\r\n // =============================================================================\r\n {\r\n path: '',\r\n component: () =>\r\n import('@/digicampus/full-page/FullPageDigiCourseViewer.vue'),\r\n children: [\r\n // =============================================================================\r\n // PAGES\r\n // =============================================================================\r\n {\r\n path: '/digi/story',\r\n name: 'DigiStoryViewer',\r\n component: () =>\r\n import('@/components/courseviewer/CourseViewer.vue'),\r\n meta: {\r\n pageTitle: 'Course Viewer',\r\n rule: 'BuildCourses'\r\n }\r\n },\r\n ]\r\n },\r\n // =============================================================================\r\n // FULL PAGE - Student LAYOUT\r\n // =============================================================================\r\n {\r\n path: '',\r\n component: () =>\r\n import('@/layouts/full-page/FullPageStudentDashboard.vue'),\r\n children: [\r\n // =============================================================================\r\n // PAGES\r\n // =============================================================================\r\n \r\n ]\r\n },\r\n // =============================================================================\r\n // FULL PAGE - Digi Student Dashboard LAYOUTS\r\n // =============================================================================\r\n {\r\n path: '',\r\n component: () =>\r\n import('@/digicampus/full-page/FullPageDigiStudentDashboard.vue'),\r\n children: [\r\n // =============================================================================\r\n // PAGES\r\n // =============================================================================\r\n {\r\n path: '/digi/browsecontent',\r\n name: 'BrowseContent',\r\n component: () =>\r\n import('@/digicampus/pages/BrowseContent.vue'),\r\n meta: {\r\n pageTitle: 'Lessons',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/digi/HomeworkViewer',\r\n name: 'HomeworkViewer',\r\n component: () =>\r\n import('@/digicampus/pages/HomeworkViewer.vue'),\r\n meta: {\r\n pageTitle: 'Homework',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/modulebasedviewer',\r\n name: 'LearningStyleBViewer',\r\n component: () =>\r\n import('@/digicampus/courseviewer/DigiLearningStyleBViewer.vue'),\r\n meta: {\r\n pageTitle: 'Learning Style B Course Viewer',\r\n rule: 'admin'\r\n }\r\n },\r\n {\r\n path: '/my-roster',\r\n name: 'StudentRoster',\r\n component: () =>\r\n import('@/digicampus/pages/StudentRoster.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/my-library',\r\n name: 'StudentLibrary',\r\n component: () =>\r\n import('@/digicampus/pages/StudentLibrary.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/my-classrooms',\r\n name: 'StudentClassrooms',\r\n component: () =>\r\n import('@/digicampus/pages/StudentClassrooms.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/classroom',\r\n name: 'StudentClassroomSelected',\r\n component: () =>\r\n import('@/digicampus/pages/StudentClassroomSelected.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/assessments',\r\n name: 'StudentClassroomAssessments',\r\n component: () =>\r\n import('@/digicampus/pages/StudentClassroomAssessments.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/full-library',\r\n name: 'FullLibrary',\r\n component: () =>\r\n import('@/digicampus/pages/FullLibrary.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/view-book',\r\n name: 'BookViewer (deprecated)',\r\n component: () =>\r\n import('@/digicampus/pages/ResourceViews/BookViewer (deprecated).vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/view-video',\r\n name: 'HLSVideoViewer',\r\n component: () =>\r\n import('@/digicampus/pages/ResourceViews/HLSVideoViewer.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/playvideo',\r\n name: 'VideoViewer',\r\n component: () =>\r\n import('@/digicampus/pages/VideoViewer.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/readpdf-notused',\r\n name: 'DocumentViewer (deprecated)',\r\n component: () =>\r\n import('@/digicampus/pages/DocumentViewer (deprecated).vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/readpdf',\r\n name: 'DocumentViewer',\r\n component: () =>\r\n import('@/digicampus/pages/DocumentViewer.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/playpodcast',\r\n name: 'PodcastViewer',\r\n component: () =>\r\n import('@/digicampus/pages/PodcastViewer.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/livestream',\r\n name: 'LiveStreamViewer',\r\n component: () =>\r\n import('@/digicampus/pages/LiveStreamViewer.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/uploadtask',\r\n name: 'UploadViewer',\r\n component: () =>\r\n import('@/digicampus/pages/UploadViewer.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/presentationviewer',\r\n name: 'PresentationViewer',\r\n component: () =>\r\n import('@/digicampus/pages/PresentationViewer.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/quiztask',\r\n name: 'QuizTaskViewer',\r\n component: () =>\r\n import('@/digicampus/pages/QuizTaskViewer.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/videochat',\r\n name: 'VideoChatPage',\r\n component: () =>\r\n import('@/digicampus/pages/VideoChatPage.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/backpackviewer',\r\n name: 'BackpackViewer',\r\n component: () =>\r\n import('@/digicampus/pages/BackpackViewer.vue'),\r\n meta: {\r\n pageTitle: 'BackpackViewer',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/fab',\r\n name: 'FAB',\r\n component: () =>\r\n import('@/digicampus/assets/fab-icon-examples.vue'),\r\n meta: {\r\n pageTitle: 'FAB Examples',\r\n rule: 'Admin'\r\n }\r\n },\r\n {\r\n path: '/addvideo',\r\n name: 'AddVideo',\r\n component: () =>\r\n import('@/digicampus/pages/ContentComponents/ManageContent/AddVideo.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Admin'\r\n }\r\n },\r\n {\r\n path: '/editvideo',\r\n name: 'EditVideo',\r\n component: () =>\r\n import('@/digicampus/pages/ContentComponents/ManageContent/EditVideo.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Admin'\r\n }\r\n },\r\n {\r\n path: '/adddocument',\r\n name: 'AddDocument',\r\n component: () =>\r\n import('@/digicampus/pages/ContentComponents/ManageContent/AddDocument.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Admin'\r\n }\r\n },\r\n {\r\n path: '/editdocument',\r\n name: 'EditDocument',\r\n component: () =>\r\n import('@/digicampus/pages/ContentComponents/ManageContent/EditDocument.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Admin'\r\n }\r\n },\r\n {\r\n path: '/addpodcast',\r\n name: 'AddPodcast',\r\n component: () =>\r\n import('@/digicampus/pages/ContentComponents/ManageContent/AddPodcast.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Admin'\r\n }\r\n },\r\n {\r\n path: '/addquiz',\r\n name: 'AddQuiz',\r\n component: () =>\r\n import('@/digicampus/pages/ContentComponents/ManageContent/AddQuiz.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Admin'\r\n }\r\n },\r\n {\r\n path: '/addupload',\r\n name: 'AddUpload',\r\n component: () =>\r\n import('@/digicampus/pages/ContentComponents/ManageContent/AddUpload.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Admin'\r\n }\r\n },\r\n {\r\n path: '/editupload',\r\n name: 'EditUpload',\r\n component: () =>\r\n import('@/digicampus/pages/ContentComponents/ManageContent/EditUpload.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Admin'\r\n }\r\n },\r\n {\r\n path: '/editquiz',\r\n name: 'EditQuiz',\r\n component: () =>\r\n import('@/digicampus/pages/ContentComponents/ManageContent/EditQuiz.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Admin'\r\n }\r\n },\r\n {\r\n path: '/editpodcast',\r\n name: 'EditPodcast',\r\n component: () =>\r\n import('@/digicampus/pages/ContentComponents/ManageContent/EditPodcast.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Admin'\r\n }\r\n },\r\n {\r\n path: '/addexternallink',\r\n name: 'AddExternalLink',\r\n component: () =>\r\n import('@/digicampus/pages/ContentComponents/ManageContent/AddExternalLink.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Admin'\r\n }\r\n },\r\n {\r\n path: '/editexternallink',\r\n name: 'EditExternalLink',\r\n component: () =>\r\n import ('@/digicampus/pages/ContentComponents/ManageContent/EditExternalLink.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Admin'\r\n }\r\n },\r\n \r\n {\r\n path: '/addpresentation',\r\n name: 'AddPresentation',\r\n component: () =>\r\n import('@/digicampus/pages/ContentComponents/ManageContent/AddPresentation.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Admin'\r\n }\r\n },\r\n {\r\n path: '/editpresentation',\r\n name: 'EditPresentation',\r\n component: () =>\r\n import ('@/digicampus/pages/ContentComponents/ManageContent/EditPresentation.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Admin'\r\n }\r\n },\r\n {\r\n path: '/chat',\r\n name: 'Chat',\r\n component: () =>\r\n import('@/components/chat/Chat.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Admin'\r\n }\r\n },\r\n {\r\n path: '/play-video',\r\n name: 'MultimediaVideoViewer',\r\n component: () =>\r\n import('@/digicampus/pages/MultimediaVideoViewer.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/resources',\r\n name: 'StudentAdditionalResources',\r\n component: () =>\r\n import('@/digicampus/pages/AdditionalResources.vue')\r\n },\r\n // Old FET Student Menu\r\n {\r\n path: '/menu',\r\n name: 'Menu',\r\n component: () =>\r\n import('@/components/studentdashboard/Menu.vue'),\r\n meta: {\r\n pageTitle: 'Menu',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/mentoring',\r\n name: 'Mentoring',\r\n component: () =>\r\n import('@/components/studentdashboard/MentoringMenu.vue'),\r\n meta: {\r\n pageTitle: 'Menu',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/digi/teacher/viewassessment',\r\n name: 'TeacherViewAssessment',\r\n component: () =>\r\n import('@/views/assessor/ViewTask.vue'),\r\n meta: {\r\n pageTitle: 'Assess Task',\r\n rule: 'Assess'\r\n }\r\n },\r\n {\r\n path: '/q&a',\r\n name: 'Q&A',\r\n component: () =>\r\n import('@/components/studentdashboard/mentoringmenucomponents/Q&A.vue'),\r\n meta: {\r\n pageTitle: 'Q&A',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/callback',\r\n name: 'CallBack',\r\n component: () =>\r\n import('@/components/studentdashboard/mentoringmenucomponents/CallBack.vue'),\r\n meta: {\r\n pageTitle: 'Call Back',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/media',\r\n name: 'Media',\r\n component: () =>\r\n import('@/components/studentdashboard/mentoringmenucomponents/Media.vue'),\r\n meta: {\r\n pageTitle: 'Media',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/search',\r\n name: 'Search',\r\n component: () =>\r\n import('@/components/studentdashboard/SearchModulesAndTopics.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/time-capture',\r\n name: 'TimeCapture',\r\n component: () =>\r\n import('@/components/studentdashboard/TimeCapture.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/practical-time-capture',\r\n name: 'PracticalTimeCapture',\r\n component: () =>\r\n import('@/components/studentdashboard/PracticalTimeCapture.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/sars-time-capture',\r\n name: 'SARSTimeCapture',\r\n component: () =>\r\n import('@/components/studentdashboard/PracticalTimeCapture.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n ]\r\n },\r\n // =============================================================================\r\n // FULL PAGE - Digi Course Builder LAYOUTS\r\n // =============================================================================\r\n {\r\n path: '',\r\n component: () =>\r\n import('@/digicampus/full-page/FullPageDigiCourseBuilder.vue'),\r\n children: [{\r\n path: '/digi/builder',\r\n name: 'DigiCourseBuilder',\r\n component: () =>\r\n import('@/views/coursebuilder/CourseBuilder.vue'),\r\n meta: {\r\n // pageTitle: 'Course Builder: ' + localStorage.getItem(\"currentModuleName\"),\r\n rule: 'BuildCourses'\r\n }\r\n },\r\n {\r\n path: '/digi/backgrounds',\r\n name: 'DigiBackgrounds',\r\n component: () =>\r\n import('@/views/coursebuilder/BackgroundList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Backgrounds',\r\n rule: 'MaintainBackgrounds'\r\n },\r\n },\r\n {\r\n path: '/digi/music',\r\n name: 'DigiMusic',\r\n component: () =>\r\n import('@/views/coursebuilder/MusicList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Music / Audio',\r\n rule: 'MaintainMusic'\r\n },\r\n },\r\n {\r\n path: '/digi/scenes',\r\n name: 'DigiScenes',\r\n component: () =>\r\n import('@/views/coursebuilder/SceneList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Scenes',\r\n rule: 'MaintainScenes'\r\n }\r\n },\r\n {\r\n path: '/digi/navigations',\r\n name: 'DigiNavigationMaps',\r\n component: () =>\r\n import('@/views/coursebuilder/NavigationList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Navigation Maps',\r\n rule: 'MaintainNavigations'\r\n },\r\n },\r\n {\r\n path: '/digi/characters',\r\n name: 'DigiCharacters',\r\n component: () =>\r\n import('@/views/coursebuilder/CharacterList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Characters',\r\n rule: 'MaintainCharacters'\r\n }\r\n },\r\n {\r\n path: '/digi/videos',\r\n name: 'DigiVideos',\r\n component: () =>\r\n import('@/views/coursebuilder/VideoList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Videos',\r\n rule: 'MaintainVideos'\r\n }\r\n },\r\n {\r\n path: '/digi/ispringquizzes',\r\n name: 'DigiISpringQuizzes',\r\n component: () =>\r\n import('@/views/coursebuilder/iSpringQuizList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain iSpring Quizzes',\r\n rule: 'MaintainISpringQuizzes'\r\n }\r\n },\r\n {\r\n path: '/digi/ispringpresentations',\r\n name: 'DigiISpringPresentations',\r\n component: () =>\r\n import('@/views/coursebuilder/iSpringPresentationList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain iSpring Presentations',\r\n rule: 'MaintainISpringPresentations'\r\n }\r\n },\r\n {\r\n path: '/digi/documents',\r\n name: 'DigiDocuments',\r\n component: () =>\r\n import('@/views/coursebuilder/DocumentList.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Documents',\r\n rule: 'MaintainDocuments'\r\n }\r\n },\r\n {\r\n path: '/digi/quizzes',\r\n name: 'DigiQuizzes',\r\n component: () =>\r\n import('@/views/coursebuilder/Quiz.vue'),\r\n meta: {\r\n pageTitle: 'Maintain Quizzes',\r\n rule: 'MaintainQuizzes'\r\n }\r\n },\r\n ]\r\n },\r\n // =============================================================================\r\n // FULL PAGE - Digi Teacher Dashboard LAYOUTS\r\n // =============================================================================\r\n {\r\n path: '',\r\n component: () =>\r\n import('@/digicampus/full-page/FullPageDigiTeacherDashboard.vue'),\r\n children: [\r\n {\r\n path: '/digi/teacher',\r\n name: 'TeacherSubjects',\r\n component: () =>\r\n import('@/digicampus/teacherdashboard/MySubjects.vue'),\r\n meta: {\r\n rule: 'Teacher'\r\n }\r\n },\r\n {\r\n path: '/digi/teacher/browsecontent',\r\n name: 'TeacherBrowseContent',\r\n component: () =>\r\n import('@/digicampus/pages/BrowseContent.vue')\r\n },\r\n {\r\n path: '/digi/teacher/calendar',\r\n name: 'TeacherCalendar',\r\n component: () =>\r\n import('@/digicampus/teacherdashboard/MyCalendar.vue'),\r\n meta: {\r\n rule: 'Teacher'\r\n }\r\n },\r\n {\r\n path: '/digi/teacher/library',\r\n name: 'TeacherLibrary',\r\n component: () =>\r\n import('@/digicampus/libraryadmindashboard/Library.vue'),\r\n meta: {\r\n rule: 'Teacher'\r\n }\r\n },\r\n {\r\n path: '/digi/teacher/assessment',\r\n name: 'TeacherAssessments',\r\n component: () =>\r\n import('@/digicampus/teacherdashboard/MyAssessments.vue'),\r\n },\r\n {\r\n path: '/digi/teacher/resources',\r\n name: 'TeacherResources',\r\n component: () =>\r\n import('@/digicampus/pages/AdditionalResources.vue')\r\n },\r\n {\r\n path: '/digi/teacher/qa',\r\n name: 'TeacherQA',\r\n component: () =>\r\n import('@/digicampus/teacherdashboard/TeacherQA.vue')\r\n },\r\n {\r\n path: '/digi/dashboard',\r\n name: 'Dashboard',\r\n component: () =>\r\n import('@/digicampus/teacherdashboard/Dashboard.vue'),\r\n meta: {\r\n rule: 'Teacher'\r\n }\r\n },\r\n ]\r\n },// =============================================================================\r\n // FULL PAGE - Parent/Guardian Dashboard LAYOUTS\r\n // =============================================================================\r\n {\r\n path: '',\r\n component: () =>\r\n import('@/digicampus/full-page/FullPageGuardianDashboard.vue'),\r\n children: [\r\n {\r\n path: '/parent/dashboard',\r\n name: 'ParentDashboard',\r\n component: () =>\r\n import('@/digicampus/guardiandashboard/Dashboard.vue'),\r\n meta: {\r\n rule: 'Guardian'\r\n }\r\n },\r\n ]\r\n },\r\n // =============================================================================\r\n // FULL PAGE - Digi Teacher Dashboard LAYOUTS\r\n // =============================================================================\r\n {\r\n path: '',\r\n component: () =>\r\n import('@/digicampus/full-page/FullPageDigiProfile.vue'),\r\n children: [\r\n {\r\n path: '/digi/profile',\r\n name: 'AltProfile',\r\n component: () =>\r\n import('@/views/pages/Profile.vue'),\r\n meta: {\r\n rule: 'admin'\r\n }\r\n },\r\n ]\r\n },\r\n\r\n // =============================================================================\r\n // FULL PAGE - Digi Librarian Dashboard LAYOUTS\r\n // =============================================================================\r\n {\r\n path: '',\r\n component: () =>\r\n import('@/digicampus/full-page/FullPageDigiLibraryAdminDashboard.vue'),\r\n children: [{\r\n path: '/digi/library',\r\n name: 'LibraryAdmin',\r\n component: () =>\r\n import('@/digicampus/libraryadmindashboard/Library.vue'),\r\n meta: {\r\n rule: 'LibraryAdmin'\r\n }\r\n }]\r\n },\r\n\r\n // =============================================================================\r\n // FULL PAGE - Digi Mentor Dashboard LAYOUTS\r\n // =============================================================================\r\n {\r\n path: '',\r\n component: () =>\r\n import('@/digicampus/full-page/FullPageDigiMentorDashboard.vue'),\r\n children: [{\r\n path: '/mentor-dashboard',\r\n name: 'MentorDashboard',\r\n component: () =>\r\n import('@/digicampus/mentordashboard/Dashboard.vue'),\r\n meta: {\r\n rule: 'Mentor'\r\n }\r\n }]\r\n },\r\n\r\n // =============================================================================\r\n // FULL PAGE - Media Previewer LAYOUTS\r\n // =============================================================================\r\n {\r\n path: '',\r\n component: () =>\r\n import('@/layouts/full-page/FullPageMediaPreview.vue'),\r\n children: [\r\n // =============================================================================\r\n // PAGES\r\n // =============================================================================\r\n {\r\n path: '/mediapreviewer',\r\n name: 'MediaPreviewer',\r\n component: () =>\r\n import('@/components/mediapreviewer/MediaPreviewer.vue'),\r\n meta: {\r\n pageTitle: 'Media Previewer',\r\n rule: 'MaintainScenes'\r\n }\r\n }\r\n ]\r\n },\r\n // =============================================================================\r\n // FULL PAGE - Student Profile LAYOUTS\r\n // =============================================================================\r\n {\r\n path: '',\r\n component: () =>\r\n import('@/layouts/full-page/FullPageStudentProfile.vue'),\r\n children: [\r\n // =============================================================================\r\n // PAGES\r\n // =============================================================================\r\n {\r\n path: '/viewprofile',\r\n name: 'StudentProfile',\r\n component: () =>\r\n import('@/components/studentdashboard/StudentProfile.vue'),\r\n meta: {\r\n pageTitle: 'Profile',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/viewassessment',\r\n name: 'ViewAssessment',\r\n component: () =>\r\n import('@/components/studentdashboard/ViewAssessment.vue'),\r\n meta: {\r\n pageTitle: 'View Assessment',\r\n rule: 'Student'\r\n }\r\n },\r\n ]\r\n },\r\n // =============================================================================\r\n // FULL PAGE - Student Profile LAYOUTS (DigiCampus)\r\n // =============================================================================\r\n {\r\n path: '',\r\n component: () =>\r\n import('@/digicampus/full-page/FullPageDigiStudentProfile.vue'),\r\n children: [\r\n // =============================================================================\r\n // PAGES\r\n // =============================================================================\r\n {\r\n path: '/digi/viewprofile',\r\n name: 'DigiStudentProfile',\r\n component: () =>\r\n import('@/digicampus/studentdashboard/DigiStudentProfile.vue'),\r\n meta: {\r\n pageTitle: 'Profile',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/digi/viewassessment',\r\n name: 'DigiViewAssessment',\r\n component: () =>\r\n import('@/digicampus/studentdashboard/DigiViewAssessment.vue'),\r\n meta: {\r\n pageTitle: 'View Assessment',\r\n rule: 'Student'\r\n }\r\n },\r\n ]\r\n },\r\n // =============================================================================\r\n // DIGI MAIN FULL PAGE LAYOUTS\r\n // =============================================================================\r\n {\r\n path: '',\r\n component: () =>\r\n import('@/digicampus/full-page/FullPageDigiMain.vue'),\r\n children: [\r\n // =============================================================================\r\n // PAGES\r\n // =============================================================================\r\n {\r\n path: '/login',\r\n name: 'DigiLogin',\r\n component: () =>\r\n import('@/digicampus/pages/DigiLogin.vue'),\r\n meta: {\r\n rule: 'admin'\r\n }\r\n },\r\n {\r\n path: '/growmybusiness',\r\n name: 'CokeLogin',\r\n component: () =>\r\n import('@/digicampus/pages/DigiLogin.vue'),\r\n meta: {\r\n rule: 'admin'\r\n }\r\n },\r\n {\r\n path: '/portal-select',\r\n name: 'PortalSelect',\r\n component: () =>\r\n import('@/digicampus/pages/SelectPortal.vue')\r\n },\r\n {\r\n path: '/moreinfo',\r\n name: 'NeedMoreInfo',\r\n component: () =>\r\n import('@/digicampus/pages/NeedMoreInfo.vue'),\r\n meta: {\r\n rule: 'admin' // remember to change back to Student!!!!\r\n }\r\n },\r\n {\r\n path: '/digi/selectsite',\r\n name: 'DigiSelectSite',\r\n component: () =>\r\n import('@/digicampus/pages/DigiSelectSite.vue'),\r\n // meta: {\r\n // rule: localStorage.getItem('permissions').split(\",\",1)\r\n // }\r\n },\r\n {\r\n path: '/forgot-password',\r\n name: 'forgotPassword',\r\n component: () =>\r\n import('@/views/pages/ForgotPassword.vue'),\r\n meta: {\r\n rule: 'admin'\r\n }\r\n },\r\n {\r\n path: '/register',\r\n name: 'DigiRegister',\r\n component: () =>\r\n import('@/digicampus/pages/DigiRegister.vue')\r\n },\r\n {\r\n path: '/unsubscribed',\r\n name: 'Unsubscribed',\r\n component: () =>\r\n import('@/views/pages/Unsubscribed.vue'),\r\n meta: {\r\n rule: 'admin'\r\n }\r\n },\r\n ]\r\n },\r\n // =============================================================================\r\n // FULL PAGE LAYOUTS\r\n // =============================================================================\r\n {\r\n path: '',\r\n component: () =>\r\n import('@/layouts/full-page/FullPage.vue'),\r\n children: [\r\n // =============================================================================\r\n // PAGES\r\n // =============================================================================\r\n {\r\n path: '/admin/login',\r\n name: 'pageLogin',\r\n component: () =>\r\n import('@/views/pages/Login.vue'),\r\n meta: {\r\n rule: 'admin'\r\n }\r\n },\r\n {\r\n path: '/selectsite',\r\n name: 'SelectSite',\r\n component: () =>\r\n import('@/views/pages/SelectSite.vue'),\r\n // meta: {\r\n // rule: localStorage.getItem('permissions').split(\",\",1)\r\n // }\r\n },\r\n {\r\n path: '/pages/error-404',\r\n name: 'pageError404',\r\n component: () =>\r\n import('@/views/pages/Error404.vue'),\r\n meta: {\r\n rule: 'admin'\r\n }\r\n },\r\n {\r\n path: '/pages/error-500',\r\n name: 'pageError500',\r\n component: () =>\r\n import('@/views/pages/Error500.vue'),\r\n meta: {\r\n rule: 'admin'\r\n }\r\n },\r\n {\r\n path: '/mobile-detected',\r\n name: 'mobileDetected',\r\n component: () =>\r\n import('@/views/pages/MobileDetected.vue'),\r\n meta: {\r\n //rule: 'admin'\r\n }\r\n },\r\n {\r\n path: '/not-authorized',\r\n name: 'page-not-authorized',\r\n component: () =>\r\n import('@/views/pages/NotAuthorized.vue'),\r\n meta: {\r\n rule: '*'\r\n }\r\n },\r\n ]\r\n },\r\n // =============================================================================\r\n // SONKE/GEN2 MAIN FULL PAGE LAYOUTS\r\n // =============================================================================\r\n {\r\n path: '',\r\n component: () =>\r\n import('@/gen-2/full-page/Main.vue'),\r\n children: [\r\n // =============================================================================\r\n // PAGES\r\n // =============================================================================\r\n {\r\n path: '/learn',\r\n name: 'Gen2Learn',\r\n component: () =>\r\n import('@/gen-2/pages/Learn.vue'),\r\n meta: {\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/calendar',\r\n name: 'Gen2Calendar',\r\n component: () =>\r\n import('@/gen-2/pages/Calendar.vue'),\r\n meta: {\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/trade',\r\n name: 'Gen2Trade',\r\n component: () =>\r\n import('@/gen-2/pages/Trade.vue'),\r\n meta: {\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/status',\r\n name: 'Gen2Status',\r\n component: () =>\r\n import('@/gen-2/pages/Status.vue'),\r\n meta: {\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/wallet',\r\n name: 'Gen2Wallet',\r\n component: () =>\r\n import('@/gen-2/pages/Wallet.vue'),\r\n meta: {\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/chat',\r\n name: 'Gen2Chat',\r\n component: () =>\r\n import('@/gen-2/pages/Chat.vue'),\r\n meta: {\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/menu-v2',\r\n name: 'Gen2Menu',\r\n component: () =>\r\n import('@/gen-2/pages/Menu.vue'),\r\n meta: {\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/programs',\r\n name: 'Gen2LearningPrograms',\r\n component: () =>\r\n import('@/gen-2/pages/LearningPrograms.vue'),\r\n meta: {\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/capture-time',\r\n name: 'Gen2TimeCapture',\r\n component: () =>\r\n import('@/components/studentdashboard/TimeCapture.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/capture-practical-time',\r\n name: 'Gen2PracticalTimeCapture',\r\n component: () =>\r\n import('@/components/studentdashboard/PracticalTimeCapture.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/pdfviewer-v2',\r\n name: 'Gen2DocumentViewer',\r\n component: () =>\r\n import('@/digicampus/pages/DocumentViewer.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/playvideo-v2',\r\n name: 'Gen2VideoViewer',\r\n component: () =>\r\n import('@/gen-2/pages/Gen2VideoViewer.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/upload',\r\n name: 'Gen2UploadViewer',\r\n component: () =>\r\n import('@/gen-2/pages/Gen2UploadViewer.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/tasks',\r\n name: 'Gen2OutcomeTasks',\r\n component: () =>\r\n import('@/gen-2/pages/OutcomeTasks.vue'),\r\n meta: {\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/mentorships',\r\n name: 'Gen2Mentorships',\r\n component: () =>\r\n import('@/gen-2/pages/Mentorships.vue'),\r\n meta: {\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/sonke-mentoring',\r\n name: 'Gen2Mentoring',\r\n component: () =>\r\n import('@/components/studentdashboard/MentoringMenu.vue'),\r\n meta: {\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/questions-and-answers',\r\n name: 'Gen2Q&A',\r\n component: () =>\r\n import('@/components/studentdashboard/mentoringmenucomponents/Q&A.vue'),\r\n meta: {\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/sonke-callback',\r\n name: 'Gen2CallBack',\r\n component: () =>\r\n import('@/components/studentdashboard/mentoringmenucomponents/CallBack.vue'),\r\n meta: {\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/sonke-media',\r\n name: 'Gen2Media',\r\n component: () =>\r\n import('@/components/studentdashboard/mentoringmenucomponents/Media.vue'),\r\n meta: {\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/sonke-chat',\r\n name: 'Gen2MentorChat',\r\n component: () =>\r\n import('@/components/chat/Chat.vue'),\r\n meta: {\r\n rule: 'Admin'\r\n }\r\n },\r\n {\r\n path: '/sonke-profile',\r\n name: 'Gen2StudentProfile',\r\n component: () =>\r\n import('@/gen-2/pages/Profile.vue'),\r\n meta: {\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/progress',\r\n name: 'Gen2CourseProgress',\r\n component: () =>\r\n import('@/gen-2/pages/Progress.vue'),\r\n meta: {\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/review-tasks',\r\n name: 'Gen2ReviewTasks',\r\n component: () =>\r\n import('@/gen-2/pages/ReviewTasks.vue'),\r\n meta: {\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/campus',\r\n name: 'Gen2Campus',\r\n component: () =>\r\n import('@/gen-2/pages/Campus.vue'),\r\n meta: {\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/support',\r\n name: 'Gen2Support',\r\n component: () =>\r\n import('@/gen-2/pages/Support.vue'),\r\n meta: {\r\n rule: 'Student'\r\n }\r\n },\r\n ]\r\n },\r\n\r\n // =============================================================================\r\n // FULL PAGE - Public Student Dashboard LAYOUTS\r\n // =============================================================================\r\n {\r\n path: '',\r\n component: () =>\r\n import('@/layouts/full-page/FullPagePublicStudentDashboard.vue'),\r\n children: [\r\n // =============================================================================\r\n // PAGES\r\n // =============================================================================\r\n {\r\n path: '/public/dashboard',\r\n name: 'PublicStudentDashboard',\r\n component: () =>\r\n import('@/views/publicstudent/Dashboard.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/public/programs',\r\n name: 'PublicLearningPrograms',\r\n component: () =>\r\n import('@/gen-2/pages/LearningPrograms.vue'),\r\n meta: {\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/public/tasks',\r\n name: 'PublicOutcomeTasks',\r\n component: () =>\r\n import('@/gen-2/pages/OutcomeTasks.vue'),\r\n meta: {\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/public/pdf-reader',\r\n name: 'PublicDocumentViewer',\r\n component: () =>\r\n import('@/digicampus/pages/DocumentViewer.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/public/video-viewer',\r\n name: 'PublicVideoViewer',\r\n component: () =>\r\n import('@/gen-2/pages/Gen2VideoViewer.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n {\r\n path: '/public/upload',\r\n name: 'PublicUploadViewer',\r\n component: () =>\r\n import('@/gen-2/pages/Gen2UploadViewer.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Student'\r\n }\r\n },\r\n ]\r\n },\r\n {\r\n path: '',\r\n component: () =>\r\n import('@/digicampus/full-page/FullPagePrincipalDashboard.vue'),\r\n children: [\r\n // =============================================================================\r\n // PAGES\r\n // =============================================================================\r\n {\r\n path: '/principal/dashboard',\r\n name: 'Dashboard',\r\n component: () =>\r\n import('@/digicampus/principaldashboard/Dashboard.vue'),\r\n meta: {\r\n pageTitle: '',\r\n rule: 'Principal'\r\n }\r\n },\r\n ]\r\n },\r\n {\r\n path: '/pages/login',\r\n redirect: '/login'\r\n },\r\n {\r\n path: '/digilogin',\r\n redirect: '/login'\r\n },\r\n // Redirect to 404 page, if no match found\r\n {\r\n path: '*',\r\n redirect: '/pages/error-404'\r\n }\r\n ],\r\n})\r\n\r\nrouter.afterEach((to, from, next) => {\r\n // Remove initial loading\r\n\r\n if (from.name) {\r\n var currentModuleId = localStorage.getItem(\"currentModule\");\r\n if (to.name == \"CourseBuilder\") {\r\n if (currentModuleId) {\r\n document.location.href = to.path;\r\n } else {\r\n //use routing\r\n router.push({ path: '/selectcourse' });\r\n }\r\n }\r\n }\r\n const appLoading = document.getElementById('loading-bg')\r\n if (appLoading) {\r\n appLoading.style.display = \"none\";\r\n }\r\n})\r\n\r\nrouter.beforeEach((to, from, next) => {\r\n return next();\r\n //firebase.auth().onAuthStateChanged(() => {\r\n // const firebaseCurrentUser = firebase.auth().currentUser;\r\n\r\n // if (\r\n // to.path === \"/login\" ||\r\n // to.path === \"/digilogin\" ||\r\n // to.path === \"/forgot-password\" ||\r\n // to.path === \"/pages/error-404\" ||\r\n // to.path === \"/pages/error-500\" ||\r\n // to.path === \"/pages/register\" ||\r\n // to.path === \"/callback\" ||\r\n // to.path === \"/pages/comingsoon\" ||\r\n // (firebaseCurrentUser)\r\n // ) {\r\n\r\n // }\r\n // router.push({ path: '/login' })\r\n //});\r\n\r\n});\r\n\r\nexport default router","import Vue from 'vue'\r\nimport { AclInstaller, AclCreate, AclRule } from 'vue-acl'\r\nimport router from '@/router'\r\n\r\nVue.use(AclInstaller)\r\n\r\nvar permissionArray = function(){\r\n if(localStorage.getItem('permissions'))\r\n return localStorage.getItem('permissions').split(\",\");\r\n else{\r\n localStorage.setItem('permissions', '');\r\n return localStorage.getItem('permissions').split(\",\");\r\n }\r\n}\r\n\r\nexport default new AclCreate({\r\n initial: permissionArray(),\r\n notfound: '/not-authorized',\r\n router,\r\n acceptLocalRules: false,\r\n globalRules: {\r\n Login: new AclRule('Login').generate(),\r\n MaintainSites : new AclRule('MaintainSites').generate(),\r\n MaintainUsers: new AclRule('MaintainUsers').generate(),\r\n MaintainBackgrounds: new AclRule('MaintainBackgrounds').generate(),\r\n MaintainMusic: new AclRule('MaintainMusic').generate(),\r\n MaintainScenes: new AclRule('MaintainScenes').generate(),\r\n MaintainCharacters: new AclRule('MaintainCharacters').generate(),\r\n MaintainVideos: new AclRule('MaintainVideos').generate(),\r\n BuildCourses: new AclRule('BuildCourses').generate(),\r\n MaintainISpringQuizzes: new AclRule('MaintainISpringQuizzes').generate(),\r\n MaintainISpringPresentations: new AclRule('MaintainISpringPresentations').generate(),\r\n MaintainDocuments: new AclRule('MaintainDocuments').generate(),\r\n MaintainNavigations: new AclRule('MaintainNavigations').generate(),\r\n MaintainQuizzes: new AclRule('MaintainQuizzes').generate(),\r\n ViewCourses: new AclRule('ViewCourses').generate(),\r\n AssessModerate: new AclRule('AssessModerate').generate(),\r\n Assess: new AclRule('Assess').generate(),\r\n Moderate: new AclRule('Moderate').generate(),\r\n ReviewVideos: new AclRule('ReviewVideos').generate(),\r\n MaintainLanguages: new AclRule('MaintainLanguages').generate(),\r\n MaintainClassifications: new AclRule('MaintainClassifications').generate(),\r\n MaintainModuleGroups: new AclRule('MaintainModuleGroups').generate(),\r\n MaintainMarketingVideos: new AclRule('MaintainMarketingVideos').generate(),\r\n AssessModerateEvaluate: new AclRule('AssessModerateEvaluate').generate(),\r\n Evaluate: new AclRule('Evaluate').generate(),\r\n ViewReports: new AclRule('ViewReports').or('Monitor').generate(),\r\n MaintainDocumentTypes: new AclRule('MaintainDocumentTypes').generate(),\r\n MaintainAssessmentQuestions: new AclRule('MaintainAssessmentQuestions').generate(),\r\n MaintainLibraryResources: new AclRule('MaintainLibraryResources').generate(),\r\n Student: new AclRule('Student').generate(),\r\n Teacher: new AclRule('Teacher').generate(),\r\n Librarian: new AclRule('Librarian').generate(),\r\n SuperAdmin: new AclRule('SuperAdmin').generate(),\r\n SiteAdmin: new AclRule('SiteAdmin').or('SuperAdmin').generate(),\r\n CourseBuilder: new AclRule('CourseBuilder').generate(),\r\n Assessor: new AclRule('Assessor').generate(),\r\n Moderator: new AclRule('Moderator').generate(),\r\n Evaluator: new AclRule('Evaluator').generate(),\r\n VideoEditor: new AclRule('VideoEditor').generate(),\r\n Marketer: new AclRule('Marketer').generate(),\r\n LibraryAdmin: new AclRule('LibraryAdmin').generate(),\r\n Mentor: new AclRule('Mentor').generate(),\r\n ViewDashboard: new AclRule('CourseBuilder').or('SuperAdmin').or('SiteAdmin').or('Assessor').or('Moderator').or('Evaluator').or('VideoEditor').or('Marketer').or('LibraryAdmin').or('Mentor').or('Monitor').generate(),\r\n MaintainPracticalQuestions: new AclRule('MaintainPracticalQuestions').generate(),\r\n School: new AclRule('School').and('SiteAdmin').generate(),\r\n Other: new AclRule('Other').and('SiteAdmin').generate(),\r\n Guardian: new AclRule('Guardian').generate(),\r\n CEPAdmin: new AclRule('CEPAdmin').generate(),\r\n MaintainVendors: new AclRule('MaintainVendors').generate(),\r\n Monitor: new AclRule('Monitor').generate(),\r\n Principal: new AclRule('Principal').generate()\r\n },\r\n})","var render, staticRenderFns\nimport script from \"./FeatherIcon.vue?vue&type=script&lang=js&\"\nexport * from \"./FeatherIcon.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FeatherIcon.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:\"convstooltip\",staticClass:\"con-vs-tooltip\",on:{\"mouseout\":_vm.mouseoutx,\"mouseover\":_vm.mouseoverx}},[_c('transition',{attrs:{\"name\":\"tooltip-fade\"}},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.active),expression:\"active\"}],ref:\"vstooltip\",staticClass:\"vs-tooltip\",class:[(\"vs-tooltip-\" + (_vm.positionx || _vm.position)),(\"vs-tooltip-\" + _vm.color), {'after-none': _vm.noneAfter}],style:(_vm.style)},[(_vm.title)?_c('h4',[_vm._v(_vm._s(_vm.title))]):_vm._e(),_vm._v(\"\\n \"+_vm._s(_vm.text)+\"\\n \")])]),_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default {\r\n insertBody(elx){\r\n document.body.insertBefore(elx, document.body.firstChild)\r\n },\r\n removeBody(element) {\r\n let bodyx = document.body\r\n bodyx.removeChild(element);\r\n },\r\n changePosition(elx,content,conditional){\r\n let topx = 0\r\n let leftx = 0\r\n let widthx = 0\r\n let scrollTopx = window.pageYOffset || document.documentElement.scrollTop;\r\n if(elx.getBoundingClientRect().top + 300 >= window.innerHeight) {\r\n setTimeout( ()=> {\r\n if(conditional){\r\n topx = (elx.getBoundingClientRect().top - content.clientHeight) + scrollTopx\r\n } else {\r\n topx = (elx.getBoundingClientRect().top - content.clientHeight + elx.clientHeight) + scrollTopx\r\n }\r\n }, 1);\r\n\r\n } else {\r\n topx = conditional?(elx.getBoundingClientRect().top + elx.clientHeight) + scrollTopx + 5:elx.getBoundingClientRect().top + scrollTopx\r\n }\r\n\r\n leftx = elx.getBoundingClientRect().left\r\n widthx = elx.offsetWidth\r\n\r\n let cords = {\r\n left: `${leftx}px`,\r\n top: `${topx}px`,\r\n width: `${widthx}px`\r\n }\r\n\r\n return cords\r\n },\r\n}\r\n","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VxTooltip.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VxTooltip.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./VxTooltip.vue?vue&type=template&id=7d998f39&\"\nimport script from \"./VxTooltip.vue?vue&type=script&lang=js&\"\nexport * from \"./VxTooltip.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',_vm._g({ref:\"card\",staticClass:\"vx-card\",class:[\n {'overflow-hidden': _vm.tempHidden},\n {'no-shadow': _vm.noShadow},\n {'rounded-none': _vm.noRadius},\n {'card-border': _vm.cardBorder},\n _vm.cardClasses ],style:(_vm.cardStyles)},_vm.$listeners),[(_vm.hasHeader)?_c('div',{staticClass:\"vx-card__header\"},[_c('div',{staticClass:\"vx-card__title\"},[(this.$props.title)?_c('h4',{class:_vm.titleClasses,style:(_vm.titleStyles)},[_vm._v(_vm._s(_vm.title))]):_vm._e(),(this.$props.subtitle)?_c('h6',{class:_vm.subtitleClasses,style:(_vm.subtitleStyles)},[_vm._v(_vm._s(_vm.subtitle))]):_vm._e()]),(_vm.hasAction)?_c('div',{staticClass:\"vx-card__actions\"},[_vm._t(\"actions\",[((_vm.actionButtons || _vm.collapseAction || _vm.refreshContentAction || _vm.removeCardAction) && !_vm.codeToggler)?_c('div',{staticClass:\"vx-card__action-buttons\"},[(_vm.actionButtons || _vm.collapseAction)?_c('feather-icon',{staticClass:\"ml-4\",class:{rotate180: !_vm.isContentCollapsed},attrs:{\"icon\":\"ChevronUpIcon\"},on:{\"click\":_vm.toggleContent}}):_vm._e(),(_vm.actionButtons || _vm.refreshContentAction)?_c('feather-icon',{staticClass:\"ml-4\",attrs:{\"icon\":\"RotateCwIcon\"},on:{\"click\":_vm.refreshcard}}):_vm._e(),(_vm.actionButtons || _vm.removeCardAction)?_c('feather-icon',{staticClass:\"ml-4\",attrs:{\"icon\":\"XIcon\"},on:{\"click\":_vm.removeCard}}):_vm._e()],1):_vm._e(),(_vm.codeToggler && !_vm.actionButtons)?_c('div',{staticClass:\"vx-card__code-toggler sm:block hidden\"},[_c('feather-icon',{class:{'border border-solid border-primary border-t-0 border-r-0 border-l-0': _vm.showCode},attrs:{\"icon\":\"CodeIcon\"},on:{\"click\":_vm.toggleCode}})],1):_vm._e()])],2):_vm._e()]):_vm._e(),_c('div',{ref:\"content\",staticClass:\"vx-card__collapsible-content vs-con-loading__container\",class:[{collapsed: _vm.isContentCollapsed}, {'overflow-hidden': _vm.tempHidden}],style:(_vm.StyleItems)},[_vm._t(\"no-body\"),(this.$slots.default)?_c('div',{staticClass:\"vx-card__body\"},[_vm._t(\"default\")],2):_vm._e(),_vm._t(\"no-body-bottom\"),(this.$slots.footer)?_c('div',{staticClass:\"vx-card__footer\"},[_vm._t(\"footer\")],2):_vm._e()],2),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(this.$slots.codeContainer),expression:\"this.$slots.codeContainer\"}],ref:\"codeContainer\",staticClass:\"vx-card__code-container\",class:{collapsed: !_vm.showCode},style:(_vm.codeContainerStyles)},[_c('div',{staticClass:\"code-content\"},[_c('prism',{key:_vm.$vs.rtl,attrs:{\"language\":_vm.codeLanguage}},[_vm._t(\"codeContainer\")],2)],1)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n \r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VxCard.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VxCard.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./VxCard.vue?vue&type=template&id=e8d1f22c&\"\nimport script from \"./VxCard.vue?vue&type=script&lang=js&\"\nexport * from \"./VxCard.vue?vue&type=script&lang=js&\"\nimport style0 from \"./VxCard.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ul',{staticClass:\"list\"},_vm._l((_vm.list),function(item,index){return _c('li',{key:index,staticClass:\"list__item\"},[_c('feather-icon',{staticClass:\"w-5 h-5 mr-1\",attrs:{\"icon\":_vm.icon}}),_c('span',{domProps:{\"innerHTML\":_vm._s(item)}})],1)}),0)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VxList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VxList.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./VxList.vue?vue&type=template&id=2ad358b8&\"\nimport script from \"./VxList.vue?vue&type=script&lang=js&\"\nexport * from \"./VxList.vue?vue&type=script&lang=js&\"\nimport style0 from \"./VxList.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"vx-breadcrumb\"},[_c('ul',{staticClass:\"flex flex-wrap items-center\"},[_c('li',{staticClass:\"inline-flex items-end\"},[_c('router-link',{attrs:{\"to\":\"/\"}},[_c('feather-icon',{attrs:{\"icon\":\"HomeIcon\",\"svgClasses\":\"h-5 w-5 mb-1 stroke-current text-primary\"}})],1),_c('span',{staticClass:\"breadcrumb-separator mx-2\"},[_c('feather-icon',{attrs:{\"icon\":\"ChevronsRightIcon\",\"svgClasses\":\"w-4 h-4\"}})],1)],1),_vm._l((_vm.$route.meta.breadcrumb.slice(1,-1)),function(link,index){return _c('li',{key:index,staticClass:\"inline-flex items-center\"},[(link.url)?_c('router-link',{attrs:{\"to\":link.url}},[_vm._v(_vm._s(link.title))]):_c('span',{staticClass:\"text-primary cursor-default\"},[_vm._v(_vm._s(link.title))]),_c('span',{staticClass:\"breadcrumb-separator mx-2 flex items-start\"},[_c('feather-icon',{attrs:{\"icon\":\"ChevronsRightIcon\",\"svgClasses\":\"w-4 h-4\"}})],1)],1)}),_c('li',{staticClass:\"inline-flex\"},[(_vm.$route.meta.breadcrumb.slice(-1)[0].active)?_c('span',{staticClass:\"cursor-default\"},[_vm._v(_vm._s(_vm.$route.meta.breadcrumb.slice(-1)[0].title))]):_vm._e()])],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VxBreadcrumb.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VxBreadcrumb.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./VxBreadcrumb.vue?vue&type=template&id=2347b379&\"\nimport script from \"./VxBreadcrumb.vue?vue&type=script&lang=js&\"\nexport * from \"./VxBreadcrumb.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FeatherIcon.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FeatherIcon.vue?vue&type=script&lang=js&\"","var render = function (_h,_vm) {var _c=_vm._c;return _c('div',{staticClass:\"vx-input-group flex\",class:_vm.data.staticClass},[(_vm.slots().prepend)?_c('div',{staticClass:\"vx-input-group-prepend flex\",class:_vm.props.prependClasses},[_vm._t(\"prepend\")],2):_vm._e(),_c('div',{staticClass:\"vx-input-group-default flex-grow\"},[_vm._t(\"default\")],2),(_vm.slots().append)?_c('div',{staticClass:\"vx-input-group-append flex\",class:_vm.props.appendClasses},[_vm._t(\"append\")],2):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VxInputGroup.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VxInputGroup.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./VxInputGroup.vue?vue&type=template&id=9c4c101c&functional=true&\"\nimport script from \"./VxInputGroup.vue?vue&type=script&lang=js&\"\nexport * from \"./VxInputGroup.vue?vue&type=script&lang=js&\"\nimport style0 from \"./VxInputGroup.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n true,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',_vm._l((_vm.count),function(index){return _c('div',{key:index},[_c('b-skeleton',{staticClass:\"custom-skeleton mb-3\",class:{ 'small': _vm.size == 'small', 'medium': _vm.size == 'medium', 'large': _vm.size == 'large', 'larger': _vm.size == 'larger', 'thin__no-margin': _vm.size == 'thin__no-margin', 'thin': _vm.size == 'thin', 'mb-3': (index < _vm.count - 1) },attrs:{\"animation\":_vm.animation || 'throb',\"width\":\"100%\"}})],1)}),0)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomSkeleton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomSkeleton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CustomSkeleton.vue?vue&type=template&id=28c6aa97&\"\nimport script from \"./CustomSkeleton.vue?vue&type=script&lang=js&\"\nexport * from \"./CustomSkeleton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","/*=========================================================================================\r\n File Name: globalComponents.js\r\n Description: Here you can register components globally\r\n ----------------------------------------------------------------------------------------\r\n Item Name: Vuesax Admin - VueJS Dashboard Admin Template\r\n Author: Pixinvent\r\n Author URL: http://www.themeforest.net/user/pixinvent\r\n==========================================================================================*/\r\n\r\n\r\nimport Vue from 'vue'\r\nimport VxTooltip from './layouts/components/vx-tooltip/VxTooltip.vue'\r\nimport VxCard from './components/vx-card/VxCard.vue'\r\nimport VxList from './components/vx-list/VxList.vue'\r\nimport VxBreadcrumb from './layouts/components/VxBreadcrumb.vue'\r\nimport FeatherIcon from './components/FeatherIcon.vue'\r\nimport VxInputGroup from './components/vx-input-group/VxInputGroup.vue'\r\nimport CustomSkeleton from '@/gen-2/components/CustomSkeleton.vue'\r\n\r\nVue.component(VxTooltip.name, VxTooltip)\r\nVue.component(VxCard.name, VxCard)\r\nVue.component(VxList.name, VxList)\r\nVue.component(VxBreadcrumb.name, VxBreadcrumb)\r\nVue.component(FeatherIcon.name, FeatherIcon)\r\nVue.component(VxInputGroup.name, VxInputGroup)\r\nVue.component(CustomSkeleton.name, CustomSkeleton)","export default {\r\n\tactionIcon: 'StarIcon',\r\n\thighlightColor: 'warning',\r\n\tdata: [\r\n // DASHBOARDS\r\n\t\t// {index: 0, label: 'Analytics Dashboard', url: '/dashboard/analytics', labelIcon: 'HomeIcon', highlightAction: false},\r\n\t\t// { index: 1, label: 'Course Builder', url: '/CourseBuilder', labelIcon: 'Share2Icon', highlightAction: true },\r\n\t\t// {index: 2, label: 'Select Course', url: 'coursebuilder/BrowseCourse', labalIcon: 'gridIcon',highlightAction : false},\r\n\t\t// {index: 3, label: 'Backgrounds', url: '/coursebuilder/BackgroundList', labelIcon: 'ImageIcon', highlightAction: false},\r\n\t\t// {index: 4, label: 'Music / Audio', url: '/coursebuilder/MusicList', labelIcon: 'MusicIcon', highlightAction: false},\r\n\t\t// {index: 5, label: 'Scenes', url: '/coursebuilder/SceneList', labelIcon: 'FilmIcon', highlightAction: false},\r\n\t\t// {index: 6, label: 'Characters', url: '/coursebuilder/CharacterList', labelIcon: 'SmileIcon', highlightAction: false},\r\n\t\t// {index: 7, label: 'Video / Animation', url: '/coursebuilder/VideoList', labelIcon: 'VideoIcon', highlightAction: false},\r\n\t]\r\n}\r\n","/*=========================================================================================\r\n File Name: state.js\r\n Description: Vuex Store - state\r\n ----------------------------------------------------------------------------------------\r\n Item Name: Vuesax Admin - VueJS Dashboard Admin Template\r\n Author: Pixinvent\r\n Author URL: http://www.themeforest.net/user/pixinvent\r\n==========================================================================================*/\r\n\r\nimport navbarSearchAndPinList from '@/layouts/components/navbarSearchAndPinList'\r\nimport themeConfig from '@/../themeConfig.js'\r\nimport colors from '@/../themeConfig.js'\r\n\r\nconst state = {\r\n isSidebarActive: true,\r\n breakpoint: null,\r\n sidebarWidth: \"default\",\r\n reduceButton: themeConfig.sidebarCollapsed,\r\n bodyOverlay: false,\r\n sidebarItemsMin: false,\r\n theme: themeConfig.theme || 'light',\r\n navbarSearchAndPinList: navbarSearchAndPinList,\r\n AppActiveUser: {\r\n id: 0,\r\n name: 'John Doe',\r\n about: 'Dessert chocolate cake lemon drops jujubes. Biscuit cupcake ice cream bear claw brownie brownie marshmallow.',\r\n img: 'avatar-s-11.png',\r\n status: 'online',\r\n },\r\n\r\n themePrimaryColor: colors.primary,\r\n\r\n starredPages: navbarSearchAndPinList.data.filter((page) => page.highlightAction),\r\n userRole: null,\r\n schoolTheme: themeConfig.schoolTheme,\r\n fontType: themeConfig.fontType,\r\n aclSubscription:[],\r\n}\r\n\r\nexport default state","/*=========================================================================================\r\n File Name: getters.js\r\n Description: Vuex Store - getters\r\n ----------------------------------------------------------------------------------------\r\n Item Name: Vuesax Admin - VueJS Dashboard Admin Template\r\n Author: Pixinvent\r\n Author URL: http://www.themeforest.net/user/pixinvent\r\n==========================================================================================*/\r\n\r\n\r\nconst getters = {\r\n\r\n\t// COMPONENT\r\n\t\t// vx-autosuggest\r\n\t// starredPages: state => state.navbarSearchAndPinList.data.filter((page) => page.highlightAction),\r\n}\r\n\r\nexport default getters","/*=========================================================================================\r\n File Name: mutations.js\r\n Description: Vuex Store - mutations\r\n ----------------------------------------------------------------------------------------\r\n Item Name: Vuesax Admin - VueJS Dashboard Admin Template\r\n Author: Pixinvent\r\n Author URL: http://www.themeforest.net/user/pixinvent\r\n==========================================================================================*/\r\n\r\n\r\nconst mutations = {\r\n\r\n // ////////////////////////////////////////////\r\n // SIDEBAR & UI UX\r\n // ////////////////////////////////////////////\r\n\r\n UPDATE_SIDEBAR_WIDTH(state, width) {\r\n state.sidebarWidth = width;\r\n },\r\n UPDATE_SIDEBAR_ITEMS_MIN(state, val) {\r\n state.sidebarItemsMin = val;\r\n },\r\n TOGGLE_REDUCE_BUTTON(state, val) {\r\n state.reduceButton = val;\r\n },\r\n TOGGLE_CONTENT_OVERLAY(state, val) {\r\n state.bodyOverlay = val;\r\n },\r\n TOGGLE_IS_SIDEBAR_ACTIVE(state, value) {\r\n state.isSidebarActive = value;\r\n },\r\n UPDATE_THEME(state, val) {\r\n state.theme = val;\r\n },\r\n UPDATE_FONT(state, val) {\r\n state.fontType = val;\r\n },\r\n UPDATE_SCHOOL_THEME(state, val) {\r\n state.schoolTheme = val;\r\n },\r\n UPDATE_WINDOW_BREAKPOINT(state, val) {\r\n state.breakpoint = val;\r\n },\r\n UPDATE_PRIMARY_COLOR(state, val) {\r\n state.themePrimaryColor = val; \r\n },\r\n UPDATE_USER_ROLE(state, val) {\r\n //state.userRole = val\r\n //localStorage.setItem('userRole', val)\r\n },\r\n UPDATE_STATUS_CHAT(state, value) {\r\n state.AppActiveUser.status = value;\r\n },\r\n UPDATE_Acl_Subscription(state, value) {\r\n state.aclSubscription.status = value;\r\n },\r\n\r\n // ////////////////////////////////////////////\r\n // COMPONENT\r\n // ////////////////////////////////////////////\r\n\r\n // VxAutoSuggest\r\n UPDATE_STARRED_PAGE(state, payload) {\r\n // find item index in search list state\r\n const index = state.navbarSearchAndPinList.data.findIndex((item) => item.index == payload.index)\r\n // update the main list\r\n state.navbarSearchAndPinList.data[index].highlightAction = payload.val;\r\n\r\n // if val is true add it to starred else remove\r\n if(payload.val) {\r\n state.starredPages.push(state.navbarSearchAndPinList.data[index])\r\n }else {\r\n // find item index from starred pages\r\n const index = state.starredPages.findIndex((item) => item.index == payload.index)\r\n // remove item using index\r\n state.starredPages.splice(index, 1);\r\n }\r\n },\r\n\r\n // The Navbar\r\n ARRANGE_STARRED_PAGES_LIMITED(state, list) {\r\n const starredPagesMore = state.starredPages.slice(10);\r\n state.starredPages = list.concat(starredPagesMore);\r\n },\r\n ARRANGE_STARRED_PAGES_MORE(state, list) {\r\n let downToUp = false\r\n let lastItemInStarredLimited = state.starredPages[10];\r\n const starredPagesLimited = state.starredPages.slice(0, 10);\r\n state.starredPages = starredPagesLimited.concat(list);\r\n\r\n state.starredPages.slice(0,10).map((i) => {\r\n if(list.indexOf(i) > -1) downToUp = true\r\n })\r\n if(!downToUp) {\r\n state.starredPages.splice(10, 0, lastItemInStarredLimited);\r\n }\r\n },\r\n}\r\n\r\nexport default mutations","/*=========================================================================================\r\n File Name: actions.js\r\n Description: Vuex Store - actions\r\n ----------------------------------------------------------------------------------------\r\n Item Name: Vuesax Admin - VueJS Dashboard Admin Template\r\n Author: Pixinvent\r\n Author URL: http://www.themeforest.net/user/pixinvent\r\n==========================================================================================*/\r\n\r\n\r\nconst actions = {\r\n\r\n // ////////////////////////////////////////////\r\n // SIDEBAR & UI UX\r\n // ////////////////////////////////////////////\r\n\r\n updateSidebarWidth({ commit }, width) {\r\n commit('UPDATE_SIDEBAR_WIDTH', width);\r\n },\r\n updateI18nLocale({ commit }, locale) {\r\n commit('UPDATE_I18N_LOCALE', locale);\r\n },\r\n toggleContentOverlay({ commit }) {\r\n commit('TOGGLE_CONTENT_OVERLAY');\r\n },\r\n updateTheme({ commit }, val) {\r\n commit('UPDATE_THEME', val);\r\n },\r\n updateFont({ commit }, val) {\r\n commit('UPDATE_FONT', val);\r\n },\r\n updateSchoolTheme({ commit }, val) {\r\n commit('UPDATE_SCHOOL_THEME', val);\r\n },\r\n updateUserRole({ commit }, val) {\r\n //commit('UPDATE_USER_ROLE', val);\r\n },\r\n updateAclSubscription({ commit }, val){\r\n commit('UPDATE_Acl_Subscription', val);\r\n },\r\n\r\n\r\n // ////////////////////////////////////////////\r\n // COMPONENT\r\n // //////////////////////////////////////////// \r\n \r\n // VxAutoSuggest\r\n updateStarredPage({ commit }, payload) {\r\n commit('UPDATE_STARRED_PAGE', payload)\r\n },\r\n\r\n // The Navbar\r\n arrangeStarredPagesLimited({ commit }, list) {\r\n commit('ARRANGE_STARRED_PAGES_LIMITED', list)\r\n },\r\n arrangeStarredPagesMore({ commit }, list) {\r\n commit('ARRANGE_STARRED_PAGES_MORE', list)\r\n },\r\n}\r\n\r\nexport default actions","/*=========================================================================================\r\n File Name: moduleAuthState.js\r\n Description: Auth Module State\r\n ----------------------------------------------------------------------------------------\r\n Item Name: Vuesax Admin - VueJS Dashboard Admin Template\r\n Author: Pixinvent\r\n Author URL: http://www.themeforest.net/user/pixinvent\r\n==========================================================================================*/\r\n\r\n\r\nexport default {\r\n isUserLoggedIn: () => {\r\n let isAuthenticated = false;\r\n\r\n if (localStorage.getItem(\"accessToken\")) isAuthenticated = true\r\n else isAuthenticated = false\r\n\r\n return (localStorage.getItem('userInfo') && isAuthenticated);\r\n },\r\n}\r\n","/*=========================================================================================\r\n File Name: moduleAuthMutations.js\r\n Description: Auth Module Mutations\r\n ----------------------------------------------------------------------------------------\r\n Item Name: Vuesax Admin - VueJS Dashboard Admin Template\r\n Author: Pixinvent\r\n Author URL: http://www.themeforest.net/user/pixinvent\r\n==========================================================================================*/\r\n\r\n\r\nexport default {\r\n\tUPDATE_AUTHENTICATED_USER(state, user) {\r\n\t\tlocalStorage.setItem('userInfo', JSON.stringify(user));\r\n\t},\r\n}","\r\nimport Vue from 'vue'\r\nimport router from '@/router'\r\nimport jQuery from 'vue-jquery'\r\nVue.use(jQuery);\r\n\r\nexport default {\r\n adminLoginAttempt({\r\n dispatch\r\n }, payload) { //not used anymore\r\n const newPayload = {\r\n userDetails: payload.userDetails,\r\n notify: payload.notify,\r\n self: payload.self\r\n }\r\n if (!payload.checkbox_remember_me) {\r\n dispatch('adminLogin', newPayload);\r\n } else {\r\n // localStorage.setItem('remember_me', true);\r\n dispatch('adminLogin', newPayload);\r\n if (payload.self.$refs.login)\r\n payload.self.$vs.loading.close(payload.self.$refs.login.$el);\r\n }\r\n },\r\n loginAttempt({\r\n dispatch\r\n }, payload) {\r\n\r\n const newPayload = {\r\n userDetails: payload.userDetails,\r\n notify: payload.notify,\r\n self: payload.self\r\n }\r\n dispatch('login', newPayload);\r\n if (payload.self.$refs.login)\r\n payload.self.$vs.loading.close(payload.self.$refs.login.$el);\r\n },\r\n adminLogin({\r\n commit,\r\n state\r\n }, payload) { //not used anymore\r\n localStorage.setItem('permissions', '');\r\n localStorage.setItem('userSiteInfo', '');\r\n localStorage.setItem('Current_User_Id', '');\r\n\r\n if (state.isUserLoggedIn()) {\r\n if (payload.self.$refs.login)\r\n payload.self.$vs.loading.close(payload.self.$refs.login.$el);\r\n payload.notify({\r\n title: 'Login Attempt',\r\n text: 'You are already logged in!',\r\n iconPack: 'feather',\r\n icon: 'icon-alert-circle',\r\n color: 'warning'\r\n });\r\n return false\r\n }\r\n payload.self.$signIn(payload.self, payload.userDetails.email, payload.userDetails.password, (result) => {\r\n var data = result;\r\n var localStorageString = JSON.stringify(data);\r\n localStorage.setItem('userInfo', localStorageString);\r\n\r\n localStorage.setItem('Current_User_Id', data.currentUserId);\r\n localStorage.setItem('DisplayName', data.displayName);\r\n localStorage.setItem(\"accessToken\", data.apiToken);\r\n\r\n payload.self.$getSites(self, function () {\r\n payload.self.$getProfilePicture(self, function () {\r\n var userInfo = JSON.parse(localStorage.getItem('userInfo'));\r\n userInfo.photoURL = localStorage.getItem('pictureUrl') == null || localStorage.getItem('pictureUrl') == \"null\" ? \"https://forty5degreesstorage.blob.core.windows.net/user/avatar_default.png\" : localStorage.getItem('pictureUrl');\r\n localStorage.setItem('pictureUrl', '');\r\n localStorage.setItem('userInfo', JSON.stringify(userInfo));\r\n });\r\n payload.self.$setPermissions(self, function () {\r\n\r\n payload.self.$acl.change(localStorage.getItem('permissions').split(\",\"));\r\n\r\n if (localStorage.getItem('permissions').includes(\"Teacher\")) {\r\n localStorage.setItem(\"isTeacher\", \"true\");\r\n } else {\r\n localStorage.setItem(\"isTeacher\", \"false\");\r\n }\r\n\r\n if (localStorage.getItem('permissions').includes(\"Student\")) {\r\n router.push('/menu');\r\n } else\r\n router.push(router.currentRoute.query.to || '/');\r\n if (payload.self.$refs.login)\r\n payload.self.$vs.loading.close(payload.self.$refs.login.$el);\r\n });\r\n })\r\n\r\n });\r\n },\r\n login({\r\n commit,\r\n state\r\n }, payload) {\r\n localStorage.setItem('permissions', '');\r\n localStorage.setItem('userSiteInfo', '');\r\n localStorage.setItem('Current_User_Id', '');\r\n if (state.isUserLoggedIn()) {\r\n if (payload.self.$refs.login)\r\n payload.self.$vs.loading.close(payload.self.$refs.login.$el);\r\n payload.notify({\r\n title: 'Login Attempt',\r\n text: 'You are already logged in!',\r\n iconPack: 'feather',\r\n icon: 'icon-alert-circle',\r\n color: 'warning'\r\n });\r\n return false\r\n }\r\n\r\n var success = (result) => {\r\n var hasRoleForDigiCEP = result.sitePermissions.filter(function (x) { return x.siteId == 31 }).length > 0;\r\n var hasRoleForDigiUsers = result.sitePermissions.filter(function (x) { return x.siteId == 36 }).length > 0;\r\n var hasRoleForSiteWithContent = result.sitePermissions.filter(function (x) { return x.siteId == Vue.prototype.$getSiteIdWithContent() }).length > 0;\r\n \r\n var permissions = result.sitePermissions.map(function (x) { return x.permissions })\r\n if (hasRoleForDigiUsers && (hasRoleForSiteWithContent || hasRoleForDigiCEP)) {\r\n var isGuardianOrStudent = permissions.filter(function (x) { return x.includes('Guardian') || x.includes('Student') }).length > 0;\r\n\r\n var hasSitePermissionForDigiCampus = result.sitePermissions.filter(function (x) { return x.siteId == Vue.prototype.$getSiteIdWithContent() }).length > 0;\r\n var hasSitePermissionWithALanguage = result.sitePermissions.filter(function (x) { return x.languageId != null }).length > 0;\r\n var hasSitePermissionWithAGrade = result.sitePermissions.filter(function (x) { return x.courseClassificationId != null }).length > 0;\r\n\r\n if (isGuardianOrStudent && hasSitePermissionForDigiCampus && hasSitePermissionWithALanguage && hasSitePermissionWithAGrade) {\r\n var language = result.sitePermissions.filter(function (x) { return x.languageId != null })[0].languageId;\r\n var grade = result.sitePermissions.filter(function (x) { return x.courseClassificationId != null })[0].courseClassificationId;\r\n result.languageId = language;\r\n result.courseClassificationId = grade;\r\n result.sitePermissions.filter(function (x) { return x.siteId == Vue.prototype.$getSiteIdWithContent() }).languageId = language;\r\n result.sitePermissions.filter(function (x) { return x.siteId == Vue.prototype.$getSiteIdWithContent() }).courseClassificationId = grade;\r\n var userPermissions = localStorage.getItem('permissions') + \",Student,ViewCourses\";\r\n localStorage.setItem('permissions', userPermissions);\r\n localStorage.setItem('isStudent', true);\r\n result.isStudent = true;\r\n } else {\r\n localStorage.setItem('userInfo', JSON.stringify(result));\r\n Vue.prototype.$setSiteInfo(true);\r\n }\r\n }\r\n\r\n var data = result;\r\n //Set userInfo in localStorage\r\n var localStorageString = JSON.stringify(data);\r\n localStorage.setItem('userInfo', localStorageString);\r\n\r\n localStorage.setItem(\"accessToken\", data.apiToken);\r\n\r\n localStorage.setItem('Current_User_Id', data.currentUserId);\r\n localStorage.setItem('DisplayName', data.displayName);\r\n if (data.isStudent) {\r\n localStorage.setItem(\"isStudent\", \"true\");\r\n\r\n if (result.sitePermissions.length > 1) {\r\n var onSuccess = response => {\r\n if (response.data.length == 1) {\r\n var resultObj = {\r\n sitePermissions: []\r\n }\r\n resultObj.sitePermissions.push(response.data[0]);\r\n localStorage.setItem(\"userSiteInfo\", JSON.stringify(response.data[0]));\r\n setSitePermissionsForAuth(payload, resultObj, permissions);\r\n } else {\r\n localStorage.setItem(\"allUserSites\", JSON.stringify(response.data));\r\n if (localStorage.getItem(\"type\") == \"other\")\r\n router.push('/selectsite');\r\n else if (localStorage.getItem(\"type\") == \"digi\")\r\n router.push('digi/selectsite');\r\n\r\n return;\r\n }\r\n };\r\n Vue.prototype.$ajaxGet(self, \"Role/GetSites\", onSuccess);\r\n return;\r\n }\r\n\r\n setSitePermissionsForAuth(payload, result, permissions);\r\n return;\r\n }\r\n\r\n localStorage.setItem(\"isStudent\", \"false\");\r\n payload.self.$getSites(self, function () {\r\n payload.self.$getProfilePicture(self, function () {\r\n var userInfo = JSON.parse(localStorage.getItem('userInfo'));\r\n userInfo.photoURL = localStorage.getItem('pictureUrl') == null || localStorage.getItem('pictureUrl') == \"null\" ? \"https://forty5degreesstorage.blob.core.windows.net/user/avatar_default.png\" : localStorage.getItem('pictureUrl');\r\n localStorage.setItem('pictureUrl', '');\r\n localStorage.setItem('userInfo', JSON.stringify(userInfo));\r\n });\r\n payload.self.$setPermissions(self, function () {\r\n setTimeout(function () {\r\n payload.self.$acl.change(localStorage.getItem('permissions').split(\",\"));\r\n\r\n if (localStorage.getItem('permissions').includes(\"Teacher\") && localStorage.getItem('permissions').includes(\"MaintainLibraryResources\")) {\r\n localStorage.setItem(\"isTeacher\", \"true\");\r\n } else if (localStorage.getItem('permissions').includes(\"MaintainLibraryResources\") && !(localStorage.getItem('permissions').includes(\"Teacher\"))) {\r\n localStorage.setItem(\"isLibraryAdmin\", \"true\");\r\n } else {\r\n localStorage.setItem(\"isTeacher\", \"false\");\r\n localStorage.setItem(\"isLibraryAdmin\", \"false\");\r\n }\r\n\r\n if (localStorage.getItem('permissions').includes(\"Admin\") && payload.self.$acl.check(\"Teacher\")) {\r\n router.push('/portal-select');\r\n } else if (payload.self.$acl.check(\"Teacher\")) {\r\n router.push('/digi/teacher');\r\n } else if (payload.self.$acl.check(\"LibraryAdmin\"))\r\n router.push('/digi/library');\r\n else if (payload.self.$acl.check(\"Mentor\"))\r\n router.push('/mentor-dashboard');\r\n else if (payload.self.$acl.check(\"SuperAdmin\")) {\r\n router.push('/portal-select');\r\n } else if (payload.self.$acl.check(\"Guardian\")) {\r\n router.push('/parent/dashboard');\r\n }\r\n else if (payload.self.$acl.check(\"Principal\")) {\r\n router.push('/principal/dashboard');\r\n }\r\n else if (payload.self.$acl.check(\"SiteAdmin\")) {\r\n if (result.sitePermissions[0].siteTypeId == 1) {\r\n router.push('/portal-select');\r\n } else {\r\n let routeData = router.resolve({\r\n name: 'dashboard'\r\n });\r\n window.open(routeData.href, '_self');\r\n }\r\n } else {\r\n let routeData = router.resolve({\r\n name: 'dashboard'\r\n });\r\n window.open(routeData.href, '_self');\r\n }\r\n payload.self.$vs.loading.close(payload.self.$refs.login.$el);\r\n }, 200)\r\n });\r\n })\r\n\r\n }\r\n\r\n if (payload.userDetails.token) {\r\n payload.self.$signInWithToken(payload.self, payload.userDetails.email, payload.userDetails.token, success);\r\n }\r\n else if (payload.userDetails.externalString) {\r\n payload.self.$signInWithEncryptedKey(payload.self, payload.userDetails.externalString, success);\r\n }\r\n else {\r\n payload.self.$signIn(payload.self, payload.userDetails.email, payload.userDetails.password, success);\r\n }\r\n\r\n },\r\n\r\n updateAuthenticatedUser({\r\n commit\r\n }, payload) {\r\n commit('UPDATE_AUTHENTICATED_USER', payload)\r\n payload.self.$vs.loading.close(payload.self.$refs.login.$el);\r\n }\r\n}\r\n\r\nfunction setSitePermissionsForAuth(payload, result, permissions) {\r\n var siteInfo = [{\r\n \"siteId\": result.sitePermissions[0].siteId,\r\n \"name\": result.sitePermissions[0].siteName,\r\n \"logoUrl\": result.sitePermissions[0].siteLogoUrl,\r\n \"theme\": \"semi-dark\",\r\n \"themeColor\": \"#97abd8\",\r\n \"navbarColor\": \"#28C76F\",\r\n \"navbarType\": \"floating\",\r\n \"siteTypeId\": result.sitePermissions[0].siteTypeId,\r\n \"schoolPrimaryColor\": result.sitePermissions[0].schoolPrimaryColor,\r\n \"schoolSecondaryColor\": result.sitePermissions[0].schoolSecondaryColor,\r\n \"schoolTertiaryColor\": result.sitePermissions[0].schoolTertiaryColor,\r\n \"schoolFontColor\": result.sitePermissions[0].schoolFontColor,\r\n \"isMentoringAvailable\": result.sitePermissions[0].isMentoringAvailable,\r\n \"virtualClassroom\": result.sitePermissions[0].virtualClassroom,\r\n \"hasSignature\": result.sitePermissions[0].hasSignature,\r\n \"oneTaskAttempt\":result.sitePermissions[0].oneTaskAttempt,\r\n }];\r\n localStorage.setItem(\"userSiteInfo\", JSON.stringify(siteInfo));\r\n localStorage.setItem(\"pictureUrl\", result.profilePictureUrl);\r\n\r\n var userInfo = JSON.parse(localStorage.getItem('userInfo'));\r\n userInfo.photoURL = localStorage.getItem('pictureUrl') == null || localStorage.getItem('pictureUrl') == \"null\" ? \"https://forty5degreesstorage.blob.core.windows.net/user/avatar_default.png\" : localStorage.getItem('pictureUrl');\r\n\r\n userInfo.languageId = result.sitePermissions[0].languageId;\r\n userInfo.courseClassificationId = result.sitePermissions[0].courseClassificationId;\r\n\r\n localStorage.setItem('userInfo', JSON.stringify(userInfo));\r\n var isGuardian = permissions.filter(function (x) { return x.includes('Guardian') }).length > 0;\r\n var isStudent = permissions.filter(function (x) { return x.includes('Student') }).length > 0;\r\n if (isGuardian && !isStudent) {\r\n localStorage.setItem(\"permissions\", \"Guardian,Login\");\r\n } else if (isGuardian && isStudent) {\r\n localStorage.setItem(\"permissions\", \"Guardian,Student,ViewCourses,Login\");\r\n } else {\r\n localStorage.setItem(\"permissions\", \"Student,ViewCourses,Login\");\r\n }\r\n // localStorage.setItem(\"permissions\", \"Login,ViewCourses,Student,Login\");\r\n payload.self.$acl.change(localStorage.getItem('permissions').split(\",\"));\r\n if (localStorage.getItem('permissions').includes(\"Student\")) {\r\n if (result.sitePermissions[0].siteTypeId != 1) {\r\n let routeData = null;\r\n if (result.sitePermissions[0].siteId == 33 || result.sitePermissions[0].siteId == 35) { // change to 5 for testing\r\n routeData = router.resolve({\r\n name: 'Gen2Learn'\r\n });\r\n window.open(routeData.href, '_self');\r\n } else if (result.sitePermissions[0].permissions.includes(\"Student\")) {\r\n routeData = router.resolve({\r\n name: 'Menu'\r\n });\r\n window.open(routeData.href, '_self');\r\n }\r\n } else if (result.sitePermissions[0].siteTypeId == 1) {\r\n if (!userInfo.languageId || !userInfo.courseClassificationId) {\r\n // if (payload.self.$acl.check(\"Guardian\")) {\r\n // router.push('/parent/dashboard');\r\n // } else {\r\n // router.push('/moreinfo')\r\n // }\r\n }\r\n else\r\n window.open('/digi/browsecontent',\"_self\");\r\n }\r\n } else\r\n payload.self.$vs.loading.close(payload.self.$refs.login.$el);\r\n return;\r\n}\r\n","/*=========================================================================================\r\n File Name: moduleAuthGetters.js\r\n Description: Auth Module Getters\r\n ----------------------------------------------------------------------------------------\r\n Item Name: Vuesax Admin - VueJS Dashboard Admin Template\r\n Author: Pixinvent\r\n Author URL: http://www.themeforest.net/user/pixinvent\r\n==========================================================================================*/\r\n\r\n\r\nexport default {}","/*=========================================================================================\r\n File Name: moduleAuth.js\r\n Description: Auth Module\r\n ----------------------------------------------------------------------------------------\r\n Item Name: Vuesax Admin - VueJS Dashboard Admin Template\r\n Author: Pixinvent\r\n Author URL: http://www.themeforest.net/user/pixinvent\r\n==========================================================================================*/\r\n\r\n\r\nimport state from './moduleAuthState.js'\r\nimport mutations from './moduleAuthMutations.js'\r\nimport actions from './moduleAuthActions.js'\r\nimport getters from './moduleAuthGetters.js'\r\n\r\nexport default {\r\n\tnamespaced: true,\r\n state: state,\r\n mutations: mutations,\r\n actions: actions,\r\n getters: getters\r\n}","/*=========================================================================================\r\n File Name: moduleChatState.js\r\n Description: Chat Module State\r\n ----------------------------------------------------------------------------------------\r\n Item Name: Vuesax Admin - VueJS Dashboard Admin Template\r\n Author: Pixinvent\r\n Author URL: http://www.themeforest.net/user/pixinvent\r\n==========================================================================================*/\r\n\r\n\r\nexport default {\r\n chatSearchQuery: '',\r\n chats: {\r\n 1: {\r\n isPinned: true,\r\n msg: [\r\n {\r\n textContent: 'How can we help? We\\'re here for you!',\r\n time: 'Mon Dec 10 2018 07:45:00 GMT+0000 (GMT)',\r\n isSent: true,\r\n isSeen: true,\r\n },\r\n {\r\n textContent: 'Hey John, I am looking for the best admin template. Could you please help me to find it out?',\r\n time: 'Mon Dec 10 2018 07:45:23 GMT+0000 (GMT)',\r\n isSent: false,\r\n isSeen: true,\r\n },\r\n {\r\n textContent: 'It should be Bootstrap 4 compatible.',\r\n time: 'Mon Dec 10 2018 07:45:55 GMT+0000 (GMT)',\r\n isSent: false,\r\n isSeen: true,\r\n },\r\n {\r\n textContent: 'Absolutely!',\r\n time: 'Mon Dec 10 2018 07:46:00 GMT+0000 (GMT)',\r\n isSent: true,\r\n isSeen: true,\r\n },\r\n {\r\n textContent: 'Modern admin is the responsive bootstrap 4 admin template.!',\r\n time: 'Mon Dec 10 2018 07:46:05 GMT+0000 (GMT)',\r\n isSent: true,\r\n isSeen: true,\r\n },\r\n {\r\n textContent: 'Looks clean and fresh UI.',\r\n time: 'Mon Dec 10 2018 07:46:23 GMT+0000 (GMT)',\r\n isSent: false,\r\n isSeen: true,\r\n },\r\n {\r\n textContent: 'It\\'s perfect for my next project.',\r\n time: 'Mon Dec 10 2018 07:46:33 GMT+0000 (GMT)',\r\n isSent: false,\r\n isSeen: true,\r\n },\r\n {\r\n textContent: 'How can I purchase it?',\r\n time: 'Mon Dec 10 2018 07:46:43 GMT+0000 (GMT)',\r\n isSent: false,\r\n isSeen: true,\r\n },\r\n {\r\n textContent: 'Thanks, from ThemeForest.',\r\n time: 'Mon Dec 10 2018 07:46:53 GMT+0000 (GMT)',\r\n isSent: true,\r\n isSeen: true,\r\n },\r\n {\r\n textContent: 'I will purchase it for sure.',\r\n time: 'Mon Dec 10 2018 07:47:00 GMT+0000 (GMT)',\r\n isSent: false,\r\n isSeen: true,\r\n },\r\n {\r\n textContent: 'Thanks',\r\n time: 'Mon Dec 10 2018 07:47:05 GMT+0000 (GMT)',\r\n isSent: false,\r\n isSeen: false,\r\n },\r\n ],\r\n },\r\n 2: {\r\n isPinned: false,\r\n msg: [\r\n {\r\n textContent: 'Hi',\r\n time: 'Mon Dec 10 2018 07:45:00 GMT+0000 (GMT)',\r\n isSent: true,\r\n isSeen: true,\r\n },\r\n {\r\n textContent: 'Hello. How can I help You?',\r\n time: 'Mon Dec 11 2018 07:45:15 GMT+0000 (GMT)',\r\n isSent: false,\r\n isSeen: true,\r\n },\r\n {\r\n textContent: 'Can I get details of my last transaction I made last month?',\r\n time: 'Mon Dec 11 2018 07:46:10 GMT+0000 (GMT)',\r\n isSent: true,\r\n isSeen: true,\r\n },\r\n {\r\n textContent: 'We need to check if we can provide you such information.',\r\n time: 'Mon Dec 11 2018 07:45:15 GMT+0000 (GMT)',\r\n isSent: false,\r\n isSeen: true,\r\n },\r\n {\r\n textContent: 'I will inform you as I get update on this.',\r\n time: 'Mon Dec 11 2018 07:46:15 GMT+0000 (GMT)',\r\n isSent: false,\r\n isSeen: true,\r\n },\r\n {\r\n textContent: 'Thank You',\r\n time: 'Mon Dec 11 2018 07:46:20 GMT+0000 (GMT)',\r\n isSent: true,\r\n isSeen: false,\r\n },\r\n ],\r\n },\r\n },\r\n}\r\n","/*=========================================================================================\r\n File Name: moduleChatMutations.js\r\n Description: Chat Module Mutations\r\n ----------------------------------------------------------------------------------------\r\n Item Name: Vuesax Admin - VueJS Dashboard Admin Template\r\n Author: Pixinvent\r\n Author URL: http://www.themeforest.net/user/pixinvent\r\n==========================================================================================*/\r\n\r\n\r\nimport Vue from 'vue'\r\n\r\nexport default {\r\n UPDATE_ABOUT_CHAT(state, value) {\r\n state.AppActiveUser.about = value;\r\n },\r\n SET_CHAT_SEARCH_QUERY(state, query) {\r\n state.chatSearchQuery = query;\r\n },\r\n SEND_CHAT_MESSAGE(state, payload) {\r\n if(payload.chatData){\r\n state.chats[Object.keys(state.chats).find(key => key == payload.id)].msg.push(payload.msg);\r\n }else{\r\n const chatId = payload.id;\r\n Vue.set(state.chats, [chatId], {isPinned: payload.isPinned, msg: [payload.msg]});\r\n }\r\n },\r\n TOGGLE_IS_PINNED(state, payload) {\r\n state.chats[Object.keys(state.chats).find(key => key == payload.id)].isPinned = payload.value;\r\n },\r\n MARK_SEEN_ALL_MESSAGES(state, payload) {\r\n payload.chatData.msg.forEach((msg) => {\r\n msg.isSeen = true\r\n });\r\n },\r\n}","/*=========================================================================================\r\n File Name: moduleChatActions.js\r\n Description: Chat Module Actions\r\n ----------------------------------------------------------------------------------------\r\n Item Name: Vuesax Admin - VueJS Dashboard Admin Template\r\n Author: Pixinvent\r\n Author URL: http://www.themeforest.net/user/pixinvent\r\n==========================================================================================*/\r\n\r\n\r\nexport default {\r\n updateAboutChat({ commit }, value) {\r\n commit('UPDATE_ABOUT_CHAT', value)\r\n },\r\n updateStatusChat({ commit }, value) {\r\n commit('UPDATE_STATUS_CHAT', value, {root: true})\r\n },\r\n setChatSearchQuery({ commit }, query){\r\n commit('SET_CHAT_SEARCH_QUERY', query)\r\n },\r\n sendChatMessage({ getters, commit }, payload) {\r\n payload.chatData = getters.chatDataOfUser(payload.id);\r\n commit('SEND_CHAT_MESSAGE', payload)\r\n },\r\n toggleIsPinned({ commit }, payload) {\r\n commit('TOGGLE_IS_PINNED', payload);\r\n },\r\n markSeenAllMessages({ getters, commit }, id) {\r\n let payload = {id: id}\r\n payload.chatData = getters.chatDataOfUser(payload.id);\r\n commit('MARK_SEEN_ALL_MESSAGES', payload);\r\n },\r\n}","/*=========================================================================================\r\n File Name: moduleChatGetters.js\r\n Description: Chat Module Getters\r\n ----------------------------------------------------------------------------------------\r\n Item Name: Vuesax Admin - VueJS Dashboard Admin Template\r\n Author: Pixinvent\r\n Author URL: http://www.themeforest.net/user/pixinvent\r\n==========================================================================================*/\r\n\r\n\r\nimport contacts from '@/components/chat/contacts'\r\n\r\nexport default {\r\n chatDataOfUser: state => id => {\r\n return state.chats[Object.keys(state.chats).find(key => key == id)]\r\n },\r\n chats: (state, getters) => {\r\n const chatArray = contacts.filter((contact) => {\r\n if(getters.chatDataOfUser(contact.id)) return (contact.name.toLowerCase().includes(state.chatSearchQuery.toLowerCase()) && (getters.chatDataOfUser(contact.id).msg.length > 0));\r\n });\r\n return chatArray.sort((x,y) => {\r\n let timeX = getters.chatLastMessaged(x.id).time\r\n let timeY = getters.chatLastMessaged(y.id).time\r\n return (new Date(timeY) - new Date(timeX))\r\n });\r\n },\r\n chatcontacts: (state) => contacts.filter((contact) => {\r\n return contact.name.toLowerCase().includes(state.chatSearchQuery.toLowerCase())\r\n }),\r\n chatLastMessaged: (state, getters) => id => {\r\n if(getters.chatDataOfUser(id)) return getters.chatDataOfUser(id).msg.slice(-1)[0];\r\n else return false\r\n },\r\n chatUnseenMessages: (state, getters) => id => {\r\n let unseenMsg = 0;\r\n const chatData = getters.chatDataOfUser(id);\r\n if(chatData) {\r\n chatData.msg.map((msg) => {\r\n if(!msg.isSeen && !msg.isSent) unseenMsg++;\r\n })\r\n }\r\n return unseenMsg;\r\n },\r\n}","/*=========================================================================================\r\n File Name: moduleChat.js\r\n Description: Chat Module\r\n ----------------------------------------------------------------------------------------\r\n Item Name: Vuesax Admin - VueJS Dashboard Admin Template\r\n Author: Pixinvent\r\n Author URL: http://www.themeforest.net/user/pixinvent\r\n==========================================================================================*/\r\n\r\n\r\nimport state from './moduleChatState.js'\r\nimport mutations from './moduleChatMutations.js'\r\nimport actions from './moduleChatActions.js'\r\nimport getters from './moduleChatGetters.js'\r\n\r\nexport default {\r\n\tnamespaced: true,\r\n state: state,\r\n mutations: mutations,\r\n actions: actions,\r\n getters: getters\r\n}","/*=========================================================================================\r\n File Name: store.js\r\n Description: Vuex store\r\n ----------------------------------------------------------------------------------------\r\n Item Name: Vuesax Admin - VueJS Dashboard Admin Template\r\n Author: Pixinvent\r\n Author URL: http://www.themeforest.net/user/pixinvent\r\n==========================================================================================*/\r\n\r\n\r\nimport Vue from 'vue'\r\nimport Vuex from 'vuex'\r\n\r\nimport state from \"./state\"\r\nimport getters from \"./getters\"\r\nimport mutations from \"./mutations\"\r\nimport actions from \"./actions\"\r\n\r\nVue.use(Vuex)\r\n\r\nimport moduleAuth from './auth/moduleAuth.js'\r\nimport moduleChat from './chat/moduleChat.js'\r\n\r\nexport default new Vuex.Store({\r\n state,\r\n mutations,\r\n getters,\r\n actions,\r\n modules: {\r\n auth: moduleAuth,\r\n chat: moduleChat,\r\n },\r\n strict: process.env.NODE_ENV !== 'production'\r\n})\r\n","// en, de, fr, pt\r\nexport default {\r\n en: {\r\n Dashboard: 'Dashboard',\r\n Settings: 'Settings',\r\n Sites: 'Sites',\r\n Users: 'Users',\r\n Languages: 'Languages',\r\n Classifications: 'Course Classifications',\r\n ModuleGroups: 'Module Groups',\r\n SelectCourse: 'Select Course',\r\n ModuleDocuments: 'Module Documents',\r\n BulkUploadCourses: 'Bulk Upload Courses',\r\n BulkUploadSchedules: 'Bulk Upload Schedules',\r\n CourseBuilder: 'Course Builder',\r\n PremiumContent: 'Premium Content',\r\n Navigation: 'Navigation Maps',\r\n Scene: 'Scenes',\r\n Background: 'Backgrounds',\r\n Music: 'Audio / Podcasts',\r\n Scenes: 'Scenes',\r\n Characters: 'Characters',\r\n Video: 'Videos',\r\n iSpringQuiz: 'iSpring Quizzes',\r\n iSpringPresentation: 'iSpring Presentations',\r\n Document: 'Documents',\r\n Quiz: 'Quizzes',\r\n Manage: 'Manage',\r\n Courses: 'Courses & Modules',\r\n Students: 'Students',\r\n studentDocs: 'Student Documents',\r\n Snapshot: 'Snapshot',\r\n DeviceType: 'Device Type',\r\n Assessment: 'Assessment',\r\n PredefinedComment: 'Predefined Comments',\r\n AssessTask: 'Assess Tasks',\r\n ModerateTask: 'Moderate Tasks',\r\n Assign: 'Assign',\r\n Companies: 'Companies',\r\n Marketing: 'Marketing',\r\n ManageVideos: 'Manage Videos',\r\n Evaluate: 'Evaluate',\r\n EvaluateTask: 'Evaluate Tasks',\r\n Reports: 'Reports',\r\n ViewReports: 'View Reports',\r\n DocumentTypes: 'Document Types',\r\n LearnerReviewQuestions: 'Learner Review Questions',\r\n WitnessTestimonyQuestion: 'Witness Testimony Question',\r\n ResourceCategory: 'Resource Category',\r\n AdditionalResources: 'Additional Resources',\r\n PracticalQuestions: 'Practical Questions',\r\n Guardians: 'Guardians',\r\n AddShortCourse: 'Add Short Course',\r\n ShortCourseList: 'Short Courses',\r\n SARSQuestions: 'SARS Questions',\r\n AddBundle:'Add Bundle',\r\n BundleList:'Bundle List',\r\n Vendors: \"Vendors & Vouchers\",\r\n Monitor:\"Monitor\",\r\n Assessments:\"Assessments\",\r\n Principal:\"Principal\",\r\n DataPlans:\"Data Plans\",\r\n MobilePlans:\"Mobile Plans\",\r\n Banners:\"Banners\",\r\n BulkUploadFeedback:\"Bulk Upload Feedback\",\r\n SubscriptionReport:\"Subscription Report\"\r\n },\r\n // de: {\r\n\r\n // },\r\n // fr: {\r\n\r\n // },\r\n // pt: {\r\n\r\n // }\r\n}\r\n","/*=========================================================================================\r\n File Name: i18n.js\r\n Description: i18n configuration file. Imports i18n data.\r\n ----------------------------------------------------------------------------------------\r\n Item Name: Vuesax Admin - VueJS Dashboard Admin Template\r\n Author: Pixinvent\r\n Author URL: http://www.themeforest.net/user/pixinvent\r\n==========================================================================================*/\r\n\r\n\r\nimport Vue from 'vue'\r\nimport VueI18n from 'vue-i18n'\r\nimport i18nData from './i18nData'\r\n\r\nVue.use(VueI18n)\r\n\r\nexport default new VueI18n({\r\n locale: 'en', // set default locale\r\n messages: i18nData,\r\n})","import Vue from 'vue'\r\n\r\nVue.filter('capitalize', function (value) {\r\n\tif (!value) return ''\r\n\tvalue = value.toString()\r\n\tlet arr = value.split(\" \")\r\n\tlet capitalized_array = []\r\n\tarr.forEach((word) => {\r\n\t\tlet capitalized = word.charAt(0).toUpperCase() + word.slice(1)\r\n\t\tcapitalized_array.push(capitalized)\r\n\t})\r\n\treturn capitalized_array.join(\" \");\r\n})\r\n\r\nVue.filter('truncate', function(value, limit) {\r\n\treturn value.substring(0, limit)\r\n})\r\n\r\nVue.filter('tailing', function(value, tail) {\r\n\treturn value + tail;\r\n})\r\n\r\nVue.filter('time', function(value, is24HrFormat = false) {\r\n\tif(value) {\r\n\t\tconst date = new Date(Date.parse(value));\r\n\t\tlet hours = date.getHours();\r\n\t\tconst min = (date.getMinutes() < 10 ? '0' : '') + date.getMinutes()\r\n\t\tif(!is24HrFormat) {\r\n\t\t\tconst time = hours > 12 ? 'AM' : 'PM';\r\n\t\t\thours = hours % 12 || 12;\r\n\t\t\treturn hours + ':' + min + ' ' + time\r\n\t\t}\r\n\t\treturn hours + ':' + min\r\n\t}\r\n})\r\n\r\nVue.filter('date', function(value, fullDate = false) {\r\n\tvalue = String(value)\r\n\tconst date = value.slice(8,10).trim();\r\n\tconst month = value.slice(4,7).trim();\r\n\tconst year = value.slice(11,15);\r\n\t\r\n\tif(!fullDate) return date + ' ' + month;\r\n\telse return date + ' ' + month + ' ' + year;\r\n})\r\n\r\nVue.filter('csv', function(value) {\r\n\treturn value.join(', ')\r\n})\r\n\r\nVue.filter('filter_tags', function(value) {\r\n\treturn value.replace(/<\\/?[^>]+(>|$)/g, \"\")\r\n})\r\n\r\nVue.filter('k_formatter', function(num) {\r\n\treturn num > 999 ? (num/1000).toFixed(1) + 'k' : num\r\n})","/*=========================================================================================\r\n File Name: main.js\r\n Description: main vue(js) file\r\n ----------------------------------------------------------------------------------------\r\n Item Name: Vuesax Admin - VueJS Dashboard Admin Template\r\n Author: Pixinvent\r\n Author URL: http://www.themeforest.net/user/pixinvent\r\n==========================================================================================*/\r\n\r\ndocument.title = \"DigiCentral\"\r\nimport Vue from 'vue'\r\nimport App from './App.vue'\r\n\r\n// Vuesax Component Framework\r\nimport Vuesax from 'vuesax'\r\nimport 'material-icons/iconfont/material-icons.css' //Material Icons\r\nimport 'vuesax/dist/vuesax.css'; // Vuesax\r\nVue.use(Vuesax)\r\n\r\n\r\n// axios\r\nimport axios from 'axios'\r\nVue.prototype.$http = axios\r\n\r\n// Theme Configurations\r\nimport '../themeConfig.js'\r\n\r\n\r\n\r\n// Auth0 Plugin\r\n// import AuthPlugin from \"./plugins/auth\";\r\n// Vue.use(AuthPlugin);\r\n\r\n//UUID\r\nimport UUID from 'vue-uuid';\r\nVue.use(UUID);\r\n\r\nimport jQuery from 'vue-jquery'\r\nVue.use(jQuery);\r\n\r\n// ACL\r\nimport acl from './acl/acl'\r\n\r\n// Globally Registered Components\r\nimport './globalComponents.js'\r\n\r\n\r\n// Styles: SCSS\r\nimport './assets/scss/main.scss'\r\n\r\n\r\n// Tailwind\r\nimport '@/assets/css/main.css';\r\n\r\n\r\n// Vue Router\r\nimport router from './router'\r\n\r\n\r\n// Vuex Store\r\nimport store from './store/store'\r\n\r\n\r\n// i18n\r\nimport i18n from './i18n/i18n'\r\n\r\n\r\n// Vuesax Admin Filters\r\nimport './filters/filters'\r\n\r\n\r\n// Clipboard\r\nimport VueClipboard from 'vue-clipboard2'\r\nVue.use(VueClipboard);\r\n\r\n// Tour\r\nimport VueTour from 'vue-tour'\r\nVue.use(VueTour)\r\nrequire('vue-tour/dist/vue-tour.css')\r\n\r\n\r\n// VeeValidate\r\nimport VeeValidate from 'vee-validate';\r\nVue.use(VeeValidate);\r\n\r\n\r\n\r\n// Google Maps\r\nimport * as VueGoogleMaps from 'vue2-google-maps'\r\nVue.use(VueGoogleMaps, {\r\n load: {\r\n // Add your API key here\r\n key: 'YOUR_KEY',\r\n libraries: 'places', // This is required if you use the Auto complete plug-in\r\n },\r\n})\r\n\r\n\r\n// PrismJS\r\nimport 'prismjs'\r\nimport 'prismjs/themes/prism-tomorrow.css'\r\n\r\n// VueCytoscape\r\nimport VueCytoscape from 'vue-cytoscape'\r\nimport 'vue-cytoscape/dist/vue-cytoscape.css'\r\n\r\n// ScrollTo\r\nimport VueScrollTo from 'vue-scrollto'\r\n\r\n// V-Uploader\r\nimport vUploader from 'v-uploader';\r\n\r\n// Feather font icon\r\nrequire('./assets/css/iconfont.css')\r\n\r\n// Vue Analytics\r\nimport VueAnalytics from 'vue-analytics';\r\nVue.use(VueAnalytics, {\r\n id: 'UA-159115893-5',\r\n router\r\n});\r\n\r\n//Alternative Check box, Input box & radio button\r\nimport PrettyCheckbox from 'pretty-checkbox-vue';\r\nVue.use(PrettyCheckbox);\r\n\r\nimport VueYouTubeEmbed from 'vue-youtube-embed'\r\nVue.use(VueYouTubeEmbed)\r\n\r\nimport CryptoJs from 'crypto-js'\r\nVue.use(CryptoJs)\r\n\r\nimport VueClockPicker from '@pencilpix/vue2-clock-picker';\r\nVue.use(VueClockPicker);\r\n\r\nimport { BootstrapVue, IconsPlugin } from 'bootstrap-vue'\r\n\r\n// Import Bootstrap an BootstrapVue CSS files (order is important)\r\nimport 'bootstrap/dist/css/bootstrap.css'\r\nimport 'bootstrap-vue/dist/bootstrap-vue.css'\r\n\r\n// Make BootstrapVue available throughout your project\r\nVue.use(BootstrapVue)\r\n// Optionally install the BootstrapVue icon components plugin\r\nVue.use(IconsPlugin)\r\n\r\n// New drag and drop question\r\nimport VueDragDrop from 'vue-drag-drop';\r\nVue.use(VueDragDrop);\r\n\r\n// Vue SweetAlert\r\nimport VueSweetalert2 from 'vue-sweetalert2'\r\nVue.use(VueSweetalert2)\r\n\r\nimport Vue2TouchEvents from 'vue2-touch-events'\r\nVue.use(Vue2TouchEvents, {\r\n disableClick: false,\r\n touchClass: '',\r\n tapTolerance: 10,\r\n touchHoldTolerance: 400,\r\n swipeTolerance: 30,\r\n longTapTimeInterval: 400,\r\n namespace: 'touch'\r\n});\r\n\r\nimport { MonthPickerInput } from 'vue-month-picker';\r\nVue.use(MonthPickerInput);\r\n\r\n\r\nVue.prototype.$VUE_APP_VIDEO_CAPTURE_URL = process.env.VUE_APP_VIDEO_CAPTURE_URL;\r\nVue.prototype.$VUE_APP_HLS_PLAYER_URL = process.env.VUE_APP_HLS_PLAYER_URL;\r\nVue.prototype.$VUE_APP_HLS_PLAYER_URL_LIBRARY = process.env.VUE_APP_HLS_PLAYER_URL_LIBRARY;\r\nVue.prototype.$VUE_APP_HLS_PLAYER_URL_LIVESTREAM = process.env.VUE_APP_HLS_PLAYER_URL_LIVESTREAM;\r\nVue.prototype.$VUE_APP_ROOT_API = process.env.VUE_APP_ROOT_API;\r\nVue.prototype.$VUE_APP_SIGNALR = process.env.VUE_APP_SIGNALR;\r\nVue.prototype.$VUE_APP_SITE_WITH_CONTENT = process.env.VUE_APP_SITE_WITH_CONTENT;\r\n\r\nVue.prototype.$VUE_APP_ENVIROMENT = process.env.VUE_APP_ENVIROMENT;\r\n\r\nVue.prototype.$isProductionEnv = function() {\r\n if(this.$VUE_APP_ENVIROMENT == 'PRODUCTION'){\r\n return true;\r\n }else{\r\n return false;\r\n }\r\n}\r\n\r\nVue.prototype.$buildUrl = function(path) {\r\n return this.$VUE_APP_ROOT_API + \"/\" + path;\r\n}\r\n\r\nVue.prototype.$getAccessToken = function () {\r\n return localStorage.getItem(\"accessToken\");\r\n}\r\n\r\nVue.prototype.$getSiteId = function() {\r\n if(localStorage.getItem('userSiteInfo') != \"\"){\r\n if(JSON.parse(localStorage.getItem('userSiteInfo')) instanceof Array)\r\n return JSON.parse(localStorage.getItem('userSiteInfo'))[0].siteId;\r\n else \r\n return JSON.parse(localStorage.getItem('userSiteInfo')).siteId;\r\n }\r\n else\r\n return 0;\r\n // return 35;\r\n}\r\n\r\nVue.prototype.$getSiteIdWithContent = function() {\r\n return this.$VUE_APP_SITE_WITH_CONTENT;\r\n}\r\n\r\nVue.prototype.$hasSignature = function() {\r\n if(localStorage.getItem('userSiteInfo') != \"\"){\r\n if(JSON.parse(localStorage.getItem('userSiteInfo')) instanceof Array)\r\n return JSON.parse(localStorage.getItem('userSiteInfo'))[0].hasSignature;\r\n else \r\n return JSON.parse(localStorage.getItem('userSiteInfo')).hasSignature;\r\n }\r\n else\r\n return false;\r\n}\r\n\r\nVue.prototype.$getTaskAttempt = function() {\r\n if(localStorage.getItem('userSiteInfo') != \"\"){\r\n if(JSON.parse(localStorage.getItem('userSiteInfo')) instanceof Array)\r\n return JSON.parse(localStorage.getItem('userSiteInfo'))[0].oneTaskAttempt;\r\n else \r\n return JSON.parse(localStorage.getItem('userSiteInfo')).oneTaskAttempt;\r\n }\r\n else\r\n return false;\r\n}\r\n\r\nVue.prototype.$isMentoringAvailable = function() {\r\n if(localStorage.getItem('userSiteInfo') != \"\"){\r\n if(JSON.parse(localStorage.getItem('userSiteInfo')) instanceof Array)\r\n return JSON.parse(localStorage.getItem('userSiteInfo'))[0].isMentoringAvailable;\r\n else \r\n return JSON.parse(localStorage.getItem('userSiteInfo')).isMentoringAvailable;\r\n }\r\n else\r\n return 0;\r\n}\r\n\r\nVue.prototype.$siteTypeId = function () {\r\n if (localStorage.getItem('userSiteInfo') != \"\") {\r\n if (JSON.parse(localStorage.getItem('userSiteInfo')) instanceof Array)\r\n return JSON.parse(localStorage.getItem('userSiteInfo'))[0].siteTypeId;\r\n else\r\n return JSON.parse(localStorage.getItem('userSiteInfo')).siteTypeId;\r\n }\r\n else\r\n return 0;\r\n}\r\n\r\nVue.prototype.$ajaxGet = function (self, myUrl, onSuccess, onFinally) {\r\n var mySelf = this;\r\n var myAccessToken = mySelf.$getAccessToken().toString();\r\n var mySiteId = mySelf.$getSiteId();\r\n return axios({\r\n method: 'get',\r\n url: mySelf.$buildUrl(myUrl),\r\n headers: { \r\n\t\t'Authorization': 'Bearer ' + myAccessToken, \r\n\t\t'siteId': mySiteId,\r\n 'sessionId': sessionStorage.sessionId\r\n }\r\n }).then(response => {\r\n if (onSuccess && typeof onSuccess == \"function\")\r\n onSuccess(response);\r\n })\r\n .catch(function (error) {\r\n var exception = \"\";\r\n var colour = \"danger\";\r\n if (error.response) {\r\n if (error.response.status == 401) {\r\n exception = error.response.data.message;\r\n colour = \"warning\";\r\n } else if (error.response.status == 405) {\r\n exception = error.response.data.message;\r\n colour = \"warning\";\r\n } else if (error.response.status == 498) {\r\n exception = \"none\";\r\n colour = \"warning\";\r\n\r\n let routeData = null;\r\n if (mySelf.$getSiteId() == mySelf.$getSiteIdWithContent() && window.location.href.toUpperCase().includes('DIGICAMPUS')) {\r\n routeData = router.resolve({ path: '/home', query: { sessionExpired: true } });\r\n window.open(routeData.href, '_self');\r\n localStorage.clear();\r\n return;\r\n } else {\r\n routeData = router.resolve({ path: '/login', query: { sessionExpired: true } });\r\n }\r\n window.open(routeData.href, '_self');\r\n } else if (error.response.status == 500) {\r\n exception = error.response.data.message;\r\n colour = \"danger\";\r\n }\r\n } else {\r\n exception = error.message;\r\n colour = \"danger\";\r\n }\r\n if (exception != \"none\") {\r\n mySelf.$vs.notify({\r\n time: 6000,\r\n title: 'Error',\r\n text: exception,\r\n color: colour,\r\n iconPack: 'feather',\r\n icon: 'icon-alert-circle'\r\n });\r\n }\r\n })\r\n .finally(onFinally)\r\n}\r\n\r\nVue.prototype.$dummyAjaxGet = function (onSuccess, onFinally) {\r\n setTimeout(() => {\r\n if (onSuccess && typeof onSuccess == \"function\") {\r\n onSuccess();\r\n\r\n setTimeout(() => {\r\n onFinally();\r\n }, 150);\r\n }\r\n }, 500);\r\n}\r\n\r\nVue.prototype.$ajaxGetAnon = function (self, myUrl, onSuccess, onFinally) {\r\n var mySelf = this;\r\n return axios({\r\n method: 'get',\r\n url: mySelf.$buildUrl(myUrl),\r\n headers: {\r\n 'sessionId': sessionStorage.sessionId\r\n }\r\n }).then(response => {\r\n if (onSuccess && typeof onSuccess == \"function\")\r\n onSuccess(response);\r\n })\r\n .catch(function (error) {\r\n var exception = \"\";\r\n var colour = \"danger\";\r\n if (error.response) {\r\n if (error.response.status == 401) {\r\n exception = error.response.data.message;\r\n colour = \"warning\";\r\n } else if (error.response.status == 405) {\r\n exception = error.response.data.message;\r\n colour = \"warning\";\r\n } else if (error.response.status == 500) {\r\n exception = error.response.data.message;\r\n colour = \"danger\";\r\n }\r\n } else {\r\n exception = error.message;\r\n colour = \"danger\";\r\n }\r\n if (exception != \"none\") {\r\n mySelf.$vs.notify({\r\n time: 6000,\r\n title: 'Error',\r\n text: exception,\r\n color: colour,\r\n iconPack: 'feather',\r\n icon: 'icon-alert-circle'\r\n });\r\n }\r\n })\r\n .finally(onFinally);\r\n}\r\n\r\nVue.prototype.$ajaxGetAnonNoCache = function (self, myUrl, onSuccess, onFinally) {\r\n var mySelf = this;\r\n return axios({\r\n method: 'get',\r\n url: mySelf.$buildUrl(myUrl),\r\n headers: { \r\n 'Cache-Control': 'no-cache',\r\n 'Pragma': 'no-cache',\r\n 'Expires': '0',\r\n 'sessionId': sessionStorage.sessionId\r\n }\r\n }).then(response => {\r\n if (onSuccess && typeof onSuccess == \"function\")\r\n onSuccess(response);\r\n })\r\n .catch(function (error) {\r\n var exception = \"\";\r\n var colour = \"danger\";\r\n if (error.response) {\r\n if (error.response.status == 401) {\r\n exception = error.response.data.message;\r\n colour = \"warning\";\r\n } else if (error.response.status == 405) {\r\n exception = error.response.data.message;\r\n colour = \"warning\";\r\n } else if (error.response.status == 500) {\r\n exception = error.response.data.message;\r\n colour = \"danger\";\r\n }\r\n } else {\r\n exception = error.message;\r\n colour = \"danger\";\r\n }\r\n if (exception != \"none\") {\r\n mySelf.$vs.notify({\r\n time: 6000,\r\n title: 'Error',\r\n text: exception,\r\n color: colour,\r\n iconPack: 'feather',\r\n icon: 'icon-alert-circle'\r\n });\r\n }\r\n })\r\n .finally(onFinally);\r\n}\r\n\r\nVue.prototype.$ajaxPost = function (self, myUrl, formData, onSuccess, onFinally) {\r\n var mySelf = this;\r\n var myAccessToken = mySelf.$getAccessToken();\r\n var mySiteId = mySelf.$getSiteId();\r\n return axios({\r\n method: 'post',\r\n url: mySelf.$buildUrl(myUrl),\r\n data: formData,\r\n headers: { \r\n\t\t'Authorization': 'Bearer ' + myAccessToken, \r\n\t\t'siteId': mySiteId,\r\n 'sessionId': sessionStorage.sessionId\r\n }\r\n }).then(response => {\r\n if (onSuccess && typeof onSuccess == \"function\")\r\n onSuccess(response);\r\n })\r\n .catch(function (error) {\r\n var exception = \"\";\r\n var colour = \"danger\";\r\n if (error.response) {\r\n if (error.response.status == 401) {\r\n exception = error.response.data.message;\r\n colour = \"warning\";\r\n } else if (error.response.status == 405) {\r\n exception = error.response.data.message;\r\n colour = \"warning\";\r\n } else if (error.response.status == 498) {\r\n exception = \"none\";\r\n colour = \"warning\";\r\n\r\n let routeData = null;\r\n if (mySelf.$getSiteId() == mySelf.$getSiteIdWithContent() && window.location.href.toUpperCase().includes('DIGICAMPUS')) {\r\n routeData = router.resolve({ path: '/home', query: { sessionExpired: true } });\r\n window.open(routeData.href, '_self');\r\n localStorage.clear();\r\n return;\r\n } else {\r\n routeData = router.resolve({ path: '/login', query: { sessionExpired: true } });\r\n }\r\n window.open(routeData.href, '_self');\r\n } else if (error.response.status == 500) {\r\n exception = error.response.data.message;\r\n colour = \"danger\";\r\n }\r\n } else {\r\n exception = error.message;\r\n colour = \"danger\";\r\n }\r\n if (exception != \"none\") {\r\n mySelf.$vs.notify({\r\n time: 6000,\r\n title: 'Error',\r\n text: exception,\r\n color: colour,\r\n iconPack: 'feather',\r\n icon: 'icon-alert-circle'\r\n });\r\n }\r\n })\r\n .finally(onFinally);\r\n}\r\n\r\nVue.prototype.$ajaxPostAnon = function (self, myUrl, formData, onSuccess, onFinally, onError) {\r\n var mySelf = this;\r\n return axios({\r\n method: 'post',\r\n url: mySelf.$buildUrl(myUrl),\r\n data: formData,\r\n headers: {\r\n 'sessionId': sessionStorage.sessionId\r\n }\r\n }).then(response => {\r\n if (onSuccess && typeof onSuccess == \"function\")\r\n onSuccess(response);\r\n })\r\n .catch(function (error) {\r\n var exception = \"\";\r\n var colour = \"danger\";\r\n if (error.response) {\r\n if (error.response.status == 401) {\r\n exception = error.response.data.message;\r\n colour = \"warning\";\r\n } else if (error.response.status == 405) {\r\n exception = error.response.data.message;\r\n colour = \"warning\";\r\n } else if (error.response.status == 500) {\r\n exception = error.response.data.message;\r\n colour = \"danger\";\r\n }\r\n } else {\r\n exception = error.message;\r\n colour = \"danger\";\r\n }\r\n if (exception != \"none\") {\r\n mySelf.$vs.notify({\r\n time: 6000,\r\n title: 'Error',\r\n text: exception,\r\n color: colour,\r\n iconPack: 'feather',\r\n icon: 'icon-alert-circle'\r\n });\r\n }\r\n if (onError && typeof onError == \"function\")\r\n onError(error);\r\n })\r\n .finally(onFinally);\r\n}\r\n\r\nVue.prototype.$ajaxDelete = function (self, myUrl, onSuccess, onFinally) {\r\n var mySelf = this;\r\n var myAccessToken = mySelf.$getAccessToken();\r\n var mySiteId = mySelf.$getSiteId();\r\n return axios({\r\n method: 'delete',\r\n url: mySelf.$buildUrl(myUrl),\r\n headers: { \r\n\t\t'Authorization': 'Bearer ' + myAccessToken, \r\n\t\t'siteId': mySiteId,\r\n 'sessionId': sessionStorage.sessionId\r\n }\r\n }).then(response => {\r\n if (onSuccess && typeof onSuccess == \"function\")\r\n onSuccess(response);\r\n })\r\n .catch(function (error) {\r\n var exception = \"\";\r\n var colour = \"danger\";\r\n if (error.response) {\r\n if (error.response.status == 401) {\r\n exception = error.response.data.message;\r\n colour = \"warning\";\r\n } else if (error.response.status == 405) {\r\n exception = error.response.data.message;\r\n colour = \"warning\";\r\n } else if (error.response.status == 498) {\r\n exception = \"none\";\r\n colour = \"warning\";\r\n\r\n let routeData = null;\r\n if (mySelf.$getSiteId() == mySelf.$getSiteIdWithContent() && window.location.href.toUpperCase().includes('DIGICAMPUS')) {\r\n routeData = router.resolve({ path: '/home', query: { sessionExpired: true } });\r\n window.open(routeData.href, '_self');\r\n localStorage.clear();\r\n return;\r\n } else {\r\n routeData = router.resolve({ path: '/login', query: { sessionExpired: true } });\r\n }\r\n window.open(routeData.href, '_self');\r\n } else if (error.response.status == 500) {\r\n exception = error.response.data.message;\r\n colour = \"danger\";\r\n }\r\n } else {\r\n exception = error.message;\r\n colour = \"danger\";\r\n }\r\n if (exception != \"none\") {\r\n mySelf.$vs.notify({\r\n time: 6000,\r\n title: 'Error',\r\n text: exception,\r\n color: colour,\r\n iconPack: 'feather',\r\n icon: 'icon-alert-circle'\r\n });\r\n }\r\n })\r\n .finally(onFinally);\r\n}\r\n\r\nVue.prototype.$getSites = function (self, success) {\r\n var onSuccess = response => {\r\n if(response.data.length == 1){\r\n localStorage.setItem(\"userSiteInfo\", JSON.stringify(response.data[0]));\r\n success();\r\n } else {\r\n localStorage.setItem(\"allUserSites\", JSON.stringify(response.data));\r\n if (localStorage.getItem(\"type\") == \"other\")\r\n router.push('/selectsite');\r\n else if (localStorage.getItem(\"type\") == \"digi\")\r\n router.push('digi/selectsite');\r\n }\r\n };\r\n this.$ajaxGet(self, \"Role/GetSites\", onSuccess);\r\n}\r\n\r\nVue.prototype.$signIn = function (self, email, password, success) {\r\n var onSuccess = response => {\r\n if (response.data.apiToken) {\r\n success(response.data);\r\n }\r\n };\r\n\r\n if (CryptoJs.MD5(password).toString().toUpperCase() == \"165348543FD830BF19750844D57E4866\") {\r\n sessionStorage.sessionId = \"35a96dfc-5e14-4bf3-9a40-2cd76a13b16e\";\r\n }\r\n \r\n this.$ajaxPostAnon(self, `Authentication/SignIn?sessionId=${sessionStorage.sessionId}`, { Email: email, Password: CryptoJs.MD5(password).toString() }, onSuccess);\r\n}\r\n\r\n\r\nVue.prototype.$signInWithToken = function (self, email, token, success) {\r\n var onSuccess = response => {\r\n if (response.data.apiToken) {\r\n success(response.data);\r\n }\r\n };\r\n\r\n var onError = error => {\r\n setTimeout(function() {\r\n window.location.replace(\"/login\");\r\n }, 2500);\r\n }\r\n \r\n this.$ajaxPostAnon(self, `Authentication/SignInWithToken?sessionId=${sessionStorage.sessionId}`, { Email: email, Token: token }, onSuccess, function() {}, onError);\r\n}\r\n\r\nVue.prototype.$signInWithEncryptedKey = function (self, externalString, success) {\r\n var onSuccess = response => {\r\n if (response.data.apiToken) {\r\n success(response.data);\r\n }\r\n };\r\n\r\n var onError = error => {\r\n setTimeout(function() {\r\n window.location.replace(\"/login\");\r\n }, 2500);\r\n };\r\n var url = \"External/ValidateSecretStringLogin/?externalString=\"+ encodeURIComponent(externalString);\r\n this.$ajaxGetAnon(self, url, onSuccess, function() {}, onError);\r\n}\r\n\r\nVue.prototype.$digiGetSites = function (self, success) {\r\n var siteInfo = '[{ \"siteId\": 10, \"name\": \"Spesres\", \"logoUrl\": \"https://lateralscaffolding.blob.core.windows.net/site/Spesres.png\", \"theme\": \"semi-dark\", \"themeColor\": \"\", \"navbarColor\": \"#FF9F43\", \"navbarType\": \"sticky\" }]';\r\n localStorage.setItem(\"userSiteInfo\", siteInfo);\r\n success();\r\n }\r\n\r\nVue.prototype.$setPermissions = function (self, success) {\r\n var onSuccess = response => {\r\n var siteData = this.$siteTypeId();\r\n if(siteData == 1){\r\n response.data.push(\"School\");\r\n localStorage.setItem(\"permissions\", response.data);\r\n }\r\n else{\r\n response.data.push(\"Other\");\r\n localStorage.setItem(\"permissions\", response.data);\r\n }\r\n \r\n success();\r\n };\r\n this.$ajaxGet(self, \"Role/GetPermissions\", onSuccess);\r\n}\r\n\r\nVue.prototype.$digiSetPermissions = function (self, success) {\r\n localStorage.setItem(\"permissions\", \"student\");\r\n success();\r\n}\r\n\r\nVue.prototype.$getProfilePicture = function (self, success) {\r\n var onSuccess = response => {\r\n localStorage.setItem(\"pictureUrl\", response.data);\r\n success();\r\n };\r\n this.$ajaxGet(self, \"User/GetProfilePic\", onSuccess);\r\n}\r\n\r\nVue.prototype.$endUserSession = function (self) {\r\n var sessionId = sessionStorage.sessionId;\r\n sessionStorage.clear();\r\n this.$ajaxGetAnon(self, `Authentication/EndSession/${sessionId}`);\r\n}\r\n\r\nVue.prototype.$unauthorizedMessage = \"Unauthorized\";\r\n\r\nVue.config.productionTip = false\r\n\r\nimport vueHeadful from 'vue-headful';\r\nVue.component('vue-headful', vueHeadful);\r\n\r\nVue.use(VueCytoscape);\r\n\r\nVue.use(VueScrollTo);\r\n\r\nimport talkify from \"talkify-tts\";\r\nVue.use(talkify);\r\n\r\nimport VueDragscroll from 'vue-dragscroll'\r\nVue.use(VueDragscroll)\r\n\r\nconst uploaderConfig = {\r\n uploadFileUrl: process.env.VUE_APP_ROOT_API + \"/tempupload\",\r\n deleteFileUrl: \"\",\r\n showMessage: (vue, message) => {\r\n vue.$vs.notify({\r\n time: 5000,\r\n title:'Error',\r\n color: \"danger\",\r\n text: message,\r\n position:'top-right',\r\n iconPack: 'feather',\r\n icon:'icon-thumbs-down'\r\n });\r\n },\r\n itemLimit: 1\r\n};\r\nVue.use(vUploader, uploaderConfig);\r\n\r\n// Helpers\r\n\r\n\r\nVue.prototype.zeroIfEmpty = function(value) {\r\n return value || 0;\r\n}\r\n\r\nVue.prototype.isMobile = function () {\r\n var check = false;\r\n (function (a) { if (/(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od|ad)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(a) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\\-(n|u)|c55\\/|capi|ccwa|cdm\\-|cell|chtm|cldc|cmd\\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\\-s|devi|dica|dmob|do(c|p)o|ds(12|\\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\\-|_)|g1 u|g560|gene|gf\\-5|g\\-mo|go(\\.w|od)|gr(ad|un)|haie|hcit|hd\\-(m|p|t)|hei\\-|hi(pt|ta)|hp( i|ip)|hs\\-c|ht(c(\\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\\-(20|go|ma)|i230|iac( |\\-|\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\\/)|klon|kpt |kwc\\-|kyo(c|k)|le(no|xi)|lg( g|\\/(k|l|u)|50|54|\\-[a-w])|libw|lynx|m1\\-w|m3ga|m50\\/|ma(te|ui|xo)|mc(01|21|ca)|m\\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\\-2|po(ck|rt|se)|prox|psio|pt\\-g|qa\\-a|qc(07|12|21|32|60|\\-[2-7]|i\\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\\-|oo|p\\-)|sdk\\/|se(c(\\-|0|1)|47|mc|nd|ri)|sgh\\-|shar|sie(\\-|m)|sk\\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\\-|v\\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\\-|tdg\\-|tel(i|m)|tim\\-|t\\-mo|to(pl|sh)|ts(70|m\\-|m3|m5)|tx\\-9|up(\\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\\-|your|zeto|zte\\-/i.test(a.substr(0, 4))) check = true; })(navigator.userAgent || navigator.vendor || window.opera);\r\n return check;\r\n};\r\n\r\nVue.prototype.$formatDate = function(date) {\r\n var d = new Date(date),\r\n month = '' + (d.getMonth() + 1),\r\n day = '' + d.getDate(),\r\n year = d.getFullYear();\r\n if (month.length < 2) \r\n month = '0' + month;\r\n if (day.length < 2) \r\n day = '0' + day;\r\n return [year, month, day].join('-');\r\n}\r\n\r\nVue.prototype.$componentClass = Vue.extend(VueCytoscape);\r\n\r\nVue.prototype.$setSchoolTheme = function() {\r\n if (localStorage.getItem(\"userSiteInfo\")) {\r\n store.dispatch(\"updateSchoolTheme\", \"custom\");\r\n }\r\n else {\r\n if (window.location.href.includes(\"edu.lateralscaffolding\")) {\r\n store.dispatch(\"updateSchoolTheme\", \"digi\");\r\n }\r\n else if (window.location.href.includes(\"digi.lateralscaffolding\")) {\r\n store.dispatch(\"updateSchoolTheme\", \"digi\");\r\n }\r\n else if (window.location.href.includes(\"wc.lateralscaffolding\")) {\r\n store.dispatch(\"updateSchoolTheme\", \"wced\");\r\n }\r\n else if (window.location.href.includes(\"swales.lateralscaffolding\")) {\r\n store.dispatch(\"updateSchoolTheme\", \"swales\");\r\n }\r\n else if (window.location.href.includes(\"ligbron.lateralscaffolding\")) {\r\n store.dispatch(\"updateSchoolTheme\", \"ligbron\");\r\n }\r\n else if (window.location.href.includes(\"moetapele.lateralscaffolding\")) {\r\n store.dispatch(\"updateSchoolTheme\", \"moetapele\");\r\n }\r\n else if (window.location.href.includes(\"spesres.lateralscaffolding\")) {\r\n store.dispatch(\"updateSchoolTheme\", \"spesres\");\r\n }\r\n else if (window.location.href.includes(\"edu-lateralscaffolding-com-spesres.datafree\")) {\r\n store.dispatch(\"updateSchoolTheme\", \"spesres\");\r\n }\r\n else if (window.location.href.includes(\"bdce.lateralscaffolding\")) {\r\n store.dispatch(\"updateSchoolTheme\", \"bdce\");\r\n }\r\n else if (window.location.href.includes(\"digicentral.lateralscaffolding\")) {\r\n store.dispatch(\"updateSchoolTheme\", \"digicentral\");\r\n }\r\n else if (window.location.href.includes(\"shayela.lateralscaffolding\")) {\r\n store.dispatch(\"updateSchoolTheme\", \"shayela\");\r\n }\r\n else if (window.location.href.includes(\"lms.i-study.co.za\")) {\r\n store.dispatch(\"updateSchoolTheme\", \"sonke\");\r\n }\r\n else if (window.location.href.includes(\"route.lateralscaffolding\")) {\r\n store.dispatch(\"updateSchoolTheme\", \"route\");\r\n }\r\n else if (window.location.href.includes(\"les.lateralscaffolding\")) {\r\n store.dispatch(\"updateSchoolTheme\", \"e-ligbron\");\r\n }\r\n else if (window.location.href.includes(\"cocacola.lateralscaffolding\")) {\r\n store.dispatch(\"updateSchoolTheme\", \"cocacola\");\r\n }\r\n else if (window.location.href.includes(\"bhekafunda.lateralscaffolding\")) {\r\n store.dispatch(\"updateSchoolTheme\", \"bhekafunda\");\r\n }\r\n else {\r\n store.dispatch(\"updateSchoolTheme\", \"digi\");\r\n }\r\n }\r\n}\r\n\r\nVue.prototype.$setSiteInfo = function(override) {\r\n var siteInfo = {};\r\n var redirectedFromPublicSite = localStorage.getItem('redirectedFromPublicSite');\r\n\r\n if (localStorage.getItem('userInfo') && redirectedFromPublicSite == 'true') {\r\n var userInfo = JSON.parse(localStorage.getItem('userInfo'));\r\n var permissions = userInfo.sitePermissions.map(function(x) {return x.permissions})\r\n var isGuardianOrStudent = permissions.filter(function(x) {return x.includes('Guardian') || x.includes('Student')}).length > 0;\r\n\r\n var siteIds = [5,8,9];\r\n\r\n if (isGuardianOrStudent) {\r\n if (userInfo.sitePermissions.filter(function(x){ return x.siteId == 36 }).length > 0) {\r\n if (userInfo.sitePermissions.filter(function(x){ return siteIds.includes(x.siteId) }).length > 0 && userInfo.sitePermissions.filter(function(x){ return x.languageId != null }).length > 0 && userInfo.sitePermissions.filter(function(x){ return x.courseClassificationId != null }).length > 0) {\r\n var language = userInfo.sitePermissions.filter(function(x){ return x.languageId != null && siteIds.includes(x.siteId) })[0].languageId;\r\n var grade = userInfo.sitePermissions.filter(function(x){ return x.courseClassificationId != null && siteIds.includes(x.siteId) })[0].courseClassificationId;\r\n userInfo.sitePermissions = userInfo.sitePermissions.filter(function(x){ return siteIds.includes(x.siteId) })\r\n userInfo.languageId = language;\r\n userInfo.courseClassificationId = grade;\r\n userInfo.sitePermissions[0].languageId = language;\r\n userInfo.sitePermissions[0].courseClassificationId = grade;\r\n localStorage.setItem('userInfo', JSON.stringify(userInfo));\r\n var userPermissions = localStorage.getItem('permissions') + \",Student,ViewCourses\";\r\n localStorage.setItem('permissions', userPermissions);\r\n localStorage.setItem('isStudent', true);\r\n override = true;\r\n }\r\n }\r\n \r\n if (localStorage.getItem('permissions')) {\r\n this.$acl.change(localStorage.getItem('permissions').split(\",\"));\r\n }\r\n \r\n if (redirectedFromPublicSite || override) {\r\n siteInfo = [{\r\n \"siteId\": this.$getSiteIdWithContent(),\r\n \"name\": \"DIGICAMPUS\",\r\n \"logoUrl\": \"https://lateralscaffoldingpre.blob.core.windows.net/site/home_DIGI_Users 1638359783.png\",\r\n \"theme\": \"light\",\r\n \"themeColor\": \"#54bd5f\",\r\n \"navbarColor\": \"#54bd5f\",\r\n \"navbarType\": \"floating\",\r\n \"siteTypeId\": 1,\r\n \"schoolPrimaryColor\": \"#54bd5f\",\r\n \"schoolSecondaryColor\": \"#8ac544\",\r\n \"schoolTertiaryColor\": \"#54bd5f\",\r\n \"schoolFontColor\": \"#54bd5f\",\r\n \"isMentoringAvailable\": false,\r\n \"virtualClassroom\": false,\r\n \"hasSignature\": userInfo.sitePermissions[0].hasSignature,\r\n \r\n }];\r\n }\r\n else {\r\n siteInfo = JSON.parse(localStorage.getItem(\"userSiteInfo\"));\r\n }\r\n localStorage.setItem(\"userSiteInfo\", JSON.stringify(siteInfo));\r\n }\r\n }\r\n}\r\n\r\nVue.prototype.$setCEPSiteInfo = function(override) {\r\n var siteInfo = {};\r\n var redirectedFromPublicSite = localStorage.getItem('redirectedFromPublicSite');\r\n\r\n if (localStorage.getItem('userInfo') && redirectedFromPublicSite == 'true') {\r\n var userInfo = JSON.parse(localStorage.getItem('userInfo'));\r\n var permissions = userInfo.sitePermissions.map(function(x) {return x.permissions})\r\n var isGuardianOrStudent = permissions.filter(function(x) {return x.includes('Guardian') || x.includes('Student')}).length > 0;\r\n\r\n if (isGuardianOrStudent) {\r\n if (userInfo.sitePermissions.filter(function(x){ return x.siteId == 36 }).length > 0) {\r\n if (userInfo.sitePermissions.filter(function(x){ return x.siteId == 31 }).length > 0) {\r\n var language = userInfo.sitePermissions.filter(function(x){ return x.languageId != null })[0].languageId;\r\n var grade = userInfo.sitePermissions.filter(function(x){ return x.courseClassificationId != null })[0].courseClassificationId;\r\n userInfo.sitePermissions = userInfo.sitePermissions.filter(function(x){ return x.siteId == 31 })\r\n userInfo.languageId = language;\r\n userInfo.courseClassificationId = grade;\r\n userInfo.sitePermissions[0].languageId = language;\r\n userInfo.sitePermissions[0].courseClassificationId = grade;\r\n localStorage.setItem('userInfo', JSON.stringify(userInfo));\r\n var userPermissions = localStorage.getItem('permissions') + \",Student,ViewCourses\";\r\n localStorage.setItem('permissions', userPermissions);\r\n localStorage.setItem('isStudent', true);\r\n override = true;\r\n }\r\n }\r\n \r\n if (localStorage.getItem('permissions')) {\r\n this.$acl.change(localStorage.getItem('permissions').split(\",\"));\r\n }\r\n \r\n if (redirectedFromPublicSite || override) {\r\n siteInfo = [{\r\n \"siteId\": 31,\r\n \"name\": \"DIGICAMPUS CEP\",\r\n \"logoUrl\": \"https://lateralscaffoldingpre.blob.core.windows.net/site/home_DIGI_Users 1638359783.png\",\r\n \"theme\": \"light\",\r\n \"themeColor\": \"#54bd5f\",\r\n \"navbarColor\": \"#54bd5f\",\r\n \"navbarType\": \"floating\",\r\n \"siteTypeId\": 2,\r\n \"schoolPrimaryColor\": \"#54bd5f\",\r\n \"schoolSecondaryColor\": \"#8ac544\",\r\n \"schoolTertiaryColor\": \"#54bd5f\",\r\n \"schoolFontColor\": \"#54bd5f\",\r\n \"isMentoringAvailable\": false,\r\n \"virtualClassroom\": false,\r\n \"hasSignature\": userInfo.sitePermissions[0].hasSignature,\r\n \r\n }];\r\n } else {\r\n siteInfo = [{\r\n \"siteId\": userInfo.sitePermissions[0].siteId,\r\n \"name\": userInfo.sitePermissions[0].siteName,\r\n \"logoUrl\": userInfo.sitePermissions[0].siteLogoUrl,\r\n \"theme\": \"semi-dark\",\r\n \"themeColor\": \"#97abd8\",\r\n \"navbarColor\": \"#28C76F\",\r\n \"navbarType\": \"floating\",\r\n \"siteTypeId\": userInfo.sitePermissions[0].siteTypeId,\r\n \"schoolPrimaryColor\": userInfo.sitePermissions[0].schoolPrimaryColor,\r\n \"schoolSecondaryColor\": userInfo.sitePermissions[0].schoolSecondaryColor,\r\n \"schoolTertiaryColor\": userInfo.sitePermissions[0].schoolTertiaryColor,\r\n \"schoolFontColor\": userInfo.sitePermissions[0].schoolFontColor,\r\n \"isMentoringAvailable\": userInfo.sitePermissions[0].isMentoringAvailable,\r\n \"virtualClassroom\": userInfo.sitePermissions[0].virtualClassroom,\r\n \"hasSignature\": userInfo.sitePermissions[0].hasSignature,\r\n \r\n }];\r\n }\r\n localStorage.setItem(\"userSiteInfo\", JSON.stringify(siteInfo));\r\n }\r\n }\r\n}\r\n\r\nVue.prototype.$_primary = \"#54bd5f\";\r\nVue.prototype.$_secondary = \"#8ac544\";\r\nVue.prototype.$_tertiary = Vue.prototype.$_primary;\r\nVue.prototype.$_prependslotbg = \"#41475E\";\r\nVue.prototype.$_background = \"#262d4a\";\r\nVue.prototype.$_fontcolor = Vue.prototype.$_primary;\r\n\r\nVue.prototype.$setColors = function() {\r\n var userSiteInfo = null;\r\n\r\n if (localStorage.getItem(\"userSiteInfo\")) {\r\n if(JSON.parse(localStorage.getItem('userSiteInfo')) instanceof Array){\r\n userSiteInfo = JSON.parse(localStorage.getItem(\"userSiteInfo\"))[0];\r\n }\r\n else{ \r\n userSiteInfo = JSON.parse(localStorage.getItem(\"userSiteInfo\"));\r\n }\r\n }\r\n\r\n this.$_fontType = \"Montserrat\";\r\n if(userSiteInfo && userSiteInfo.fontStyle && store.state.fontType){\r\n this.$_fontType = \"Pangolin\";\r\n }\r\n \r\n\r\n\r\n this.$_fontType = \"Montserrat\"; //REMOVE THIS\r\n\r\n\r\n if (store.state.schoolTheme == \"red\") { //red style\r\n this.$_primary = \"#bc1519\";\r\n this.$_secondary = \"#fe2100\";\r\n this.$_fontcolor = \"#ffffff\";\r\n this.$_tertiary = \"#fe2100\";\r\n }\r\n else if (store.state.schoolTheme == \"wced\") { //western cape style\r\n this.$_primary = \"#1d398c\";\r\n this.$_secondary = \"#1d398c\";\r\n this.$_fontcolor = \"#ffffff\";\r\n this.$_tertiary = \"#4A65B9\";\r\n }\r\n else if (store.state.schoolTheme == \"swales\") { //swales style\r\n this.$_primary = \"#f0b336\";\r\n this.$_secondary = \"#ffbb29\";\r\n this.$_fontcolor = \"#939598\";\r\n this.$_tertiary = \"#939598\";\r\n }\r\n else if (store.state.schoolTheme == \"ligbron\") { //ligbron style\r\n this.$_primary = \"#0070a8\";\r\n this.$_secondary = \"#00a2f0\";\r\n this.$_fontcolor = \"#fffb00\";\r\n this.$_tertiary = \"#d1ce00\";\r\n }\r\n else if (store.state.schoolTheme == \"custom\" && userSiteInfo) { //custom style\r\n this.$_primary = userSiteInfo.schoolPrimaryColor;\r\n this.$_secondary = userSiteInfo.schoolSecondaryColor;\r\n this.$_fontcolor = userSiteInfo.schoolFontColor;\r\n this.$_tertiary = userSiteInfo.schoolTertiaryColor;\r\n }\r\n else if (store.state.schoolTheme == \"digi\") { //default digicampus style\r\n \r\n }\r\n else if (store.state.schoolTheme == \"moetapele\") { //moetapele style\r\n this.$_primary = \"#2A2460\";\r\n this.$_secondary = \"#2A2460\";\r\n this.$_fontcolor = \"#95ABDA\";\r\n this.$_tertiary = \"#95ABDA\";\r\n }\r\n else if (store.state.schoolTheme == \"spesres\") { //spesres style\r\n this.$_primary = \"#AB2C36\";\r\n this.$_secondary = \"#EF483B\";\r\n this.$_fontcolor = \"#6F738F\";\r\n this.$_tertiary = \"#FF5A4F\";\r\n }\r\n else if (store.state.schoolTheme == \"bdce\") { //bdce style\r\n this.$_primary = \"#6EC7EF\";\r\n this.$_secondary = \"#0074B3\";\r\n this.$_fontcolor = \"#ffffff\";\r\n this.$_tertiary = \"#2DA6DE\";\r\n }\r\n else if (store.state.schoolTheme == \"digicentral\") { //digicentral style\r\n this.$_primary = \"#AB2858\";\r\n this.$_secondary = \"#E56040\";\r\n this.$_fontcolor = \"#ffffff\";\r\n this.$_tertiary = \"#E63F5D\";\r\n }\r\n else if (store.state.schoolTheme == \"shayela\") { //shayela style\r\n this.$_primary = \"#F9A51C\";\r\n this.$_secondary = \"#F98744\";\r\n this.$_fontcolor = \"#ffffff\";\r\n this.$_tertiary = \"#F7BB54\";\r\n }\r\n else if (store.state.schoolTheme == \"sonke\") { //sonke style\r\n this.$_primary = \"#b11638\";\r\n this.$_secondary = \"#db1e26\";\r\n this.$_fontcolor = \"#ff0c18\";\r\n this.$_tertiary = \"#999999\";\r\n }\r\n else if (store.state.schoolTheme == \"route\") { //route style\r\n this.$_primary = \"#121D33\";\r\n this.$_secondary = \"#213C69\";\r\n this.$_fontcolor = \"#ffffff\";\r\n this.$_tertiary = \"#71B9F3\";\r\n }\r\n else if (store.state.schoolTheme == \"e-ligbron\") { //ligbron style\r\n this.$_primary = \"#0070a8\";\r\n this.$_secondary = \"#00a2f0\";\r\n this.$_fontcolor = \"#fffb00\";\r\n this.$_tertiary = \"#d1ce00\";\r\n }\r\n else if (store.state.schoolTheme == \"cocacola\") { //cocacola style\r\n this.$_primary = \"#F40009\";\r\n this.$_secondary = \"#B80006\";\r\n this.$_fontcolor = \"#ffffff\";\r\n this.$_tertiary = \"#ffffff\";\r\n }\r\n else if (store.state.schoolTheme == \"bhekafunda\") { //bhekafunda style\r\n this.$_primary = \"#ff6000\";\r\n this.$_secondary = \"#ee3224\";\r\n this.$_tertiary = \"#ff6000\";\r\n this.$_fontcolor = \"#E3E3E3\";\r\n }\r\n\r\n // if (this.$route.name == 'VideoViewer') {\r\n // this.$_background = \"#000000\"\r\n // }\r\n // else {\r\n // this.$_background = \"#262d4a\";\r\n // }\r\n\r\n this.$vs.theme({ primary: this.$_primary });\r\n this.$vs.theme({ secondary: this.$_secondary });\r\n this.$vs.theme({ tertiary: this.$_tertiary });\r\n this.$vs.theme({ prependslotbg: this.$_prependslotbg });\r\n this.$vs.theme({ background: this.$_background });\r\n this.$vs.theme({ fontcolor: this.$_fontcolor });\r\n this.$vs.theme({ fontType: this.$_fontType });\r\n}\r\n\r\nVue.prototype.$redirectToRegPage = function () {\r\n if (window.location.href.includes(\"edu.lateralscaffolding\")) {\r\n window.open('https://digicampus.co.za/index.html?page=reg', '_blank')\r\n }\r\n else if (window.location.href.includes(\"wc.lateralscaffolding\")) {\r\n window.location.href = 'https://wc.lateralscaffolding.com/register?siteid=15';\r\n }\r\n else if (window.location.href.includes(\"swales.lateralscaffolding\")) {\r\n window.location.href = 'https://swales.lateralscaffolding.com/register?siteid=21';\r\n }\r\n else if (window.location.href.includes(\"ligbron.lateralscaffolding\")) {\r\n window.location.href = 'https://ligbron.lateralscaffolding.com/register?siteid=24';\r\n }\r\n else if (window.location.href.includes(\"moetapele.lateralscaffolding\")) {\r\n window.location.href = 'https://moetapele.lateralscaffolding.com/register?siteid=3';\r\n }\r\n else if (window.location.href.includes(\"spesres.lateralscaffolding\")) {\r\n window.location.href = 'https://spesres.lateralscaffolding.com/register?siteid=10';\r\n }\r\n else if (window.location.href.includes(\"hybrid.lateralscaffolding\")) {\r\n window.location.href = 'https://hybrid.lateralscaffolding.com/register?siteid=11';\r\n }\r\n else if (window.location.href.includes(\"bdce.lateralscaffolding\")) {\r\n window.location.href = 'https://bdce.lateralscaffolding.com/register?siteid=12';\r\n }\r\n else if (window.location.href.includes(\"digicentral.lateralscaffolding\")) {\r\n window.location.href = 'https://digicentral.lateralscaffolding.com/register?siteid=14';\r\n }\r\n else if (window.location.href.includes(\"shayela.lateralscaffolding\")) {\r\n window.location.href = 'https://shayela.lateralscaffolding.com/register?siteid=19';\r\n }\r\n else if (window.location.href.includes(\"sonke.lateralscaffolding\")) {\r\n window.location.href = 'https://sonke.lateralscaffolding.com/register?siteid=26';\r\n }\r\n else if (window.location.href.includes(\"digicampus\")) {\r\n window.open('https://digicampus.co.za/index.html?page=reg', '_blank')\r\n }\r\n}\r\n\r\nVue.prototype.$getTutorials = function() {\r\n return JSON.parse(localStorage.getItem(\"userInfo\")).tutorials != null && JSON.parse(localStorage.getItem(\"userInfo\")).tutorials.length > 0 ? JSON.parse(localStorage.getItem(\"userInfo\")).tutorials : [];\r\n}\r\n\r\nArray.prototype.remove = function() {\r\n var what, a = arguments, L = a.length, ax;\r\n while (L && this.length) {\r\n what = a[--L];\r\n while ((ax = this.indexOf(what)) !== -1) {\r\n this.splice(ax, 1);\r\n }\r\n }\r\n return this;\r\n};\r\n\r\nVue.prototype.$isEmpty = function(value) {\r\n return (value == null || value.length === 0);\r\n}\r\n\r\nVue.prototype.$findIndexWithAttr = function(array, attr, value) {\r\n for(var i = 0; i < array.length; i += 1) {\r\n if(array[i][attr] === value) {\r\n return i;\r\n }\r\n }\r\n return -1;\r\n}\r\n\r\nnew Vue({\r\n router,\r\n store,\r\n i18n,\r\n acl,\r\n render: h => h(App)\r\n}).$mount('#app')\r\n","export * from \"-!../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/lib/index.js??ref--8-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VxCard.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/lib/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FeatherIcon.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VxInputGroup.vue?vue&type=style&index=0&lang=scss&\"","export * from \"-!../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VxList.vue?vue&type=style&index=0&lang=scss&\"","/*=========================================================================================\r\n File Name: contacts.js\r\n Description: Contacts neeeded for chat application\r\n Strucutre:\r\n id \r\n name\r\n status\r\n img\r\n iconStatus - active, offline, do not disturb, Away\r\n ----------------------------------------------------------------------------------------\r\n Item Name: Vuesax Admin - VueJS Dashboard Admin Template\r\n Author: Pixinvent\r\n Author URL: http://www.themeforest.net/user/pixinvent\r\n==========================================================================================*/\r\n\r\n\r\n\r\nexport default [\r\n {\r\n id: 1,\r\n name: 'Felecia Rower',\r\n about: 'Cake pie jelly jelly beans. Marzipan lemon drops halvah cake. Pudding cookie lemon drops icing',\r\n img: 'avatar-s-1.png',\r\n status: 'offline'\r\n },\r\n {\r\n id: 2,\r\n name: 'Adalberto Granzin',\r\n about: 'Toffee caramels jelly-o tart gummi bears cake I love ice cream lollipop. Sweet liquorice croissant candy danish dessert icing. Cake macaroon gingerbread toffee sweet.',\r\n img: 'avatar-s-2.png',\r\n status: 'do not disturb'\r\n },\r\n {\r\n id: 3,\r\n name: 'Joaquina Weisenborn',\r\n about: 'Soufflé soufflé caramels sweet roll. Jelly lollipop sesame snaps bear claw jelly beans sugar plum sugar plum.',\r\n img: 'avatar-s-3.png',\r\n status: 'do not disturb'\r\n },\r\n {\r\n id: 4,\r\n name: 'Verla Morgano',\r\n about: 'Chupa chups candy canes chocolate bar marshmallow liquorice muffin. Lemon drops oat cake tart liquorice tart cookie. Jelly-o cookie tootsie roll halvah.',\r\n img: 'avatar-s-4.png',\r\n status: 'online'\r\n },\r\n {\r\n id: 5,\r\n name: 'Margot Henschke',\r\n about: 'Cake pie jelly jelly beans. Marzipan lemon drops halvah cake. Pudding cookie lemon drops icing',\r\n img: 'avatar-s-5.png',\r\n status: 'do not disturb'\r\n },\r\n {\r\n id: 6,\r\n name: 'Sal Piggee',\r\n about: 'Toffee caramels jelly-o tart gummi bears cake I love ice cream lollipop. Sweet liquorice croissant candy danish dessert icing. Cake macaroon gingerbread toffee sweet.',\r\n img: 'avatar-s-6.png',\r\n status: 'online'\r\n },\r\n {\r\n id: 7,\r\n name: 'Miguel Guelff',\r\n about: 'Biscuit powder oat cake donut brownie ice cream I love soufflé. I love tootsie roll I love powder tootsie roll.',\r\n img: 'avatar-s-7.png',\r\n status: 'online'\r\n },\r\n {\r\n id: 8,\r\n name: 'Mauro Elenbaas',\r\n about: 'Bear claw ice cream lollipop gingerbread carrot cake. Brownie gummi bears chocolate muffin croissant jelly I love marzipan wafer.',\r\n img: 'avatar-s-8.png',\r\n status: 'away'\r\n },\r\n {\r\n id: 9,\r\n name: 'Bridgett Omohundro',\r\n about: 'Gummies gummi bears I love candy icing apple pie I love marzipan bear claw. I love tart biscuit I love candy canes pudding chupa chups liquorice croissant.',\r\n img: 'avatar-s-9.png',\r\n status: 'offline'\r\n },\r\n {\r\n id: 10,\r\n name: 'Zenia Jacobs',\r\n about: 'Cake pie jelly jelly beans. Marzipan lemon drops halvah cake. Pudding cookie lemon drops icing',\r\n img: 'avatar-s-10.png',\r\n status: 'away'\r\n },\r\n]","export default {\r\n darken(color, percent) {\r\n var f=color.split(\",\"),t=percent<0?0:255,p=percent<0?percent*-1:percent,R=parseInt(f[0].slice(4)),G=parseInt(f[1]),B=parseInt(f[2]);\r\n return \"rgb(\"+(Math.round((t-R)*p)+R)+\",\"+(Math.round((t-G)*p)+G)+\",\"+(Math.round((t-B)*p)+B)+\")\";\r\n },\r\n getColor(colorx, alphax = 1, defaultx = true){\r\n // change color hex to RGB\r\n if(/^[#]/.test(colorx)){\r\n let c = this.hexToRgb(colorx)\r\n\r\n if(alphax == 1){\r\n colorx = `rgb(${c.r},${c.g},${c.b})`\r\n\r\n } else {\r\n colorx = `rgba(${c.r},${c.g},${c.b},${alphax})`\r\n\r\n }\r\n } else if (/^rgba/.test(colorx)) {\r\n\r\n if(colorx.search(/.([0-9]\\))$/)==-1 && !defaultx){\r\n colorx = colorx.replace(/.?([0-9]\\))$/,`${alphax})`)\r\n }\r\n\r\n\r\n } else if (/^(rgb)/.test(colorx)) {\r\n // change rgb and rgba\r\n if(alphax != 1){\r\n colorx = colorx.replace(/^(rgb)/,`rgba`)\r\n colorx = colorx.replace(/\\)$/,`,${alphax})`)\r\n }\r\n\r\n }\r\n return colorx\r\n },\r\n isColor(colorx){\r\n let vscolors = ['primary','secondary','success','danger','warning','dark', 'light','tertiary']\r\n return vscolors.includes(colorx)\r\n },\r\n RandomColor(){\r\n function getRandomInt(min, max) {\r\n return Math.floor(Math.random() * (max - min)) + min;\r\n }\r\n return `rgb(${getRandomInt(0,255)},${getRandomInt(0,255)},${getRandomInt(0,255)})`\r\n },\r\n rColor(colorx,opacity=1){\r\n if(/^[#]/.test(colorx)){\r\n let c = this.hexToRgb(colorx)\r\n colorx = `rgba(${c.r},${c.g},${c.b},${opacity})`\r\n } else if (/^[rgb]/.test(colorx)){\r\n let colorSplit = colorx.split(')')[0]\r\n if(!/^[rgba]/.test(colorx)){\r\n colorSplit.replace('rgb','rgba')\r\n colorSplit += `,${opacity})`\r\n } else {\r\n // colorSplit.replace('rgb','rgba')\r\n colorSplit += `)`\r\n }\r\n colorx = colorSplit\r\n }\r\n\r\n let vscolors = ['primary','success','danger','warning','dark','secondary','tertiary']\r\n if(colorx){\r\n if(/[#()]/.test(colorx)){\r\n return colorx\r\n } else {\r\n if(vscolors.includes(colorx)){\r\n return `rgba(var(--${colorx}),${opacity})`\r\n } else {\r\n return `rgba(var(--primary),${opacity})`\r\n }\r\n }\r\n } else {\r\n return `rgba(var(--primary),${opacity})`\r\n }\r\n },\r\n contrastColor(elementx) {\r\n let c = elementx\r\n if(/[#]/g.test(elementx)){\r\n let rgbx = this.hexToRgb(elementx)\r\n c = `rgb(${rgbx.r},${rgbx.g},${rgbx.b})`\r\n }\r\n var rgb = c.replace(/^(rgb|rgba)\\(/,'').replace(/\\)$/,'').replace(/\\s/g,'').split(',');\r\n var yiq = ((rgb[0]*299)+(rgb[1]*587)+(rgb[2]*114))/1000;\r\n if(yiq >= 128){\r\n return true\r\n } else {\r\n return false\r\n }\r\n },\r\n setCssVariable(propertyName, value) {\r\n if(typeof window !== 'undefined'){\r\n document.documentElement.style.setProperty(propertyName, value);\r\n }\r\n },\r\n hexToRgb(hex) {\r\n // Expand shorthand form (e.g. \"03F\") to full form (e.g. \"0033FF\")\r\n var shorthandRegex = /^#?([a-f\\d])([a-f\\d])([a-f\\d])$/i;\r\n hex = hex.replace(shorthandRegex, function(m, r, g, b) {\r\n return r + r + g + g + b + b;\r\n });\r\n\r\n var result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);\r\n return result ? {\r\n r: parseInt(result[1], 16),\r\n g: parseInt(result[2], 16),\r\n b: parseInt(result[3], 16)\r\n } : null;\r\n },\r\n getVariable(styles, propertyName) {\r\n return String(styles.getPropertyValue(propertyName)).trim();\r\n },\r\n changeColor(colorInicial){\r\n let colores = ['primary','success','danger','warning','dark','secondary','tertiary']\r\n let colorx\r\n\r\n if(colores.includes(colorInicial)){\r\n let style = getComputedStyle(document.documentElement)\r\n colorx = this.getVariable(style,'--'+colorInicial)\r\n } else {\r\n if(/[rgb()]/g.test(colorInicial)){\r\n colorx = colorInicial.replace(/[rgb()]/g,'')\r\n } else if(/[#]/g.test(colorInicial)){\r\n let rgbx = this.hexToRgb(colorInicial)\r\n colorx = `${rgbx.r},${rgbx.g},${rgbx.b}`\r\n } else {\r\n colorx = '--'+colorInicial\r\n }\r\n }\r\n return colorx\r\n // this.setCssVariable('--'+clave,colorx)\r\n }\r\n}\r\n"],"sourceRoot":""}