From 586acad357dd65d01c0f6e10566429b15468b2fd Mon Sep 17 00:00:00 2001 From: nikk gitanes Date: Thu, 29 Jul 2021 17:15:11 +0300 Subject: [PATCH] allow http links in source --- web/src/components/Add/AddDialog.jsx | 6 +++--- web/src/components/Add/helpers.js | 9 +++++++-- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/web/src/components/Add/AddDialog.jsx b/web/src/components/Add/AddDialog.jsx index fd67730..127c575 100644 --- a/web/src/components/Add/AddDialog.jsx +++ b/web/src/components/Add/AddDialog.jsx @@ -14,7 +14,7 @@ import { getTorrents } from 'utils/Utils' import parseTorrent from 'parse-torrent' import { ButtonWrapper, Header } from 'style/DialogStyles' -import { checkImageURL, getMoviePosters, chechTorrentSource, parseTorrentTitle } from './helpers' +import { checkImageURL, getMoviePosters, checkTorrentSource, parseTorrentTitle } from './helpers' import { Content } from './style' import RightSideComponent from './RightSideComponent' import LeftSideComponent from './LeftSideComponent' @@ -147,7 +147,7 @@ export default function AddDialog({ const prevTorrentSourceState = usePreviousState(torrentSource) useEffect(() => { - const isCorrectSource = chechTorrentSource(torrentSource) + const isCorrectSource = checkTorrentSource(torrentSource) if (!isCorrectSource) return setIsTorrentSourceCorrect(false) setIsTorrentSourceCorrect(true) @@ -227,10 +227,10 @@ export default function AddDialog({ {!isEditMode && ( )} diff --git a/web/src/components/Add/helpers.js b/web/src/components/Add/helpers.js index c150d3f..6c9eefe 100644 --- a/web/src/components/Add/helpers.js +++ b/web/src/components/Add/helpers.js @@ -34,8 +34,13 @@ export const checkImageURL = async url => { const magnetRegex = /^magnet:\?xt=urn:[a-z0-9].*/i export const hashRegex = /^\b[0-9a-f]{32}\b$|^\b[0-9a-f]{40}\b$|^\b[0-9a-f]{64}\b$/i const torrentRegex = /^.*\.(torrent)$/i -export const chechTorrentSource = source => - source.match(hashRegex) !== null || source.match(magnetRegex) !== null || source.match(torrentRegex) !== null +const linkRegex = /^(http(s?)):\/\/.*/i + +export const checkTorrentSource = source => + source.match(hashRegex) !== null || + source.match(magnetRegex) !== null || + source.match(torrentRegex) !== null || + source.match(linkRegex) !== null export const parseTorrentTitle = (parsingSource, callback) => { parseTorrent.remote(parsingSource, (err, { name, files } = {}) => {