Skip to content
This repository was archived by the owner on May 28, 2024. It is now read-only.

Commit ede7210

Browse files
Pytalnextcloud-command
authored andcommitted
Prevent downloads when video has a download limit
Signed-off-by: Christopher Ng <[email protected]> Signed-off-by: nextcloud-command <[email protected]>
1 parent 297f597 commit ede7210

4 files changed

Lines changed: 19 additions & 12 deletions

File tree

js/files_videoplayer-main.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

js/files_videoplayer-main.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
"description": "A responsive video player for Nextcloud using a skinned version of Video.js.",
55
"private": true,
66
"dependencies": {
7+
"@nextcloud/initial-state": "^1.2.1",
78
"escape-html": "^1.0.3",
89
"video.js": "^7.4.1"
910
},

src/main.js

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -20,23 +20,19 @@
2020
*/
2121

2222
import escapeHTML from 'escape-html'
23+
import { loadState } from '@nextcloud/initial-state'
2324

2425
__webpack_nonce__ = btoa(OC.requestToken)
2526
__webpack_public_path__ = OC.filePath('files_videoplayer', '', 'js/')
2627

2728
let videojs = null
2829

30+
const { limit } = loadState('files_downloadlimit', 'download_limit', { limit: -1 })
31+
const hasDownloadLimit = limit !== -1
32+
2933
const videoViewer = {
3034
UI: {
3135
show() {
32-
33-
const source = document.createElement('source')
34-
source.src = escapeHTML(videoViewer.location).replace('&amp;', '&')
35-
36-
if (videoViewer.mime) {
37-
source.type = escapeHTML(videoViewer.mime)
38-
}
39-
4036
const playerView = document.createElement('video')
4137
playerView.id = 'my_video_1'
4238
playerView.classList.add('video-js')
@@ -48,7 +44,17 @@ const videoViewer = {
4844
playerView.height = '100%'
4945
playerView.poster = OC.filePath('files_videoplayer', '', 'img') + '/poster.png'
5046
playerView.setAttribute('data-setup', '{"techOrder": ["html5"]}')
51-
playerView.appendChild(source)
47+
48+
if (!hasDownloadLimit) {
49+
const source = document.createElement('source')
50+
source.src = escapeHTML(videoViewer.location).replace('&amp;', '&')
51+
52+
if (videoViewer.mime) {
53+
source.type = escapeHTML(videoViewer.mime)
54+
}
55+
56+
playerView.appendChild(source)
57+
}
5258

5359
if (videoViewer.inline === null) {
5460
const overlay = document.createElement('div')

0 commit comments

Comments
 (0)