diff --git a/superset/assets/spec/javascripts/datasource/DatasourceEditor_spec.jsx b/superset/assets/spec/javascripts/datasource/DatasourceEditor_spec.jsx
index 61d2f667b81d..c23ff43dbe07 100644
--- a/superset/assets/spec/javascripts/datasource/DatasourceEditor_spec.jsx
+++ b/superset/assets/spec/javascripts/datasource/DatasourceEditor_spec.jsx
@@ -91,6 +91,7 @@ describe('DatasourceEditor', () => {
});
it('renders isSqla fields', () => {
+ wrapper.setState({ activeTabKey: 4 });
expect(wrapper.state('isSqla')).toBe(true);
expect(wrapper.find(Field).find({ fieldKey: 'fetch_values_predicate' }).exists()).toBe(true);
});
diff --git a/superset/assets/src/datasource/DatasourceEditor.jsx b/superset/assets/src/datasource/DatasourceEditor.jsx
index 10a08618b850..71fa9af49bd0 100644
--- a/superset/assets/src/datasource/DatasourceEditor.jsx
+++ b/superset/assets/src/datasource/DatasourceEditor.jsx
@@ -565,30 +565,20 @@ export class DatasourceEditor extends React.PureComponent {
}
render() {
- const datasource = this.state.datasource;
+ const { datasource, activeTabKey } = this.state;
return (
{this.renderErrors()}
-
- {this.state.activeTabKey === 1 &&
-
-
-
- {this.renderSettingsFieldset()}
-
-
-
-
- {this.renderAdvancedFieldset()}
-
-
-
- }
+ }
+ eventKey={1}
+ >
+ {activeTabKey === 1 && this.renderMetricCollection()}
- {this.state.activeTabKey === 2 &&
+ {activeTabKey === 2 &&
}
eventKey={3}
>
- {this.state.activeTabKey === 3 &&
+ {activeTabKey === 3 &&
this.setColumns({ calculatedColumns })}
@@ -641,11 +631,25 @@ export class DatasourceEditor extends React.PureComponent {
/>
}
- }
- eventKey={4}
- >
- {this.state.activeTabKey === 4 && this.renderMetricCollection()}
+
+ {activeTabKey === 4 &&
+
+
+ {t('Be careful.')}
+ {t('Changing these settings will affect all charts using this datasource, including charts owned by other people.')}
+
+
+
+ {this.renderSettingsFieldset()}
+
+
+
+
+ {this.renderAdvancedFieldset()}
+
+
+
+ }
diff --git a/superset/assets/src/datasource/main.css b/superset/assets/src/datasource/main.css
index f551f7be96f7..608143377a95 100644
--- a/superset/assets/src/datasource/main.css
+++ b/superset/assets/src/datasource/main.css
@@ -20,3 +20,12 @@
height: 600px;
overflow: auto;
}
+
+.Datasource .change-warning {
+ margin: 16px 10px 0;
+ color: #FE4A49;
+}
+
+.Datasource .change-warning .bold {
+ font-weight: bold;
+}
diff --git a/superset/assets/src/explore/components/controls/DatasourceControl.jsx b/superset/assets/src/explore/components/controls/DatasourceControl.jsx
index 910a5fdef6ef..fc04ee978df8 100644
--- a/superset/assets/src/explore/components/controls/DatasourceControl.jsx
+++ b/superset/assets/src/explore/components/controls/DatasourceControl.jsx
@@ -124,11 +124,11 @@ class DatasourceControl extends React.PureComponent {
{t('Click to edit the datasource')}
+ {t('Click to change the datasource')}
}
>
-
@@ -145,9 +145,9 @@ class DatasourceControl extends React.PureComponent {
>
{datasource.type === 'table' &&