mirror of
https://github.com/discourse/discourse.git
synced 2025-06-06 13:06:56 +08:00
EXPERIMENTAL: restructure admin sidebar menu (#26047)
New admin sidebar menu
This commit is contained in:

committed by
GitHub

parent
50eca4d6e4
commit
de00c9a3d3
@ -27,6 +27,10 @@
|
|||||||
class="btn-default"
|
class="btn-default"
|
||||||
/>
|
/>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
<LinkTo @route="adminSiteSettingsCategory" @model="backups">
|
||||||
|
{{i18n "admin.backups.settings"}}
|
||||||
|
</LinkTo>
|
||||||
|
|
||||||
<div class="backup-message">
|
<div class="backup-message">
|
||||||
{{#if this.status.restoreDisabled}}
|
{{#if this.status.restoreDisabled}}
|
||||||
<a href="site_settings/category/all_results?filter=allow_restore">{{d-icon
|
<a href="site_settings/category/all_results?filter=allow_restore">{{d-icon
|
||||||
|
@ -1,5 +1,14 @@
|
|||||||
<div class="admin-emojis">
|
<div class="admin-emojis">
|
||||||
<h1>{{i18n "admin.emoji.title"}}</h1>
|
<div class="admin-emojis__header">
|
||||||
|
<h1>{{i18n "admin.emoji.title"}}</h1>
|
||||||
|
<LinkTo
|
||||||
|
@route="adminSiteSettingsCategory"
|
||||||
|
@model="all_results"
|
||||||
|
@query={{hash filter="emoji"}}
|
||||||
|
>
|
||||||
|
{{i18n "admin.emoji.settings"}}
|
||||||
|
</LinkTo>
|
||||||
|
</div>
|
||||||
|
|
||||||
<p class="desc">{{i18n "admin.emoji.help"}}</p>
|
<p class="desc">{{i18n "admin.emoji.help"}}</p>
|
||||||
|
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
@linkClass={{link.classNames}}
|
@linkClass={{link.classNames}}
|
||||||
@route={{link.route}}
|
@route={{link.route}}
|
||||||
@model={{link.model}}
|
@model={{link.model}}
|
||||||
|
@query={{link.query}}
|
||||||
@models={{link.models}}
|
@models={{link.models}}
|
||||||
@href={{link.href}}
|
@href={{link.href}}
|
||||||
@title={{link.title}}
|
@title={{link.title}}
|
||||||
|
@ -1,6 +1,285 @@
|
|||||||
import getURL from "discourse-common/lib/get-url";
|
import getURL from "discourse-common/lib/get-url";
|
||||||
|
|
||||||
export const ADMIN_NAV_MAP = [
|
export const ADMIN_NAV_MAP = [
|
||||||
|
{
|
||||||
|
name: "account",
|
||||||
|
label: "admin.account.title",
|
||||||
|
links: [
|
||||||
|
{
|
||||||
|
name: "admin_backups",
|
||||||
|
route: "admin.backups",
|
||||||
|
label: "admin.account.sidebar_link.backups",
|
||||||
|
icon: "archive",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_whats_new",
|
||||||
|
route: "admin.dashboardNewFeatures",
|
||||||
|
label: "admin.account.sidebar_link.whats_new",
|
||||||
|
icon: "gift",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "reports",
|
||||||
|
label: "admin.reports.sidebar_title",
|
||||||
|
links: [
|
||||||
|
{
|
||||||
|
name: "admin_all_reports",
|
||||||
|
route: "admin.dashboardReports",
|
||||||
|
label: "admin.reports.sidebar_link.all",
|
||||||
|
icon: "chart-bar",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "community",
|
||||||
|
label: "admin.community.title",
|
||||||
|
links: [
|
||||||
|
{
|
||||||
|
name: "admin_about_your_site",
|
||||||
|
route: "adminSiteSettingsCategory",
|
||||||
|
routeModels: ["required"],
|
||||||
|
query: { filter: "" },
|
||||||
|
label: "admin.community.sidebar_link.about_your_site",
|
||||||
|
icon: "cog",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_badges",
|
||||||
|
route: "adminBadges",
|
||||||
|
label: "admin.community.sidebar_link.badges",
|
||||||
|
icon: "certificate",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_login_and_authentication",
|
||||||
|
route: "adminSiteSettingsCategory",
|
||||||
|
routeModels: ["login"],
|
||||||
|
query: { filter: "" },
|
||||||
|
label: "admin.community.sidebar_link.login_and_authentication",
|
||||||
|
icon: "unlock",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_notifications",
|
||||||
|
route: "adminSiteSettingsCategory",
|
||||||
|
routeModels: ["all_results"],
|
||||||
|
query: { filter: "notifications" },
|
||||||
|
label: "admin.community.sidebar_link.notifications",
|
||||||
|
icon: "bell",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_permalinks",
|
||||||
|
route: "adminPermalinks",
|
||||||
|
label: "admin.community.sidebar_link.permalinks",
|
||||||
|
icon: "link",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_trust_levels",
|
||||||
|
route: "adminSiteSettingsCategory",
|
||||||
|
routeModels: ["trust"],
|
||||||
|
query: { filter: "" },
|
||||||
|
label: "admin.community.sidebar_link.trust_levels",
|
||||||
|
icon: "user-shield",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_users",
|
||||||
|
route: "adminUsers",
|
||||||
|
label: "admin.community.sidebar_link.users",
|
||||||
|
icon: "users",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_user_fields",
|
||||||
|
route: "adminUserFields",
|
||||||
|
label: "admin.community.sidebar_link.user_fields",
|
||||||
|
icon: "user-edit",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_watched_words",
|
||||||
|
route: "adminWatchedWords",
|
||||||
|
label: "admin.community.sidebar_link.watched_words",
|
||||||
|
icon: "eye",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_legal",
|
||||||
|
route: "adminSiteSettingsCategory",
|
||||||
|
routeModels: ["legal"],
|
||||||
|
query: { filter: "" },
|
||||||
|
label: "admin.community.sidebar_link.legal",
|
||||||
|
icon: "gavel",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "appearance",
|
||||||
|
label: "admin.appearance.title",
|
||||||
|
links: [
|
||||||
|
{
|
||||||
|
name: "admin_font_style",
|
||||||
|
route: "adminSiteSettingsCategory",
|
||||||
|
routeModels: ["all_results"],
|
||||||
|
query: { filter: "font" },
|
||||||
|
label: "admin.appearance.sidebar_link.font_style",
|
||||||
|
icon: "italic",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_site_logo",
|
||||||
|
route: "adminSiteSettingsCategory",
|
||||||
|
routeModels: ["branding"],
|
||||||
|
query: { filter: "" },
|
||||||
|
label: "admin.appearance.sidebar_link.site_logo",
|
||||||
|
icon: "fab-discourse",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_color_schemes",
|
||||||
|
route: "adminCustomize.colors",
|
||||||
|
label: "admin.appearance.sidebar_link.color_schemes",
|
||||||
|
icon: "palette",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_emoji",
|
||||||
|
route: "adminEmojis",
|
||||||
|
label: "admin.appearance.sidebar_link.emoji",
|
||||||
|
icon: "discourse-emojis",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_navigation",
|
||||||
|
route: "adminSiteSettingsCategory",
|
||||||
|
routeModels: ["all_results"],
|
||||||
|
query: { filter: "navigation" },
|
||||||
|
label: "admin.appearance.sidebar_link.navigation",
|
||||||
|
icon: "project-diagram",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_themes",
|
||||||
|
route: "adminCustomizeThemes",
|
||||||
|
query: { tab: "themes" },
|
||||||
|
label: "admin.appearance.sidebar_link.themes",
|
||||||
|
icon: "paint-brush",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_customize_site_texts",
|
||||||
|
route: "adminSiteText",
|
||||||
|
label: "admin.appearance.sidebar_link.site_texts",
|
||||||
|
icon: "language",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "email_settings",
|
||||||
|
label: "admin.email_settings.title",
|
||||||
|
links: [
|
||||||
|
{
|
||||||
|
name: "admin_appearance",
|
||||||
|
route: "adminCustomizeEmailStyle",
|
||||||
|
label: "admin.email_settings.sidebar_link.appearance",
|
||||||
|
icon: "envelope",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_preview_summary",
|
||||||
|
route: "adminEmail.previewDigest",
|
||||||
|
label: "admin.email_settings.sidebar_link.preview_summary",
|
||||||
|
icon: "notification.private_message",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_server_setup",
|
||||||
|
route: "adminEmail.index",
|
||||||
|
label: "admin.email_settings.sidebar_link.server_setup",
|
||||||
|
icon: "cog",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "email_logs",
|
||||||
|
label: "admin.email_logs.title",
|
||||||
|
links: [
|
||||||
|
{
|
||||||
|
name: "admin_email_sent",
|
||||||
|
route: "adminEmail.sent",
|
||||||
|
label: "admin.email_logs.sidebar_link.sent",
|
||||||
|
icon: "arrow-right",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_email_skipped",
|
||||||
|
route: "adminEmail.skipped",
|
||||||
|
label: "admin.email_logs.sidebar_link.skipped",
|
||||||
|
icon: "angle-double-right",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_email_bounced",
|
||||||
|
route: "adminEmail.bounced",
|
||||||
|
label: "admin.email_logs.sidebar_link.bounced",
|
||||||
|
icon: "times",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_email_received",
|
||||||
|
route: "adminEmail.received",
|
||||||
|
label: "admin.email_logs.sidebar_link.received",
|
||||||
|
icon: "inbox",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_email_rejected",
|
||||||
|
route: "adminEmail.rejected",
|
||||||
|
label: "admin.email_logs.sidebar_link.rejected",
|
||||||
|
icon: "ban",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "security",
|
||||||
|
label: "admin.security.title",
|
||||||
|
links: [
|
||||||
|
{
|
||||||
|
name: "admin_logs_error_logs",
|
||||||
|
href: getURL("/logs"),
|
||||||
|
label: "admin.security.sidebar_link.error_logs",
|
||||||
|
icon: "external-link-alt",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_logs_screened_emails",
|
||||||
|
route: "adminLogs.screenedEmails",
|
||||||
|
label: "admin.security.sidebar_link.screened_emails",
|
||||||
|
icon: "envelope",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_logs_screened_ip_addresses",
|
||||||
|
route: "adminLogs.screenedIpAddresses",
|
||||||
|
label: "admin.security.sidebar_link.screened_ips",
|
||||||
|
icon: "globe",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_logs_screened_urls",
|
||||||
|
route: "adminLogs.screenedUrls",
|
||||||
|
label: "admin.security.sidebar_link.screened_urls",
|
||||||
|
icon: "globe",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_logs_search_logs",
|
||||||
|
route: "adminSearchLogs",
|
||||||
|
label: "admin.security.sidebar_link.search_logs",
|
||||||
|
icon: "search",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_security",
|
||||||
|
route: "adminSiteSettingsCategory",
|
||||||
|
routeModels: ["security"],
|
||||||
|
query: { filter: "" },
|
||||||
|
label: "admin.security.sidebar_link.security",
|
||||||
|
icon: "lock",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_spam",
|
||||||
|
route: "adminSiteSettingsCategory",
|
||||||
|
routeModels: ["spam"],
|
||||||
|
query: { filter: "" },
|
||||||
|
label: "admin.security.sidebar_link.spam",
|
||||||
|
icon: "robot",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_logs_staff_action_logs",
|
||||||
|
route: "adminLogs.staffActionLogs",
|
||||||
|
label: "admin.security.sidebar_link.staff_action_logs",
|
||||||
|
icon: "user-shield",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
{
|
{
|
||||||
name: "plugins",
|
name: "plugins",
|
||||||
label: "admin.plugins.title",
|
label: "admin.plugins.title",
|
||||||
@ -8,206 +287,96 @@ export const ADMIN_NAV_MAP = [
|
|||||||
{
|
{
|
||||||
name: "admin_installed_plugins",
|
name: "admin_installed_plugins",
|
||||||
route: "adminPlugins.index",
|
route: "adminPlugins.index",
|
||||||
label: "admin.plugins.installed",
|
label: "admin.plugins.sidebar_link.installed",
|
||||||
icon: "puzzle-piece",
|
icon: "puzzle-piece",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "email",
|
name: "advanced",
|
||||||
text: "Emails",
|
label: "admin.advanced.title",
|
||||||
links: [
|
|
||||||
{
|
|
||||||
name: "admin_email",
|
|
||||||
route: "adminEmail.index",
|
|
||||||
label: "admin.email.settings",
|
|
||||||
icon: "cog",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "admin_email_sent",
|
|
||||||
route: "adminEmail.sent",
|
|
||||||
label: "admin.email.sent",
|
|
||||||
icon: "arrow-right",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "admin_email_skipped",
|
|
||||||
route: "adminEmail.skipped",
|
|
||||||
label: "admin.email.skipped",
|
|
||||||
icon: "angle-double-right",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "admin_email_bounced",
|
|
||||||
route: "adminEmail.bounced",
|
|
||||||
label: "admin.email.bounced",
|
|
||||||
icon: "times",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "admin_email_received",
|
|
||||||
route: "adminEmail.received",
|
|
||||||
label: "admin.email.received",
|
|
||||||
icon: "inbox",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "admin_email_rejected",
|
|
||||||
route: "adminEmail.rejected",
|
|
||||||
label: "admin.email.rejected",
|
|
||||||
icon: "ban",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "admin_email_preview_summary",
|
|
||||||
route: "adminEmail.previewDigest",
|
|
||||||
label: "admin.email.preview_digest",
|
|
||||||
icon: "notification.private_message",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "admin_email_advanced_test",
|
|
||||||
route: "adminEmail.advancedTest",
|
|
||||||
label: "admin.email.advanced_test.title",
|
|
||||||
icon: "wrench",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "logs",
|
|
||||||
label: "admin.logs.title",
|
|
||||||
links: [
|
|
||||||
{
|
|
||||||
name: "admin_logs_staff_action_logs",
|
|
||||||
route: "adminLogs.staffActionLogs",
|
|
||||||
label: "admin.logs.staff_actions.title",
|
|
||||||
icon: "user-shield",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "admin_logs_screened_emails",
|
|
||||||
route: "adminLogs.screenedEmails",
|
|
||||||
label: "admin.logs.screened_emails.title",
|
|
||||||
icon: "envelope",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "admin_logs_screened_ip_addresses",
|
|
||||||
route: "adminLogs.screenedIpAddresses",
|
|
||||||
label: "admin.logs.screened_ips.title",
|
|
||||||
icon: "globe",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "admin_logs_screened_urls",
|
|
||||||
route: "adminLogs.screenedUrls",
|
|
||||||
label: "admin.logs.screened_urls.title",
|
|
||||||
icon: "globe",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "admin_logs_search_logs",
|
|
||||||
route: "adminSearchLogs",
|
|
||||||
label: "admin.logs.search_logs.title",
|
|
||||||
icon: "search",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "admin_logs_error_logs",
|
|
||||||
href: getURL("/logs"),
|
|
||||||
label: "admin.logs.logster.title",
|
|
||||||
icon: "external-link-alt",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "customize",
|
|
||||||
label: "admin.customize.title",
|
|
||||||
links: [
|
|
||||||
{
|
|
||||||
name: "admin_customize_themes",
|
|
||||||
route: "adminCustomizeThemes",
|
|
||||||
label: "admin.customize.theme.title",
|
|
||||||
icon: "paint-brush",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "admin_customize_colors",
|
|
||||||
route: "adminCustomize.colors",
|
|
||||||
label: "admin.customize.colors.title",
|
|
||||||
icon: "palette",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "admin_customize_site_texts",
|
|
||||||
route: "adminSiteText",
|
|
||||||
label: "admin.site_text.title",
|
|
||||||
icon: "language",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "admin_customize_email_templates",
|
|
||||||
route: "adminCustomizeEmailTemplates",
|
|
||||||
label: "admin.email.templates_title",
|
|
||||||
icon: "envelope",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "admin_customize_email_style",
|
|
||||||
route: "adminCustomizeEmailStyle",
|
|
||||||
label: "admin.customize.email_style.title",
|
|
||||||
icon: "envelope",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "admin_customize_user_fields",
|
|
||||||
route: "adminUserFields",
|
|
||||||
label: "admin.user_fields.title",
|
|
||||||
icon: "user-edit",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "admin_customize_emojis",
|
|
||||||
route: "adminEmojis",
|
|
||||||
label: "admin.emoji.title",
|
|
||||||
icon: "discourse-emojis",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "admin_customize_permalinks",
|
|
||||||
route: "adminPermalinks",
|
|
||||||
label: "admin.permalink.title",
|
|
||||||
icon: "link",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "admin_customize_embedding",
|
|
||||||
route: "adminEmbedding",
|
|
||||||
label: "admin.embedding.title",
|
|
||||||
icon: "code",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "admin_customize_watched_words",
|
|
||||||
route: "adminWatchedWords",
|
|
||||||
label: "admin.watched_words.title",
|
|
||||||
icon: "eye",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "api",
|
|
||||||
label: "admin.api.title",
|
|
||||||
links: [
|
links: [
|
||||||
{
|
{
|
||||||
name: "admin_api_keys",
|
name: "admin_api_keys",
|
||||||
route: "adminApiKeys",
|
route: "adminApiKeys",
|
||||||
icon: "key",
|
icon: "key",
|
||||||
label: "admin.api.keys",
|
label: "admin.advanced.sidebar_link.api_keys",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_developer",
|
||||||
|
route: "adminSiteSettingsCategory",
|
||||||
|
routeModels: ["developer"],
|
||||||
|
query: { filter: "" },
|
||||||
|
label: "admin.advanced.sidebar_link.developer",
|
||||||
|
icon: "keyboard",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_embedding",
|
||||||
|
route: "adminEmbedding",
|
||||||
|
label: "admin.advanced.sidebar_link.embedding",
|
||||||
|
icon: "code",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_rate_limits",
|
||||||
|
route: "adminSiteSettingsCategory",
|
||||||
|
routeModels: ["rate_limits"],
|
||||||
|
query: { filter: "" },
|
||||||
|
label: "admin.advanced.sidebar_link.rate_limits",
|
||||||
|
icon: "rocket",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_user_api",
|
||||||
|
route: "adminSiteSettingsCategory",
|
||||||
|
routeModels: ["user_api"],
|
||||||
|
query: { filter: "" },
|
||||||
|
label: "admin.advanced.sidebar_link.user_api",
|
||||||
|
icon: "random",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "admin_api_web_hooks",
|
name: "admin_api_web_hooks",
|
||||||
route: "adminWebHooks",
|
route: "adminWebHooks",
|
||||||
label: "admin.web_hooks.title",
|
label: "admin.advanced.sidebar_link.web_hooks",
|
||||||
icon: "globe",
|
icon: "globe",
|
||||||
},
|
},
|
||||||
],
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "backups",
|
|
||||||
label: "admin.backups.menu.backups",
|
|
||||||
links: [
|
|
||||||
{
|
{
|
||||||
name: "admin_backups",
|
name: "admin_onebox",
|
||||||
route: "admin.backups.index",
|
route: "adminSiteSettingsCategory",
|
||||||
label: "admin.backups.menu.backups",
|
routeModels: ["onebox"],
|
||||||
icon: "archive",
|
query: { filter: "" },
|
||||||
|
label: "admin.advanced.sidebar_link.onebox",
|
||||||
|
icon: "far-square",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "admin_backups_logs",
|
name: "admin_files",
|
||||||
route: "admin.backups.logs",
|
route: "adminSiteSettingsCategory",
|
||||||
label: "admin.backups.menu.logs",
|
routeModels: ["files"],
|
||||||
icon: "stream",
|
query: { filter: "" },
|
||||||
|
label: "admin.advanced.sidebar_link.files",
|
||||||
|
icon: "file",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_other_options",
|
||||||
|
route: "adminSiteSettingsCategory",
|
||||||
|
routeModels: ["uncategorized"],
|
||||||
|
query: { filter: "" },
|
||||||
|
label: "admin.advanced.sidebar_link.other_options",
|
||||||
|
icon: "discourse-other-tab",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_search",
|
||||||
|
route: "adminSiteSettingsCategory",
|
||||||
|
routeModels: ["search"],
|
||||||
|
query: { filter: "" },
|
||||||
|
label: "admin.advanced.sidebar_link.search",
|
||||||
|
icon: "search",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "admin_experimental",
|
||||||
|
route: "adminSiteSettingsCategory",
|
||||||
|
routeModels: ["all_results"],
|
||||||
|
query: { filter: "experimental" },
|
||||||
|
label: "admin.advanced.sidebar_link.experimental",
|
||||||
|
icon: "discourse-sparkles",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
@ -37,6 +37,10 @@ class SidebarAdminSectionLink extends BaseCustomSidebarSectionLink {
|
|||||||
return this.adminSidebarNavLink.href;
|
return this.adminSidebarNavLink.href;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
get query() {
|
||||||
|
return this.adminSidebarNavLink.query;
|
||||||
|
}
|
||||||
|
|
||||||
get models() {
|
get models() {
|
||||||
return this.adminSidebarNavLink.routeModels;
|
return this.adminSidebarNavLink.routeModels;
|
||||||
}
|
}
|
||||||
@ -111,29 +115,11 @@ export function useAdminNavConfig(navMap) {
|
|||||||
hideSectionHeader: true,
|
hideSectionHeader: true,
|
||||||
links: [
|
links: [
|
||||||
{
|
{
|
||||||
name: "admin_dashboard",
|
name: "admin_home",
|
||||||
route: "admin.dashboard",
|
route: "admin.dashboard.general",
|
||||||
label: "admin.dashboard.title",
|
label: "admin.dashboard.title",
|
||||||
icon: "home",
|
icon: "home",
|
||||||
},
|
},
|
||||||
{
|
|
||||||
name: "admin_site_settings",
|
|
||||||
route: "adminSiteSettings",
|
|
||||||
label: "admin.site_settings.title",
|
|
||||||
icon: "cog",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "admin_users",
|
|
||||||
route: "adminUsers",
|
|
||||||
label: "admin.users.title",
|
|
||||||
icon: "users",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "admin_badges",
|
|
||||||
route: "adminBadges",
|
|
||||||
label: "admin.badges.title",
|
|
||||||
icon: "certificate",
|
|
||||||
},
|
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
@ -234,7 +220,7 @@ export default class AdminSidebarPanel extends BaseCustomSidebarPanel {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (siteSettings.experimental_form_templates) {
|
if (siteSettings.experimental_form_templates) {
|
||||||
navMap.findBy("name", "customize").links.push({
|
navMap.findBy("name", "appearance").links.push({
|
||||||
name: "admin_customize_form_templates",
|
name: "admin_customize_form_templates",
|
||||||
route: "adminCustomizeFormTemplates",
|
route: "adminCustomizeFormTemplates",
|
||||||
label: "admin.form_templates.nav_title",
|
label: "admin.form_templates.nav_title",
|
||||||
|
@ -28,31 +28,53 @@ acceptance("Admin Sidebar - Sections", function (needs) {
|
|||||||
exists(".sidebar-section[data-section-name='admin-nav-section-root']"),
|
exists(".sidebar-section[data-section-name='admin-nav-section-root']"),
|
||||||
"root section is displayed"
|
"root section is displayed"
|
||||||
);
|
);
|
||||||
|
assert.ok(
|
||||||
|
exists(".sidebar-section[data-section-name='admin-nav-section-account']"),
|
||||||
|
"account section is displayed"
|
||||||
|
);
|
||||||
|
assert.ok(
|
||||||
|
exists(".sidebar-section[data-section-name='admin-nav-section-reports']"),
|
||||||
|
"reports section is displayed"
|
||||||
|
);
|
||||||
|
assert.ok(
|
||||||
|
exists(
|
||||||
|
".sidebar-section[data-section-name='admin-nav-section-community']"
|
||||||
|
),
|
||||||
|
"community section is displayed"
|
||||||
|
);
|
||||||
|
assert.ok(
|
||||||
|
exists(
|
||||||
|
".sidebar-section[data-section-name='admin-nav-section-appearance']"
|
||||||
|
),
|
||||||
|
"appearance section is displayed"
|
||||||
|
);
|
||||||
|
assert.ok(
|
||||||
|
exists(
|
||||||
|
".sidebar-section[data-section-name='admin-nav-section-email_settings']"
|
||||||
|
),
|
||||||
|
"email settings section is displayed"
|
||||||
|
);
|
||||||
|
assert.ok(
|
||||||
|
exists(
|
||||||
|
".sidebar-section[data-section-name='admin-nav-section-email_logs']"
|
||||||
|
),
|
||||||
|
"email logs settings section is displayed"
|
||||||
|
);
|
||||||
|
assert.ok(
|
||||||
|
exists(
|
||||||
|
".sidebar-section[data-section-name='admin-nav-section-security']"
|
||||||
|
),
|
||||||
|
"security settings section is displayed"
|
||||||
|
);
|
||||||
assert.ok(
|
assert.ok(
|
||||||
exists(".sidebar-section[data-section-name='admin-nav-section-plugins']"),
|
exists(".sidebar-section[data-section-name='admin-nav-section-plugins']"),
|
||||||
"plugins section is displayed"
|
"plugins section is displayed"
|
||||||
);
|
);
|
||||||
assert.ok(
|
|
||||||
exists(".sidebar-section[data-section-name='admin-nav-section-email']"),
|
|
||||||
"email section is displayed"
|
|
||||||
);
|
|
||||||
assert.ok(
|
|
||||||
exists(".sidebar-section[data-section-name='admin-nav-section-logs']"),
|
|
||||||
"logs section is displayed"
|
|
||||||
);
|
|
||||||
assert.ok(
|
assert.ok(
|
||||||
exists(
|
exists(
|
||||||
".sidebar-section[data-section-name='admin-nav-section-customize']"
|
".sidebar-section[data-section-name='admin-nav-section-advanced']"
|
||||||
),
|
),
|
||||||
"customize section is displayed"
|
"advanced section is displayed"
|
||||||
);
|
|
||||||
assert.ok(
|
|
||||||
exists(".sidebar-section[data-section-name='admin-nav-section-api']"),
|
|
||||||
"api section is displayed"
|
|
||||||
);
|
|
||||||
assert.ok(
|
|
||||||
exists(".sidebar-section[data-section-name='admin-nav-section-backups']"),
|
|
||||||
"backups section is displayed"
|
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -19,3 +19,12 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.admin-emojis__header {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
a {
|
||||||
|
font-size: var(--font-up-1);
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@ -4821,6 +4821,9 @@ en:
|
|||||||
reports:
|
reports:
|
||||||
title: "List of available reports"
|
title: "List of available reports"
|
||||||
meta_doc: "Explore our <a href='https://meta.discourse.org/t/-/240233' rel='noopener noreferrer' target='_blank'>documentation</a> for a detailed overview of the reports."
|
meta_doc: "Explore our <a href='https://meta.discourse.org/t/-/240233' rel='noopener noreferrer' target='_blank'>documentation</a> for a detailed overview of the reports."
|
||||||
|
sidebar_title: "Reports"
|
||||||
|
sidebar_link:
|
||||||
|
all: "All"
|
||||||
|
|
||||||
dashboard:
|
dashboard:
|
||||||
title: "Dashboard"
|
title: "Dashboard"
|
||||||
@ -5230,6 +5233,67 @@ en:
|
|||||||
timestamp: "Created"
|
timestamp: "Created"
|
||||||
completion: "Completion Time"
|
completion: "Completion Time"
|
||||||
actions: "Actions"
|
actions: "Actions"
|
||||||
|
home:
|
||||||
|
title: "Home"
|
||||||
|
account:
|
||||||
|
title: "Account"
|
||||||
|
sidebar_link:
|
||||||
|
backups: "Backups"
|
||||||
|
whats_new: "What's New"
|
||||||
|
|
||||||
|
community:
|
||||||
|
title: "Community"
|
||||||
|
sidebar_link:
|
||||||
|
about_your_site: "About Your Site"
|
||||||
|
badges: "Badges"
|
||||||
|
login_and_authentication: "Login & Authentication"
|
||||||
|
notifications: "Notifications"
|
||||||
|
permalinks: "Permalinks"
|
||||||
|
trust_levels: "Trust Levels"
|
||||||
|
users: "Users"
|
||||||
|
user_fields: "User Fields"
|
||||||
|
watched_words: "Watched Words"
|
||||||
|
legal: "Legal"
|
||||||
|
|
||||||
|
appearance:
|
||||||
|
title: "Appearance"
|
||||||
|
sidebar_link:
|
||||||
|
font_style: "Font Style"
|
||||||
|
site_logo: "Site Logo"
|
||||||
|
color_schemes: "Color Schemes"
|
||||||
|
emoji: "Emoji"
|
||||||
|
navigation: "Navigation"
|
||||||
|
themes: "Themes"
|
||||||
|
site_texts: "Site Texts"
|
||||||
|
|
||||||
|
email_settings:
|
||||||
|
title: "Email Settings"
|
||||||
|
sidebar_link:
|
||||||
|
appearance: "Appearance"
|
||||||
|
preview_summary: "Preview Summary"
|
||||||
|
server_setup: "Server Setup"
|
||||||
|
|
||||||
|
email_logs:
|
||||||
|
title: "Email Logs"
|
||||||
|
sidebar_link:
|
||||||
|
sent: "Sent"
|
||||||
|
skipped: "Skipped"
|
||||||
|
bounced: "Bounced"
|
||||||
|
received: "Received"
|
||||||
|
rejected: "Rejected"
|
||||||
|
|
||||||
|
security:
|
||||||
|
title: "Security"
|
||||||
|
sidebar_link:
|
||||||
|
error_logs: "Error Logs"
|
||||||
|
screened_emails: "Screened Emails"
|
||||||
|
screened_ips: "Screened IPs"
|
||||||
|
screened_urls: "Screened URLs"
|
||||||
|
search_logs: "Search Logs"
|
||||||
|
security: "Security"
|
||||||
|
spam: "Spam"
|
||||||
|
staff_action_logs: "Staff Action Logs"
|
||||||
|
|
||||||
plugins:
|
plugins:
|
||||||
title: "Plugins"
|
title: "Plugins"
|
||||||
installed: "Installed Plugins"
|
installed: "Installed Plugins"
|
||||||
@ -5246,6 +5310,23 @@ en:
|
|||||||
author: "By %{author}"
|
author: "By %{author}"
|
||||||
experimental_badge: "experimental"
|
experimental_badge: "experimental"
|
||||||
learn_more: "Learn more"
|
learn_more: "Learn more"
|
||||||
|
sidebar_link:
|
||||||
|
installed: "Installed"
|
||||||
|
|
||||||
|
advanced:
|
||||||
|
title: "Advanced"
|
||||||
|
sidebar_link:
|
||||||
|
api_keys: "API keys"
|
||||||
|
developer: "Developer"
|
||||||
|
embedding: "Embedding"
|
||||||
|
rate_limits: "Rate Limits"
|
||||||
|
user_api: "User API"
|
||||||
|
web_hooks: "Webhooks"
|
||||||
|
onebox: "Onebox"
|
||||||
|
files: "Files"
|
||||||
|
other_options: "Other"
|
||||||
|
search: "Search"
|
||||||
|
experimental: "Experimental"
|
||||||
|
|
||||||
navigation_menu:
|
navigation_menu:
|
||||||
sidebar: "Sidebar"
|
sidebar: "Sidebar"
|
||||||
@ -5278,6 +5359,7 @@ en:
|
|||||||
uploading_progress: "Uploading… %{progress}%"
|
uploading_progress: "Uploading… %{progress}%"
|
||||||
success: "'%{filename}' has successfully been uploaded. The file is now being processed and will take up to a minute to show up in the list."
|
success: "'%{filename}' has successfully been uploaded. The file is now being processed and will take up to a minute to show up in the list."
|
||||||
error: "There has been an error while uploading '%{filename}': %{message}"
|
error: "There has been an error while uploading '%{filename}': %{message}"
|
||||||
|
settings: "Settings"
|
||||||
operations:
|
operations:
|
||||||
is_running: "An operation is currently running…"
|
is_running: "An operation is currently running…"
|
||||||
failed: "The %{operation} failed. Please check the logs."
|
failed: "The %{operation} failed. Please check the logs."
|
||||||
@ -6590,6 +6672,7 @@ en:
|
|||||||
image: "Image"
|
image: "Image"
|
||||||
alt: "custom emoji preview"
|
alt: "custom emoji preview"
|
||||||
delete_confirm: "Are you sure you want to delete the :%{name}: emoji?"
|
delete_confirm: "Are you sure you want to delete the :%{name}: emoji?"
|
||||||
|
settings: "Settings"
|
||||||
|
|
||||||
embedding:
|
embedding:
|
||||||
get_started: "If you'd like to embed Discourse on another website, begin by adding its host."
|
get_started: "If you'd like to embed Discourse on another website, begin by adding its host."
|
||||||
|
@ -184,6 +184,7 @@ module SvgSprite
|
|||||||
plus-circle
|
plus-circle
|
||||||
plus-square
|
plus-square
|
||||||
power-off
|
power-off
|
||||||
|
project-diagram
|
||||||
puzzle-piece
|
puzzle-piece
|
||||||
question
|
question
|
||||||
question-circle
|
question-circle
|
||||||
|
@ -73,7 +73,7 @@ describe "Admin Revamp | Sidebar Navigation", type: :system do
|
|||||||
filter.filter("ie")
|
filter.filter("ie")
|
||||||
links = page.all(".sidebar-section-link-content-text")
|
links = page.all(".sidebar-section-link-content-text")
|
||||||
expect(links.count).to eq(2)
|
expect(links.count).to eq(2)
|
||||||
expect(links.map(&:text)).to eq(["Preview Summary", "User Fields"])
|
expect(links.map(&:text)).to eq(["User Fields", "Preview Summary"])
|
||||||
expect(page).to have_no_css(".sidebar-no-results")
|
expect(page).to have_no_css(".sidebar-no-results")
|
||||||
|
|
||||||
filter.filter("ieeee")
|
filter.filter("ieeee")
|
||||||
@ -87,9 +87,9 @@ describe "Admin Revamp | Sidebar Navigation", type: :system do
|
|||||||
expect(page).to have_css(".sidebar-sections__back-to-forum")
|
expect(page).to have_css(".sidebar-sections__back-to-forum")
|
||||||
|
|
||||||
# When match section title, display all links
|
# When match section title, display all links
|
||||||
filter.filter("Backups")
|
filter.filter("Email Sett")
|
||||||
links = page.all(".sidebar-section-link-content-text")
|
links = page.all(".sidebar-section-link-content-text")
|
||||||
expect(links.count).to eq(2)
|
expect(links.count).to eq(3)
|
||||||
expect(links.map(&:text)).to eq(%w[Backups Logs])
|
expect(links.map(&:text)).to eq(["Appearance", "Preview Summary", "Server Setup"])
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
Reference in New Issue
Block a user