Skip to content

Commit

Permalink
Bug fix: Dashboard Level Filters not updating
Browse files Browse the repository at this point in the history
  • Loading branch information
gabrieldutra committed Oct 30, 2019
1 parent 80114ef commit 05e8b24
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 10 deletions.
5 changes: 2 additions & 3 deletions client/app/pages/dashboards/DashboardPage.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -246,13 +246,12 @@ DashboardEditControl.propTypes = {
};

function DashboardSettings({ dashboardOptions }) {
const { dashboard, updateDashboard, loadDashboard } = dashboardOptions;
const { dashboard, updateDashboard } = dashboardOptions;
return (
<div className="m-b-10 p-15 bg-white tiled">
<Checkbox
checked={!!dashboard.dashboard_filters_enabled}
onChange={({ target }) => updateDashboard({ dashboard_filters_enabled: target.checked })
.then(() => loadDashboard())}
onChange={({ target }) => updateDashboard({ dashboard_filters_enabled: target.checked })}
>
Use Dashboard Level Filters
</Checkbox>
Expand Down
17 changes: 10 additions & 7 deletions client/app/pages/dashboards/useDashboard.js
Original file line number Diff line number Diff line change
Expand Up @@ -182,12 +182,11 @@ function useDashboard(dashboardData) {
if (includeVersion) {
data = { ...data, version: dashboard.version };
}
return Dashboard.save(
data,
updatedDashboard => setDashboard(currentDashboard => extend({},
return Dashboard.save(data).$promise
.then(updatedDashboard => setDashboard(currentDashboard => extend({},
currentDashboard,
pick(updatedDashboard, keys(data)))),
(error) => {
pick(updatedDashboard, keys(data)))))
.catch((error) => {
if (error.status === 403) {
notification.error('Dashboard update failed', 'Permission Denied.');
} else if (error.status === 409) {
Expand All @@ -197,8 +196,7 @@ function useDashboard(dashboardData) {
{ duration: null },
);
}
},
).$promise;
});
}, [dashboard]);

const togglePublished = useCallback(
Expand Down Expand Up @@ -290,6 +288,11 @@ function useDashboard(dashboardData) {
loadDashboard();
}, [dashboardData]);

// reload dashboard when filter option changes
useEffect(() => {
loadDashboard();
}, [dashboard.dashboard_filters_enabled]);

return {
dashboard,
globalParameters,
Expand Down

0 comments on commit 05e8b24

Please sign in to comment.