-function buildVideoLink (time?: number, url?: string) {
- if (!url) url = window.location.origin + window.location.pathname.replace('/embed/', '/watch/')
-
- if (time) {
- const timeInt = Math.floor(time)
-
- const params = new URLSearchParams(window.location.search)
- params.set('start', secondsToTime(timeInt))
-
- return url + '?' + params.toString()
- }
-
- return url
-}
-
-function timeToInt (time: number | string) {
- if (typeof time === 'number') return time
-
- const reg = /^((\d+)h)?((\d+)m)?((\d+)s?)?$/
- const matches = time.match(reg)
-
- if (!matches) return 0
-
- const hours = parseInt(matches[2] || '0', 10)
- const minutes = parseInt(matches[4] || '0', 10)
- const seconds = parseInt(matches[6] || '0', 10)
-
- return hours * 3600 + minutes * 60 + seconds
-}
-
-function secondsToTime (seconds: number) {
- let time = ''
-
- let hours = Math.floor(seconds / 3600)
- if (hours >= 1) time = hours + 'h'
-
- seconds %= 3600
- let minutes = Math.floor(seconds / 60)
- if (minutes >= 1) time += minutes + 'm'