FEATURE: allows to limit visible reports and tabs in dashboard (#9598)

This commit is contained in:
Joffrey JAFFEUX
2020-04-30 17:31:04 +02:00
committed by GitHub
parent 71241a50f7
commit 1b2db44678
12 changed files with 478 additions and 314 deletions

View File

@ -1,7 +1,7 @@
import discourseComputed from "discourse-common/utils/decorators";
import { inject } from "@ember/controller";
import Controller from "@ember/controller";
import Controller, { inject } from "@ember/controller";
import { setting } from "discourse/lib/computed";
import { computed } from "@ember/object";
import AdminDashboard from "admin/models/admin-dashboard";
import VersionCheck from "admin/models/version-check";
@ -18,6 +18,24 @@ export default Controller.extend({
return this.currentUser.get("admin") && (problemsLength || 0) > 0;
},
visibleTabs: computed("siteSettings.dashboard_visible_tabs", function() {
return (this.siteSettings.dashboard_visible_tabs || "")
.split("|")
.filter(Boolean);
}),
isModerationTabVisible: computed("visibleTabs", function() {
return this.visibleTabs.includes("moderation");
}),
isSecurityTabVisible: computed("visibleTabs", function() {
return this.visibleTabs.includes("security");
}),
isReportsTabVisible: computed("visibleTabs", function() {
return this.visibleTabs.includes("reports");
}),
fetchProblems() {
if (this.isLoadingProblems) return;