diff --git a/app/assets/javascripts/admin/addon/components/admin-config-areas/emojis-list.gjs b/app/assets/javascripts/admin/addon/components/admin-config-areas/emojis-list.gjs new file mode 100644 index 00000000000..5edfdac830c --- /dev/null +++ b/app/assets/javascripts/admin/addon/components/admin-config-areas/emojis-list.gjs @@ -0,0 +1,98 @@ +import Component from "@glimmer/component"; +import { fn } from "@ember/helper"; +import { service } from "@ember/service"; +import DButton from "discourse/components/d-button"; +import i18n from "discourse-common/helpers/i18n"; +import AdminConfigAreaEmptyList from "admin/components/admin-config-area-empty-list"; +import ComboBox from "select-kit/components/combo-box"; + +export default class AdminConfigAreasEmojisList extends Component { + @service dialog; + @service adminEmojis; + + get emojis() { + return this.adminEmojis.emojis; + } + + get sortedEmojis() { + return this.adminEmojis.sortedEmojis; + } + + get filteringGroups() { + return this.adminEmojis.filteringGroups; + } + + +} diff --git a/app/assets/javascripts/admin/addon/components/admin-config-areas/emojis-new.gjs b/app/assets/javascripts/admin/addon/components/admin-config-areas/emojis-new.gjs new file mode 100644 index 00000000000..3e1688cd60e --- /dev/null +++ b/app/assets/javascripts/admin/addon/components/admin-config-areas/emojis-new.gjs @@ -0,0 +1,44 @@ +import Component from "@glimmer/component"; +import EmberObject, { action } from "@ember/object"; +import { service } from "@ember/service"; +import BackButton from "discourse/components/back-button"; +import AdminConfigAreaCard from "admin/components/admin-config-area-card"; +import EmojiUploader from "admin/components/emoji-uploader"; + +export default class AdminConfigAreasEmojisNew extends Component { + @service router; + @service currentUser; + @service adminEmojis; + + get emojiGroups() { + return this.adminEmojis.emojiGroups; + } + + @action + emojiUploaded(emoji, group) { + emoji.url += "?t=" + new Date().getTime(); + emoji.group = group; + emoji.created_by = this.currentUser.username; + this.adminEmojis.emojis = [ + ...this.adminEmojis.emojis, + EmberObject.create(emoji), + ]; + this.router.transitionTo("adminEmojis.index"); + } + + +} diff --git a/app/assets/javascripts/admin/addon/components/admin-config-areas/emojis-settings.gjs b/app/assets/javascripts/admin/addon/components/admin-config-areas/emojis-settings.gjs new file mode 100644 index 00000000000..c24437c1fe6 --- /dev/null +++ b/app/assets/javascripts/admin/addon/components/admin-config-areas/emojis-settings.gjs @@ -0,0 +1,54 @@ +import Component from "@glimmer/component"; +import { tracked } from "@glimmer/tracking"; +import didInsert from "@ember/render-modifiers/modifiers/did-insert"; +import { service } from "@ember/service"; +import DBreadcrumbsItem from "discourse/components/d-breadcrumbs-item"; +import { ajax } from "discourse/lib/ajax"; +import i18n from "discourse-common/helpers/i18n"; +import { bind } from "discourse-common/utils/decorators"; +import AdminFilteredSiteSettings from "admin/components/admin-filtered-site-settings"; +import SiteSetting from "admin/models/site-setting"; + +export default class AdminConfigAreasEmojisSettings extends Component { + @service siteSettings; + @tracked settings; + + @bind + loadSettings() { + ajax("/admin/config/site_settings.json", { + data: { + filter_area: "emojis", + }, + }).then((result) => { + this.settings = [ + { + name: "All", + nameKey: "all_results", + siteSettings: result.site_settings.map((setting) => + SiteSetting.create(setting) + ), + }, + ]; + }); + } + + +} diff --git a/app/assets/javascripts/admin/addon/components/emoji-uploader.hbs b/app/assets/javascripts/admin/addon/components/emoji-uploader.hbs index 2dbd95e9f14..65b9a0f67ef 100644 --- a/app/assets/javascripts/admin/addon/components/emoji-uploader.hbs +++ b/app/assets/javascripts/admin/addon/components/emoji-uploader.hbs @@ -1,33 +1,39 @@ -
-
- +
+
+