Skip to content

Commit cd50009

Browse files
author
Christian
committed
handling responses from older versions of SC
1 parent d368e3d commit cd50009

File tree

3 files changed

+13
-9
lines changed

3 files changed

+13
-9
lines changed

src/Frontend/src/components/failedmessages/EditIgnoredDialog.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ function closeDialog() {
2020
</div>
2121
</div>
2222
<div class="modal-body">
23-
<p>This message retry was ignored because there had been another edit.</p>
23+
<p>This retry was ignored because another edit had already been processed.</p>
2424
</div>
2525
<div class="modal-footer">
2626
<button class="btn btn-primary" @click="closeDialog()">Ok</button>

src/Frontend/src/components/failedmessages/EditRetryDialog.vue

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,6 @@ import LoadingSpinner from "@/components/LoadingSpinner.vue";
1111
import FAIcon from "@/components/FAIcon.vue";
1212
import { faExclamationCircle, faExclamationTriangle, faUndo } from "@fortawesome/free-solid-svg-icons";
1313
import { useDebounceFn } from "@vueuse/core";
14-
15-
interface HeaderWithEditing extends Header {
16-
isLocked: boolean;
17-
isSensitive: boolean;
18-
isMarkedAsRemoved: boolean;
19-
isChanged: boolean;
20-
}
2114
import type { HeaderWithEditing } from "@/resources/EditedMessage";
2215
2316
const emit = defineEmits<{

src/Frontend/src/composables/serviceFailedMessage.ts

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import { useIsSupported } from "@/composables/serviceSemVer";
44
import { environment } from "@/composables/serviceServiceControl";
55
import type EditRetryResponse from "@/resources/EditRetryResponse";
66
import type { EditedMessage, HeaderWithEditing } from "@/resources/EditedMessage";
7+
import { parse } from "lossless-json";
78

89
export async function useUnarchiveMessage(ids: string[]) {
910
const response = await usePatchToServiceControl("errors/unarchive/", ids);
@@ -40,10 +41,20 @@ export async function useRetryEditedMessage(id: string, editedMessage: Ref<Edite
4041
message_body: editedMessage.value.messageBody,
4142
message_headers: headers,
4243
};
44+
4345
const response = await usePostToServiceControl(`edit/${id}`, payload);
4446
if (!response.ok) {
4547
throw new Error(response.statusText);
4648
}
4749

48-
return (await response.json()) as EditRetryResponse;
50+
//older versions of SC return no payload about the edit result
51+
const bodyText = await response.text();
52+
if (bodyText === "") {
53+
return {
54+
edit_ignored: false,
55+
} as EditRetryResponse;
56+
}
57+
58+
const result = parse(bodyText) as EditRetryResponse;
59+
return result;
4960
}

0 commit comments

Comments
 (0)