Skip to content
Snippets Groups Projects
Unverified Commit b9fb24f2 authored by Martin Weise's avatar Martin Weise
Browse files

Added more to API

parent 9c3f6233
No related branches found
No related tags found
2 merge requests!163Relase 1.3.0,!155Added readme to authentication service and added eureka service
...@@ -53,6 +53,36 @@ class IdentifierService { ...@@ -53,6 +53,36 @@ class IdentifierService {
}) })
}) })
} }
export (pid) {
return new Promise((resolve, reject) => {
api.get(`/api/pid/${pid}`, { headers: { Accept: 'text/xml' } })
.then((response) => {
const identifier = response.data
console.debug('response identifier', identifier)
resolve(identifier)
})
.catch((error) => {
const { code, message } = error
console.error('Failed to export identifier', error)
Vue.$toast.error(`[${code}] Failed to export identifier: ${message}`)
reject(error)
})
})
}
delete (pid) {
return new Promise((resolve, reject) => {
api.delete(`/api/pid/${pid}`, { headers: { Accept: 'application/json' } })
.then(() => resolve())
.catch((error) => {
const { code, message } = error
console.error('Failed to delete identifier', error)
Vue.$toast.error(`[${code}] Failed to delete identifier: ${message}`)
reject(error)
})
})
}
} }
export default new IdentifierService() export default new IdentifierService()
...@@ -120,16 +120,12 @@ ...@@ -120,16 +120,12 @@
</template> </template>
<script> <script>
import { isDeveloper } from '@/utils'
import AuthenticationService from '@/api/authentication.service' import AuthenticationService from '@/api/authentication.service'
import DatabaseService from '@/api/database.service' import DatabaseService from '@/api/database.service'
import TableService from '@/api/table.service' import TableService from '@/api/table.service'
import IdentifierService from '@/api/identifier.service' import IdentifierService from '@/api/identifier.service'
export default { export default {
name: 'DefaultLayout',
components: {
},
data () { data () {
return { return {
drawer: false, drawer: false,
...@@ -146,8 +142,7 @@ export default { ...@@ -146,8 +142,7 @@ export default {
}, },
computed: { computed: {
availableLocales () { availableLocales () {
// return this.$i18n.locales.filter(i => i.code !== this.$i18n.locale) return this.$i18n.locales.filter(i => i.code !== this.$i18n.locale)
return []
}, },
token () { token () {
return this.$store.state.token return this.$store.state.token
...@@ -167,9 +162,6 @@ export default { ...@@ -167,9 +162,6 @@ export default {
database () { database () {
return this.$store.state.database return this.$store.state.database
}, },
isDeveloper () {
return isDeveloper(this.user)
},
version () { version () {
return this.$config.version return this.$config.version
}, },
......
...@@ -6,7 +6,7 @@ test.before(before) ...@@ -6,7 +6,7 @@ test.before(before)
test.after(after) test.after(after)
test('databases_seeDatabases_succeeds', pageMacro, async (t, page) => { test('databases_seeDatabases_succeeds', pageMacro, async (t, page) => {
await page.go('/container') await page.go('/database')
/* test */ /* test */
const success = await page.waitForSelector('main >> header >> text=Databases') const success = await page.waitForSelector('main >> header >> text=Databases')
t.true(!!success, 'Failed to find \'Databases\' in page') t.true(!!success, 'Failed to find \'Databases\' in page')
...@@ -15,7 +15,7 @@ test('databases_seeDatabases_succeeds', pageMacro, async (t, page) => { ...@@ -15,7 +15,7 @@ test('databases_seeDatabases_succeeds', pageMacro, async (t, page) => {
test('databases_createDatabase_succeeds', pageMacro, async (t, page) => { test('databases_createDatabase_succeeds', pageMacro, async (t, page) => {
const state = { token: null, user: null, database: null, table: null, access: null } const state = { token: null, user: null, database: null, table: null, access: null }
await page.go('/container') await page.go('/database')
mutations.SET_TOKEN(state, 'ABC') mutations.SET_TOKEN(state, 'ABC')
mutations.SET_USER(state, { username: 'ava' }) mutations.SET_USER(state, { username: 'ava' })
await page.screenshot({ path: './screenshots/databases_createDatabase_succeeds.png' }) await page.screenshot({ path: './screenshots/databases_createDatabase_succeeds.png' })
......
...@@ -28,27 +28,6 @@ function isNonNegativeInteger (str) { ...@@ -28,27 +28,6 @@ function isNonNegativeInteger (str) {
return str >>> 0 === parseFloat(str) return str >>> 0 === parseFloat(str)
} }
function isDeveloper (user) {
if (!user || !user.roles || user.roles.length === 0) {
return false
}
return user.roles.filter(a => a === 'ROLE_DEVELOPER').length === 1
}
function isResearcher (user) {
if (!user || !user.roles || user.roles.length === 0) {
return false
}
return user.roles.filter(a => a === 'ROLE_RESEARCHER').length === 1
}
function isDataSteward (user) {
if (!user || !user.roles || user.roles.length === 0) {
return false
}
return user.roles.filter(a => a === 'ROLE_DATA_STEWARD').length === 1
}
function formatDateUTC (str) { function formatDateUTC (str) {
if (str === null) { if (str === null) {
return null return null
...@@ -113,8 +92,5 @@ module.exports = { ...@@ -113,8 +92,5 @@ module.exports = {
isNonNegativeInteger, isNonNegativeInteger,
formatYearUTC, formatYearUTC,
formatMonthUTC, formatMonthUTC,
formatDayUTC, formatDayUTC
isDeveloper,
isResearcher,
isDataSteward
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment