diff --git a/aleksis/core/frontend/components/person/PersonOverview.vue b/aleksis/core/frontend/components/person/PersonOverview.vue index 978b6689a2e6b777e1e05fbb1859b8651eb3782e..5171a22f0ed594bb849d82d8bab671db7e1207ec 100644 --- a/aleksis/core/frontend/components/person/PersonOverview.vue +++ b/aleksis/core/frontend/components/person/PersonOverview.vue @@ -1,6 +1,9 @@ <template> - <div> - <template v-if="$apollo.queries.person.loading"> + <object-overview + :query="query" + title-attr="fullName" + > + <template #loading> <v-skeleton-loader type="article" /> <v-row> @@ -9,7 +12,7 @@ </v-col> </v-row> </template> - <template v-else-if="person"> + <template v-slot="person"> <detail-view> <template #avatarContent> <person-avatar-clickbox :id="id" /> @@ -189,12 +192,13 @@ </v-row> </detail-view> </template> - </div> + </object-overview> </template> <script> import AdditionalImage from "./AdditionalImage.vue"; import GroupCollection from "../group/GroupCollection.vue"; +import ObjectOverview from "../generic/ObjectOverview.vue"; import PersonActions from "./PersonActions.vue"; import PersonAvatarClickbox from "./PersonAvatarClickbox.vue"; import PersonCollection from "./PersonCollection.vue"; @@ -206,27 +210,15 @@ export default { components: { AdditionalImage, GroupCollection, + ObjectOverview, PersonActions, PersonAvatarClickbox, PersonCollection, }, - apollo: { - person: { + data() { + return { query: gqlPersonOverview, - variables() { - if (this.$route.params.id) { - return { - id: this.$route.params.id, - }; - } - return {}; - }, - result({ data }) { - if (data && data.person) { - this.$root.$setPageTitle(data.person.fullName); - } - }, - }, + } }, props: { id: { diff --git a/aleksis/core/frontend/components/person/personOverview.graphql b/aleksis/core/frontend/components/person/personOverview.graphql index cbf77ef19e48346007d7ebab43f6325a6ded3d3f..8173f6a7d7d74842a267c4d5c0a47d7d3ed97634 100644 --- a/aleksis/core/frontend/components/person/personOverview.graphql +++ b/aleksis/core/frontend/components/person/personOverview.graphql @@ -1,5 +1,5 @@ query person($id: ID) { - person: personByIdOrMe(id: $id) { + object: personByIdOrMe(id: $id) { id username firstName