From ed1864e076a0d64b1ad0c09a9a87d9dcc4c056a9 Mon Sep 17 00:00:00 2001 From: bergquist Date: Wed, 16 Mar 2016 11:52:25 +0100 Subject: [PATCH] feat(dashlist): stores recently visited dashboards per orgid --- public/app/features/dashboard/impression_store.ts | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/public/app/features/dashboard/impression_store.ts b/public/app/features/dashboard/impression_store.ts index 4bd979a6b34..a0f20f7ec75 100644 --- a/public/app/features/dashboard/impression_store.ts +++ b/public/app/features/dashboard/impression_store.ts @@ -2,14 +2,16 @@ import store from 'app/core/store'; import _ from 'lodash'; +import config from 'app/core/config'; export class ImpressionsStore { constructor() {} addDashboardImpression(dashboardId) { + var impressionsKey = this.impressionKey(config); var impressions = []; - if (store.exists("dashboard_impressions")) { - impressions = JSON.parse(store.get("dashboard_impressions")); + if (store.exists(impressionsKey)) { + impressions = JSON.parse(store.get(impressionsKey)); if (!_.isArray(impressions)) { impressions = []; } @@ -24,11 +26,11 @@ export class ImpressionsStore { if (impressions.length > 50) { impressions.pop(); } - store.set("dashboard_impressions", JSON.stringify(impressions)); + store.set(impressionsKey, JSON.stringify(impressions)); } getDashboardOpened() { - var impressions = store.get("dashboard_impressions") || "[]"; + var impressions = store.get(this.impressionKey(config)) || "[]"; impressions = JSON.parse(impressions); @@ -38,6 +40,10 @@ export class ImpressionsStore { return impressions; } + + impressionKey(config) { + return "dashboard_impressions-" + config.bootData.user.orgId; + } } var impressions = new ImpressionsStore();