<template>
<div>
<div v-if="!initialized">{{ $__("Loading") }}</div>
- <div v-else-if="titles" id="titles_list">
+ <div v-else-if="title_count" id="titles_list">
<Toolbar />
<div
- v-if="titles.length"
+ v-if="title_count > 0"
id="title_list_result"
class="page-section"
>
- <table v-if="titles.length" :id="table_id"></table>
+ <table :id="table_id"></table>
</div>
<div v-else-if="initialized" class="dialog message">
{{ $__("There are no titles defined") }}
import Toolbar from "./EHoldingsLocalTitlesToolbar.vue"
import { inject, createVNode, render } from "vue"
import { storeToRefs } from "pinia"
-import { fetchLocalTitles } from "../../fetch"
+import { APIClient } from "../../fetch/api-client.js"
import { useDataTable } from "../../composables/datatables"
export default {
},
data: function () {
return {
- titles: [],
+ title_count: undefined,
initialized: false,
filters: {
publication_title: this.$route.query.publication_title || "",
},
beforeRouteEnter(to, from, next) {
next(vm => {
- vm.getTitles().then(() => vm.build_datatable())
+ vm.getTitleCount().then(() => vm.build_datatable())
})
},
methods: {
- async getTitles() {
- const titles = await fetchLocalTitles()
- this.titles = titles
- this.initialized = true
+ async getTitleCount() {
+ const client = APIClient.erm
+ await client.localTitles.count().then(
+ count => {
+ this.title_count = count
+ this.initialized = true
+ },
+ error => {}
+ )
},
show_title: function (title_id) {
this.$router.push(