Fix delete room
This commit is contained in:
parent
422e856cd9
commit
10b4c8ac35
2 changed files with 30 additions and 41 deletions
|
|
@ -7,16 +7,14 @@
|
|||
scroll-strategy="none"
|
||||
>
|
||||
<div v-if="timeout == -1" class="dialog-content text-center">
|
||||
<template>
|
||||
<v-icon size="28">$vuetify.icons.trash_black</v-icon>
|
||||
<h2 class="dialog-title">{{ $t("purge_room.title") }}</h2>
|
||||
<div class="dialog-text">
|
||||
{{ $t("purge_room.info") }}
|
||||
</div>
|
||||
<div class="dialog-text">
|
||||
{{ status }}
|
||||
</div>
|
||||
</template>
|
||||
<v-icon size="28">$vuetify.icons.trash_black</v-icon>
|
||||
<h2 class="dialog-title">{{ $t("purge_room.title") }}</h2>
|
||||
<div class="dialog-text">
|
||||
{{ $t("purge_room.info") }}
|
||||
</div>
|
||||
<div class="dialog-text">
|
||||
{{ status }}
|
||||
</div>
|
||||
<v-container fluid>
|
||||
<v-row cols="12">
|
||||
<v-col cols="6">
|
||||
|
|
@ -48,18 +46,15 @@
|
|||
|
||||
<!-- Timer -->
|
||||
<div v-if="timeout >= 0 && !isPurging" class="dialog-content text-center">
|
||||
<template>
|
||||
<v-icon size="20"
|
||||
class="d-inline-block me-2">$vuetify.icons.timer</v-icon>
|
||||
{{ $t("purge_room.n_seconds", { seconds: timeout }) }}
|
||||
<h2 class="dialog-title mb-0">{{ $t("purge_room.self_destruct") }}</h2>
|
||||
<div class="dialog-text text-center mb-5">
|
||||
{{ $t("purge_room.notified") }}
|
||||
</div>
|
||||
<div class="dialog-text">
|
||||
{{ status }}
|
||||
</div>
|
||||
</template>
|
||||
<v-icon size="20" class="d-inline-block me-2">$vuetify.icons.timer</v-icon>
|
||||
{{ $t("purge_room.n_seconds", { seconds: timeout }) }}
|
||||
<h2 class="dialog-title mb-0">{{ $t("purge_room.self_destruct") }}</h2>
|
||||
<div class="dialog-text text-center mb-5">
|
||||
{{ $t("purge_room.notified") }}
|
||||
</div>
|
||||
<div class="dialog-text">
|
||||
{{ status }}
|
||||
</div>
|
||||
<v-container fluid>
|
||||
<v-row cols="12">
|
||||
<v-col cols="6">
|
||||
|
|
@ -107,7 +102,7 @@ export default {
|
|||
};
|
||||
},
|
||||
methods: {
|
||||
onOpenDialog() {
|
||||
onOpenDialog() {
|
||||
// Showing, reset
|
||||
this.status = null;
|
||||
},
|
||||
|
|
@ -119,21 +114,17 @@ export default {
|
|||
this.timeout = -1;
|
||||
|
||||
// Cancel the state event for deletion
|
||||
this.$matrix.matrixClient.sendStateEvent(
|
||||
this.room.roomId,
|
||||
STATE_EVENT_ROOM_DELETION_NOTICE,
|
||||
{ status: "cancel" }
|
||||
);
|
||||
this.$matrix.matrixClient.sendStateEvent(this.room.roomId, STATE_EVENT_ROOM_DELETION_NOTICE, {
|
||||
status: "cancel",
|
||||
});
|
||||
|
||||
this.showDialog = false;
|
||||
},
|
||||
onPurgeRoom() {
|
||||
// Send custom state event!
|
||||
this.$matrix.matrixClient.sendStateEvent(
|
||||
this.room.roomId,
|
||||
STATE_EVENT_ROOM_DELETION_NOTICE,
|
||||
{ status: "delete" }
|
||||
);
|
||||
this.$matrix.matrixClient.sendStateEvent(this.room.roomId, STATE_EVENT_ROOM_DELETION_NOTICE, {
|
||||
status: "delete",
|
||||
});
|
||||
|
||||
this.timeout = 7;
|
||||
this.timeoutTimer = setInterval(() => {
|
||||
|
|
@ -144,7 +135,7 @@ export default {
|
|||
}, 1000);
|
||||
},
|
||||
onDoPurgeRoom() {
|
||||
this.timeout = 0
|
||||
this.timeout = 0;
|
||||
clearInterval(this.timeoutTimer);
|
||||
this.timeoutTimer = null;
|
||||
this.isPurging = true;
|
||||
|
|
|
|||
|
|
@ -860,7 +860,6 @@ export default {
|
|||
});
|
||||
};
|
||||
|
||||
const oldGlobalErrorSetting = this.matrixClient.getGlobalErrorOnUnknownDevices();
|
||||
return new Promise((resolve, reject) => {
|
||||
const room = this.getRoom(roomId);
|
||||
if (!room) {
|
||||
|
|
@ -925,8 +924,6 @@ export default {
|
|||
.then(() => {
|
||||
//console.log("Purge: redact events");
|
||||
statusCallback(this.$t("room.purge_redacting_events"));
|
||||
// First ignore unknown device errors
|
||||
this.matrixClient.setGlobalErrorOnUnknownDevices(false);
|
||||
const allEvents = timelineWindow.getEvents().filter((event) => {
|
||||
return (
|
||||
!event.isRedacted() &&
|
||||
|
|
@ -1004,7 +1001,6 @@ export default {
|
|||
})
|
||||
.then(() => {
|
||||
statusCallback(null);
|
||||
this.matrixClient.setGlobalErrorOnUnknownDevices(oldGlobalErrorSetting);
|
||||
return withRetry(() => this.leaveRoom(roomId));
|
||||
})
|
||||
.then(() => {
|
||||
|
|
@ -1014,7 +1010,6 @@ export default {
|
|||
.catch((err) => {
|
||||
console.error("Error purging room", err);
|
||||
this.currentRoomBeingPurged = false;
|
||||
this.matrixClient.setGlobalErrorOnUnknownDevices(oldGlobalErrorSetting);
|
||||
reject(err);
|
||||
});
|
||||
});
|
||||
|
|
@ -1363,13 +1358,16 @@ export default {
|
|||
},
|
||||
render: () => {}
|
||||
});
|
||||
|
||||
const t = options.i18n.global.t;
|
||||
|
||||
matrixService.config.globalProperties.$store = store;
|
||||
matrixService.config.globalProperties.$config = app.$config;
|
||||
matrixService.config.globalProperties.$t = app.$t;
|
||||
matrixService.config.globalProperties.$t = t;
|
||||
matrixService.config.globalProperties.$navigation = app.$navigation;
|
||||
matrixService.$store = store;
|
||||
matrixService.$config = app.$config;
|
||||
matrixService.$t = app.$t;
|
||||
matrixService.$t = t;
|
||||
matrixService.$navigation = app.$navigation;
|
||||
const instance = matrixService.mount("#app2");
|
||||
app.config.globalProperties.$matrix = instance;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue