Skip to content

Commit

Permalink
Fix dashboard edit button is disabled (#2634)
Browse files Browse the repository at this point in the history
* Fix dashboard edit button is disabled

* Addressing comments
  • Loading branch information
mistercrunch committed Apr 18, 2017
1 parent cb3384b commit 67a85b9
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 14 deletions.
19 changes: 10 additions & 9 deletions superset/assets/javascripts/dashboard/components/Controls.jsx
Expand Up @@ -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}`;
Expand Down Expand Up @@ -81,26 +80,28 @@ class Controls extends React.PureComponent {
onChange={this.changeCss.bind(this)}
/>
<Button
disabled={!canSave}
onClick={() => { window.location = emailLink; }}
>
<i className="fa fa-envelope" />
</Button>
<Button
disabled={!dashboard.dash_edit_perm}
onClick={() => {
window.location = `/dashboardmodelview/edit/${dashboard.id}`;
}}
tooltip="Edit this dashboard's property"
tooltip="Edit this dashboard's properties"
>
<i className="fa fa-edit" />
</Button>
<SaveModal
dashboard={dashboard}
css={this.state.css}
triggerNode={
<i className="fa fa-save" />
<Button disabled={!dashboard.dash_save_perm}>
<i className="fa fa-save" />
</Button>
}
/>
<Button
onClick={() => { window.location = emailLink; }}
>
<i className="fa fa-envelope" />
</Button>
</ButtonGroup>
);
}
Expand Down
Expand Up @@ -107,7 +107,6 @@ class SaveModal extends React.PureComponent {
<ModalTrigger
ref={(modal) => { this.modal = modal; }}
triggerNode={this.props.triggerNode}
isButton
modalTitle="Save Dashboard"
modalBody={
<FormGroup>
Expand Down
7 changes: 3 additions & 4 deletions superset/views/core.py
Expand Up @@ -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},
}

Expand Down

0 comments on commit 67a85b9

Please sign in to comment.