From ab653d99520692ee8d8fca3e0d6635fa336ae46f Mon Sep 17 00:00:00 2001 From: Jaiwanth Date: Mon, 14 Jun 2021 11:08:17 +0530 Subject: [PATCH] Handle requests with no attachments --- src/components/views/rooms/RoomHeader.js | 2 +- src/utils/exportUtils/HtmlExport.tsx | 40 +++++++++++++++++------- src/utils/exportUtils/exportUtils.ts | 1 + 3 files changed, 31 insertions(+), 12 deletions(-) diff --git a/src/components/views/rooms/RoomHeader.js b/src/components/views/rooms/RoomHeader.js index 3b507763fa..3372785390 100644 --- a/src/components/views/rooms/RoomHeader.js +++ b/src/components/views/rooms/RoomHeader.js @@ -86,7 +86,7 @@ export default class RoomHeader extends React.Component { this.props.room, exportFormats.HTML, exportTypes.START_DATE, - { startDate: parseInt(new Date("2021.05.20").getTime().toFixed(0)) }, + { startDate: parseInt(new Date("2021.05.20").getTime().toFixed(0)), attachmentsIncluded: false }, ); } diff --git a/src/utils/exportUtils/HtmlExport.tsx b/src/utils/exportUtils/HtmlExport.tsx index ded4e82b84..11b1fa80dc 100644 --- a/src/utils/exportUtils/HtmlExport.tsx +++ b/src/utils/exportUtils/HtmlExport.tsx @@ -72,10 +72,9 @@ export default class HTMLExporter extends Exporter { protected async wrapHTML(content: string) { const roomAvatar = await this.getRoomAvatar(); const exportDate = formatFullDateNoDayNoTime(new Date()); - const cli = MatrixClientPeg.get(); const creator = this.room.currentState.getStateEvents(EventType.RoomCreate, "")?.getSender(); const creatorName = this.room?.getMember(creator)?.rawDisplayName || creator; - const exporter = cli.getUserId(); + const exporter = this.matrixClient.getUserId(); const exporterName = this.room?.getMember(exporter)?.rawDisplayName; const topic = this.room.currentState.getStateEvents(EventType.RoomTopic, "")?.getContent()?.topic || this.room.topic || ""; @@ -113,10 +112,8 @@ export default class HTMLExporter extends Exporter {

, ); - const topicText = topic ? _t("Topic: %(topic)s", { topic }) : ""; - return ` @@ -279,10 +276,10 @@ export default class HTMLExporter extends Exporter { return fileDirectory + "/" + fileName + '-' + fileDate + fileExt; } - protected async getEventTile(mxEv: MatrixEvent, continuation: boolean, filePath?: string) { const hasAvatar = this.hasAvatar(mxEv); if (hasAvatar) await this.saveAvatarIfNeeded(mxEv); + const eventTile =
Media omitted", + } + if (mxEv.isEncrypted()) { + mxEv._clearEvent.content = modifiedContent; + mxEv._clearEvent.type = "m.room.message"; + } else { + mxEv.event.content = modifiedContent; + mxEv.event.type = "m.room.message"; + } + eventTile = await this.getEventTile(mxEv, joined); + } } else eventTile = await this.getEventTile(mxEv, joined); return eventTile; diff --git a/src/utils/exportUtils/exportUtils.ts b/src/utils/exportUtils/exportUtils.ts index ed285b47bc..407cef3077 100644 --- a/src/utils/exportUtils/exportUtils.ts +++ b/src/utils/exportUtils/exportUtils.ts @@ -17,6 +17,7 @@ export enum exportTypes { export interface exportOptions { startDate?: number; numberOfMessages?: number; + attachmentsIncluded: boolean; } const exportConversationalHistory = async (