Skip to content

Commit 885135d

Browse files
committed
Re-introduce back link
1 parent 5eae586 commit 885135d

File tree

3 files changed

+25
-7
lines changed

3 files changed

+25
-7
lines changed

src/Frontend/src/components/audit/AuditList.vue

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,11 @@ import { useFormatTime } from "@/composables/formatter";
99
import RefreshConfig from "../RefreshConfig.vue";
1010
import ItemsPerPage from "../ItemsPerPage.vue";
1111
import PaginationStrip from "../PaginationStrip.vue";
12+
import { useRoute } from "vue-router";
1213
1314
const store = useAuditStore();
1415
const { messages, sortByInstances, itemsPerPage, selectedPage, totalCount } = storeToRefs(store);
16+
const route = useRoute();
1517
1618
function statusToName(messageStatus: MessageStatus) {
1719
switch (messageStatus) {
@@ -99,10 +101,15 @@ function formatDotNetTimespan(timespan: string) {
99101
<template #content>
100102
<p :style="{ overflowWrap: 'break-word' }">{{ message.message_id }}</p>
101103
</template>
102-
<RouterLink v-if="message.status === MessageStatus.Successful" class="hackToPreventSafariFromShowingTooltip" aria-label="details-link" :to="{ path: routeLinks.messages.successMessage.link(message.message_id, message.id) }">
104+
<RouterLink
105+
v-if="message.status === MessageStatus.Successful"
106+
class="hackToPreventSafariFromShowingTooltip"
107+
aria-label="details-link"
108+
:to="{ path: routeLinks.messages.successMessage.link(message.message_id, message.id), query: { back: route.path } }"
109+
>
103110
{{ message.message_id }}
104111
</RouterLink>
105-
<RouterLink v-else class="hackToPreventSafariFromShowingTooltip" aria-label="details-link" :to="{ path: routeLinks.messages.failedMessage.link(message.id) }">
112+
<RouterLink v-else class="hackToPreventSafariFromShowingTooltip" aria-label="details-link" :to="{ path: routeLinks.messages.failedMessage.link(message.id), query: { back: route.path } }">
106113
{{ message.message_id }}
107114
</RouterLink>
108115
</tippy>

src/Frontend/src/components/messages2/FlowDiagram.vue

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import { Controls } from "@vue-flow/controls";
99
import { useMessageStore } from "@/stores/MessageStore";
1010
import LoadingSpinner from "@/components/LoadingSpinner.vue";
1111
import { storeToRefs } from "pinia";
12+
import { useRoute } from "vue-router";
1213
1314
enum MessageType {
1415
Event = "Event message",
@@ -42,6 +43,7 @@ const nodeSpacingY = 200;
4243
4344
const store = useMessageStore();
4445
const { state } = storeToRefs(store);
46+
const route = useRoute();
4547
4648
async function getConversation(conversationId: string) {
4749
await store.loadConversation(conversationId);
@@ -203,8 +205,8 @@ function typeIcon(type: MessageType) {
203205
<i class="fa" :class="typeIcon(data.type)" :title="data.type" />
204206
<div class="lead right-side-ellipsis" :title="data.nodeName">
205207
<strong>
206-
<RouterLink v-if="data.isError" :to="{ path: routeLinks.messages.failedMessage.link(data.id) }">{{ data.nodeName }}</RouterLink>
207-
<RouterLink v-else :to="{ path: routeLinks.messages.successMessage.link(data.messageId, data.id) }">{{ data.nodeName }}</RouterLink>
208+
<RouterLink v-if="data.isError" :to="{ path: routeLinks.messages.failedMessage.link(data.id), query: { back: route.path } }">{{ data.nodeName }}</RouterLink>
209+
<RouterLink v-else :to="{ path: routeLinks.messages.successMessage.link(data.messageId, data.id), query: { back: route.path } }">{{ data.nodeName }}</RouterLink>
208210
</strong>
209211
</div>
210212
<span class="time-sent">

src/Frontend/src/components/messages2/MessageView.vue

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<script setup lang="ts">
2-
import { computed, watch } from "vue";
3-
import { RouterLink, useRoute } from "vue-router";
2+
import { computed, onMounted, ref, watch } from "vue";
3+
import { RouterLink, useRoute, useRouter } from "vue-router";
44
import NoData from "../NoData.vue";
55
import TimeSince from "../TimeSince.vue";
66
import FlowDiagram from "./FlowDiagram.vue";
@@ -28,6 +28,7 @@ const isError = computed(() => messageId.value === undefined);
2828
const isMassTransitConnected = useIsMassTransitConnected();
2929
const store = useMessageStore();
3030
const { state } = storeToRefs(store);
31+
const backLink = ref<string>(routeLinks.failedMessage.failedMessages.link);
3132
const tabs = computed(() => {
3233
const currentTabs = [
3334
{
@@ -76,6 +77,13 @@ watch(
7677
},
7778
{ immediate: true }
7879
);
80+
81+
onMounted(() => {
82+
const back = useRouter().currentRoute.value.query.back as string;
83+
if (back) {
84+
backLink.value = back;
85+
}
86+
});
7987
</script>
8088

8189
<template>
@@ -88,6 +96,7 @@ watch(
8896
<template v-else>
8997
<div class="row">
9098
<div class="col-sm-12 no-side-padding">
99+
<RouterLink :to="backLink"><i class="fa fa-chevron-left"></i> Back</RouterLink>
91100
<div class="active break group-title">
92101
<h1 class="message-type-title">{{ state.data.message_type }}</h1>
93102
</div>
@@ -111,7 +120,7 @@ watch(
111120
<template v-if="state.data.failure_metadata.edited">
112121
<MetadataLabel tooltip="Message was edited" type="info" text="Edited" />
113122
<span v-if="state.data.failure_metadata.edit_of" class="metadata metadata-link">
114-
<i class="fa fa-history"></i> <RouterLink :to="{ path: routeLinks.messages.failedMessage.link(state.data.failure_metadata.edit_of) }">View previous version</RouterLink>
123+
<i class="fa fa-history"></i> <RouterLink :to="{ path: routeLinks.messages.failedMessage.link(state.data.failure_metadata.edit_of), query: { back: backLink } }">View previous version</RouterLink>
115124
</span>
116125
</template>
117126
<span v-if="state.data.failure_metadata.time_of_failure" class="metadata"><i class="fa fa-clock-o"></i> Failed: <time-since :date-utc="state.data.failure_metadata.time_of_failure"></time-since></span>

0 commit comments

Comments
 (0)