Skip to content

Conversation

@silverkszlo
Copy link
Collaborator

🚧 Work in progress 🚧

Add ability to view and manage expiration dates on collective shares. Shares now inherit and respect Nextcloud's default expiry date policy for file shares.

  • Add expirationDate field to CollectiveShare entity (transient)
  • Extract expiry dates from underlying IShare objects in service layer
  • Add helper methods for expiry configuration (hasDefaultExpireDate, isExpireDateEnforced, getDefaultExpireDays)
  • Update API endpoints to accept and return expiry date information
  • Support setting, updating, and removing expiry dates via updateShare
  • Return both share data and global expiry config in getCollectiveShares

📝 Summary

🖼️ Screenshots

🏚️ Before 🏡 After
B A

🚧 TODO

  • ...

🏁 Checklist

  • Code is properly formatted (npm run lint / npm run stylelint / composer run cs:check)
  • Sign-off message is added to all commits
  • Tests (unit, integration and/or end-to-end) passing and the changes are covered with tests
  • Documentation (README or documentation) has been updated or is not required

@silverkszlo silverkszlo linked an issue Nov 20, 2025 that may be closed by this pull request
@silverkszlo silverkszlo self-assigned this Nov 20, 2025
Copy link
Member

@mejo- mejo- left a comment

Choose a reason for hiding this comment

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

Looks really good already. I have left some remarks.

@silverkszlo silverkszlo force-pushed the 1566-public-shares-inherit-default-expiry-date-from-file-shares branch from a318b5c to 19476f0 Compare December 2, 2025 14:17
Add ability to view and manage expiration dates on collective shares.
Shares now inherit and respect Nextcloud's default expiry date policy
for file shares.

- Add expirationDate field to CollectiveShare entity (transient)
- Extract expiry dates from underlying IShare objects in service layer
- Add helper methods for expiry configuration (hasDefaultExpireDate,
  isExpireDateEnforced, getDefaultExpireDays)
- Update API endpoints to accept and return expiry date information
- Support setting, updating, and removing expiry dates via updateShare
- Return both share data and global expiry config in getCollectiveShares

Signed-off-by: Silver <s.szmajduch@posteo.de>
- Remove redundant if/else checks since getExpirationDate() returns null
- Add setExpirationDate() in createShare() to reflect auto-applied
expiry dates

Signed-off-by: Silver <s.szmajduch@posteo.de>
@silverkszlo silverkszlo force-pushed the 1566-public-shares-inherit-default-expiry-date-from-file-shares branch from 19476f0 to f8e0a4a Compare December 17, 2025 08:21
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.

Public shares inherit default expiry date from file shares

3 participants