aboutsummaryrefslogtreecommitdiffhomepage
path: root/server/tests/fixtures/peertube-plugin-test-podcast-custom-tags/main.js
blob: ada4a70fea9027d6fd801e4c51235eae6864c9ce (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
async function register ({ registerHook, registerSetting, settingsManager, storageManager, peertubeHelpers }) {
  registerHook({
    target: 'filter:feed.podcast.rss.create-custom-xmlns.result',
    handler: (result, params) => {
      return result.concat([
        {
          name: "biz",
          value: "https://example.com/biz-xmlns",
        },
      ])
    }
  })

  registerHook({
    target: 'filter:feed.podcast.channel.create-custom-tags.result',
    handler: (result, params) => {
      const { videoChannel } = params
      return result.concat([
        {
          name: "fooTag",
          attributes: { "bar": "baz" },
          value: "42",
        },
        {
          name: "biz:videoChannel",
          attributes: { "name": videoChannel.name, "id": videoChannel.id },
        },
        {
          name: "biz:buzzItem",
          value: [
            {
              name: "nestedTag",
              value: "example nested tag",
            },
          ],
        },
      ])
    }
  })

  registerHook({
    target: 'filter:feed.podcast.video.create-custom-tags.result',
    handler: (result, params) => {
      const { video, liveItem } = params
      return result.concat([
        {
          name: "fizzTag",
          attributes: { "bar": "baz" },
          value: "21",
        },
        {
          name: "biz:video",
          attributes: { "name": video.name, "id": video.id, "isLive": liveItem },
        },
        {
          name: "biz:buzz",
          value: [
            {
              name: "nestedTag",
              value: "example nested tag",
            },
          ],
        }
      ])
    }
  })
}

async function unregister () {
  return
}

module.exports = {
  register,
  unregister
}

// ############################################################################

function addToCount (obj) {
  return Object.assign({}, obj, { count: obj.count + 1 })
}