Skip to content

feat: add configuration for enabling/disabling top-level menu items - #1526

Open
frankfika wants to merge 1 commit into
OpenCSGs:mainfrom
frankfika:feature/menu-toggle
Open

feat: add configuration for enabling/disabling top-level menu items#1526
frankfika wants to merge 1 commit into
OpenCSGs:mainfrom
frankfika:feature/menu-toggle

Conversation

@frankfika

Copy link
Copy Markdown

Summary

This PR implements support for enabling/disabling top-level menu items via environment variable configuration.

Changes

Backend

  • Added CSGHUB_PORTAL_ENABLED_MENUS configuration to config/config.go
  • Updated GlobalConfig struct with EnabledMenus field
  • Pass enabled menus configuration from backend to frontend templates

Frontend

  • Updated all base templates to expose ENABLED_MENUS constant
  • Modified MenuItems.vue to filter menu items based on configuration
  • Added unique id field to each menu item for filtering

Documentation

  • Created comprehensive docs/MENU_CONFIGURATION.md with usage examples
  • Updated .env.example with new configuration option

Configuration

CSGHUB_PORTAL_ENABLED_MENUS=models,datasets,mcp,skills,spaces,codes,collections,prompts

Available menu IDs: models, datasets, mcp, skills, spaces, codes, collections, prompts

Default: All menus enabled if not configured

Testing

Tested manually with various configurations:

  • Single menu item
  • Multiple menu items
  • All menu items (default)
  • Empty configuration (defaults to all)

Related Issue

Fixes #1525

- Add CSGHUB_PORTAL_ENABLED_MENUS env var to control menu visibility
- Support comma-separated list of menu IDs (models,datasets,mcp,skills,spaces,codes,collections,prompts)
- Default to all menus enabled if not configured
- Update backend config and templates to pass enabled menus to frontend
- Update MenuItems.vue to filter menus based on configuration
- Add comprehensive documentation in docs/MENU_CONFIGURATION.md

Fixes OpenCSGs#1525
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

一级菜单支持按需启用或禁用

1 participant