Fix dashboard edit button is disabled (#2634)

* Fix dashboard edit button is disabled

* Addressing comments
This commit is contained in:
Maxime Beauchemin 2017-04-18 13:29:02 -07:00 committed by GitHub
parent cb3384b3b2
commit 67a85b9831
3 changed files with 13 additions and 14 deletions

View File

@ -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)}
/>
<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>
@ -93,14 +97,11 @@ class Controls extends React.PureComponent {
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>
);
}

View File

@ -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>

View File

@ -1641,14 +1641,13 @@ class Superset(BaseSupersetView):
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},
}