From 9d0477a0811ccdbd83c9481dd26d70641c1337c5 Mon Sep 17 00:00:00 2001 From: Beto Dealmeida Date: Mon, 8 Apr 2019 22:34:38 -0700 Subject: [PATCH 1/2] Fix refresh frequency --- superset/assets/src/dashboard/components/Header.jsx | 2 ++ .../dashboard/components/HeaderActionsDropdown.jsx | 12 +++++++----- .../assets/src/dashboard/reducers/dashboardState.js | 6 +++++- 3 files changed, 14 insertions(+), 6 deletions(-) diff --git a/superset/assets/src/dashboard/components/Header.jsx b/superset/assets/src/dashboard/components/Header.jsx index 366efbe3d8f7b..92d3b1df62ba2 100644 --- a/superset/assets/src/dashboard/components/Header.jsx +++ b/superset/assets/src/dashboard/components/Header.jsx @@ -215,6 +215,7 @@ class Header extends React.PureComponent { colorScheme, filters, dashboardInfo, + refreshFrequency, } = this.props; const scale = CategoricalColorNamespace.getScale( @@ -231,6 +232,7 @@ class Header extends React.PureComponent { label_colors: labelColors, dashboard_title: dashboardTitle, default_filters: safeStringify(filters), + refresh_frequency: refreshFrequency, }; // make sure positions data less than DB storage limitation: diff --git a/superset/assets/src/dashboard/components/HeaderActionsDropdown.jsx b/superset/assets/src/dashboard/components/HeaderActionsDropdown.jsx index 5fc9d0ede851c..5aa468b742aa3 100644 --- a/superset/assets/src/dashboard/components/HeaderActionsDropdown.jsx +++ b/superset/assets/src/dashboard/components/HeaderActionsDropdown.jsx @@ -177,11 +177,13 @@ class HeaderActionsDropdown extends React.PureComponent { {t('Force refresh dashboard')} - {t('Set auto-refresh interval')}} - /> + {editMode && ( + {t('Set auto-refresh interval')}} + /> + )} {editMode && ( {t('Edit dashboard metadata')} diff --git a/superset/assets/src/dashboard/reducers/dashboardState.js b/superset/assets/src/dashboard/reducers/dashboardState.js index 007f63a286553..830e2a751d915 100644 --- a/superset/assets/src/dashboard/reducers/dashboardState.js +++ b/superset/assets/src/dashboard/reducers/dashboardState.js @@ -162,7 +162,11 @@ export default function dashboardStateReducer(state = {}, action) { return { ...state, hasUnsavedChanges }; }, [SET_REFRESH_FREQUENCY]() { - return { ...state, refreshFrequency: action.refreshFrequency }; + return { + ...state, + refreshFrequency: action.refreshFrequency, + hasUnsavedChanges: true, + }; }, }; From f53b24c7126e59c066ad4e6a1acc90ca10508bf1 Mon Sep 17 00:00:00 2001 From: Beto Dealmeida Date: Tue, 9 Apr 2019 07:48:39 -0700 Subject: [PATCH 2/2] Fix unit tests --- .../dashboard/components/HeaderActionsDropdown_spec.jsx | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/superset/assets/spec/javascripts/dashboard/components/HeaderActionsDropdown_spec.jsx b/superset/assets/spec/javascripts/dashboard/components/HeaderActionsDropdown_spec.jsx index cd1c0156c28ca..f89c9ed942eb0 100644 --- a/superset/assets/spec/javascripts/dashboard/components/HeaderActionsDropdown_spec.jsx +++ b/superset/assets/spec/javascripts/dashboard/components/HeaderActionsDropdown_spec.jsx @@ -71,9 +71,9 @@ describe('HeaderActionsDropdown', () => { expect(wrapper.find(MenuItem)).toHaveLength(1); }); - it('should render the RefreshIntervalModal', () => { + it('should not render the RefreshIntervalModal', () => { const wrapper = setup(overrideProps); - expect(wrapper.find(RefreshIntervalModal)).toHaveLength(1); + expect(wrapper.find(RefreshIntervalModal)).toHaveLength(0); }); it('should render the URLShortLinkModal', () => { @@ -105,9 +105,9 @@ describe('HeaderActionsDropdown', () => { expect(wrapper.find(MenuItem)).toHaveLength(2); }); - it('should render the RefreshIntervalModal', () => { + it('should not render the RefreshIntervalModal', () => { const wrapper = setup(overrideProps); - expect(wrapper.find(RefreshIntervalModal)).toHaveLength(1); + expect(wrapper.find(RefreshIntervalModal)).toHaveLength(0); }); it('should render the URLShortLinkModal', () => {