Fix Admin sidebar item visibility for self-hosted deployments (#189)
Co-authored-by: KMKoushik <24666922+KMKoushik@users.noreply.github.com> Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
This commit is contained in:
@@ -109,7 +109,7 @@ const settingsItems = [
|
||||
url: "/settings",
|
||||
icon: Cog,
|
||||
},
|
||||
// TODO: Add conditional logic for Admin item based on isSelfHosted() || session?.user.isAdmin
|
||||
// Admin item shows if user is admin OR if it's self-hosted
|
||||
{
|
||||
title: "Admin",
|
||||
url: "/admin",
|
||||
@@ -200,12 +200,21 @@ export function AppSidebar() {
|
||||
{settingsItems.map((item) => {
|
||||
const isActive = pathname?.startsWith(item.url);
|
||||
|
||||
// Special case for Admin item: show if user is admin OR if it's self-hosted
|
||||
if (item.isAdmin && item.isSelfHosted) {
|
||||
if (!session?.user.isAdmin && !isSelfHosted()) {
|
||||
return null;
|
||||
}
|
||||
} else {
|
||||
// Regular admin-only items
|
||||
if (item.isAdmin && !session?.user.isAdmin) {
|
||||
return null;
|
||||
}
|
||||
// Regular self-hosted-only items
|
||||
if (item.isSelfHosted && !isSelfHosted()) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
return (
|
||||
<SidebarMenuItem key={item.title}>
|
||||
<SidebarMenuButton
|
||||
|
Reference in New Issue
Block a user