Open
Conversation
- Allow users to create personal dashboard links visible only to them
- Admin toggle to enable/disable user links feature
- Configurable limit per user (1-50 links, default 10)
- User icons stored separately in user_icons/{userId}/ folder
- Personal settings page in user settings
- Dashboard shows admin links first, then user links (max 10 total)
- Full CRUD, import/export, and drag-drop reorder for user links
- Rate limiting for user link creation and import
New files:
- lib/Migration/Version002Date20250210000000.php
- lib/Service/UserLinkService.php
- lib/Controller/UserLinkController.php
- lib/Settings/Personal.php
- lib/Settings/PersonalSection.php
- templates/personal.php
- templates/personal-disabled.php
- src/personal.js
- src/composables/useUserLinks.js
- src/components/PersonalPanel.vue
- src/components/UserLinkForm.vue
- src/components/UserIconUploader.vue
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Admins must explicitly enable user links in settings after deployment. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Remove the opacity:0 style on hover that was causing link cards to appear blank/white when hovering. The drop shadow lift effect is preserved while keeping the card content visible. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR adds the ability for users to create their own personal dashboard links that are visible only to them. The feature includes an admin toggle to enable/disable it, and is disabled by default for a conservative deployment approach.
Key Features
user_icons/{userId}/subfolderDatabase Changes
New migration adds
user_idcolumn todashlink_linkstable:NULL= admin/global link (existing behavior)New Files
Backend (PHP)
lib/Migration/Version002Date20250210000000.php- Database migrationlib/Service/UserLinkService.php- User link business logiclib/Controller/UserLinkController.php- REST API for user linkslib/Settings/Personal.php- Personal settings pagelib/Settings/PersonalSection.php- Settings section registrationFrontend (Vue.js)
src/personal.js- Entry point for personal settingssrc/composables/useUserLinks.js- API composable for user linkssrc/components/PersonalPanel.vue- Personal settings UIsrc/components/UserLinkForm.vue- Link form (simplified, no group picker)src/components/UserIconUploader.vue- Icon uploader for user linksTemplates
templates/personal.php- Personal settings mount pointtemplates/personal-disabled.php- Shown when feature is disabledAPI Endpoints Added
All user endpoints require authentication but not admin access:
/api/v1/user/links/api/v1/user/links/api/v1/user/links/{id}/api/v1/user/links/{id}/api/v1/user/links/{id}/icon/api/v1/user/links/{id}/icon/api/v1/user/links/{id}/icon/api/v1/user/links/order/api/v1/user/links/export/api/v1/user/links/importAdmin Settings
New options in Admin Settings > DashLink:
Test Plan