Ver código fonte

fix selected home dashboard should show as selected even though its not starred

Marcus Efraimsson 7 anos atrás
pai
commit
52a71596eb

+ 7 - 1
public/app/core/components/SharedPreferences/SharedPreferences.tsx

@@ -30,7 +30,6 @@ export class SharedPreferences extends PureComponent<Props, State> {
 
   constructor(props) {
     super(props);
-    console.log('props', props);
 
     this.state = {
       homeDashboardId: 0,
@@ -44,6 +43,13 @@ export class SharedPreferences extends PureComponent<Props, State> {
     const prefs = await this.backendSrv.get(`/api/${this.props.resourceUri}/preferences`);
     const dashboards = await this.backendSrv.search({ starred: true });
 
+    if (prefs.homeDashboardId > 0 && !dashboards.find(d => d.id === prefs.homeDashboardId)) {
+      const missing = await this.backendSrv.search({ dashboardIds: [prefs.homeDashboardId] });
+      if (missing && missing.length > 0) {
+        dashboards.push(missing[0]);
+      }
+    }
+
     this.setState({
       homeDashboardId: prefs.homeDashboardId,
       theme: prefs.theme,