From b590bebcf248a986b1eaca412615afe6f0469a09 Mon Sep 17 00:00:00 2001 From: Chris Bishop Date: Mon, 26 Mar 2018 13:21:50 +0100 Subject: [PATCH 1/3] Dashboard widget name will set to visualisation name if it is empty. --- ui/src/containers/Dashboard/index.js | 16 +++++++++++++--- ui/src/containers/WidgetVisualisePicker/index.js | 6 ++++-- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/ui/src/containers/Dashboard/index.js b/ui/src/containers/Dashboard/index.js index ae01a2006c..a0b7ba9416 100644 --- a/ui/src/containers/Dashboard/index.js +++ b/ui/src/containers/Dashboard/index.js @@ -10,6 +10,7 @@ import Owner from 'ui/containers/Owner'; import PrivacyToggleButton from 'ui/containers/PrivacyToggleButton'; import DashboardSharing from 'ui/containers/DashboardSharing'; import Spinner from 'ui/components/Spinner'; +import { connect } from 'react-redux'; import styles from './styles.css'; const schema = 'dashboard'; @@ -53,12 +54,21 @@ class Dashboard extends Component { }); }; - onChangeWidgetTitle = (widgetIndex, title) => { + onChangeWidgetTitle = (widgetIndex, widgetPatch, title) => { this.onWidgetChange([widgetIndex, 'title'], title); }; - onChangeWidgetVisualisation = (widgetIndex, visualisation) => { - this.onWidgetChange([widgetIndex, 'visualisation'], visualisation); + onChangeWidgetVisualisation = (widgetIndex, visualisation, title) => { + const { model } = this.props; + const newModel = model + .setIn(['widgets', widgetIndex, 'visualisation'], visualisation) + .setIn(['widgets', widgetIndex, 'title'], title); + const widgetsUpdate = newModel.get('widgets'); + + this.props.updateModel({ + path: ['widgets'], + value: widgetsUpdate + }); }; onChangeVisibility = (value) => { diff --git a/ui/src/containers/WidgetVisualisePicker/index.js b/ui/src/containers/WidgetVisualisePicker/index.js index 838d8c9fbe..632e63c1c5 100644 --- a/ui/src/containers/WidgetVisualisePicker/index.js +++ b/ui/src/containers/WidgetVisualisePicker/index.js @@ -29,8 +29,10 @@ class WidgetVisualisePicker extends Component { getVisualisationId = () => this.props.model.get('visualisation'); onClickVisualisation = (visualisation) => { - this.props.onChangeTitle(this.getNewTitle(visualisation)); - this.props.onChangeVisualisation(visualisation.get('_id')); + this.props.onChangeVisualisation( + visualisation.get('_id'), + this.getNewTitle(visualisation) + ); }; onChangeTitle = e => this.props.onChangeTitle(e.target.value); From 62b151a4034dacf84bf33dc3f51b694d2ba971d9 Mon Sep 17 00:00:00 2001 From: Chris Bishop Date: Mon, 26 Mar 2018 14:07:25 +0100 Subject: [PATCH 2/3] Fixed typo. --- ui/src/containers/Dashboard/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ui/src/containers/Dashboard/index.js b/ui/src/containers/Dashboard/index.js index a0b7ba9416..c5edb310c9 100644 --- a/ui/src/containers/Dashboard/index.js +++ b/ui/src/containers/Dashboard/index.js @@ -54,7 +54,7 @@ class Dashboard extends Component { }); }; - onChangeWidgetTitle = (widgetIndex, widgetPatch, title) => { + onChangeWidgetTitle = (widgetIndex, title) => { this.onWidgetChange([widgetIndex, 'title'], title); }; From 570151452a7d61f46e92b5f52079bb12ddb31bf3 Mon Sep 17 00:00:00 2001 From: James Mullaney Date: Tue, 27 Mar 2018 12:59:03 +0100 Subject: [PATCH 3/3] lint: Remove unneeded import --- ui/src/containers/Dashboard/index.js | 1 - 1 file changed, 1 deletion(-) diff --git a/ui/src/containers/Dashboard/index.js b/ui/src/containers/Dashboard/index.js index c5edb310c9..926dc973f4 100644 --- a/ui/src/containers/Dashboard/index.js +++ b/ui/src/containers/Dashboard/index.js @@ -10,7 +10,6 @@ import Owner from 'ui/containers/Owner'; import PrivacyToggleButton from 'ui/containers/PrivacyToggleButton'; import DashboardSharing from 'ui/containers/DashboardSharing'; import Spinner from 'ui/components/Spinner'; -import { connect } from 'react-redux'; import styles from './styles.css'; const schema = 'dashboard';