mirror of
https://github.com/jwinterm/modoboa.git
synced 2026-10-19 05:58:34 +02:00
76 lines
2.2 KiB
JavaScript
76 lines
2.2 KiB
JavaScript
import repository from './repository'
|
|
|
|
const domainResource = 'domains'
|
|
const domainAliasResource = 'domainaliases'
|
|
|
|
export default {
|
|
getDomains() {
|
|
return repository.get(`/${domainResource}/`)
|
|
},
|
|
getDomain(domainId) {
|
|
return repository.get(`/${domainResource}/${domainId}/`)
|
|
},
|
|
getDomainDNSDetail(domainId) {
|
|
return repository.get(`/${domainResource}/${domainId}/dns_detail/`)
|
|
},
|
|
getDomainDmarcAlignment(domainId, period) {
|
|
return repository.get(
|
|
`${domainResource}/${domainId}/dmarc/alignment_stats/`,
|
|
{ params: { period } }
|
|
)
|
|
},
|
|
getDomainAliases(domain) {
|
|
let url = `/${domainAliasResource}/`
|
|
if (domain !== undefined) {
|
|
url += `?domain=${domain}`
|
|
}
|
|
return repository.get(url)
|
|
},
|
|
getDomainAdministrators(domainId) {
|
|
return repository.get(`/${domainResource}/${domainId}/administrators/`)
|
|
},
|
|
addDomainAdministrator(domainId, accountId) {
|
|
return repository.post(
|
|
`/${domainResource}/${domainId}/administrators/add/`,
|
|
{ account: accountId }
|
|
)
|
|
},
|
|
removeDomainAdministrator(domainId, accountId) {
|
|
return repository.post(
|
|
`/${domainResource}/${domainId}/administrators/remove/`,
|
|
{ account: accountId }
|
|
)
|
|
},
|
|
createDomain(data) {
|
|
return repository.post(`/${domainResource}/`, data)
|
|
},
|
|
updateDomain(domainId, data) {
|
|
return repository.put(`/${domainResource}/${domainId}/`, data)
|
|
},
|
|
patchDomain(domainId, data) {
|
|
return repository.patch(`/${domainResource}/${domainId}/`, data)
|
|
},
|
|
deleteDomain(domainId, data) {
|
|
return repository.post(`/${domainResource}/${domainId}/delete/`, data)
|
|
},
|
|
createDomainAlias(data) {
|
|
return repository.post(`/${domainAliasResource}/`, data)
|
|
},
|
|
updateDomainAlias(aliasId, data) {
|
|
return repository.put(`/${domainAliasResource}/${aliasId}/`, data)
|
|
},
|
|
deleteDomainAlias(aliasId) {
|
|
return repository.delete(`/${domainAliasResource}/${aliasId}/`)
|
|
},
|
|
exportAll() {
|
|
return repository.get(`/${domainResource}/export/`)
|
|
},
|
|
importFromCSV(data) {
|
|
return repository.post(`/${domainResource}/import/`, data, {
|
|
headers: {
|
|
'Content-Type': 'multipart/form-data',
|
|
},
|
|
})
|
|
},
|
|
}
|