Skip to content

feat: add favorite functionality for teams - #2963

Merged
Fin-c merged 4 commits into
masterfrom
feature/add_ability_to_favorite_teams
Oct 12, 2026
Merged

Fin-c merged 4 commits into
masterfrom
feature/add_ability_to_favorite_teams

Conversation

@Fin-c

@Fin-c Fin-c commented Sep 28, 2026 •

Copy link
Copy Markdown
Contributor

Add ability to favourite teams
#2904

Summary

Add personal team favorites with persistent ordering.

  • Allow users to favorite and unfavorite teams from the team overview.
  • Display favorites in a dedicated section and prioritize them in the team
    switcher with a star indicator.
  • Support drag-and-drop ordering with a local preview, saving only accepted drops. Move up / Move down actions as accessible alternative
  • Add frontend and backend regression tests.

TODO

  • ...

Checklist

AI (if applicable)

  • The content of this PR was partly or fully generated using AI
Team teampicker

@Fin-c
Fin-c force-pushed the feature/add_ability_to_favorite_teams branch 2 times, most recently from 409f74d to d578b7e Compare October 5, 2026 09:00
@Fin-c
Fin-c force-pushed the feature/add_ability_to_favorite_teams branch from 09ed404 to 956839c Compare October 6, 2026 07:29
@codecov

codecov Bot commented Oct 6, 2026 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 68.38710% with 49 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
src/teams/views/HomeView.vue 55.55% 29 Missing and 11 partials ⚠️
src/teams/components/TeamCard.vue 81.48% 4 Missing and 1 partial ⚠️
src/teams/store.ts 88.00% 2 Missing and 1 partial ⚠️
src/teams/components/TeamAvatar.vue 50.00% 1 Missing ⚠️

📢 Thoughts on this report? Let us know!

@Fin-c
Fin-c marked this pull request as ready for review October 6, 2026 07:37
@Fin-c
Fin-c requested review from artonge and marcoambrosini and removed request for ArtificialOwl and provokateurin October 6, 2026 07:38
@Fin-c Fin-c linked an issue Oct 6, 2026 that may be closed by this pull request
@github-project-automation github-project-automation Bot moved this to Backlog in 👥 Teams Oct 6, 2026
@Fin-c Fin-c self-assigned this Oct 6, 2026
@marcoambrosini
marcoambrosini requested review from pringelmann and a balanced review from Copilot October 6, 2026 12:21

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟡 Changes recommended

Team-page favoriting is incomplete, and filtered ordering plus accessibility issues can produce incorrect or inaccessible behavior.

Review effort: Balanced
Findings: 5 Medium severity · 1 Low severity

Open (6)
What changed in this PR

Adds persistent, ordered team favorites across the backend, home view, and team switcher.

Changes:

  • Adds favorite APIs, storage, locking, cleanup, and ordering.
  • Adds favorite controls, drag-and-drop ordering, and switcher indicators.
  • Adds frontend/backend tests and testing documentation.
File Description
tests/​unit/​lib/​Service/​TeamFavoriteServiceTest.php Tests service ordering and locking.
tests/​unit/​lib/​Db/​TeamFavoriteRequestTest.php Tests favorite persistence and access filtering.
TESTING.md Documents favorite regression tests.
src/​teams/​views/​HomeView.vue Adds favorite sections and ordering controls.
src/​teams/​views/​HomeView.spec.ts Tests drag-and-drop behavior.
src/​teams/​types.ts Adds favorite metadata to teams.
src/​teams/​store.ts Manages favorite state and mutations.
src/​teams/​store.spec.ts Tests favorite store behavior.
src/​teams/​components/​TeamHeader.vue Prioritizes favorites in the switcher.
src/​teams/​components/​TeamCard.vue Adds favorite and ordering actions.
src/​teams/​components/​TeamCard.spec.ts Tests card actions and dragging.
src/​teams/​components/​TeamAvatar.vue Adds the favorite star indicator.
src/​teams/​api.ts Adds favorite API integration.
src/​teams/​api.spec.ts Tests favorite API requests.
REUSE.toml Adds licensing annotations for tests.
lib/​Service/​TeamFavoriteService.php Implements favorite business logic.
lib/​Migration/​Version20260922120000.php Creates the favorites table.
lib/​Listeners/​UserDeleted.php Cleans favorites after user deletion.
lib/​Db/​TeamFavoriteRequest.php Implements favorite database operations.
lib/​Db/​CoreRequestBuilder.php Registers favorite table metadata.
lib/​Db/​CircleRequest.php Cleans favorites after team deletion.
lib/​Controller/​TeamFavoritesController.php Exposes favorite endpoints.
appinfo/​routes.php Registers favorite routes.
appinfo/​info.xml Bumps the app version.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread src/teams/components/TeamAvatar.vue
Comment thread src/teams/components/TeamCard.vue
Comment thread src/teams/components/TeamHeader.vue
Comment thread src/teams/components/TeamHeader.vue
Comment thread src/teams/views/HomeView.vue Outdated
Comment thread TESTING.md Outdated
Comment thread REUSE.toml Outdated
Comment thread TESTING.md Outdated

PHP tests (PHPUnit, Psalm) live under `tests/` and are documented separately.

## Favorite teams regression tests

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is too specific and can be removed.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removed :)

Comment thread lib/Db/TeamFavoriteRequest.php Outdated
Fin-c added 2 commits October 8, 2026 08:12
Assisted-by: GitHub Copilot GPT-5.6 Terra Assisted-by: GitHub Copilot GPT-6 Astra
Signed-off-by: Fin Clausen <Fin.Clausen@dataport.de>
Signed-off-by: Fin Clausen <Fin.Clausen@dataport.de>
@Fin-c
Fin-c force-pushed the feature/add_ability_to_favorite_teams branch 2 times, most recently from 8d8e6a4 to 7c4424a Compare October 8, 2026 06:16
Comment thread src/teams/views/HomeView.vue Outdated
Comment thread src/teams/api.ts Outdated
Comment thread src/teams/components/TeamCard.vue Outdated
@Fin-c
Fin-c force-pushed the feature/add_ability_to_favorite_teams branch from 931c22d to 422f167 Compare October 9, 2026 10:07
Assisted-by: GitHub Copilot Claude Opus 5.5 Assisted-by: GitHub Copilot GPT-5.6 Luna
Signed-off-by: Fin Clausen <Fin.Clausen@dataport.de>
…osition

Assisted-by: GitHub Copilot Claude Opus 5.5
Assisted-by: GitHub Copilot GPT-5.6 Luna
Signed-off-by: Fin Clausen <Fin.Clausen@dataport.de>
@Fin-c
Fin-c force-pushed the feature/add_ability_to_favorite_teams branch from 422f167 to 8ff4842 Compare October 9, 2026 10:10
@Fin-c
Fin-c requested review from artonge and pringelmann October 9, 2026 10:15
@@ -0,0 +1,63 @@
<?php

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: naming convention for migrations is Version{appVersion}Date{timestamp}. Not a big deal for this migration since it creates a new table, but might be a problem if a future migration alters the table. Not blocking though :)

@Fin-c
Fin-c merged commit 0a2317d into master Oct 12, 2026
51 checks passed
@Fin-c
Fin-c deleted the feature/add_ability_to_favorite_teams branch October 12, 2026 06:28
@github-actions

Copy link
Copy Markdown
Contributor

Hello there,
Thank you so much for taking the time and effort to create a pull request to our Nextcloud project.

We hope that the review process is going smooth and is helpful for you. We want to ensure your pull request is reviewed to your satisfaction. If you have a moment, our community management team would very much appreciate your feedback on your experience with this PR review process.

Your feedback is valuable to us as we continuously strive to improve our community developer experience. Please take a moment to complete our short survey by clicking on the following link: https://cloud.nextcloud.com/apps/forms/s/i9Ago4EQRZ7TWxjfmeEpPkf6

Thank you for contributing to Nextcloud and we hope to hear from you soon!

(If you believe you should not receive this message, you can add yourself to the blocklist.)

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

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Add ability to favourite teams

5 participants