This repository has been archived on 2023-03-18. You can view files and clone it, but cannot push or open issues or pull requests.
osr-discourse-src/app/assets/javascripts/discourse/controllers/raw-email.js
2020-03-12 13:29:55 -04:00

55 lines
1.3 KiB
JavaScript

import { equal } from "@ember/object/computed";
import Controller from "@ember/controller";
import ModalFunctionality from "discourse/mixins/modal-functionality";
import Post from "discourse/models/post";
import IncomingEmail from "admin/models/incoming-email";
// This controller handles displaying of raw email
export default Controller.extend(ModalFunctionality, {
rawEmail: "",
textPart: "",
htmlPart: "",
tab: "raw",
showRawEmail: equal("tab", "raw"),
showTextPart: equal("tab", "text_part"),
showHtmlPart: equal("tab", "html_part"),
onShow() {
this.send("displayRaw");
},
loadRawEmail(postId) {
return Post.loadRawEmail(postId).then(result =>
this.setProperties({
rawEmail: result.raw_email,
textPart: result.text_part,
htmlPart: result.html_part
})
);
},
loadIncomingRawEmail(incomingEmailId) {
return IncomingEmail.loadRawEmail(incomingEmailId).then(result =>
this.setProperties({
rawEmail: result.raw_email,
textPart: result.text_part,
htmlPart: result.html_part
})
);
},
actions: {
displayRaw() {
this.set("tab", "raw");
},
displayTextPart() {
this.set("tab", "text_part");
},
displayHtmlPart() {
this.set("tab", "html_part");
}
}
});