Fix communication with mastodon
authorChocobozzz <me@florianbigard.com>
Fri, 12 Jan 2018 14:35:30 +0000 (15:35 +0100)
committerChocobozzz <me@florianbigard.com>
Fri, 12 Jan 2018 14:35:30 +0000 (15:35 +0100)
server/helpers/custom-validators/activitypub/videos.ts
server/lib/activitypub/videos.ts
server/models/video/video.ts
shared/models/activitypub/objects/common-objects.ts

index fb1d2d094aa21f30ba3c1ea924c6c1893a4d9397..5d2a1f1713862b35fadab7b64b008adb88cc15eb 100644 (file)
@@ -115,18 +115,18 @@ function isRemoteVideoUrlValid (url: any) {
   return url.type === 'Link' &&
     (
       ACTIVITY_PUB.URL_MIME_TYPES.VIDEO.indexOf(url.mimeType) !== -1 &&
-      isActivityPubUrlValid(url.url) &&
+      isActivityPubUrlValid(url.href) &&
       validator.isInt(url.width + '', { min: 0 }) &&
       validator.isInt(url.size + '', { min: 0 })
     ) ||
     (
       ACTIVITY_PUB.URL_MIME_TYPES.TORRENT.indexOf(url.mimeType) !== -1 &&
-      isActivityPubUrlValid(url.url) &&
+      isActivityPubUrlValid(url.href) &&
       validator.isInt(url.width + '', { min: 0 })
     ) ||
     (
       ACTIVITY_PUB.URL_MIME_TYPES.MAGNET.indexOf(url.mimeType) !== -1 &&
-      validator.isLength(url.url, { min: 5 }) &&
+      validator.isLength(url.href, { min: 5 }) &&
       validator.isInt(url.width + '', { min: 0 })
     )
 }
index 708f4a8974b4acff8536245a2ecbe520f3f9404c..5b429709f7bff2ecb20a870b72119fb7cd45e59f 100644 (file)
@@ -122,10 +122,10 @@ function videoFileActivityUrlToDBAttributes (videoCreated: VideoModel, videoObje
       return u.mimeType === 'application/x-bittorrent;x-scheme-handler/magnet' && u.width === fileUrl.width
     })
 
-    if (!magnet) throw new Error('Cannot find associated magnet uri for file ' + fileUrl.url)
+    if (!magnet) throw new Error('Cannot find associated magnet uri for file ' + fileUrl.href)
 
-    const parsed = magnetUtil.decode(magnet.url)
-    if (!parsed || isVideoFileInfoHashValid(parsed.infoHash) === false) throw new Error('Cannot parse magnet URI ' + magnet.url)
+    const parsed = magnetUtil.decode(magnet.href)
+    if (!parsed || isVideoFileInfoHashValid(parsed.infoHash) === false) throw new Error('Cannot parse magnet URI ' + magnet.href)
 
     const attribute = {
       extname: VIDEO_MIMETYPE_EXT[ fileUrl.mimeType ],
index 391568df43bf0d4a4e3082eb4437286c60e00e4e..3e2b4ce64b617c7d632d6a2300778602a867558d 100644 (file)
@@ -920,7 +920,7 @@ export class VideoModel extends Model<VideoModel> {
       url.push({
         type: 'Link',
         mimeType: 'video/' + file.extname.replace('.', ''),
-        url: this.getVideoFileUrl(file, baseUrlHttp),
+        href: this.getVideoFileUrl(file, baseUrlHttp),
         width: file.resolution,
         size: file.size
       })
@@ -928,14 +928,14 @@ export class VideoModel extends Model<VideoModel> {
       url.push({
         type: 'Link',
         mimeType: 'application/x-bittorrent',
-        url: this.getTorrentUrl(file, baseUrlHttp),
+        href: this.getTorrentUrl(file, baseUrlHttp),
         width: file.resolution
       })
 
       url.push({
         type: 'Link',
         mimeType: 'application/x-bittorrent;x-scheme-handler/magnet',
-        url: this.generateMagnetUri(file, baseUrlHttp, baseUrlWs),
+        href: this.generateMagnetUri(file, baseUrlHttp, baseUrlWs),
         width: file.resolution
       })
     }
@@ -944,7 +944,7 @@ export class VideoModel extends Model<VideoModel> {
     url.push({
       type: 'Link',
       mimeType: 'text/html',
-      url: CONFIG.WEBSERVER.URL + '/videos/watch/' + this.uuid
+      href: CONFIG.WEBSERVER.URL + '/videos/watch/' + this.uuid
     })
 
     return {
index aef728b8240d8e5697ba9258caa5bdc50f0093f5..3127d0565c7240f001c85fed3ef0cf111cbc0b02 100644 (file)
@@ -20,7 +20,7 @@ export interface ActivityIconObject {
 export interface ActivityUrlObject {
   type: 'Link'
   mimeType: 'video/mp4' | 'video/webm' | 'application/x-bittorrent' | 'application/x-bittorrent;x-scheme-handler/magnet'
-  url: string
+  href: string
   width: number
   size?: number
 }