diff --git a/app/assets/javascripts/admin/models/permalink.js b/app/assets/javascripts/admin/models/permalink.js index b86e9316923..b13dcd6f529 100644 --- a/app/assets/javascripts/admin/models/permalink.js +++ b/app/assets/javascripts/admin/models/permalink.js @@ -1,4 +1,7 @@ import { ajax } from "discourse/lib/ajax"; +import discourseComputed from "discourse-common/utils/decorators"; +import DiscourseURL from "discourse/lib/url"; +import Category from "discourse/models/category"; import EmberObject from "@ember/object"; const Permalink = EmberObject.extend({ @@ -13,6 +16,16 @@ const Permalink = EmberObject.extend({ }); }, + @discourseComputed("category_id") + category: function(category_id) { + return Category.findById(category_id); + }, + + @discourseComputed("external_url") + linkIsExternal: function(external_url) { + return !DiscourseURL.isInternal(external_url); + }, + destroy: function() { return ajax("/admin/permalinks/" + this.id + ".json", { type: "DELETE" diff --git a/app/assets/javascripts/admin/templates/permalinks.hbs b/app/assets/javascripts/admin/templates/permalinks.hbs index 7c7ac2df6b0..a9f1067909c 100644 --- a/app/assets/javascripts/admin/templates/permalinks.hbs +++ b/app/assets/javascripts/admin/templates/permalinks.hbs @@ -15,33 +15,27 @@
{{i18n 'admin.permalink.url'}} | -{{i18n 'admin.permalink.topic_title'}} | -{{i18n 'admin.permalink.post_title'}} | -{{i18n 'admin.permalink.category_title'}} | -{{i18n 'admin.permalink.external_url'}} | +{{i18n 'admin.permalink.destination'}} | {{#each model as |pl|}} |
---|---|---|---|---|---|
{{pl.url}} | -+ | {{#if pl.topic_id}} {{pl.topic_title}} {{/if}} - | -{{#if pl.post_id}} - #{{pl.post_number}} {{pl.post_topic_title}} + {{pl.post_topic_title}} #{{pl.post_number}} {{/if}} - | -{{#if pl.category_id}} - {{pl.category_name}} + {{category-link pl.category}} {{/if}} - | -{{#if pl.external_url}} + {{#if pl.linkIsExternal}} + {{d-icon "external-link-alt"}} + {{/if}} {{pl.external_url}} {{/if}} | diff --git a/config/locales/client.en.yml b/config/locales/client.en.yml index a793ae920d0..50f51343818 100644 --- a/config/locales/client.en.yml +++ b/config/locales/client.en.yml @@ -4593,6 +4593,7 @@ en: category_id: "Category ID" category_title: "Category" external_url: "External URL" + destination: "Destination" delete_confirm: Are you sure you want to delete this permalink? form: label: "New:"