From d45aab41c99662605421b66c343aee5cdd5ee1ab Mon Sep 17 00:00:00 2001 From: Ruihui Yan Date: Mon, 10 Dec 2018 01:52:38 -0500 Subject: [PATCH] add dailymotion integration --- .../MediaProviders/dailymotion.js | 27 +++++++++++++++++++ src/ServiceProviders/providers.js | 5 +++- src/index.html | 2 +- src/renderer.js | 11 +++++--- 4 files changed, 40 insertions(+), 5 deletions(-) create mode 100644 src/ServiceProviders/MediaProviders/dailymotion.js diff --git a/src/ServiceProviders/MediaProviders/dailymotion.js b/src/ServiceProviders/MediaProviders/dailymotion.js new file mode 100644 index 0000000..3dc777d --- /dev/null +++ b/src/ServiceProviders/MediaProviders/dailymotion.js @@ -0,0 +1,27 @@ +const baseMediaProvider = require('./baseMediaProvider') + +class dailymotionProvider extends baseMediaProvider { + constructor () { + super() + this.name = 'dailymotion' + this.response.type = 'iframe' + this.response.eventName = 'dailymotion' + } + matcher (link) { + if (link !== undefined || link !== '') { + var regExp = /^.+dailymotion.com\/(video|hub)\/([^_]+)[^#]*(#video=([^_&]+))?/ + var match = link.match(regExp) + if (match && match[2].length > 5) { + return match[2] + } + } + return false + } + extractContents (link) { + let match = this.matcher(link) + this.response.content = match + return true + } + +} +module.exports = dailymotionProvider diff --git a/src/ServiceProviders/providers.js b/src/ServiceProviders/providers.js index 8d199de..7d25cb7 100644 --- a/src/ServiceProviders/providers.js +++ b/src/ServiceProviders/providers.js @@ -1,5 +1,7 @@ const youtubeProvider = require('./MediaProviders/youtube') const vimeoProvider = require('./MediaProviders/vimeo') +const dailymotionProvider = require('./MediaProviders/dailymotion') + const pdfProvider = require('./MediaProviders/pdf') const docsProvider = require('./MediaProviders/docs') const applyMedia = require('./mediaProviderApplier') @@ -9,7 +11,8 @@ let matchers = { youtube: new youtubeProvider(), pdf: new pdfProvider(), docs: new docsProvider(), - 'vimeo': new vimeoProvider() + vimeo: new vimeoProvider(), + dailymotion: new dailymotionProvider() } module.exports = { diff --git a/src/index.html b/src/index.html index 7d45e5b..105fe3e 100644 --- a/src/index.html +++ b/src/index.html @@ -11,7 +11,7 @@

Hello People!

-

Start by pasting any youtube/vimeo url. For bugs, you can create issues at github.com/poush/h2

+

Start by pasting any youtube/vimeo/dailymotion url. For bugs, you can create issues at github.com/poush/h2