Wire up delete organization
parent
2f8e756155
commit
cc3946ed16
|
@ -4,6 +4,7 @@ import {
|
||||||
createUser as createUserAJAX,
|
createUser as createUserAJAX,
|
||||||
deleteUser as deleteUserAJAX,
|
deleteUser as deleteUserAJAX,
|
||||||
createOrganization as createOrganizationAJAX,
|
createOrganization as createOrganizationAJAX,
|
||||||
|
deleteOrganization as deleteOrganizationAJAX,
|
||||||
} from 'src/admin/apis/chronograf'
|
} from 'src/admin/apis/chronograf'
|
||||||
|
|
||||||
import {publishAutoDismissingNotification} from 'shared/dispatchers'
|
import {publishAutoDismissingNotification} from 'shared/dispatchers'
|
||||||
|
@ -129,3 +130,19 @@ export const createOrganizationAsync = (
|
||||||
dispatch(removeOrganization(organization))
|
dispatch(removeOrganization(organization))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export const deleteOrganizationAsync = organization => async dispatch => {
|
||||||
|
dispatch(removeOrganization(organization))
|
||||||
|
try {
|
||||||
|
await deleteOrganizationAJAX(organization.links.self)
|
||||||
|
dispatch(
|
||||||
|
publishAutoDismissingNotification(
|
||||||
|
'success',
|
||||||
|
`Organization deleted: ${organization.name}`
|
||||||
|
)
|
||||||
|
)
|
||||||
|
} catch (error) {
|
||||||
|
dispatch(errorThrown(error))
|
||||||
|
dispatch(addOrganization(organization))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -61,3 +61,15 @@ export const createOrganization = async (url, organization) => {
|
||||||
throw error
|
throw error
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export const deleteOrganization = async url => {
|
||||||
|
try {
|
||||||
|
return await AJAX({
|
||||||
|
method: 'DELETE',
|
||||||
|
url,
|
||||||
|
})
|
||||||
|
} catch (error) {
|
||||||
|
console.error(error)
|
||||||
|
throw error
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -148,7 +148,12 @@ class AdminChronografPage extends Component {
|
||||||
createOrganizationAsync(links.organizations, {name: organizationName})
|
createOrganizationAsync(links.organizations, {name: organizationName})
|
||||||
}
|
}
|
||||||
|
|
||||||
handleDeleteOrganization = _organization => {}
|
handleDeleteOrganization = organization => {
|
||||||
|
const {actions: {deleteOrganizationAsync}} = this.props
|
||||||
|
|
||||||
|
deleteOrganizationAsync(organization)
|
||||||
|
}
|
||||||
|
|
||||||
handleRenameOrganization = (_organization, _newOrgName) => {}
|
handleRenameOrganization = (_organization, _newOrgName) => {}
|
||||||
|
|
||||||
handleCreateUser = user => {
|
handleCreateUser = user => {
|
||||||
|
@ -268,6 +273,7 @@ AdminChronografPage.propTypes = {
|
||||||
createUserAsync: func.isRequired,
|
createUserAsync: func.isRequired,
|
||||||
deleteUserAsync: func.isRequired,
|
deleteUserAsync: func.isRequired,
|
||||||
createOrganizationAsync: func.isRequired,
|
createOrganizationAsync: func.isRequired,
|
||||||
|
deleteOrganizationAsync: func.isRequired,
|
||||||
}),
|
}),
|
||||||
notify: func.isRequired,
|
notify: func.isRequired,
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue