diff --git a/superset/assets/javascripts/dashboard/components/Controls.jsx b/superset/assets/javascripts/dashboard/components/Controls.jsx
index 4248a6055f85b..09b8937e24263 100644
--- a/superset/assets/javascripts/dashboard/components/Controls.jsx
+++ b/superset/assets/javascripts/dashboard/components/Controls.jsx
@@ -43,7 +43,6 @@ class Controls extends React.PureComponent {
}
render() {
const dashboard = this.props.dashboard;
- const canSave = dashboard.dash_save_perm;
const emailBody = `Checkout this dashboard: ${window.location.href}`;
const emailLink = 'mailto:?Subject=Superset%20Dashboard%20'
+ `${dashboard.dashboard_title}&Body=${emailBody}`;
@@ -81,11 +80,16 @@ class Controls extends React.PureComponent {
onChange={this.changeCss.bind(this)}
/>
+
@@ -93,14 +97,11 @@ class Controls extends React.PureComponent {
dashboard={dashboard}
css={this.state.css}
triggerNode={
-
+
}
/>
-
);
}
diff --git a/superset/assets/javascripts/dashboard/components/SaveModal.jsx b/superset/assets/javascripts/dashboard/components/SaveModal.jsx
index ade62bf6a47a7..88c8ad2089c05 100644
--- a/superset/assets/javascripts/dashboard/components/SaveModal.jsx
+++ b/superset/assets/javascripts/dashboard/components/SaveModal.jsx
@@ -107,7 +107,6 @@ class SaveModal extends React.PureComponent {
{ this.modal = modal; }}
triggerNode={this.props.triggerNode}
- isButton
modalTitle="Save Dashboard"
modalBody={
diff --git a/superset/views/core.py b/superset/views/core.py
index 032d86155f219..8c442f0a393a3 100755
--- a/superset/views/core.py
+++ b/superset/views/core.py
@@ -1641,14 +1641,13 @@ def dashboard(**kwargs): # noqa
dashboard_data = dash.data
dashboard_data.update({
'standalone_mode': request.args.get("standalone") == "true",
+ 'dash_save_perm': dash_save_perm,
+ 'dash_edit_perm': dash_edit_perm,
})
bootstrap_data = {
'user_id': g.user.get_id(),
- 'dash_save_perm': dash_save_perm,
- 'dash_edit_perm': dash_edit_perm,
- 'dash_edit_perm': check_ownership(dash, raise_if_false=False),
- 'dashboard_data': dash.data,
+ 'dashboard_data': dashboard_data,
'datasources': {ds.uid: ds.data for ds in datasources},
}