{"version":3,"sources":["webpack:///./src/assets/people.svg","webpack:///./src/assets/person.svg","webpack:///./src/assets sync ^\\.\\/.*\\.svg$","webpack:///./src/assets/rss.svg","webpack:///./src/assets/document.svg","webpack:///./src/assets/people-dark.svg","webpack:///./src/assets/cal.svg","webpack:///./src/assets/search.svg","webpack:///./src/assets/bidders.svg","webpack:///./src/assets/finger.svg","webpack:///./src/assets/download.svg","webpack:///./src/assets/alert.svg","webpack:///./src/assets/red_x.svg","webpack:///./src/assets/exclamation.svg","webpack:///./src/assets/plus.svg","webpack:///./src/assets/award.svg","webpack:///./src/assets/document-dark.svg","webpack:///./src/assets/folder.svg","webpack:///./src/assets/details.svg","webpack:///./src/views/dashboard/dashboard.vue?8951","webpack:///./src/views/dashboard/components/dashboard-member.vue?77e3","webpack:///src/views/dashboard/components/dashboard-member.vue","webpack:///./src/views/dashboard/components/dashboard-member.vue?ee1c","webpack:///./src/views/dashboard/components/dashboard-member.vue","webpack:///./src/views/dashboard/components/dashboard-ocaa.vue?2a90","webpack:///src/views/dashboard/components/dashboard-ocaa.vue","webpack:///./src/views/dashboard/components/dashboard-ocaa.vue?03e6","webpack:///./src/views/dashboard/components/dashboard-ocaa.vue","webpack:///src/views/dashboard/dashboard.vue","webpack:///./src/views/dashboard/dashboard.vue?962b","webpack:///./src/views/dashboard/dashboard.vue","webpack:///./src/assets/printer.svg","webpack:///./src/assets/clock.svg","webpack:///./src/assets/list.svg","webpack:///./src/utils/toast.js"],"names":["module","exports","map","webpackContext","req","id","webpackContextResolve","__webpack_require__","o","e","Error","code","keys","Object","resolve","render","_vm","this","_h","$createElement","_c","_self","staticClass","_m","dashboardComponent","tag","staticRenderFns","_v","class","excludeZones","_e","attrs","currentUserName","user","companies","length","_s","_l","company","index","key","name","zone","events","on","onCalendarDateChanged","event","i","displayEvents","staticStyle","newsItems","scopedSlots","_u","fn","ref","record","title","summary","link","proxy","projectCreatedByMe","projectCreatedByMeTotal","onRequestProjectCreatedByMe","getProjectDetailsHeader","getProjectClosingDate","projectInvited","projectInvitedTotal","onRequestProjectInvited","projectUpdates","projectUpdatesTotal","projectUpdatesFilter","onFilterChangeProjectUpdates","onRequestProjectUpdates","type","project","ocaaNumber","$event","preventDefault","dismissProjectUpdates","projectFollowing","projectFollowingTotal","onRequestProjectFollowing","owner","opportunityMatching","opportunityMatchingTotal","onRequestOpportunityMatching","dismissOpportunityMatching","productMatching","productMatchingTotal","onRequestProductMatching","dismissProductMatching","bidResults","bidResultsTotal","onRequestBidResults","tenderStage","component","projectOverview","projectsPosted","numberOfMembers","expiredMembers","activeProjects","bidProjects","bidProjectsTotal","onRequestNewBTProjects","_f","closingDate","timeZone","dismissBidProject","addendas","addendasTotal","onRequestAddendas","projectId","dismissAddenda","closingBids","closingBidsTotal","onRequestClosingBids","expiringMembers","expiryDate","components","data","computed","filter","getMonthStartEndDates","start","end","methods","fetchAddendas","pageSize","page","fetchCalendarEvents","fetchClosingBids","closing","Date","toDateString","fetchNewBTProjects","codes","mounted","Promise","all","MemberDashboard","OcaaDashboard","defaultOptions","noCloseButton","autoHideDelay","toaster","isStatus","success","context","message","overrideOptions","options","variant","$root","$bvToast","toast","danger"],"mappings":"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","file":"js/chunk-77aff548.ed255670.js","sourcesContent":["module.exports = __webpack_public_path__ + \"img/people.f77775c1.svg\";","module.exports = __webpack_public_path__ + \"img/person.7dc2c31b.svg\";","var map = {\n\t\"./alert.svg\": \"6c40\",\n\t\"./award.svg\": \"8b34\",\n\t\"./bidders.svg\": \"578a\",\n\t\"./cal.svg\": \"4e9c\",\n\t\"./clock.svg\": \"e0f8\",\n\t\"./details.svg\": \"af76\",\n\t\"./document-dark.svg\": \"a0a3\",\n\t\"./document.svg\": \"3a30\",\n\t\"./download.svg\": \"6369\",\n\t\"./exclamation.svg\": \"89ca\",\n\t\"./finger.svg\": \"62bb\",\n\t\"./folder.svg\": \"abfe\",\n\t\"./list.svg\": \"e7e9\",\n\t\"./people-dark.svg\": \"49c2\",\n\t\"./people.svg\": \"19b0\",\n\t\"./person.svg\": \"31af\",\n\t\"./plus.svg\": \"8a37\",\n\t\"./printer.svg\": \"c1ce\",\n\t\"./red_x.svg\": \"859a\",\n\t\"./rss.svg\": \"3637\",\n\t\"./search.svg\": \"51f2\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"31e8\";","module.exports = __webpack_public_path__ + \"img/rss.514c5c03.svg\";","module.exports = __webpack_public_path__ + \"img/document.fac8cbfe.svg\";","module.exports = __webpack_public_path__ + \"img/people-dark.b7754c9a.svg\";","module.exports = __webpack_public_path__ + \"img/cal.c57fd2df.svg\";","module.exports = __webpack_public_path__ + \"img/search.7da37f36.svg\";","module.exports = __webpack_public_path__ + \"img/bidders.8f76c8a6.svg\";","module.exports = __webpack_public_path__ + \"img/finger.7ae532a0.svg\";","module.exports = __webpack_public_path__ + \"img/download.92f66316.svg\";","module.exports = __webpack_public_path__ + \"img/alert.93a2e645.svg\";","module.exports = __webpack_public_path__ + \"img/red_x.d0ed53ac.svg\";","module.exports = __webpack_public_path__ + \"img/exclamation.f125832c.svg\";","module.exports = __webpack_public_path__ + \"img/plus.12c2aef8.svg\";","module.exports = __webpack_public_path__ + \"img/award.dfdd02cb.svg\";","module.exports = __webpack_public_path__ + \"img/document-dark.75e27256.svg\";","module.exports = __webpack_public_path__ + \"img/folder.c3ea2c74.svg\";","module.exports = __webpack_public_path__ + \"img/details.aac22052.svg\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"main_page\"},[_c('app-navbar'),_c('div',{staticClass:\"page\"},[_c('div',[_vm._m(0),_c('div',{staticClass:\"page-content\"},[_c(_vm.dashboardComponent,{tag:\"component\"})],1)])])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"page-title\"},[_c('h1',[_vm._v(\"My Dashboard\")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('fragment',[_c('div',[_c('div',{staticClass:\"row\"},[_c('div',{class:'col-lg-4'},[(!_vm.excludeZones)?_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"My Membership\")]):_vm._e(),_c('div',{staticClass:\"d-flex flex-column flex-sm-row align-items-center mb-3 text-center text-sm-left\"},[_c('app-avatar',{staticClass:\"mb-2 mb-sm-0 mr-3\",attrs:{\"name\":_vm.currentUserName,\"size\":80}}),_c('div',{staticClass:\"d-flex flex-column justify-content-between\"},[(_vm.user && _vm.user.companies && _vm.user.companies.length)?_c('div',[_c('h3',{staticClass:\"mb-0\"},[_vm._v(_vm._s(_vm.currentUserName))]),_vm._l((_vm.user.companies),function(company,index){return _c('span',{key:'user-company-display-' + index},[_vm._v(_vm._s(company.name))])})],2):_vm._e()])],1),(!_vm.excludeZones)?_c('div',{staticClass:\"list-group mb-3\",attrs:{\"id\":\"list-group-zones\"}},_vm._l((_vm.zones),function(zone,index){return _c('dashboard-member-zone',{key:'dashboard-zone-' + index,attrs:{\"parent\":'list-group-zones-' + index,\"zone\":zone}})}),1):_vm._e(),_c('app-adspace',{attrs:{\"code\":\"DASHBOARD_MEMBER\",\"size\":\"4x3\"}})],1),_c('div',{class:'col-lg-8'},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"My Project Calendar\")]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-lg-6\"},[_c('dashboard-calendar',{attrs:{\"events\":_vm.events},on:{\"fetch-events\":_vm.onCalendarDateChanged}})],1),_c('div',{staticClass:\"col-lg-6\"},[_vm._l((_vm.displayEvents),function(event,i){return _c('dashboard-member-event',{key:'calendar-event-' + i,attrs:{\"event\":event}})}),(!_vm.displayEvents || !_vm.displayEvents.length)?_c('div',{staticClass:\"alert alert-info\",attrs:{\"role\":\"alert\"}},[_vm._v(\" No upcoming events for this month \")]):_vm._e()],2)]),_c('div',{staticClass:\"row mb-3 pt-3\",staticStyle:{\"border-top\":\"1px solid #ccc\"}},[_c('div',{staticClass:\"col\"},[_c('strong',[_vm._v(\"Calendar Key\")])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-1\"},[_c('div',{staticClass:\"vuecal__event closing-date\",staticStyle:{\"width\":\"25px\"}},[_c('div',{staticClass:\"vuecal__event-title\"})])]),_c('div',{staticClass:\"col-3\"},[_vm._v(\"Closing Date\")]),_c('div',{staticClass:\"col-1\"},[_c('div',{staticClass:\"vuecal__event site-meeting\",staticStyle:{\"width\":\"25px\"}},[_c('div',{staticClass:\"vuecal__event-title\"})])]),_c('div',{staticClass:\"col-3\"},[_vm._v(\"Site Meeting\")])])])]),(_vm.showNews)?_c('div',{staticClass:\"row mt-5\"},[_c('div',{staticClass:\"col-lg\"},[_c('dashboard-list',{attrs:{\"title\":'News',\"no-border\":\"\",\"records\":_vm.newsItems},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar record = ref.record;\nreturn [_c('div',{staticClass:\"mr-auto\"},[_c('p',{staticClass:\"m-0\"},[_vm._v(_vm._s(record.title))]),_c('p',{staticClass:\"m-0 small-grey\"},[_vm._v(_vm._s(record.summary))])]),_c('a',{staticClass:\"d-flex justify-content-between align-items-center align-self-center flex-column\",staticStyle:{\"width\":\"80px\"},attrs:{\"href\":record.link,\"target\":\"_blank\"}},[_c('img',{staticClass:\"mb-1\",attrs:{\"src\":require(\"@/assets/document.svg\"),\"alt\":\"\"}}),_c('span',{staticClass:\"small-grey\"},[_vm._v(\"View\")])])]}},{key:\"no-records\",fn:function(){return [_vm._v(\" There is no news to share. \")]},proxy:true}],null,false,871994502)})],1)]):_vm._e(),(_vm.showMyProjectsList)?_c('div',{staticClass:\"row mt-5\"},[_c('div',{staticClass:\"col-lg\"},[_c('dashboard-list',{ref:\"productCreatedByMeList\",attrs:{\"title\":'My Created Projects',\"no-border\":\"\",\"records\":_vm.projectCreatedByMe,\"total\":_vm.projectCreatedByMeTotal},on:{\"fetch\":_vm.onRequestProjectCreatedByMe},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar record = ref.record;\nreturn [_c('div',{staticClass:\"mr-auto\"},[_c('p',{staticClass:\"m-0\"},[_vm._v(_vm._s(_vm.getProjectDetailsHeader(record)))]),_c('p',{staticClass:\"m-0 small-grey\"},[_vm._v(_vm._s(_vm.getProjectClosingDate(record)))])]),_c('router-link',{staticClass:\"d-flex justify-content-between align-items-center flex-column\",staticStyle:{\"width\":\"80px\"},attrs:{\"to\":'/project/info/' + record.id}},[_c('img',{staticClass:\"mb-1\",attrs:{\"src\":require(\"@/assets/document.svg\"),\"alt\":\"\"}}),_c('span',{staticClass:\"small-grey\"},[_vm._v(\"View\")])])]}},{key:\"no-records\",fn:function(){return [_vm._v(\" No projects created. Create a \"),_c('router-link',{attrs:{\"to\":\"/project/new\"}},[_vm._v(\" new project \")]),_vm._v(\". \")]},proxy:true}],null,false,628171913)})],1)]):_vm._e(),_c('div',{staticClass:\"row mt-5\"},[_c('div',{staticClass:\"col-lg\"},[_c('dashboard-list',{ref:\"productInvitedList\",attrs:{\"title\":'My Invited Projects',\"no-border\":\"\",\"records\":_vm.projectInvited,\"total\":_vm.projectInvitedTotal},on:{\"fetch\":_vm.onRequestProjectInvited},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar record = ref.record;\nreturn [_c('div',{staticClass:\"mr-auto\"},[_c('p',{staticClass:\"m-0\"},[_vm._v(_vm._s(_vm.getProjectDetailsHeader(record)))]),_c('p',{staticClass:\"m-0 small-grey\"},[_vm._v(_vm._s(_vm.getProjectClosingDate(record)))])]),_c('router-link',{staticClass:\"d-flex justify-content-between align-items-center flex-column\",staticStyle:{\"width\":\"80px\"},attrs:{\"to\":'/project/info/' + record.id}},[_c('img',{staticClass:\"mb-1\",attrs:{\"src\":require(\"@/assets/document.svg\"),\"alt\":\"\"}}),_c('span',{staticClass:\"small-grey\"},[_vm._v(\"View\")])])]}},{key:\"no-records\",fn:function(){return [_vm._v(\" No invitations received. Go to \"),_c('router-link',{attrs:{\"to\":\"/project/search\"}},[_vm._v(\"projects & bid\")]),_vm._v(\". \")]},proxy:true}])})],1)]),_c('div',{staticClass:\"row mt-5\"},[_c('div',{staticClass:\"col-lg\"},[_c('dashboard-list',{ref:\"productUpdatesList\",attrs:{\"title\":'My Project Updates',\"no-border\":\"\",\"records\":_vm.projectUpdates,\"total\":_vm.projectUpdatesTotal,\"filtered\":\"\",\"filterGroups\":_vm.projectUpdatesFilter},on:{\"filter-changed\":_vm.onFilterChangeProjectUpdates,\"fetch\":_vm.onRequestProjectUpdates},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar record = ref.record;\nreturn [_c('div',{staticClass:\"mr-auto\"},[_c('p',{staticClass:\"m-0\"},[_vm._v(_vm._s(record.type.name))]),_c('p',{staticClass:\"m-0 small-grey\"},[_vm._v(\" \"+_vm._s(record.project.ocaaNumber)+\" - \"+_vm._s(record.project.title)+\" - \"+_vm._s(_vm.getProjectClosingDate(record.project))+\" \")])]),_c('router-link',{staticClass:\"d-flex justify-content-between align-items-center flex-column\",staticStyle:{\"width\":\"80px\"},attrs:{\"to\":'/project/info/' + record.project.id}},[_c('img',{staticClass:\"mb-1\",attrs:{\"src\":require(\"@/assets/document.svg\"),\"alt\":\"\"}}),_c('span',{staticClass:\"small-grey\"},[_vm._v(\"View\")])]),_c('a',{staticClass:\"d-flex justify-content-between align-items-center flex-column ml-3\",staticStyle:{\"width\":\"80px\"},attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.dismissProjectUpdates(record.id)}}},[_c('img',{staticClass:\"mb-1\",attrs:{\"src\":require(\"@/assets/red_x.svg\"),\"alt\":\"\"}}),_c('span',{staticClass:\"small-grey\"},[_vm._v(\"Dismiss\")])])]}}])})],1)]),_c('div',{staticClass:\"row mt-2\"},[_c('div',{staticClass:\"col-lg\"},[_c('dashboard-list',{attrs:{\"title\":'Projects I am Following',\"no-border\":\"\",\"records\":_vm.projectFollowing,\"total\":_vm.projectFollowingTotal},on:{\"fetch\":_vm.onRequestProjectFollowing},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar record = ref.record;\nreturn [_c('div',{staticClass:\"mr-auto\"},[_c('p',{staticClass:\"m-0\"},[_vm._v(_vm._s(record.ocaaNumber)+\" - \"+_vm._s(record.title)+\" - \"+_vm._s(record.owner)+\" \")]),_c('p',{staticClass:\"m-0 small-grey\"},[_vm._v(_vm._s(_vm.getProjectClosingDate(record)))])]),_c('router-link',{staticClass:\"d-flex justify-content-between align-items-center flex-column\",staticStyle:{\"width\":\"80px\"},attrs:{\"to\":'/project/info/' + record.id}},[_c('img',{staticClass:\"mb-1\",attrs:{\"src\":require(\"@/assets/document.svg\"),\"alt\":\"\"}}),_c('span',{staticClass:\"small-grey\"},[_vm._v(\"View\")])])]}}])})],1)]),_c('div',{staticClass:\"row mt-2\"},[_c('div',{staticClass:\"col-lg\"},[_c('dashboard-list',{ref:\"opportunityMatchingList\",attrs:{\"title\":'Opportunity Matching',\"no-border\":\"\",\"records\":_vm.opportunityMatching,\"total\":_vm.opportunityMatchingTotal},on:{\"fetch\":_vm.onRequestOpportunityMatching},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar record = ref.record;\nreturn [_c('div',{staticClass:\"mr-auto\"},[_c('p',{staticClass:\"m-0\"},[_vm._v(_vm._s(_vm.getProjectDetailsHeader(record.project)))]),_c('p',{staticClass:\"m-0 small-grey\"},[_vm._v(_vm._s(_vm.getProjectClosingDate(record.project)))])]),_c('router-link',{staticClass:\"d-flex justify-content-between align-items-center flex-column\",staticStyle:{\"width\":\"80px\"},attrs:{\"to\":'/project/info/' + record.project.id}},[_c('img',{staticClass:\"mb-1\",attrs:{\"src\":require(\"@/assets/document.svg\"),\"alt\":\"\"}}),_c('span',{staticClass:\"small-grey\"},[_vm._v(\"View\")])]),_c('a',{staticClass:\"d-flex justify-content-between align-items-center flex-column ml-3\",staticStyle:{\"width\":\"80px\"},attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.dismissOpportunityMatching(record.id)}}},[_c('img',{staticClass:\"mb-1\",attrs:{\"src\":require(\"@/assets/red_x.svg\"),\"alt\":\"\"}}),_c('span',{staticClass:\"small-grey\"},[_vm._v(\"Dismiss\")])])]}}])})],1)]),_c('div',{staticClass:\"row mt-2\"},[_c('div',{staticClass:\"col-lg\"},[_c('dashboard-list',{ref:\"productMatchingList\",attrs:{\"title\":'My Product Matching',\"no-border\":\"\",\"records\":_vm.productMatching,\"total\":_vm.productMatchingTotal},on:{\"fetch\":_vm.onRequestProductMatching},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar record = ref.record;\nreturn [_c('div',{staticClass:\"mr-auto\"},[_c('p',{staticClass:\"m-0\"},[_vm._v(_vm._s(_vm.getProjectDetailsHeader(record.project)))]),_c('p',{staticClass:\"m-0 small-grey\"},[_vm._v(_vm._s(_vm.getProjectClosingDate(record.project)))])]),_c('router-link',{staticClass:\"d-flex justify-content-between align-items-center flex-column\",staticStyle:{\"width\":\"80px\"},attrs:{\"to\":'/project/info/' + record.project.id}},[_c('img',{staticClass:\"mb-1\",attrs:{\"src\":require(\"@/assets/document.svg\"),\"alt\":\"\"}}),_c('span',{staticClass:\"small-grey\"},[_vm._v(\"View\")])]),_c('a',{staticClass:\"d-flex justify-content-between align-items-center flex-column ml-3\",staticStyle:{\"width\":\"80px\"},attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.dismissProductMatching(record.id)}}},[_c('img',{staticClass:\"mb-1\",attrs:{\"src\":require(\"@/assets/red_x.svg\"),\"alt\":\"\"}}),_c('span',{staticClass:\"small-grey\"},[_vm._v(\"Dismiss\")])])]}}])})],1)]),_c('div',{staticClass:\"row mt-2\"},[_c('div',{staticClass:\"col-lg\"},[_c('dashboard-list',{ref:\"bidResultsList\",attrs:{\"title\":'Bid Results',\"no-border\":\"\",\"records\":_vm.bidResults,\"total\":_vm.bidResultsTotal},on:{\"fetch\":_vm.onRequestBidResults},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar record = ref.record;\nreturn [_c('div',{staticClass:\"mr-auto\"},[_c('p',{staticClass:\"m-0\"},[_vm._v(_vm._s(record.ocaaNumber)+\" - \"+_vm._s(record.title)+\" - \"+_vm._s(record.owner)+\" \")]),_c('p',{staticClass:\"m-0 small-grey\"},[_vm._v(_vm._s(_vm.getProjectClosingDate(record)))])]),_c('router-link',{staticClass:\"d-flex justify-content-between align-items-center flex-column\",staticStyle:{\"width\":\"80px\"},attrs:{\"to\":'/project/info/' + record.id}},[_c('img',{staticClass:\"mb-1\",attrs:{\"src\":require(\"@/assets/document.svg\"),\"alt\":\"\"}}),_c('span',{staticClass:\"small-grey\"},[_vm._v(\"View\")])]),_c('span',{staticClass:\"d-flex justify-content-between align-items-center flex-column ml-3\",staticStyle:{\"width\":\"80px\"}},[_c('img',{staticClass:\"mb-1\",attrs:{\"src\":require((\"@/assets/\" + (record.tenderStage.code === 'awarded' ? 'award' : 'finger') + \".svg\")),\"alt\":\"\"}}),_c('span',{staticClass:\"small-grey\"},[_vm._v(_vm._s(record.tenderStage.name))])])]}}])})],1)])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n  <fragment>\r\n    <div>\r\n      <div class=\"row\">\r\n        <div v-bind:class=\"'col-lg-4'\">\r\n          <h2 class=\"mb-4\" v-if=\"!excludeZones\">My Membership</h2>\r\n          <div class=\"d-flex flex-column flex-sm-row align-items-center mb-3 text-center text-sm-left\">\r\n            <app-avatar class=\"mb-2 mb-sm-0 mr-3\" :name=\"currentUserName\" :size=\"80\"></app-avatar>\r\n            <div class=\"d-flex flex-column justify-content-between\">\r\n              <div v-if=\"user && user.companies && user.companies.length\">\r\n                <h3 class=\"mb-0\">{{ currentUserName }}</h3>\r\n                <span v-for=\"(company, index) in user.companies\" :key=\"'user-company-display-' + index\">{{ company.name }}</span>\r\n              </div>\r\n            </div>\r\n          </div>\r\n          <div id=\"list-group-zones\" class=\"list-group mb-3\" v-if=\"!excludeZones\">\r\n            <dashboard-member-zone v-for=\"(zone, index) in zones\"\r\n                                   :parent=\"'list-group-zones-' + index\"\r\n                                   :key=\"'dashboard-zone-' + index\"\r\n                                   :zone=\"zone\"></dashboard-member-zone>\r\n          </div>\r\n          <app-adspace code=\"DASHBOARD_MEMBER\" size=\"4x3\"></app-adspace>\r\n        </div>\r\n\r\n        <div v-bind:class=\"'col-lg-8'\">\r\n          <h2 class=\"mb-4\">My Project Calendar</h2>\r\n          <div class=\"row\">\r\n            <div class=\"col-lg-6\">\r\n              <dashboard-calendar :events=\"events\" @fetch-events=\"onCalendarDateChanged\"></dashboard-calendar>\r\n            </div>\r\n            <div class=\"col-lg-6\">\r\n              <dashboard-member-event v-for=\"(event, i) in displayEvents\" :key=\"'calendar-event-' + i\" :event=\"event\"></dashboard-member-event>\r\n              <div v-if=\"!displayEvents || !displayEvents.length\" class=\"alert alert-info\" role=\"alert\">\r\n                No upcoming events for this month\r\n              </div>\r\n            </div>\r\n          </div>\r\n\r\n          <div class=\"row mb-3 pt-3\" style=\"border-top: 1px solid #ccc;\">\r\n            <div class=\"col\">\r\n              <strong>Calendar Key</strong>\r\n            </div>\r\n          </div>\r\n\r\n          <div class=\"row\">\r\n            <div class=\"col-1\">\r\n              <div class=\"vuecal__event closing-date\" style=\"width: 25px;\">\r\n                <div class=\"vuecal__event-title\">&nbsp;</div>\r\n              </div>\r\n            </div>\r\n            <div class=\"col-3\">Closing Date</div>\r\n            <div class=\"col-1\">\r\n              <div class=\"vuecal__event site-meeting\" style=\"width: 25px;\">\r\n                <div class=\"vuecal__event-title\">&nbsp;</div>\r\n              </div>\r\n            </div>\r\n            <div class=\"col-3\">Site Meeting</div>\r\n          </div>\r\n        </div>\r\n      </div>\r\n\r\n      <div class=\"row mt-5\" v-if=\"showNews\">\r\n        <div class=\"col-lg\">\r\n          <dashboard-list :title=\"'News'\" no-border :records=\"newsItems\">\r\n            <template v-slot:default=\"{ record }\">\r\n              <div class=\"mr-auto\">\r\n                <p class=\"m-0\">{{ record.title }}</p>\r\n                <p class=\"m-0 small-grey\">{{ record.summary }}</p>\r\n              </div>\r\n              <a :href=\"record.link\" class=\"d-flex justify-content-between align-items-center align-self-center flex-column\" style=\"width: 80px\" target=\"_blank\">\r\n                <img class=\"mb-1\" src=\"@/assets/document.svg\" alt />\r\n                <span class=\"small-grey\">View</span>\r\n              </a>\r\n            </template>\r\n            <template v-slot:no-records>\r\n              There is no news to share.\r\n            </template>\r\n          </dashboard-list>\r\n        </div>\r\n      </div>\r\n\r\n      <div class=\"row mt-5\" v-if=\"showMyProjectsList\">\r\n        <div class=\"col-lg\">\r\n          <dashboard-list :title=\"'My Created Projects'\"\r\n                          no-border\r\n                          :records=\"projectCreatedByMe\"\r\n                          :total=\"projectCreatedByMeTotal\"\r\n                          @fetch=\"onRequestProjectCreatedByMe\"\r\n                          ref=\"productCreatedByMeList\">\r\n            <template v-slot:default=\"{ record }\">\r\n              <div class=\"mr-auto\">\r\n                <p class=\"m-0\">{{ getProjectDetailsHeader(record) }}</p>\r\n                <p class=\"m-0 small-grey\">{{ getProjectClosingDate(record) }}</p>\r\n              </div>\r\n              <router-link :to=\"'/project/info/' + record.id\" class=\"d-flex justify-content-between align-items-center flex-column\" style=\"width: 80px\">\r\n                <img class=\"mb-1\" src=\"@/assets/document.svg\" alt />\r\n                <span class=\"small-grey\">View</span>\r\n              </router-link>\r\n            </template>\r\n            <template v-slot:no-records>\r\n              No projects created. Create a\r\n              <router-link to=\"/project/new\"> new project </router-link>.\r\n            </template>\r\n          </dashboard-list>\r\n        </div>\r\n      </div>\r\n\r\n      <div class=\"row mt-5\">\r\n        <div class=\"col-lg\">\r\n          <dashboard-list :title=\"'My Invited Projects'\"\r\n                          no-border\r\n                          :records=\"projectInvited\"\r\n                          :total=\"projectInvitedTotal\"\r\n                          @fetch=\"onRequestProjectInvited\"\r\n                          ref=\"productInvitedList\">\r\n            <template v-slot:default=\"{ record }\">\r\n              <div class=\"mr-auto\">\r\n                <p class=\"m-0\">{{ getProjectDetailsHeader(record) }}</p>\r\n                <p class=\"m-0 small-grey\">{{ getProjectClosingDate(record) }}</p>\r\n              </div>\r\n              <router-link :to=\"'/project/info/' + record.id\" class=\"d-flex justify-content-between align-items-center flex-column\" style=\"width: 80px\">\r\n                <img class=\"mb-1\" src=\"@/assets/document.svg\" alt />\r\n                <span class=\"small-grey\">View</span>\r\n              </router-link>\r\n            </template>\r\n            <template v-slot:no-records>\r\n              No invitations received.  Go to\r\n              <router-link to=\"/project/search\">projects & bid</router-link>.\r\n            </template>\r\n          </dashboard-list>\r\n        </div>\r\n      </div>\r\n      <div class=\"row mt-5\">\r\n        <div class=\"col-lg\">\r\n          <dashboard-list :title=\"'My Project Updates'\"\r\n                          no-border\r\n                          :records=\"projectUpdates\"\r\n                          :total=\"projectUpdatesTotal\"\r\n                          filtered\r\n                          :filterGroups=\"projectUpdatesFilter\"\r\n                          @filter-changed=\"onFilterChangeProjectUpdates\"\r\n                          @fetch=\"onRequestProjectUpdates\"\r\n                          ref=\"productUpdatesList\">\r\n            <template v-slot:default=\"{ record }\">\r\n              <div class=\"mr-auto\">\r\n                <p class=\"m-0\">{{ record.type.name }}</p>\r\n                <p class=\"m-0 small-grey\">\r\n                  {{ record.project.ocaaNumber }} - {{ record.project.title }} - {{ getProjectClosingDate(record.project) }}\r\n                </p>\r\n              </div>\r\n              <router-link :to=\"'/project/info/' + record.project.id\" class=\"d-flex justify-content-between align-items-center flex-column\" style=\"width: 80px\">\r\n                <img class=\"mb-1\" src=\"@/assets/document.svg\" alt />\r\n                <span class=\"small-grey\">View</span>\r\n              </router-link>\r\n              <a href=\"#\" class=\"d-flex justify-content-between align-items-center flex-column ml-3\" style=\"width: 80px\"\r\n                 @click.prevent=\"dismissProjectUpdates(record.id)\">\r\n                <img class=\"mb-1\" src=\"@/assets/red_x.svg\" alt />\r\n                <span class=\"small-grey\">Dismiss</span>\r\n              </a>\r\n            </template>\r\n          </dashboard-list>\r\n        </div>\r\n      </div>\r\n\r\n      <div class=\"row mt-2\">\r\n        <div class=\"col-lg\">\r\n          <dashboard-list :title=\"'Projects I am Following'\"\r\n                          no-border\r\n                          :records=\"projectFollowing\"\r\n                          :total=\"projectFollowingTotal\"\r\n                          @fetch=\"onRequestProjectFollowing\">\r\n            <template v-slot:default=\"{ record }\">\r\n              <div class=\"mr-auto\">\r\n                <p class=\"m-0\">{{ record.ocaaNumber }} - {{ record.title }} - {{ record.owner }} </p>\r\n                <p class=\"m-0 small-grey\">{{ getProjectClosingDate(record) }}</p>\r\n              </div>\r\n              <router-link :to=\"'/project/info/' + record.id\" class=\"d-flex justify-content-between align-items-center flex-column\" style=\"width: 80px\">\r\n                <img class=\"mb-1\" src=\"@/assets/document.svg\" alt />\r\n                <span class=\"small-grey\">View</span>\r\n              </router-link>\r\n            </template>\r\n          </dashboard-list>\r\n        </div>\r\n      </div>\r\n\r\n      <div class=\"row mt-2\">\r\n        <div class=\"col-lg\">\r\n          <dashboard-list :title=\"'Opportunity Matching'\"\r\n                          no-border\r\n                          :records=\"opportunityMatching\"\r\n                          :total=\"opportunityMatchingTotal\"\r\n                          @fetch=\"onRequestOpportunityMatching\"\r\n                          ref=\"opportunityMatchingList\">\r\n            <template v-slot:default=\"{ record }\">\r\n              <div class=\"mr-auto\">\r\n                <p class=\"m-0\">{{ getProjectDetailsHeader(record.project) }}</p>\r\n                <p class=\"m-0 small-grey\">{{ getProjectClosingDate(record.project) }}</p>\r\n              </div>\r\n              <router-link :to=\"'/project/info/' + record.project.id\" class=\"d-flex justify-content-between align-items-center flex-column\" style=\"width: 80px\">\r\n                <img class=\"mb-1\" src=\"@/assets/document.svg\" alt />\r\n                <span class=\"small-grey\">View</span>\r\n              </router-link>\r\n              <a href=\"#\" class=\"d-flex justify-content-between align-items-center flex-column ml-3\" style=\"width: 80px\"\r\n                 @click.prevent=\"dismissOpportunityMatching(record.id)\">\r\n                <img class=\"mb-1\" src=\"@/assets/red_x.svg\" alt />\r\n                <span class=\"small-grey\">Dismiss</span>\r\n              </a>\r\n            </template>\r\n          </dashboard-list>\r\n        </div>\r\n      </div>\r\n\r\n      <div class=\"row mt-2\">\r\n        <div class=\"col-lg\">\r\n          <dashboard-list :title=\"'My Product Matching'\"\r\n                          no-border\r\n                          :records=\"productMatching\"\r\n                          :total=\"productMatchingTotal\"\r\n                          @fetch=\"onRequestProductMatching\"\r\n                          ref=\"productMatchingList\">\r\n            <template v-slot:default=\"{ record }\">\r\n              <div class=\"mr-auto\">\r\n                <p class=\"m-0\">{{ getProjectDetailsHeader(record.project) }}</p>\r\n                <p class=\"m-0 small-grey\">{{ getProjectClosingDate(record.project) }}</p>\r\n              </div>\r\n              <router-link :to=\"'/project/info/' + record.project.id\" class=\"d-flex justify-content-between align-items-center flex-column\" style=\"width: 80px\">\r\n                <img class=\"mb-1\" src=\"@/assets/document.svg\" alt />\r\n                <span class=\"small-grey\">View</span>\r\n              </router-link>\r\n              <a href=\"#\" class=\"d-flex justify-content-between align-items-center flex-column ml-3\" style=\"width: 80px\"\r\n                 @click.prevent=\"dismissProductMatching(record.id)\">\r\n                <img class=\"mb-1\" src=\"@/assets/red_x.svg\" alt />\r\n                <span class=\"small-grey\">Dismiss</span>\r\n              </a>\r\n            </template>\r\n          </dashboard-list>\r\n        </div>\r\n      </div>\r\n\r\n      <div class=\"row mt-2\">\r\n        <div class=\"col-lg\">\r\n          <dashboard-list :title=\"'Bid Results'\" no-border :records=\"bidResults\" :total=\"bidResultsTotal\" @fetch=\"onRequestBidResults\" ref=\"bidResultsList\">\r\n            <template v-slot:default=\"{ record }\">\r\n              <div class=\"mr-auto\">\r\n                <p class=\"m-0\">{{ record.ocaaNumber }} - {{ record.title }} - {{ record.owner }} </p>\r\n                <p class=\"m-0 small-grey\">{{ getProjectClosingDate(record) }}</p>\r\n              </div>\r\n              <router-link :to=\"'/project/info/' + record.id\" class=\"d-flex justify-content-between align-items-center flex-column\" style=\"width: 80px\">\r\n                <img class=\"mb-1\" src=\"@/assets/document.svg\" alt />\r\n                <span class=\"small-grey\">View</span>\r\n              </router-link>\r\n              <span class=\"d-flex justify-content-between align-items-center flex-column ml-3\" style=\"width: 80px\">\r\n                <img class=\"mb-1\" :src=\"require(`@/assets/${ record.tenderStage.code === 'awarded' ? 'award' : 'finger' }.svg`)\" alt />\r\n                <span class=\"small-grey\">{{ record.tenderStage.name }}</span>\r\n              </span>\r\n            </template>\r\n          </dashboard-list>\r\n        </div>\r\n      </div>\r\n    </div>\r\n  </fragment>\r\n</template>\r\n\r\n<script>\r\n  import { mapGetters, mapActions } from \"vuex\";\r\n  import { DashboardService, DismissProjectService, NewsService, UserService } from \"@/services/\";\r\n  import JwtHelper from \"@/utils/jwtHelper\";\r\n  import { date as dateSort } from \"@/utils/sort\";\r\n  import { DateTimeFilter } from \"@/filters/datetime\";\r\n  import Toast from \"@/utils/toast\";\r\n  import { EventBus } from \"@/event-bus/event-bus\";\r\n\r\n  export default {\r\n    name: \"dashboard-member\",\r\n    components: {\r\n      \"app-avatar\": () => import('@/components/app-avatar.vue'),\r\n      'app-adspace': () => import(\"@/components/app-adspace.vue\"),\r\n      'dashboard-calendar': () => import('@/views/dashboard/components/dashboard-calendar.vue'),\r\n      'dashboard-list': () => import('@/views/dashboard/components/dashboard-list.vue'),\r\n      'dashboard-member-event': () => import('@/views/dashboard/components/dashboard-member-event.vue'),\r\n      'dashboard-member-zone': () => import('@/views/dashboard/components/dashboard-member-zone.vue'),\r\n    },\r\n    data: function () {\r\n      return {\r\n        bidResults: [],\r\n        bidResultsTotal: 0,\r\n        events: [],\r\n        opportunityMatching: [],\r\n        opportunityMatchingTotal: 0,\r\n        projectCreatedByMe: [],\r\n        projectCreatedByMeTotal: 0,\r\n        productMatching: [],\r\n        productMatchingTotal: 0,\r\n        projectFollowing: [],\r\n        projectFollowingTotal: 0,\r\n        projectUpdates: [],\r\n        projectUpdatesTotal: 0,\r\n        projectUpdatesFilter: [\r\n          { display: 'Addenda Update', code: 'addenda_update', active: true },\r\n          { display: 'Closing Date Update', code: 'closing_date_update', active: true },\r\n          { display: 'Site Meetings Update', code: 'site_meetings_update', active: true },\r\n          { display: 'Status Change Update', code: 'status_change_update', active: true }\r\n        ],\r\n        projectInvited: [],\r\n        projectInvitedTotal: 0,\r\n        newsItems: [],\r\n        newsItemsTotal: 0,\r\n        user: null,\r\n        zones: []\r\n      };\r\n    },\r\n    watch: {\r\n      showNews: function(value) {\r\n        value && this.fetchNewsItems();\r\n      }\r\n    },\r\n    computed: {\r\n      currentUserName() {\r\n        return this.user ? `${this.user.firstName} ${this.user.lastName}` : 'Unknown User';\r\n      },\r\n      displayEvents() {\r\n        return this.events.filter(event => new Date(event.eventDate) > new Date()).slice(0, 5);\r\n      },\r\n      excludeZones() {\r\n        return (this.getExcludeZonesFromDashboard || '').toUpperCase() === 'TRUE';\r\n      },\r\n      getMonthStartEndDates() {\r\n        let date = new Date();\r\n        let year = date.getFullYear();\r\n        let month = date.getMonth();\r\n\r\n        return {\r\n          start: new Date(year, month, 1),\r\n          end: new Date(year, month + 1, 0)\r\n        };\r\n      },\r\n      selectedProjectUpdateFilterCodes() {\r\n        return this.projectUpdatesFilter.filter(i => i.active).map(i => i.code);\r\n      },\r\n      showMyProjectsList() {\r\n        return this.$permissions().hasAddPrivateProjectPermission;\r\n      },\r\n      showNews () {\r\n        return this.getUseDisplayNews;\r\n      },\r\n      ...mapGetters([\r\n        \"getZones\",\r\n        \"getExcludeZonesFromDashboard\",\r\n        \"getUseDisplayNews\"\r\n      ])\r\n    },\r\n    methods: {\r\n      getProjectDetailsHeader(project) {\r\n        let ownerName = project.owner ? ` - ${project.owner.name}` : '';\r\n\r\n        return `${project.ocaaNumber} - ${project.title}${ownerName}`;\r\n      },\r\n      getProjectClosingDate(project) {\r\n        return `${DateTimeFilter(project.closingDate, 'MMM d, yyyy h:mm a')} ${project.timeZone.code}`;\r\n      },\r\n      async dismissOpportunityMatching(id) {\r\n        await DismissProjectService.dismiss(id);\r\n        this.onRequestOpportunityMatching(\r\n          this.$refs.opportunityMatchingList.displayRecordsCount\r\n        );\r\n      },\r\n      async dismissProductMatching(id) {\r\n        await DismissProjectService.dismiss(id);\r\n        this.onRequestProductMatching(\r\n          this.$refs.productMatchingList.displayRecordsCount\r\n        );\r\n      },\r\n      async dismissProjectUpdates(id) {\r\n        await DismissProjectService.dismiss(id);\r\n        this.onRequestProjectUpdates(\r\n          this.$refs.productUpdatesList.displayRecordsCount\r\n        );\r\n      },\r\n\r\n      fetchCalendarEvents(startDate, endDate) {\r\n        return DashboardService.calendar({\r\n          startDate: startDate.toLocaleDateString(),\r\n          endDate: endDate.toLocaleDateString()\r\n        });\r\n      },\r\n      fetchProjectCreatedByMe(pageSize) {\r\n        return DashboardService.member.createdprojects({\r\n          pageSize: pageSize,\r\n          page: 1,\r\n          sortOrder: 'CreatedOn',\r\n          sortDirection: 'asc'\r\n        });\r\n      },\r\n      fetchProjectInvited(pageSize) {\r\n        return DashboardService.member.invitedprojects({\r\n          pageSize: pageSize,\r\n          page: 1,\r\n          sortOrder: 'ClosingDate',\r\n          sortDirection: 'asc'\r\n        });\r\n      },\r\n      fetchProjectUpdates(pageSize) {\r\n        return DashboardService.member.dismissalsearch({\r\n          codes: this.selectedProjectUpdateFilterCodes,\r\n          pageSize: pageSize,\r\n          page: 1,\r\n          sortOrder: 'CreatedOn',\r\n          sortDirection: 'desc'\r\n        });\r\n      },\r\n      fetchProjectFollowing(pageSize) {\r\n        return DashboardService.member.search({\r\n          provideFollowedOnly: true,\r\n          tenderStageId: \"BA1408EB-83D9-4C94-A2BA-6D9436773B36\",\r\n          pageSize: pageSize,\r\n          page: 1,\r\n          sortOrder: 'ClosingDate',\r\n          sortDirection: 'asc'\r\n        });\r\n      },\r\n      fetchOpportunityMatching(pageSize) {\r\n        return DashboardService.member.dismissalsearch({\r\n          codes: [\"opportunity_matching\"],\r\n          tenderStageCode: \"open\",\r\n          pageSize: pageSize,\r\n          page: 1,\r\n          sortOrder: 'Project.ClosingDate',\r\n          sortDirection: 'asc'\r\n        });\r\n      },\r\n      fetchProductMatching(pageSize) {\r\n        return DashboardService.member.dismissalsearch({\r\n          codes: [\"product_matching\"],\r\n          tenderStageCode: \"open\",\r\n          pageSize: pageSize,\r\n          page: 1,\r\n          sortOrder: 'Project.ClosingDate',\r\n          sortDirection: 'asc'\r\n        });\r\n      },\r\n      fetchBidResults(pageSize) {\r\n        let statuses = [\r\n          \"2501C6DC-361E-4970-B02B-40BE2D3D8B08\", // Closed\r\n          \"80C4CD45-A72A-4D1E-877F-F39458F8EB02\" // Awarded\r\n        ];\r\n        return DashboardService.member.search({\r\n          tenderStageIds: statuses,\r\n          pageSize: pageSize,\r\n          page: 1,\r\n          sortOrder: 'ClosingDate',\r\n          sortDirection: 'asc'\r\n        });\r\n      },\r\n      async fetchNewsItems () {\r\n        let { data } = await NewsService.getDashboardNews();\r\n        this.newsItems = data;\r\n        this.newsItemsTotal = data.length;\r\n      },\r\n\r\n      async onCalendarDateChanged({ startDate, endDate }) {\r\n        let response = await this.fetchCalendarEvents(startDate, endDate);\r\n        this.events = (response && response.data) || [];\r\n\r\n        if (this.events.length) {\r\n          this.events.sort((a, b) => dateSort(a.eventDate, b.eventDate));\r\n        }\r\n      },\r\n      onFilterChangeProjectUpdates(value) {\r\n        let index = this.projectUpdatesFilter.findIndex(i => i.code === value);\r\n        this.projectUpdatesFilter[index].active = !this.projectUpdatesFilter[index].active;\r\n\r\n        this.onRequestProjectUpdates(this.$refs.productUpdatesList.displayRecordsCount);\r\n      },\r\n      async onRequestProjectCreatedByMe(pageSize) {\r\n        let response = await this.fetchProjectCreatedByMe(pageSize);\r\n        let data = (response && response.data) || { results: [], total: 0 };\r\n        this.projectCreatedByMe = data.results;\r\n        this.projectCreatedByMeTotal = data.total;\r\n      },\r\n      async onRequestProjectInvited(pageSize) {\r\n        let response = await this.fetchProjectInvited(pageSize);\r\n        let data = (response && response.data) || { results: [], total: 0 };\r\n        this.projectInvited = data.results;\r\n        this.projectInvitedTotal = data.total;\r\n      },\r\n      async onRequestProjectUpdates(pageSize) {\r\n        let response = await this.fetchProjectUpdates(pageSize);\r\n        let data = (response && response.data) || { results: [], total: 0 };\r\n        this.projectUpdates = data.results;\r\n        this.projectUpdatesTotal = data.total;\r\n      },\r\n      async onRequestProjectFollowing(pageSize) {\r\n        let response = await this.fetchProjectFollowing(pageSize);\r\n        let data = (response && response.data) || { results: [], total: 0 };\r\n        this.projectFollowing = data.results;\r\n        this.projectFollowingTotal = data.total;\r\n      },\r\n      async onRequestOpportunityMatching(pageSize) {\r\n        let response = await this.fetchOpportunityMatching(pageSize);\r\n        let data = (response && response.data) || { results: [], total: 0 };\r\n        this.opportunityMatching = data.results;\r\n        this.opportunityMatchingTotal = data.total;\r\n      },\r\n      async onRequestProductMatching(pageSize) {\r\n        let response = await this.fetchProductMatching(pageSize);\r\n        let data = (response && response.data) || { results: [], total: 0 };\r\n        this.productMatching = data.results;\r\n        this.productMatchingTotal = data.total;\r\n      },\r\n      async onRequestBidResults(pageSize) {\r\n        let response = await this.fetchBidResults(pageSize);\r\n        let data = (response && response.data) || { results: [], total: 0 };\r\n        this.bidResults = data.results;\r\n        this.bidResultsTotal = data.total;\r\n      },\r\n\r\n      ...mapActions([\r\n        \"fetchZones\",\r\n        \"fetchClientSettings\"\r\n      ]),\r\n    },\r\n    mounted() {\r\n      let { start, end } = this.getMonthStartEndDates;\r\n      let user = JwtHelper.getUserToken();\r\n\r\n      Promise.all([\r\n        UserService.getById(user.id),\r\n        DashboardService.member.membership(),\r\n        this.fetchCalendarEvents(start, end),\r\n        this.fetchProjectUpdates(3),\r\n        this.fetchProjectFollowing(3),\r\n        this.fetchOpportunityMatching(3),\r\n        this.fetchProductMatching(3),\r\n        this.fetchBidResults(3),\r\n        this.fetchClientSettings(),\r\n        this.showMyProjectsList ? this.fetchProjectCreatedByMe(3) : Promise.resolve({}),\r\n        this.fetchProjectInvited(3),\r\n        this.getUseDisplayNews ? this.fetchNewsItems() : Promise.resolve([]),\r\n      ])\r\n        .then(response => {\r\n          this.user = response[0].data;\r\n          this.zones = response[1].data;\r\n          this.events = response[2].data.sort((a, b) => dateSort(a.eventDate, b.eventDate));\r\n\r\n          // My Created Projects\r\n          if (this.showMyProjectsList) {\r\n            this.projectCreatedByMe = response[9].data.results;\r\n            this.projectCreatedByMeTotal = response[9].data.total;\r\n          }\r\n\r\n          // My Invited Projects\r\n          this.projectInvited = response[10].data.results;\r\n          this.projectInvitedTotal = response[10].data.total;\r\n          // Project Updates\r\n          this.projectUpdates = response[3].data.results;\r\n          this.projectUpdatesTotal = response[3].data.total;\r\n          // Project Following\r\n          this.projectFollowing = response[4].data.results;\r\n          this.projectFollowingTotal = response[4].data.total;\r\n          // Opportunity Matching\r\n          this.opportunityMatching = response[5].data.results;\r\n          this.opportunityMatchingTotal = response[5].data.total;\r\n          // Product Matching\r\n          this.productMatching = response[6].data.results;\r\n          this.productMatchingTotal = response[6].data.total;\r\n          // Bid Results\r\n          this.bidResults = response[7].data.results;\r\n          this.bidResultsTotal = response[7].data.total;\r\n\r\n          EventBus.$emit('page-loading', false);\r\n        })\r\n        .catch(() => {\r\n          this.user = null;\r\n          this.zones = [];\r\n          this.events = [];\r\n          this.projectUpdates = [];\r\n          this.projectUpdatesTotal = 0;\r\n          this.projectFollowing = [];\r\n          this.projectFollowingTotal = 0;\r\n          this.opportunityMatching = [];\r\n          this.opportunityMatchingTotal = 0;\r\n          this.productMatching = [];\r\n          this.productMatchingTotal = 0;\r\n          this.bidResults = [];\r\n          this.bidResultsTotal = 0;\r\n          this.projectInvited = [];\r\n          this.projectInvitedTotal = 0;\r\n\r\n          let message = this.$createElement('span', {}, ['Oops! An error has occured and some data could not be loaded', this.$createElement('br'), 'Please contact an administrator']);\r\n          Toast.danger(this, [message], { autoHideDelay: 7500 });\r\n\r\n          EventBus.$emit('page-loading', false);\r\n        });\r\n    }\r\n  };\r\n</script>\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./dashboard-member.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./dashboard-member.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./dashboard-member.vue?vue&type=template&id=7722c870&\"\nimport script from \"./dashboard-member.vue?vue&type=script&lang=js&\"\nexport * from \"./dashboard-member.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('fragment',[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-lg col-md-6 col-sm-12\"},[_c('dashboard-overview',{attrs:{\"title\":'Projects Posted',\"color\":'green',\"icon\":'folder',\"data\":_vm.projectOverview.projectsPosted,\"compare-by-percentage\":\"\"}})],1),_c('div',{staticClass:\"col-lg col-md-6 col-sm-12\"},[_c('dashboard-overview',{attrs:{\"title\":'Number of Members',\"color\":'yellow',\"icon\":'people',\"data\":_vm.projectOverview.numberOfMembers,\"no-compare\":\"\"}})],1),_c('div',{staticClass:\"col-lg col-md-6 col-sm-12\"},[_c('dashboard-overview',{attrs:{\"title\":'Expired Members',\"color\":'red',\"icon\":'exclamation',\"data\":_vm.projectOverview.expiredMembers,\"no-compare\":\"\"}})],1),_c('div',{staticClass:\"col-lg col-md-6 col-sm-12\"},[_c('dashboard-overview',{attrs:{\"title\":'Active Projects',\"color\":'blue',\"icon\":'list',\"data\":_vm.projectOverview.activeProjects,\"no-compare\":\"\"}})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-lg\"},[_c('div',{staticClass:\"card border-0\"},[_c('div',{staticClass:\"card-body\"},[_c('h2',{staticClass:\"card-title mb-5\"},[_vm._v(\"My Project Calendar\")]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-lg-6\"},[_c('dashboard-calendar',{attrs:{\"events\":_vm.events},on:{\"fetch-events\":_vm.onCalendarDateChanged}})],1),_c('div',{staticClass:\"col-lg-6\"},[_vm._l((_vm.displayEvents),function(event,i){return _c('dashboard-member-event',{key:'calendar-event-' + i,attrs:{\"event\":event}})}),(!_vm.displayEvents || !_vm.displayEvents.length)?_c('div',{staticClass:\"alert alert-info\",attrs:{\"role\":\"alert\"}},[_vm._v(\" No upcoming events for this month \")]):_vm._e()],2)]),_c('div',{staticClass:\"row mb-3 pt-3\",staticStyle:{\"border-top\":\"1px solid #ccc\"}},[_c('div',{staticClass:\"col\"},[_c('strong',[_vm._v(\"Calendar Key\")])])]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-1\"},[_c('div',{staticClass:\"vuecal__event closing-date\",staticStyle:{\"width\":\"25px\"}},[_c('div',{staticClass:\"vuecal__event-title\"})])]),_c('div',{staticClass:\"col-3\"},[_vm._v(\"Closing Date\")]),_c('div',{staticClass:\"col-1\"},[_c('div',{staticClass:\"vuecal__event site-meeting\",staticStyle:{\"width\":\"25px\"}},[_c('div',{staticClass:\"vuecal__event-title\"})])]),_c('div',{staticClass:\"col-3\"},[_vm._v(\"Site Meeting\")])])])])])]),_c('div',{staticClass:\"row mt-2\"},[_c('div',{staticClass:\"col-lg\"},[_c('dashboard-list',{ref:\"bidProjectsList\",attrs:{\"no-border\":\"\",\"title\":'New Projects from bids&tenders',\"records\":_vm.bidProjects,\"total\":_vm.bidProjectsTotal},on:{\"fetch\":_vm.onRequestNewBTProjects},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar record = ref.record;\nreturn [_c('div',{staticClass:\"mr-auto\"},[_c('p',{staticClass:\"m-0\"},[_vm._v(_vm._s(record.project.ocaaNumber)+\" - \"+_vm._s(record.project.title)+\" - \"+_vm._s(record.project.owner.name))]),_c('p',{staticClass:\"m-0 small-grey\"},[_vm._v(_vm._s(_vm._f(\"datetime\")(record.project.closingDate,'MMM d, yyyy h:mm a'))+\" \"+_vm._s(record.project.timeZone.code))])]),_c('router-link',{staticClass:\"d-flex justify-content-between align-items-center flex-column\",attrs:{\"to\":'/project/info/' + record.project.id}},[_c('img',{staticClass:\"mb-1\",attrs:{\"src\":require(\"@/assets/document.svg\"),\"alt\":\"\"}}),_c('span',{staticClass:\"small-grey\"},[_vm._v(\"View\")])]),_c('a',{staticClass:\"d-flex justify-content-between align-items-center flex-column ml-3\",attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.dismissBidProject(record.id)}}},[_c('img',{staticClass:\"mb-1\",attrs:{\"src\":require(\"@/assets/red_x.svg\"),\"alt\":\"\"}}),_c('span',{staticClass:\"small-grey\"},[_vm._v(\"Dismiss\")])])]}}])})],1)]),_c('div',{staticClass:\"row mt-2\"},[_c('div',{staticClass:\"col-lg\"},[_c('dashboard-list',{ref:\"addendasList\",attrs:{\"no-border\":\"\",\"title\":'Addenda from bids&tenders',\"records\":_vm.addendas,\"total\":_vm.addendasTotal},on:{\"fetch\":_vm.onRequestAddendas},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar record = ref.record;\nreturn [_c('div',{staticClass:\"mr-auto\"},[_c('p',{staticClass:\"m-0\"},[_vm._v(_vm._s(record.ocaaNumber)+\" - \"+_vm._s(record.title)+\" - \"+_vm._s(record.owner))]),_c('p',{staticClass:\"m-0 small-grey\"},[_vm._v(_vm._s(_vm._f(\"datetime\")(record.closingDate,'MMM d, yyyy h:mm a'))+\" \"+_vm._s(record.timeZone.code))])]),_c('router-link',{staticClass:\"d-flex justify-content-between align-items-center flex-column\",attrs:{\"to\":'/project/info/' + record.projectId}},[_c('img',{staticClass:\"mb-1\",attrs:{\"src\":require(\"@/assets/document.svg\"),\"alt\":\"\"}}),_c('span',{staticClass:\"small-grey\"},[_vm._v(\"View\")])]),_c('a',{staticClass:\"d-flex justify-content-between align-items-center flex-column ml-3\",attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.dismissAddenda(record.id)}}},[_c('img',{staticClass:\"mb-1\",attrs:{\"src\":require(\"@/assets/red_x.svg\"),\"alt\":\"\"}}),_c('span',{staticClass:\"small-grey\"},[_vm._v(\"Dismiss\")])])]}}])})],1)]),_c('div',{staticClass:\"row mt-2\"},[_c('div',{staticClass:\"col-lg\"},[_c('dashboard-list',{ref:\"closingBidsList\",attrs:{\"no-border\":\"\",\"title\":'Closing Bids',\"records\":_vm.closingBids,\"total\":_vm.closingBidsTotal},on:{\"fetch\":_vm.onRequestClosingBids},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar record = ref.record;\nreturn [_c('div',{staticClass:\"mr-auto\"},[_c('p',{staticClass:\"m-0\"},[_vm._v(_vm._s(record.ocaaNumber)+\" - \"+_vm._s(record.title)+\" - \"+_vm._s(record.owner))]),_c('p',{staticClass:\"m-0 small-grey\"},[_vm._v(_vm._s(_vm._f(\"datetime\")(record.closingDate,'MMM d, yyyy h:mm a'))+\" \"+_vm._s(record.timeZone.code))])]),_c('router-link',{staticClass:\"d-flex justify-content-between align-items-center flex-column\",attrs:{\"to\":'/project/info/' + record.id}},[_vm._v(\" View More \")])]}},{key:\"no-records\",fn:function(){return [_vm._v(\" No bids closing today -- Sit back and relax! \")]},proxy:true}])})],1)]),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-lg\"},[_c('dashboard-list',{attrs:{\"no-border\":\"\",\"title\":'Expiring Members',\"records\":_vm.expiringMembers,\"display-all\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar record = ref.record;\nreturn [_c('div',{staticClass:\"mr-auto\"},[_c('p',{staticClass:\"m-0\"},[_vm._v(_vm._s(record.name))])]),_c('span',{staticClass:\"d-flex justify-content-between align-items-center flex-column\",attrs:{\"href\":\"#\"}},[_vm._v(\" \"+_vm._s(_vm._f(\"datetime\")(record.expiryDate,'MMMM dd, yyyy'))+\" \")])]}}])})],1)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n  <fragment>\r\n    <div class=\"row\">\r\n      <div class=\"col-lg col-md-6 col-sm-12\">\r\n        <dashboard-overview\r\n          :title=\"'Projects Posted'\"\r\n          :color=\"'green'\"\r\n          :icon=\"'folder'\"\r\n          :data=\"projectOverview.projectsPosted\"\r\n          compare-by-percentage\r\n        ></dashboard-overview>\r\n      </div>\r\n\r\n      <div class=\"col-lg col-md-6 col-sm-12\">\r\n        <dashboard-overview\r\n          :title=\"'Number of Members'\"\r\n          :color=\"'yellow'\"\r\n          :icon=\"'people'\"\r\n          :data=\"projectOverview.numberOfMembers\"\r\n          no-compare\r\n        ></dashboard-overview>\r\n      </div>\r\n\r\n      <div class=\"col-lg col-md-6 col-sm-12\">\r\n        <dashboard-overview\r\n          :title=\"'Expired Members'\"\r\n          :color=\"'red'\"\r\n          :icon=\"'exclamation'\"\r\n          :data=\"projectOverview.expiredMembers\"\r\n          no-compare\r\n        ></dashboard-overview>\r\n      </div>\r\n\r\n      <div class=\"col-lg col-md-6 col-sm-12\">\r\n        <dashboard-overview\r\n          :title=\"'Active Projects'\"\r\n          :color=\"'blue'\"\r\n          :icon=\"'list'\"\r\n          :data=\"projectOverview.activeProjects\"\r\n          no-compare\r\n        ></dashboard-overview>\r\n      </div>\r\n    </div>\r\n    <div class=\"row\">\r\n      <div class=\"col-lg\">\r\n        <div class=\"card border-0\">\r\n          <div class=\"card-body\">\r\n            <h2 class=\"card-title mb-5\">My Project Calendar</h2>\r\n            <div class=\"row\">\r\n              <div class=\"col-lg-6\">\r\n                <dashboard-calendar :events=\"events\" @fetch-events=\"onCalendarDateChanged\"></dashboard-calendar>\r\n              </div>\r\n              <div class=\"col-lg-6\">\r\n                <dashboard-member-event v-for=\"(event, i) in displayEvents\" :key=\"'calendar-event-' + i\" :event=\"event\"></dashboard-member-event>\r\n                <div v-if=\"!displayEvents || !displayEvents.length\" class=\"alert alert-info\" role=\"alert\">\r\n                  No upcoming events for this month\r\n                </div>\r\n              </div>\r\n            </div>\r\n            <div class=\"row mb-3 pt-3\" style=\"border-top: 1px solid #ccc;\">\r\n              <div class=\"col\">\r\n                <strong>Calendar Key</strong>\r\n              </div>\r\n            </div>\r\n            <div class=\"row\">\r\n              <div class=\"col-1\">\r\n                <div class=\"vuecal__event closing-date\" style=\"width: 25px;\">\r\n                  <div class=\"vuecal__event-title\">&nbsp;</div>\r\n                </div>\r\n              </div>\r\n              <div class=\"col-3\">Closing Date</div>\r\n              <div class=\"col-1\">\r\n                <div class=\"vuecal__event site-meeting\" style=\"width: 25px;\">\r\n                  <div class=\"vuecal__event-title\">&nbsp;</div>\r\n                </div>\r\n              </div>\r\n              <div class=\"col-3\">Site Meeting</div>\r\n            </div>\r\n          </div>\r\n        </div>\r\n      </div>\r\n    </div>\r\n\r\n    <div class=\"row mt-2\">\r\n      <div class=\"col-lg\">\r\n        <dashboard-list no-border :title=\"'New Projects from bids&tenders'\" :records=\"bidProjects\" :total=\"bidProjectsTotal\"\r\n            @fetch=\"onRequestNewBTProjects\" ref=\"bidProjectsList\">\r\n          <template v-slot:default=\"{ record }\">\r\n            <div class=\"mr-auto\">\r\n              <p class=\"m-0\">{{ record.project.ocaaNumber }} - {{ record.project.title }} - {{ record.project.owner.name }}</p>\r\n              <p class=\"m-0 small-grey\">{{ record.project.closingDate | datetime('MMM d, yyyy h:mm a') }} {{ record.project.timeZone.code}}</p>\r\n            </div>\r\n            <router-link :to=\"'/project/info/' + record.project.id\" class=\"d-flex justify-content-between align-items-center flex-column\">\r\n              <img class=\"mb-1\" src=\"@/assets/document.svg\" alt />\r\n              <span class=\"small-grey\">View</span>\r\n            </router-link>\r\n            <a href=\"#\" class=\"d-flex justify-content-between align-items-center flex-column ml-3\" @click.prevent=\"dismissBidProject(record.id)\">\r\n              <img class=\"mb-1\" src=\"@/assets/red_x.svg\" alt />\r\n              <span class=\"small-grey\">Dismiss</span>\r\n            </a>\r\n          </template>\r\n        </dashboard-list>\r\n      </div>\r\n    </div>\r\n\r\n    <div class=\"row mt-2\">\r\n      <div class=\"col-lg\">\r\n        <dashboard-list no-border :title=\"'Addenda from bids&tenders'\" :records=\"addendas\" :total=\"addendasTotal\"\r\n            @fetch=\"onRequestAddendas\" ref=\"addendasList\">\r\n          <template v-slot:default=\"{ record }\">\r\n            <div class=\"mr-auto\">\r\n              <p class=\"m-0\">{{ record.ocaaNumber }} - {{ record.title }} - {{ record.owner }}</p>\r\n              <p class=\"m-0 small-grey\">{{ record.closingDate | datetime('MMM d, yyyy h:mm a') }} {{ record.timeZone.code }}</p>\r\n            </div>\r\n            <router-link :to=\"'/project/info/' + record.projectId\" class=\"d-flex justify-content-between align-items-center flex-column\">\r\n              <img class=\"mb-1\" src=\"@/assets/document.svg\" alt />\r\n              <span class=\"small-grey\">View</span>\r\n            </router-link>\r\n            <a href=\"#\" class=\"d-flex justify-content-between align-items-center flex-column ml-3\" @click.prevent=\"dismissAddenda(record.id)\">\r\n              <img class=\"mb-1\" src=\"@/assets/red_x.svg\" alt />\r\n              <span class=\"small-grey\">Dismiss</span>\r\n            </a>\r\n          </template>\r\n        </dashboard-list>\r\n      </div>\r\n    </div>\r\n\r\n    <div class=\"row mt-2\">\r\n      <div class=\"col-lg\">\r\n        <dashboard-list no-border :title=\"'Closing Bids'\" :records=\"closingBids\" :total=\"closingBidsTotal\" @fetch=\"onRequestClosingBids\" ref=\"closingBidsList\">\r\n          <template v-slot:default=\"{ record }\">\r\n            <div class=\"mr-auto\">\r\n              <p class=\"m-0\">{{ record.ocaaNumber }} - {{ record.title }} - {{ record.owner }}</p>\r\n              <p class=\"m-0 small-grey\">{{ record.closingDate | datetime('MMM d, yyyy h:mm a') }} {{ record.timeZone.code }}</p>\r\n            </div>\r\n            <router-link :to=\"'/project/info/' + record.id\" class=\"d-flex justify-content-between align-items-center flex-column\">\r\n              View More\r\n            </router-link>\r\n          </template>\r\n          <template v-slot:no-records>\r\n            No bids closing today -- Sit back and relax!\r\n          </template>\r\n        </dashboard-list>\r\n      </div>\r\n    </div>\r\n\r\n    <div class=\"row\">\r\n      <div class=\"col-lg\">\r\n        <dashboard-list no-border :title=\"'Expiring Members'\" :records=\"expiringMembers\" display-all>\r\n          <template v-slot:default=\"{ record }\">\r\n            <div class=\"mr-auto\">\r\n              <p class=\"m-0\">{{ record.name }}</p>\r\n            </div>\r\n            <span href=\"#\" class=\"d-flex justify-content-between align-items-center flex-column\">\r\n              {{ record.expiryDate | datetime('MMMM dd, yyyy') }}\r\n            </span>\r\n          </template>\r\n        </dashboard-list>\r\n      </div>\r\n    </div>\r\n  </fragment>\r\n</template>\r\n\r\n<script>\r\nimport { DashboardService, DismissProjectService } from \"@/services/\";\r\nimport { date as dateSort } from \"@/utils/sort\";\r\nimport Toast from \"@/utils/toast\";\r\nimport { EventBus } from \"@/event-bus/event-bus\";\r\nimport { format } from 'date-fns';\r\n\r\nexport default {\r\n  name: \"dashboard-ocaa\",\r\n  components: {\r\n    'dashboard-calendar': () => import('@/views/dashboard/components/dashboard-calendar.vue'),\r\n    'dashboard-overview': () => import('@/views/dashboard/components/dashboard-overview.vue'),\r\n    'dashboard-list': () => import('@/views/dashboard/components/dashboard-list.vue'),\r\n    'dashboard-member-event': () => import('@/views/dashboard/components/dashboard-member-event.vue'),\r\n  },\r\n  data: function() {\r\n    return {\r\n      projectOverview: { projectsPosted: [], numberOfMembers: [], expiredMembers: [], activeProjects: [] },\r\n      events: [],\r\n      bidProjects: [],\r\n      bidProjectsTotal: 0,\r\n      addendas: [],\r\n      addendasTotal: 0,\r\n      closingBids:[],\r\n      closingBidsTotal: 0,\r\n      expiringMembers: [],\r\n    };\r\n  },\r\n  computed: {\r\n    displayEvents() {\r\n      return this.events.filter(event => event.eventDate && Date.parse(event.eventDate) > Date.now()).slice(0, 8);\r\n    },\r\n    getMonthStartEndDates() {\r\n      let date = new Date();\r\n      let year = date.getFullYear();\r\n      let month = date.getMonth();\r\n\r\n      return {\r\n        start: format(new Date(year, month, 1), 'yyyy-MM-dd'),\r\n        end: format(new Date(year, month + 1, 0), 'yyyy-MM-dd')\r\n      };\r\n    },\r\n  },\r\n  methods: {\r\n    async dismissBidProject(id) {\r\n      await DismissProjectService.dismiss(id);\r\n      this.onRequestNewBTProjects(this.$refs.bidProjectsList.displayRecordsCount);\r\n    },\r\n    async dismissAddenda(id) {\r\n      await DismissProjectService.dismiss(id);\r\n      this.onRequestAddendas(this.$refs.addendasList.displayRecordsCount);\r\n    },\r\n    async dismissClosingBid(id) {\r\n      await DismissProjectService.dismiss(id);\r\n      this.onRequestClosingBids(this.$refs.closingBidsList.displayRecordsCount);\r\n    },\r\n    fetchAddendas(pageSize) {\r\n      return DashboardService.admin.dismissalbtaddenda({\r\n        pageSize: pageSize,\r\n        page: 1\r\n      });\r\n    },\r\n    fetchCalendarEvents(startDate, endDate) {\r\n      return DashboardService.calendar({ startDate, endDate });\r\n    },\r\n    fetchClosingBids(pageSize) {\r\n      return DashboardService.admin.search({\r\n        closing: {\r\n          start: new Date().toDateString(),\r\n          end: new Date().toDateString()\r\n        },\r\n        pageSize: pageSize,\r\n        page: 1\r\n      });\r\n    },\r\n    fetchNewBTProjects(pageSize) {\r\n      return DashboardService.admin.dismissalsearch({\r\n        codes: [\"bt_project\"],\r\n        pageSize: pageSize,\r\n        page: 1\r\n      });\r\n    },\r\n\r\n    async onCalendarDateChanged({ startDate, endDate }) {\r\n      let response = await this.fetchCalendarEvents(startDate, endDate);\r\n      this.events = (response && response.data) || [];\r\n\r\n      if (this.events.length) {\r\n        this.events.sort((a, b) => dateSort(a.eventDate, b.eventDate));\r\n      }\r\n    },\r\n    async onRequestAddendas (pageSize) {\r\n      let response = await this.fetchAddendas(pageSize);\r\n      let data = (response && response.data) || { results: [], total: 0 };\r\n      this.addendas = data.results;\r\n      this.addendasTotal =  data.total;\r\n    },\r\n    async onRequestClosingBids (pageSize) {\r\n      let response = await this.fetchClosingBids(pageSize);\r\n      let data = (response && response.data) || { results: [], total: 0 };\r\n      this.closingBids = data.results;\r\n      this.closingBidsTotal =  data.total;\r\n    },\r\n    async onRequestNewBTProjects(pageSize) {\r\n      let response = await this.fetchNewBTProjects(pageSize);\r\n      let data = (response && response.data) || { results: [], total: 0 };\r\n      this.bidProjects = data.results;\r\n      this.bidProjectsTotal = data.total;\r\n    },\r\n  },\r\n  mounted () {\r\n    let { start, end } = this.getMonthStartEndDates;\r\n\r\n    Promise.all([\r\n      DashboardService.admin.overview(),\r\n      this.fetchCalendarEvents(start, end),\r\n      this.fetchNewBTProjects(3),\r\n      this.fetchAddendas(3),\r\n      this.fetchClosingBids(3)\r\n    ])\r\n    .then(response => {\r\n      // overview\r\n      this.projectOverview.projectsPosted = response[0].data.projectsPosted.map(i => { return { key: i.year, value: i.total } });\r\n      this.projectOverview.numberOfMembers = response[0].data.numberOfMembers.map(i => { return { key: i.name, value: i.total } });\r\n      this.projectOverview.expiredMembers = response[0].data.expiredMembers.map(i => { return { key: i.name, value: i.total } });\r\n      this.projectOverview.activeProjects = response[0].data.activeProjects.map(i => { return { key: i.name, value: i.total } });\r\n      this.events = response[1].data.sort((a, b) => dateSort(a.eventDate, b.eventDate));\r\n      this.bidProjects = response[2].data.results;\r\n      this.bidProjectsTotal = response[2].data.total;\r\n      this.addendas = response[3].data.results;\r\n      this.addendasTotal = response[3].data.total;\r\n      this.closingBids = response[4].data.results;\r\n      this.closingBidsTotal = response[4].data.total;\r\n      this.expiringMembers = response[0].data.expiringMembers;\r\n\r\n      EventBus.$emit('page-loading', false);\r\n    })\r\n    .catch(() => {\r\n      this.projectOverview.projectsPosted = [];\r\n      this.projectOverview.numberOfMembers = [];\r\n      this.projectOverview.expiredMembers = [];\r\n      this.projectOverview.activeProjects = [];\r\n      this.events = [];\r\n      this.bidProjects = [];\r\n      this.bidProjectsTotal = 0;\r\n      this.addendas = [];\r\n      this.addendasTotal = 0;\r\n      this.closingBids = [];\r\n      this.closingBidsTotal = 0;\r\n      this.expiringMembers = [];\r\n\r\n      let message = this.$createElement('span', {}, ['Oops! An error has occured and some data could not be loaded', this.$createElement('br'), 'Please contact an administrator']);\r\n      Toast.danger(this, [message], { autoHideDelay: 7500 });\r\n\r\n      EventBus.$emit('page-loading', false);\r\n    });\r\n  }\r\n};\r\n</script>\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./dashboard-ocaa.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./dashboard-ocaa.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./dashboard-ocaa.vue?vue&type=template&id=15ff444d&\"\nimport script from \"./dashboard-ocaa.vue?vue&type=script&lang=js&\"\nexport * from \"./dashboard-ocaa.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","<template>\r\n  <div class=\"main_page\">\r\n    <app-navbar></app-navbar>\r\n    <div class=\"page\">\r\n      <div>\r\n        <div class=\"page-title\">\r\n          <h1>My Dashboard</h1>\r\n        </div>\r\n        <div class=\"page-content\">\r\n          <component :is=\"dashboardComponent\"></component>\r\n        </div>\r\n      </div>\r\n    </div>\r\n  </div>\r\n</template>\r\n\r\n<script>\r\nimport MemberDashboard from \"@/views/dashboard/components/dashboard-member.vue\";\r\nimport OcaaDashboard from \"@/views/dashboard/components/dashboard-ocaa.vue\";\r\n\r\nexport default {\r\n  name: \"dashboard\",\r\n  components: {\r\n    'app-navbar': () => import('@/components/app-navbar.vue'),\r\n    MemberDashboard,\r\n    OcaaDashboard\r\n  },\r\n  data: function() {\r\n    return {\r\n      dashboardComponent: null\r\n    };\r\n  },\r\n  mounted() {\r\n    let user = this.$store.getters.getCurrentUser;\r\n    this.dashboardComponent = (!user.isAdmin) ? MemberDashboard : OcaaDashboard;\r\n  }\r\n};\r\n</script>\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./dashboard.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./dashboard.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./dashboard.vue?vue&type=template&id=75588b56&\"\nimport script from \"./dashboard.vue?vue&type=script&lang=js&\"\nexport * from \"./dashboard.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","module.exports = __webpack_public_path__ + \"img/printer.1b895cb8.svg\";","module.exports = __webpack_public_path__ + \"img/clock.27da240f.svg\";","module.exports = __webpack_public_path__ + \"img/list.f0d629d0.svg\";","const defaultOptions = {\r\n  noCloseButton: true,\r\n  autoHideDelay: 3000,\r\n  toaster: \"b-toaster-top-right\",\r\n  isStatus: true\r\n};\r\n\r\nconst success = function (context, message, overrideOptions) {\r\n  let options = { variant: 'success', ...defaultOptions, ...overrideOptions };\r\n  context.$root.$bvToast.toast(message, options);\r\n}\r\n\r\nconst danger = function (context, message, overrideOptions) {\r\n  let options = { variant: 'danger', ...defaultOptions, ...overrideOptions };\r\n  context.$root.$bvToast.toast(message, options);\r\n}\r\n\r\nexport default { success, danger }\r\n"],"sourceRoot":""}