[PR #3666] [MERGED] Feat/download via share link #4049

Closed
opened 2026-04-25 00:18:07 +02:00 by adam · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/advplyr/audiobookshelf/pull/3666
Author: @glorenzen
Created: 12/1/2024
Status: Merged
Merged: 12/29/2024
Merged by: @advplyr

Base: masterHead: feat/download-via-share-link


📝 Commits (10+)

  • b349079 Add downloadable toggle to share modal
  • 9ef4568 Add isDownloadable bool to MediaItemShare model
  • 32850d1 Add migration to include isDownloadable column in mediaItemShares table
  • 79d172d Add isDownloadable field to ShareController createMediaItemShare
  • 733dfd8 Add isDownloadable to ShareModal create MediaItemShare payload
  • 9353bfa Fix key order in en-us.json
  • b5938b6 Add download button to share page UI
  • 5eb51bf Refactor download method in LibraryItemController to handle share items
  • a4d4aaf Add download functionality to share items in the UI
  • cff7f54 Merge branch 'master' into feat/download-via-share-link

📊 Changes

9 files changed (+263 additions, -8 deletions)

View changed files

📝 client/components/modals/ShareModal.vue (+16 -4)
📝 client/pages/share/_slug.vue (+10 -0)
📝 client/strings/en-us.json (+2 -0)
📝 server/controllers/ShareController.js (+63 -2)
📝 server/migrations/changelog.md (+1 -0)
server/migrations/v2.17.6-share-add-isdownloadable.js (+68 -0)
📝 server/models/MediaItemShare.js (+34 -2)
📝 server/routers/PublicRouter.js (+1 -0)
test/server/migrations/v2.17.6-share-add-isdownloadable.test.js (+68 -0)

📄 Description

This feature adds an option when sharing a media item to allow users to download the zip file.

This resolves #3606

This is still a work in progress, but I've added the toggle to the share modal, updated the MediaItemShare model to include a field for whether or not the item is downloadable, added the migration file for the updated column, and updated the ShareController.

image


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/advplyr/audiobookshelf/pull/3666 **Author:** [@glorenzen](https://github.com/glorenzen) **Created:** 12/1/2024 **Status:** ✅ Merged **Merged:** 12/29/2024 **Merged by:** [@advplyr](https://github.com/advplyr) **Base:** `master` ← **Head:** `feat/download-via-share-link` --- ### 📝 Commits (10+) - [`b349079`](https://github.com/advplyr/audiobookshelf/commit/b3490798f094219e230a0887589963848da48263) Add downloadable toggle to share modal - [`9ef4568`](https://github.com/advplyr/audiobookshelf/commit/9ef45686acde0db4db9f2c698a72c4877af01874) Add isDownloadable bool to MediaItemShare model - [`32850d1`](https://github.com/advplyr/audiobookshelf/commit/32850d13ecaa6a2a54581b3b088ca4a2d22112e8) Add migration to include isDownloadable column in mediaItemShares table - [`79d172d`](https://github.com/advplyr/audiobookshelf/commit/79d172de90c4519f38c3199c5dd479adf4b00a01) Add isDownloadable field to ShareController createMediaItemShare - [`733dfd8`](https://github.com/advplyr/audiobookshelf/commit/733dfd85a54f893c736e97f0b4b6b37aa0b156d0) Add isDownloadable to ShareModal create MediaItemShare payload - [`9353bfa`](https://github.com/advplyr/audiobookshelf/commit/9353bfa2ee9d79a377d42b74a48595304dacd6c2) Fix key order in en-us.json - [`b5938b6`](https://github.com/advplyr/audiobookshelf/commit/b5938b618dd1f9c94ac7c076a15b1435424d85f8) Add download button to share page UI - [`5eb51bf`](https://github.com/advplyr/audiobookshelf/commit/5eb51bf8a2157aaed48a3a65efd0e148faa3f996) Refactor download method in LibraryItemController to handle share items - [`a4d4aaf`](https://github.com/advplyr/audiobookshelf/commit/a4d4aafd97fc4122afcb0ecbe7d8a5798f0a1b53) Add download functionality to share items in the UI - [`cff7f54`](https://github.com/advplyr/audiobookshelf/commit/cff7f54709a359e2eed139ad75e2432d0b5de4cb) Merge branch 'master' into feat/download-via-share-link ### 📊 Changes **9 files changed** (+263 additions, -8 deletions) <details> <summary>View changed files</summary> 📝 `client/components/modals/ShareModal.vue` (+16 -4) 📝 `client/pages/share/_slug.vue` (+10 -0) 📝 `client/strings/en-us.json` (+2 -0) 📝 `server/controllers/ShareController.js` (+63 -2) 📝 `server/migrations/changelog.md` (+1 -0) ➕ `server/migrations/v2.17.6-share-add-isdownloadable.js` (+68 -0) 📝 `server/models/MediaItemShare.js` (+34 -2) 📝 `server/routers/PublicRouter.js` (+1 -0) ➕ `test/server/migrations/v2.17.6-share-add-isdownloadable.test.js` (+68 -0) </details> ### 📄 Description This feature adds an option when sharing a media item to allow users to download the zip file. This resolves #3606 This is still a work in progress, but I've added the toggle to the share modal, updated the MediaItemShare model to include a field for whether or not the item is downloadable, added the migration file for the updated column, and updated the ShareController. ![image](https://github.com/user-attachments/assets/63b2f1f3-705d-4f0b-8738-5746b8dbd148) --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
adam added the pull-request label 2026-04-25 00:18:07 +02:00
adam closed this issue 2026-04-25 00:18:07 +02:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/audiobookshelf#4049