diff --git a/src/lib/functions.js b/src/lib/functions.js index 354315d31..cc2845f31 100755 --- a/src/lib/functions.js +++ b/src/lib/functions.js @@ -58,7 +58,7 @@ export function isInteger(value) { * @return {boolean} */ export function isVimeoUrl(url) { - return (/^(https?:)?\/\/((player|www)\.)?vimeo\.com(?=$|\/)/).test(url); + return (/^(https?:)?\/\/((((player|www)\.)?vimeo\.com)|((player\.)?[a-zA-Z0-9\-]+\.videoji.hk))(?=$|\/)/).test(url); } /** @@ -68,7 +68,7 @@ export function isVimeoUrl(url) { * @return {boolean} */ export function isVimeoEmbed(url) { - const expr = /^https:\/\/player\.vimeo\.com\/video\/\d+/; + const expr = /^https:\/\/player\.((vimeo\.com)|([a-zA-Z0-9\-]+\.videoji\.hk))\/video\/\d+/; return expr.test(url); } diff --git a/test/functions-test.js b/test/functions-test.js index 2ee1b50b9..eb1bfb17e 100755 --- a/test/functions-test.js +++ b/test/functions-test.js @@ -40,6 +40,12 @@ test('isVimeoUrl identifies *.vimeo.com only', (t) => { t.true(isVimeoUrl('https://www.vimeo.com') === true); t.true(isVimeoUrl('//www.vimeo.com') === true); t.true(isVimeoUrl('http://player.vimeo.com') === true); + t.true(isVimeoUrl('http://player.vimeo.com') === true); + t.true(isVimeoUrl('http://player.stuff.videoji.hk') === true); + t.true(isVimeoUrl('http://player.stuff.videoji.hk/video/12345') === true); + t.true(isVimeoUrl('http://player.stuff.videoji.hk/video/12345?h=a1b2c3d4') === true); + t.true(isVimeoUrl('http://vimeo.videoji.hk') === true); + t.true(isVimeoUrl('http://videoji.hk') === false); t.true(isVimeoUrl('//player.vimeo.com') === true); t.true(isVimeoUrl('https://player.vimeo.com') === true); t.true(isVimeoUrl('https://notvimeo.com') === false); @@ -56,6 +62,7 @@ test('isVimeoEmbed identifies Vimeo embeds only', (t) => { t.true(isVimeoEmbed('https://player.vimeo.com/video/76979871?h=8272103f6e') === true); t.true(isVimeoEmbed('https://player.vimeo.com/video/76979871') === true); t.true(isVimeoEmbed('http://player.vimeo.com/video/76979871?h=8272103f6e') === false); + t.true(isVimeoEmbed('http://player.stuff.videoji.hk/video/76979871?h=8272103f6e') === false); t.true(isVimeoEmbed('http2://not-vimeo.com/video/76979871') === false); });