FEATURE: Add link to Docs in top menu (#34)

Added a plugin setting so admins have the choice of including a link to Docs in the top menu.
This commit is contained in:
Justin DiRose 2021-02-18 15:24:52 -06:00 committed by GitHub
parent 2835500c62
commit 2ee446b1fa
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 24 additions and 6 deletions

View File

@ -1,6 +1,13 @@
import { withPluginApi } from "discourse/lib/plugin-api"; import { withPluginApi } from "discourse/lib/plugin-api";
import I18n from "I18n";
function initialize(api, container) {
const siteSettings = container.lookup("site-settings:main");
if (!siteSettings.docs_enabled) {
return;
}
function initialize(api) {
api.decorateWidget("hamburger-menu:generalLinks", () => { api.decorateWidget("hamburger-menu:generalLinks", () => {
return { return {
route: "docs", route: "docs",
@ -10,16 +17,20 @@ function initialize(api) {
}); });
api.addKeyboardShortcut("g e", "", { path: "/docs" }); api.addKeyboardShortcut("g e", "", { path: "/docs" });
if (siteSettings.docs_add_to_top_menu) {
api.addNavigationBarItem({
name: "docs",
displayName: I18n.t("docs.title"),
href: "/docs",
});
}
} }
export default { export default {
name: "setup-docs", name: "setup-docs",
initialize(container) { initialize(container) {
const siteSettings = container.lookup("site-settings:main"); withPluginApi("0.8", (api) => initialize(api, container));
if (!siteSettings.docs_enabled) {
return;
}
withPluginApi("0.8", (api) => initialize(api));
}, },
}; };

View File

@ -1,5 +1,8 @@
en: en:
js: js:
filters:
docs:
help: "browse docs topics"
docs: docs:
title: "Docs" title: "Docs"
column_titles: column_titles:

View File

@ -4,3 +4,4 @@ en:
docs_categories: "A list of category slugs to include in docs" docs_categories: "A list of category slugs to include in docs"
docs_tags: "A list of tags to include in docs" docs_tags: "A list of tags to include in docs"
docs_add_solved_filter: "Adds a filter for solved topics -- requires Discourse Solved to be installed and enabled" docs_add_solved_filter: "Adds a filter for solved topics -- requires Discourse Solved to be installed and enabled"
docs_add_to_top_menu: "Adds a link to the top menu to navigate to the Docs view"

View File

@ -13,3 +13,6 @@ plugins:
docs_add_solved_filter: docs_add_solved_filter:
default: false default: false
client: true client: true
docs_add_to_top_menu:
default: false
client: true