diff --git a/app/assets/javascripts/admin/addon/components/staff-actions.js b/app/assets/javascripts/admin/addon/components/staff-actions.js index a532c439c2e..c639a04746d 100644 --- a/app/assets/javascripts/admin/addon/components/staff-actions.js +++ b/app/assets/javascripts/admin/addon/components/staff-actions.js @@ -1,39 +1,24 @@ +import { action } from "@ember/object"; import Component from "@ember/component"; import DiscourseURL from "discourse/lib/url"; export default Component.extend({ - classNames: ["table", "staff-actions"], + tagName: "", - willDestroyElement() { - $(this.element).off("click.discourse-staff-logs"); - }, + @action + openLinks(event) { + const dataset = event.target.dataset; - didInsertElement() { - this._super(...arguments); + if (dataset.linkPostId) { + event.preventDefault(); - $(this.element).on( - "click.discourse-staff-logs", - "[data-link-post-id]", - (e) => { - let postId = $(e.target).attr("data-link-post-id"); + this.store.find("post", dataset.linkPostId).then((post) => { + DiscourseURL.routeTo(post.url); + }); + } else if (dataset.linkTopicId) { + event.preventDefault(); - this.store.find("post", postId).then((p) => { - DiscourseURL.routeTo(p.get("url")); - }); - return false; - } - ); - - $(this.element).on( - "click.discourse-staff-logs", - "[data-link-topic-id]", - (e) => { - let topicId = $(e.target).attr("data-link-topic-id"); - - DiscourseURL.routeTo(`/t/${topicId}`); - - return false; - } - ); + DiscourseURL.routeTo(`/t/${dataset.linkTopicId}`); + } }, }); diff --git a/app/assets/javascripts/admin/addon/templates/components/staff-actions.hbs b/app/assets/javascripts/admin/addon/templates/components/staff-actions.hbs new file mode 100644 index 00000000000..67dae94ea5c --- /dev/null +++ b/app/assets/javascripts/admin/addon/templates/components/staff-actions.hbs @@ -0,0 +1,4 @@ +{{!-- template-lint-disable no-invalid-interactive --}} +
+ {{yield}} +