From 5856c5edc654897f919fdc99e06b84c286455b52 Mon Sep 17 00:00:00 2001 From: Ephellon Date: Thu, 11 Jul 2019 00:56:52 -0500 Subject: [PATCH] Beta branches merge (#77) * Start work on v5.0 Simple rename and push to `beta-branch` * Fixed minor bug that would cause searches to fail for cached media. * Fixed the plugin script * Quick save while switching laptops. New cloud-like layout. * Quick back-up, DO NOT USE. * Update to v4.2 (BETA). Moved and restructured code to be cloud based. Added several new options. Added Developer options. * Fix "hide web to plex" icon. Make code easier to use * Updated document.furnish, and class Prompt * Crap ton of fixes and changes... * Added Vumoo support. Dropped GoStream. * The user can now disable default sites. Added the `configuration` var * Removed restart requirement for disabling default sites * Reenabled GoStream (updated script). Added `Notify` to helpers.js * Added GoStream as a search provider (again) * Added Medusa as a manager, added the testing suite (to be removed), etc. * Update README.md * Update README.md * Match README layout of Wiki * Update test page. Minor aesthetic error in background.js --- README.md | 97 +- src.crx | Bin 462284 -> 499311 bytes src.zip | Bin 461604 -> 498780 bytes src/background.js | 92 +- src/cloud/__layout__.js | 2 +- src/cloud/__test__.js | 37 + src/cloud/fandango.js | 6 +- src/cloud/google.play.js | 27 + src/cloud/gostream.js | 2 +- src/cloud/hulu.js | 47 +- src/cloud/play.google.js | 27 - src/cloud/tmdb.js | 2 +- src/cloud/trakt.js | 2 +- src/cloud/tubi.js | 22 + src/cloud/verizon.js | 2 +- src/cloud/vumoo.js | 68 + src/cloud/youtube.js | 35 +- src/helpers.js | 48 +- src/img/local.medusa.png | Bin 0 -> 1280 bytes src/img/tubi.png | Bin 0 -> 4266 bytes src/img/vumoo.png | Bin 0 -> 3702 bytes src/manifest.json | 29 +- src/options/index.html | 243 +- src/options/index.js | 253 +- src/options/test/blank.html | 5 + src/options/test/index.html | 253 ++ src/options/test/index.js | 118 + src/options/test/loading.png | Bin 0 -> 1804 bytes src/options/test/movie.poster.jpg | Bin 0 -> 59546 bytes src/options/test/noise.png | Bin 0 -> 54413 bytes src/options/test/tv-show.poster.jpg | Bin 0 -> 56325 bytes src/plugn.js | 339 ++- src/popup/index.html | 92 +- src/popup/index.js | 8 +- src/sites/__test__.js | 2 + src/sites/common.css | 16 +- src/sites/flenix/index.js | 50 - src/sites/google/play.js | 2 +- src/sites/{flenix => tubi}/index.css | 0 src/sites/tubi/index.js | 2 + src/sites/vumoo/index.css | 0 src/sites/vumoo/index.js | 2 + src/utils.js | 3407 ++++++++++++++------------ 43 files changed, 3420 insertions(+), 1917 deletions(-) create mode 100644 src/cloud/__test__.js create mode 100644 src/cloud/google.play.js delete mode 100644 src/cloud/play.google.js create mode 100644 src/cloud/tubi.js create mode 100644 src/cloud/vumoo.js create mode 100644 src/img/local.medusa.png create mode 100644 src/img/tubi.png create mode 100644 src/img/vumoo.png create mode 100644 src/options/test/blank.html create mode 100644 src/options/test/index.html create mode 100644 src/options/test/index.js create mode 100644 src/options/test/loading.png create mode 100644 src/options/test/movie.poster.jpg create mode 100644 src/options/test/noise.png create mode 100644 src/options/test/tv-show.poster.jpg create mode 100644 src/sites/__test__.js delete mode 100644 src/sites/flenix/index.js rename src/sites/{flenix => tubi}/index.css (100%) create mode 100644 src/sites/tubi/index.js create mode 100644 src/sites/vumoo/index.css create mode 100644 src/sites/vumoo/index.js diff --git a/README.md b/README.md index a710d87..a23ec1a 100644 --- a/README.md +++ b/README.md @@ -2,55 +2,66 @@ # Web to Plex ![Icon](src/img/48.png) -![Examples](example.png) +![Examples](https://github.com/SpaceK33z/web-to-plex/blob/master/example.png) This browser extension searches your [Plex Media Server (PMS)](https://www.plex.tv/downloads/) for matching media on sites like [IMDb](https://imdb.com), letting you immediately open the movie or TV show in Plex, if it is available. If the item isn't found on your PMS, then a download button is added instead. ---- -## Features: - -- Can save media directly from noted sites (file downloads/magnet URLs) - - Right-click | Web to Plex | Save as "Show/Movie (Year)" -- Can push requests to your chosen download manager - - [Radarr](https://radarr.video/) - - [Sonarr](https://sonarr.tv/) - - [CouchPotato](https://couchpota.to/) - - [Watcher 3](https://nosmokingbandit.github.io/) - - [Ombi](https://ombi.io/) -- Offers search options via right-click (context menu) - - Right-click | Web to Plex | Find "Show/Movie (Year)" -- Offers a Plex-like GUI - - Web to Plex button - - Settings page - - Pop-up page -- Offers a status via the browser badge and button - - Orange/Yellow: item is on Plex - - Blue (button): item isn't on Plex, but can be sent for - - Grey (badge)/Red (button): item is unavailable/not found - - Grey (button): item is loading -- Offers an easy login feature - - Offers an API login feature -- Offers a "Direct Plex URL" feature - - i.e. you can specify `localhost:32400` as your Plex URL to avoid bandwidth usage for Plex requests - -# Download Managers - -Optionally, you can configure your download manager(s) (see support table) in the extension's options. After that, you can immediately add a TV show or movie with one click, right from your favorite site. +# NZB Managers + +Optionally, you can configure NZB Manager (see support table) in the extension's options. After that, you can immediately add a TV show or movie with one click, right from your favorite site. ## Supported Managers | Manager | Movie Support | TV Show Support | Searchable -| ----------------------------------------------- | ------------- | --------------- | ---------- -| [Watcher 3](https://nosmokingbandit.github.io/) | Yes | | -| [CouchPotato](https://couchpota.to/) | Yes | Yes | -| [Radarr](https://radarr.video/) | Yes | | Yes -| [Sonarr](https://sonarr.tv/) | | Yes | Yes -| [Ombi](https://ombi.io/) | Yes | Yes | Yes +| ----------------------------------------------- |:-------------:|:---------------:|:----------: +| [Watcher 3](https://nosmokingbandit.github.io/) | ✔ | ❌ | ❌ +| [CouchPotato](https://couchpota.to/) | ✔ | ✔ | ❌ +| [Radarr](https://radarr.video/) | ✔ | ❌ | ✔ +| [Sonarr](https://sonarr.tv/) | ❌ | ✔ | ✔ +| [Ombi](https://ombi.io/) | ❔ | ❔ | ✔ +| [Medusa](https://pymedusa.com/) | ❌ | ✔ | ✔ + +### Key + +| ✔ | ❌ | ❔ | +| - | - | - | +| yes | no | yes (with help) | + +---- + +## Features +### Easy login +You can log into Plex using either an access token, your credentials, or Ombi (if setup). + +### Download (![download icon](https://github.com/SpaceK33z/web-to-plex/blob/master/src/img/16.png)) +On certain sites (denoted with the "download" icon), the user can choose to save/engage media directly, instead of waiting for their NZB manager to find the item. + +### Plex It! (![plex it icon](https://github.com/SpaceK33z/web-to-plex/blob/master/src/img/plexit.16.png)) +Click the icon to open **Plex It!** (left sidebar), click it again to add the current item(s) to your list. -If you don't feel like actually downloading the movie, or want a simple watchlist, you can also use the built-in "Plex It!" feature to bookmark the current page. +It's primary purpose is to provide a watchlist service on sites that don't support watchlists. + +### Hide Web to Plex (![hide icon](https://github.com/SpaceK33z/web-to-plex/blob/master/src/img/hide.16.png)) +Use this to hide the **Web to Plex** button. It changes the button's opacity to 10% to make it almost invisible so that it isn't as distracting on sites like Netflix. + +### Reload Web to Plex (![reload icon](https://github.com/SpaceK33z/web-to-plex/blob/master/src/img/reload.16.png)) +Use this to reload **Web to Plex** on the current page. This can sometimes fix loading issues or cache errors. + +### Plex URL +This is a *moderately advance* setting, but is very useful to know. If you know your Plex server's URL (e.g. `https://localhost:32400`), then you can specify this and avoid bandwidth usage, as the extension will communicate with Plex on your device instead of `https://app.plex.tv/`. + +### Find this | Right Click +If you aren't satisfied with a found item, or it is incorrect, you can right click the page and use the **Web to Plex | Find "XYZ"** feature to search for the item. + +The sites used as search engines (IMDb, TMDb, and TVDb) will automatically create a cached version of the information (for "Local Search" results). + +-------- ## Supported sites +*Given in order of completion* + 1. [Movieo](http://movieo.me/) 2. [IMDb](http://imdb.com/) 3. [Trakt.tv](https://trakt.tv/) @@ -76,11 +87,13 @@ If you don't feel like actually downloading the movie, or want a simple watchlis 23. [Toloka](https://toloka.to/)6 24. [Shana Project](https://www.shanaproject.com/)6 25. [My Anime List](https://myanimelist.com/)6 -26. [YouTube](https://youtube.com/) -27. [Flickmetrix (Cinesift)](https://flickmetrix.com/) -28. [Allociné](https://www.allocine.fr/) -29. [MovieMeter](https://www.moviemeter.nl/) -30. [JustWatch](https://justwatch.com/) +26. [My Shows](https://en.myshows.me/) +27. [YouTube](https://youtube.com/) +28. [Flickmetrix (Cinesift)](https://flickmetrix.com/) +29. [Allociné](https://www.allocine.fr/) +30. [MovieMeter](https://www.moviemeter.nl/) +31. [JustWatch](https://justwatch.com/) +32. [Vumoo](https://vumoo.to/)1 *Notes* diff --git a/src.crx b/src.crx index 455fd7cd7c7f89fcfc9ca4cbfff6bcd408b84ee0..16c334384d3e4cdf3565a8da4dd05f4ee316fdd5 100644 GIT binary patch delta 120508 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

? zog~ZVMjk5l{gj)vEFuy@``0~^f?`+62<7^V4H*M=5x%?LoOOTRyyj#r`Wt)}h>Fh* zMg*r4v;a^e@-KT0tvRw@%?MjGdRuW%Y5T`nXUN9d?LCz#nJf3l`Pt*v{IGTtzK7ja zl+ea7+WPxP4C9iuBZ@u`V@!+2Zz^%4LQP7gZ-sgGddL;Y!Hb0%ta|GL0lV&=H+cin zMs0Fi|FVn!Xy#tl%CK2oMBcM+F4He!QyOaFH3$L$6~mgV*pJvZL&`L(iRr8X4b_>1 zO8tns&l;CnD`G*8Z|gg6*a{7h{VMMwPl?0oC^EE}*H$modRH;W zutaw8H1Z4`&EKpem_-_B>eapAN;;%T(|`4bgg}Z}C62&vMe#INybH{V|3uG218ahj za6|;^lHq)MST6R${W8p21SMjgz&_kvVtFmBPj|S4@Rb#D^m``$(m@%Vb(6zWBrIh{ zip>jT=>pKEoyRQFYN%8AF>K}>^iJA8;eu#z2effu?!IYlxPn$?iV>Ch% zzz(V;DUBVkl#7EKO$&k+*&l{{uxVww3U~tKmZBiv)g4b)C*!_y-dyL`-bu*JEK3k#1zBL}-cyyQZ*Tl=_IWYI&H zufA1|{wsW2Af#nRYNe4r7P~;M|H2J_PgRsWHJq)((rBbW8tkrMa%U0Gc5pNqY5bdI^96KADAn_M(N#)wyGjqfI8}4nJ+liG7P2JV z$;G}VEETDQp_PPp6p+ZBg<%3Qd{ji5u6FPG6bT3Q1~J zw*!Go0~`H`t~AcHWy*GwEWTddDe|&fsCdi+sqc2=pNeLYDdNPUXT~7FE?ELITIoN7 zJxq!z`Ih`MkOq4jW5{X_jNdgyK+NEGZCbxGaQm7rehvS6Q1+6xSX0I3Ha2DGJ64c}WfAvq!6ykadhKolQi^xxlb*US6=|h@ z(Pqny$_8c}{zB(>e!LC%PeN6TT5hZ@DHAMO>`a0zV$RW`G2eB2ke}uGKGjs?mWo*3BYjNunF?{ehey?n5w-eGZ!bIM!H8Z%y`o-S4Y5;mSFgdQ{G-MK&GM z9(kh?Z}~D4FW?8Ll`?EyBrrC|0KOxruSzA_;MyuCqoen2-Fa*PWoX0ND)#;8o<)>z z-U}2Lt;d)i>NyL$D9>B8kPLD z3F00(aq|NNQwNzYt82Y#pt0vs5am>gM`IvxUNez#X}zf-HT5_ss;c~F7+SpVkC{ZB z;Mmdq_^dA81ZW}oxEqfdhLU!+u4yom+Ilo=_jNPwGubzn{fM`A^0$=KK@&|v@c8{- z9j7hJaFeiJJO(e$0k^5*#9+uc)J=}1Neb{#O2hXIk+A#oYQzrl-54r&|DqTcktKqOh$(P{7 zd(^B{mlWah{N^yXH9Caz9$(EIi3P2Ln6&d(hTICPf!>TI474t5hl69ml6R=BEv~Je zzHDHtXeIqa{$ilu-aD>h0|Z)NtQB&P{8G<;t<1mS85hmnAI83+Hz0>si%tQ#xUt63 zwg}J?C&bp~M5TOS^P)1Mf4H=%)`7O~7fWUxi32L0z~o^(i>)}yFoW1WR9(9I8&dF; z9A_$sUzF!El3wKC(9CALuU6EYn-Tf{tQdP1sN>~|kIgB3P_Y)4^cq^%`_Ej3{3`5% zmeh-El=*HU9Y5e~t!hl$_i5;p=9{x*G)4_)}{bbfvLjm(g_ZVIhFlSNW0xNGgjgmX_< z>5knp=DlqzH-Cl4P+3lebRFr%�W_Y{9N%zYSmF{38eaR?jIkYrJsfR3sN$H5K8rG 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 z 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 z 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
HmhY(?eGbAX+us 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 diff --git a/src/background.js b/src/background.js index 4a4b179..8e7eee6 100644 --- a/src/background.js +++ b/src/background.js @@ -62,9 +62,9 @@ function ChangeStatus({ ITEM_ID, ITEM_TITLE, ITEM_TYPE, ID_PROVIDER, ITEM_YEAR, let FILE_TITLE = ITEM_TITLE.replace(/\-/g, ' ').replace(/[\s\:]{2,}/g, ' - ').replace(/[^\w\s\-\']+/g, ''), // File friendly title - SEARCH_TITLE = ITEM_TITLE.replace(/[\-\s]+/g, '-').replace(/[^\w\-]+/g, ''), + SEARCH_TITLE = ITEM_TITLE.replace(/[\-\s]+/g, '-').replace(/\s*&\s*/g, ' and ').replace(/[^\w\-\'\*\#]+/g, ''), // Search friendly title - SEARCH_PROVIDER = /[it]m/i.test(ID_PROVIDER)? 'GX': 'GG'; + SEARCH_PROVIDER = /^im/i.test(ID_PROVIDER)? 'VO': /^tm/i.test(ID_PROVIDER)? 'GX': 'GG'; ITEM_ID = (ITEM_ID && !/^tt$/i.test(ITEM_ID)? ITEM_ID: '') + ''; ITEM_ID = ITEM_ID.replace(/^.*\b(tt\d+)\b.*$/, '$1').replace(/^.*\bid=(\d+)\b.*$/, '$1').replace(/^.*(?:movie|tv|(?:tv-?)?(?:shows?|series|episodes?))\/(\d+).*$/, '$1'); @@ -94,7 +94,7 @@ function ChangeStatus({ ITEM_ID, ITEM_TITLE, ITEM_TYPE, ID_PROVIDER, ITEM_YEAR, }); chrome.contextMenus.update('W2P-XX', { - title: `Find on ${ (SEARCH_PROVIDER == 'GX'? 'GoStream': 'Google') }`, + title: `Find on ${ (SEARCH_PROVIDER == 'VO'? 'Vumoo': SEARCH_PROVIDER == 'GX'? 'GoStream': 'Google') }`, checked: false }); } @@ -342,6 +342,80 @@ function addSonarr(request, sendResponse) { }); } +/** Medusa - TV Shows **/ +function addMedusa(request, sendResponse) { + let headers = { + 'Content-Type': 'application/json', + 'X-Api-Key': request.token, + ...(new Headers(request.basicAuth)) + }, + id = request.tvdbId, + query = request.title.replace(/\s+/g, '+'), + debug = { headers, query, request }; + // setup stack trace for debugging + + fetch(debug.url = `${ request.root }internal/searchIndexersForShowName?api_key=${ request.token }&indexerId=0&query=${ query }`) + .then(response => response.json()) + .catch(error => sendResponse({ error: 'TV Show not found', location: 'addMedusa => fetch.then.catch', silent: true })) + .then(data => { + data = data.results; + + if (!data instanceof Array || !data.length) + throw new Error('TV Show not found'); + + // Monitor, search, and download series ASAP + let body = data[0].join('|'); + + terminal.group('Generated URL'); + terminal.log('URL', request.url); + terminal.log('Head', headers); + terminal.log('Body', body); + terminal.groupEnd(); + + return debug.body = body; + }) + .then(body => { + return fetch(`${ request.url }`, debug.requestHeaders = { + method: 'POST', + mode: cors(request.url), + body: JSON.stringify({ id: { tvdb: request.tvdbId } }), + headers + }); + }) + .then(response => response.text()) + .then(data => { + let path = request.StoragePath.replace(/\\?$/, '\\'); + + debug.data = + data = JSON.parse(data || `{"path":"${ path }${ request.title } (${ request.year })"}`); + + if (data && data.error) { + sendResponse({ + error: data.error, + location: `addMedusa => fetch("${ request.url }", { headers }).then(data => { if })`, + debug + }); + } else if (data && data.id) { + sendResponse({ + success: `Added to ${ path }${ request.title }(${ request.year })` + }); + } else { + sendResponse({ + error: 'Unknown error', + location: `addMedusa => fetch("${ request.url }", { headers }).then(data => { else })`, + debug + }); + } + }) + .catch(error => { + sendResponse({ + error: String(error), + location: `addMedusa => fetch("${ request.url }", { headers }).catch(error => { sendResponse })`, + debug + }); + }); +} + /** Ombi* - TV Shows/Movies **/ function addOmbi(request, sendResponse) { let headers = { @@ -536,12 +610,12 @@ chrome.contextMenus.onClicked.addListener(item => { case 'im': url = (qu && pv == 'im')? `imdb.com/title/${ qu }/`: - `imdb.com/find?ref_=nv_sr_fn&s=all&q=${ tl }`; + `imdb.com/find?ref_=nv_sr_fn&s=all&q=${ tt }`; break; case 'tm': url = (qu && pv == 'tm')? `themoviedb.org/${ external.ITEM_TYPE == 'show'? 'tv': 'movie' }/${ qu }`: - `themoviedb.org/search?query=${ tl }`; + `themoviedb.org/search?query=${ tt }`; break; case 'tv': url = (qu && pv == 'tv')? @@ -549,7 +623,9 @@ chrome.contextMenus.onClicked.addListener(item => { `thetvdb.com/search?q=${ p(tl) }`; break; case 'xx': - url = external.SEARCH_PROVIDER == 'GX'? + url = external.SEARCH_PROVIDER == 'VO'? + `google.com/search?q=${ p(tl) }+site:vumoo.to`: + external.SEARCH_PROVIDER == 'GX'? `gostream.site/?s=${ p(tl) }`: `google.com/search?q="${ p(tl, ' ') } ${ yr }"+${ pv }db`; break; @@ -607,6 +683,9 @@ chrome.runtime.onMessage.addListener((request, sender, callback) => { case 'ADD_SONARR': addSonarr(request, callback); return true; + case 'ADD_MEDUSA': + addMedusa(request, callback); + return true; case 'ADD_WATCHER': addWatcher(request, callback); return true; @@ -647,6 +726,7 @@ chrome.runtime.onMessage.addListener((request, sender, callback) => { case 'PLUGIN': case 'SCRIPT': case '_INIT_': + case '$INIT$': case 'FOUND': /* These are meant to be handled by plugn.js */ return false; diff --git a/src/cloud/__layout__.js b/src/cloud/__layout__.js index 562796f..68fb2d9 100644 --- a/src/cloud/__layout__.js +++ b/src/cloud/__layout__.js @@ -11,7 +11,7 @@ let script = { "ready": () => { /* return a boolean to describe if the page is ready */ }, // optional - "timeout": 1000, // if the script fails to complete, retry after ... milisecoonds + "timeout": 1000, // if the script fails to complete, retry after ... milliseconds // required "init": (ready) => { diff --git a/src/cloud/__test__.js b/src/cloud/__test__.js new file mode 100644 index 0000000..3a4ba32 --- /dev/null +++ b/src/cloud/__test__.js @@ -0,0 +1,37 @@ +let script = { + // required + "url": "*://ephellon.github.io/web.to.plex/test/*", + // Example: *://*.amazon.com/*/video/(detail|buy)/* + // *:// - match any protocol (http, https, etc.) + // *.amazon.com - match any sub-domain (www, ww5, etc.) + // /* - match any path + // (detail|buy) - match one of the items + + // optional + "ready": () => { + /* return a boolean to describe if the page is ready */ + return true; + }, + + // optional + "timeout": 1000, // if the script fails to complete, retry after ... milliseconds + + // required + "init": (ready) => { + let _title, _year, _image, R = RegExp; + + let title = $('#title').first, + year = $('#year').first, + image = $('#poster').first, + type = script.getType(); // described below + + title = title.textContent; + year = +year.textContent; + image = image.src || ''; + + return { type, title, year, image }; + }, + + // optional | functioanlity only + "getType": () => $('#example').first.getAttribute('type'), +}; diff --git a/src/cloud/fandango.js b/src/cloud/fandango.js index 7476ef3..34e6072 100644 --- a/src/cloud/fandango.js +++ b/src/cloud/fandango.js @@ -1,5 +1,5 @@ let script = { - "url": "*://*.fandango.com/movie-overview/*", + "url": "*://*.fandango.com/[\\w\\-]+/movie-overview", "init": (ready) => { let _title, _year, _image, R = RegExp; @@ -11,7 +11,9 @@ let script = { title = title.textContent.trim().split(/\n+/)[0].trim(); year = year.textContent.replace(/.*(\d{4}).*/, '$1').trim(); - image = image.empty? '': image.first.src; + image = image.empty? '': image.src; + + title = title.replace(RegExp(`\\s*\\((${ year })\\)`), ''); return { type, title, year, image }; }, diff --git a/src/cloud/google.play.js b/src/cloud/google.play.js new file mode 100644 index 0000000..431af27 --- /dev/null +++ b/src/cloud/google.play.js @@ -0,0 +1,27 @@ +let script = { + "url": "*://play.google.com/store/(movies|tv)/details/*", + + "init": (ready) => { + let _title, _year, _image, R = RegExp; + + let type = script.getType(), + title = $('h1').first, + year = $(`h1 ~ div span:${ type == 'movie'? 'first': 'last' }-of-type`).first, + image = $('img[alt="cover art" i]').first; + + title = title.textContent.replace(/\s*\(\s*(\d{4})\s*\).*?$/, '').trim(); + year = (year.textContent || R.$1).replace(/^.*?(\d{4})/, '$1').trim(); + image = (image || {}).src; + + return { type, title, year, image }; + }, + + "getType": () => ( + location.pathname.startsWith('/store/movies')? + 'movie': + 'show' + ), +}; + +addEventListener('popstate', script.init); +addEventListener('pushstate-changed', script.init); diff --git a/src/cloud/gostream.js b/src/cloud/gostream.js index 220e194..03cc7e2 100644 --- a/src/cloud/gostream.js +++ b/src/cloud/gostream.js @@ -11,7 +11,7 @@ let script = { image = $('.hiddenz, [itemprop="image"]').first, type = 'movie'; - new Notification('update', 'Select the Openload (OL) server'); + Notify('update', 'Select the Openload (OL) server'); title = title.textContent.trim(); year = (year? year.textContent.trim(): 0); diff --git a/src/cloud/hulu.js b/src/cloud/hulu.js index 806afeb..9ea56ec 100644 --- a/src/cloud/hulu.js +++ b/src/cloud/hulu.js @@ -1,18 +1,33 @@ let script = { - "url": "*://*.hulu.com/*", + "url": "*://*.hulu.com/(watch|series|movie)/*", - "ready": () => !$('#content [class$="__meta"]').empty, + "ready": () => !$('[class$="__meta"]').empty, "init": (ready) => { let _title, _year, _image, R = RegExp; + let { pathname } = top.location; + let type, title, year, image; + + if(/^\/(series|movie)\//.test(pathname)) { + type = R.$1; + title = $('[class~="masthead__title"i]').first; + year = $('[class~="masthead__meta"i]').child(type == 'series'? 4: 3); + image = $('[class~="masthead__artwork"i]').first; + + title = title.textContent; + year = +year.textContent; + type = /\b(tv|show|season|series)\b/i.test(type)? 'show': 'movie'; + image = image? image.src: null; + } else { + title = $('[class$="__second-line"]').first; + year = (new Date).getFullYear(); + type = script.getType(); - let title = $('#content [class$="__name"]').first, - year = $('#content [class$="__meta"] [class$="segment"]:last-child').first, - image, - type = script.getType(); + title = title.textContent; + } - title = title.textContent.replace(/^\s+|\s+$/g, '').toCaps(); - year = +year.textContent.replace(/.*\((\d{4})\).*/, '$1'); + if(!title) + return 5000; return { type, title, year, image }; }, @@ -20,12 +35,14 @@ let script = { "getType": () => { let { pathname } = top.location; - return pathname.startsWith('/movie/')? - 'movie': - pathname.startsWith('/series/')? - 'show': - 'error'; + if(/^\/series\//.test(pathname)) { + return 'show'; + } else { + let tl = $('[class$="__third-line"]').first; + + return /^\s*$/.test(tl.textContent)? + 'movie': + 'show'; + } }, }; - -window.onlocationchange = script.init; diff --git a/src/cloud/play.google.js b/src/cloud/play.google.js deleted file mode 100644 index 9b3a44f..0000000 --- a/src/cloud/play.google.js +++ /dev/null @@ -1,27 +0,0 @@ -let script = { - "url": "*://play.google.com/store/(movies|tv)/details/*", - - "init": (ready) => { - let _title, _year, _image, R = RegExp; - - let type = script.getType(), - title = $('h1').first, - year = $(`h1 ~ div span:${ type == 'movie'? 'first': 'last' }-of-type`).first, - image = $('img[alt="cover art" i]').first; - - title = title.textContent.replace(/\(\s*(\d{4})\s*\).*?$/, '').trim(); - year = (R.$1 || year.textContent).replace(/^.*?(\d+)/, '$1').trim(); - image = (image || {}).src; - - return { type, title, year, image }; - }, - - "getType": () => ( - location.pathname.startsWith('store/movies/')? - 'movie': - 'show' - ), -}; - -addEventListener('popstate', script.init); -addEventListener('pushstate-changed', script.init); diff --git a/src/cloud/tmdb.js b/src/cloud/tmdb.js index 45f039b..6dd9535 100644 --- a/src/cloud/tmdb.js +++ b/src/cloud/tmdb.js @@ -18,7 +18,7 @@ let script = { image = $('img.poster').first; title = title.textContent.trim(); - year = year.textContent.trim(); + year = +year.textContent.replace(/\(|\)/g, '').trim(); image = (image || {}).src; if(type != 'movie') diff --git a/src/cloud/trakt.js b/src/cloud/trakt.js index 9b6423a..efcfff9 100644 --- a/src/cloud/trakt.js +++ b/src/cloud/trakt.js @@ -93,7 +93,7 @@ let script = { ).first; if(link) - return link.href.replace(/^.*?thetvdb.com\/.+(?:(?:series\/?(?:\?id=)?)(\d+)\b).*?$/, '$1'); + return link.href.replace(/^.*?thetvdb.com\/.+\/(\d+)\b.*?$/, '$1'); }, "process": (element, elements) => { diff --git a/src/cloud/tubi.js b/src/cloud/tubi.js new file mode 100644 index 0000000..765c8ec --- /dev/null +++ b/src/cloud/tubi.js @@ -0,0 +1,22 @@ +let script = { + "url": "*://*.tubitv.com/(movies|series)/\\d+/*", + + "timeout": 1000, + + "init": (ready) => { + let _title, _year, _image, R = RegExp; + + let title = $('h1').first, + year = $('.Col .Col').first, + image = $('.Col img').first, + type = script.getType(); // described below + + title = title.textContent.trim(); + year = +year.textContent.replace(/[^]*\((\d+)\)[^]*/g, '$1').trim(); + image = image.src; + + return { type, title, year, image }; + }, + + "getType": () => (/^\/movies?/.test(top.location.pathname)? 'movie': 'show'), +}; diff --git a/src/cloud/verizon.js b/src/cloud/verizon.js index dcf8a26..1fe24c2 100644 --- a/src/cloud/verizon.js +++ b/src/cloud/verizon.js @@ -35,8 +35,8 @@ let script = { if(!title) return 1000; - title = title.textContent.trim(); year = +year.textContent.slice(0, 4).trim(); + title = title.textContent.replace(RegExp(`\\s*\\(${ year }\\).*`), '').trim(); image = (image || {}).src; return { type, title, year, image }; diff --git a/src/cloud/vumoo.js b/src/cloud/vumoo.js new file mode 100644 index 0000000..81d3a7b --- /dev/null +++ b/src/cloud/vumoo.js @@ -0,0 +1,68 @@ +let script = { + "url": "*://*.vumoo.to/(movies|tv-series)/*", + + "ready": () => !$('[role="presentation"i]').empty, + + "init": (ready) => { + let _title, _year, _image, R = RegExp; + + let title = $('.film-box h1').first, + year = $('.film-box > * span').child(9), + image = $('.poster').first, + type = script.getType(); + + title = title.textContent.replace(/\s*season\s+\d+\s*$/i, '').replace(/\s*\((\d{4})\)/, '').trim(); + year = (type == 'movie')? + +R.$1: + +year.textContent.replace(/[^]*(\d{4})[^]*/, '$1'); + image = (image? image.src: null); + + // auto-prompt downloading for the user + let servers = $('.play'), + roles = $('[role="presentation"i] a'); + + if(servers.length > 1 && type != 'show') { + OLOAD_EVENTS.push(setTimeout( + () => Notify('update', 'Finding download links...', 3000), + 500 + )); + + servers.forEach((server, index, array) => OLOAD_EVENTS.push(setTimeout( + () => { + roles[index].click(); + server.click(); + + if(index == servers.length -1) + OLOAD_EVENTS.push(setTimeout( + () => Notify('update', 'No download links found'), + 7000 + )); + }, + index * 4500 + ))); + } + + return { type, title, year, image }; + }, + + "getType": () => { + let { pathname } = top.location; + + return pathname.startsWith('/movies')? + 'movie': + 'show'; + }, +}, + OLOAD_EVENTS = []; + +top.addEventListener('message', request => { + try { + request = request.data; + + if(request) + if(request.from == 'oload' || request.found == true) + OLOAD_EVENTS.forEach(timeout => clearTimeout(timeout)); + } catch(error) { + throw error; + } +}); diff --git a/src/cloud/youtube.js b/src/cloud/youtube.js index 8def7e6..4a68b8c 100644 --- a/src/cloud/youtube.js +++ b/src/cloud/youtube.js @@ -1,6 +1,11 @@ +let openedByUser = false, + listenersSet = false; + let script = { "url": "*://www.youtube.com/*", + "timeout": 5000, + "init": (ready) => { let _title, _year, _image, R = RegExp; @@ -8,15 +13,15 @@ let script = { close = () => $('.less-button').first.click(), options, type; - if($('.more-button, .less-button').empty) - return 1000; + if($('.more-button, .less-button').empty || !$('.opened').empty) + return script.timeout; open(); // show the year and other information, fails otherwise type = script.getType(); if(type == 'error') - return close(), 1000; + return close(), script.timeout; if(type == 'movie' || type == 'show') { let title = $((type == 'movie'? '.title': '#owner-container')).first, @@ -28,6 +33,8 @@ let script = { title = title.textContent.trim(); year = +year.textContent.replace(/[^]*(?:release|air) date\s+(?:(?:\d+\/\d+\/)?(\d{2,4}))[^]*/i, ($0, $1, $$, $_) => +$1 < 1000? 2000 + +$1: $1); + title = title.replace(RegExp(`\\s*(\\(\\s*)?${ year }\\s*(\\))?`), ''); + options = { type, title, year }; } else if(type == 'list') { let title = $('#title').first, @@ -47,6 +54,26 @@ let script = { close(); // close the meta-information + if(!listenersSet) { + setInterval(() => { + let closed = 'collapsed' in $('ytd-expander').first.attributes; + + if(closed && !openedByUser) + script.init(true); + }, 10); + + $('ytd-expander').first.addEventListener('mouseup', event => { + let closed = 'collapsed' in $('ytd-expander').first.attributes; + + if(!closed) + openedByUser = true; + else + openedByUser = false; + }); + + listenersSet = true; + } + return options; }, @@ -71,3 +98,5 @@ let script = { top.addEventListener('popstate', script.init); top.addEventListener('pushstate-changed', script.init); + +// $('a[href*="/watch?v="]').forEach(element => element.onclick = event => open(event.target.href, '_self')); diff --git a/src/helpers.js b/src/helpers.js index 1715516..626bffc 100644 --- a/src/helpers.js +++ b/src/helpers.js @@ -47,6 +47,10 @@ async function kill(name) { return storage.remove(['Cache-Data/' + btoa(name.toLowerCase().replace(/\s+/g, ''))]); } +function Notify(state, text, timeout = 7000, requiresClick = true) { + return top.postMessage({ type: 'NOTIFICATION', data: { state, text, timeout, requiresClick } }, '*'); +} + // the custom "on location change" event function watchlocationchange(subject) { let locationchangecallbacks = watchlocationchange.locationchangecallbacks; @@ -54,24 +58,46 @@ function watchlocationchange(subject) { watchlocationchange[subject] = watchlocationchange[subject] || location[subject]; if (watchlocationchange[subject] != location[subject]) { + let from = watchlocationchange[subject], + to = location[subject], + properties = { from, to }, + sign = code => btoa((code + '').replace(/\s+/g, '')); + watchlocationchange[subject] = location[subject]; - for(let index = 0, length = locationchangecallbacks.length, callback; index < length; index++) { + for(let index = 0, length = locationchangecallbacks.length, callback, called; length > 0 && index < length; index++) { callback = locationchangecallbacks[index]; + called = locationchangecallbacks.called[sign(callback)]; + + let event = new Event('locationchange', { bubbles: true }); + + if(!called && callback && typeof callback == 'function') { + locationchangecallbacks.called[sign(callback)] = true; + window.addEventListener('beforeunload', event => { + event.preventDefault(false); + + callback({ event, ...properties }); + }); + + callback({ event, ...properties }); - if(callback && typeof callback == 'function') - callback(new Event('locationchange', { bubbles: true })); + open(to, '_self'); + } else { + return /* The eventlistener was already called */; + } } } } watchlocationchange.locationchangecallbacks = watchlocationchange.locationchangecallbacks || []; +watchlocationchange.locationchangecallbacks.called = watchlocationchange.locationchangecallbacks.called || {}; if(!('onlocationchange' in window)) Object.defineProperty(window, 'onlocationchange', { - set: callback => watchlocationchange.locationchangecallbacks.push(callback) + set: callback => (typeof callback == 'function'? watchlocationchange.locationchangecallbacks.push(callback): null), + get: () => watchlocationchange.locationchangecallbacks }); -watchlocationchange.interval = watchlocationchange.interval || setInterval(() => watchlocationchange('href'), 1000); +watchlocationchange.onlocationchangeinterval = watchlocationchange.onlocationchangeinterval || setInterval(() => watchlocationchange('href'), 1); // at least 1s is needed to properly fire the event ._. String.prototype.toCaps = String.prototype.toCaps || function toCaps(all) { @@ -84,7 +110,8 @@ String.prototype.toCaps = String.prototype.toCaps || function toCaps(all) { titles = /(?!^|(?:an?|the)\s+)\b(a([st]|nd?|cross|fter|lthough)?|b(e(cause|fore|tween)?|ut|y)|during|from|in(to)?|[io][fn]|[fn]?or|the|[st]o|through|under|with(out)?|yet)(?!\s*$)\b/gi, cap_exceptions = /([\|\"\(]\s*[a-z]|[\:\.\!\?]\s+[a-z]|(?:^\b|[^\'\-\+]\b)[^aeiouy\d\W]+\b)/gi, // Punctuation exceptions, e.g. "And not I" all_exceptions = /\b((?:ww)?(?:m{1,4}(?:c?d(?:c{0,3}(?:x?l(?:x{0,3}(?:i?vi{0,3})?)?)?)?)?|c?d(?:c{0,3}(?:x?l(?:x{0,3}(?:i?vi{0,3})?)?)?)?|c{1,3}(?:x?l(?:x{0,3}(?:i?vi{0,3})?)?)?|x?l(?:x{0,3}(?:i?vi{0,3})?)?|x{1,3}(?:i?vi{0,3})?|i?vi{0,3}|i{1,3}))\b/gi, // Roman Numberals - cam_exceptions = /\b((?:mr?s|[sdjm]r|mx)|(?:adm|cm?dr?|chf|c[op][lmr]|cpt|gen|lt|mjr|sgt)|doc|hon|prof)(?:\.|\b)/gi; // Titles (Most Common?) + cam_exceptions = /\b((?:mr?s|[sdjm]r|mx)|(?:adm|cm?dr?|chf|c[op][lmr]|cpt|gen|lt|mjr|sgt)|doc|hon|prof)(?:\.|\b)/gi, // Titles (Most Common?) + low_exceptions = /'([\w]+)/gi; // Apostrphe cases array = array.split(/\s+/); @@ -100,10 +127,11 @@ String.prototype.toCaps = String.prototype.toCaps || function toCaps(all) { if(!all) string = string - .replace(titles, ($0, $1, $$, $_) => $1.toLowerCase()) - .replace(cap_exceptions, ($0, $1, $$, $_) => $1.toUpperCase()) - .replace(all_exceptions, ($0, $1, $$, $_) => $1.toUpperCase()) - .replace(cam_exceptions, ($0, $1, $$, $_) => $1[0].toUpperCase() + $1.slice(1, $1.length).toLowerCase() + '.'); + .replace(titles, ($0, $1, $$, $_) => $1.toLowerCase()) + .replace(all_exceptions, ($0, $1, $$, $_) => $1.toUpperCase()) + .replace(cap_exceptions, ($0, $1, $$, $_) => $1.toUpperCase()) + .replace(low_exceptions, ($0, $1, $$, $_) => $0.toLowerCase()) + .replace(cam_exceptions, ($0, $1, $$, $_) => $1[0].toUpperCase() + $1.slice(1, $1.length).toLowerCase() + '.'); return string; }; diff --git a/src/img/local.medusa.png b/src/img/local.medusa.png new file mode 100644 index 0000000000000000000000000000000000000000..36e775d295c8f7792ccd84bfb98e46bb10e1fa79 GIT binary patch literal 1280 zcmaJ=3saH_6#XcX#B#GydrWLjS!%WHq9#Tv=!Qxb0X|537#bf*CP<`}FVf0Yn{;!U z)J!Q?b8`a~Ej5B33hPLag{hE_Fw^yolDMnl;veYF+j*&yDdx>v={1(-`No&lZeEZJlt6z#pxpY88CWp*#?*Aw8FfRwHJg1j0eT&`YN#G^(RJ z=v(Cpx5KES9vA(WhzG%Q17Y+Yo6t|#mzgk?ERH)A9j=pk$;P)d=CdQHf5&_JII^p7 zS7*xWNr$Y5u+uv1Y44&<#}H+V8QhJ}?OY7K7}qcSQUD(4FN&Q>d0*tJg_y7Ue(@1u zyX~vPt9vjNl-O=@uUp{oM-(f2gX(rTbr&7B^LIi7xY&JX3N~>oD=FiHGBGJ>VreOL z*yXza=K~_wL}mwCJnYHJ-Jn{SnCzzzNn9(%eC?h&{s;XCk*z6`0!*^0ZHN<9{I<47 zt8GtKRmXT{KXe$V*yekCWADAhN+iS?&M!YS?SE$=#+@_yxO22_xda1>T=d=qh|bX- z7kFoYbpAPArhKbZ5+gBXw>I12B^D&!X;Ux{&D36PcD|&#>G|XYGOudTG=^1?6@|YA z;|^z-T_u8L1t{_Xz3WnZg{s-t=_xElRh9D*NHkdpU`8p^$(Z|T?c?ujnwpx(7fW8Y zcA*BhBOxfO5CCy;A`Ro_#_1h*&=?GcXUyg1TwzS2E&heo7gWuy8tA*DmK79N9}f@1 zjh+U<;a#)YS3X%c%ws?_dHa1`7T@dIPrSDDQBFSUx#ez$+^OoAZENIS?jW_Ek_ly( zI~f1$Ia%M>*j=6T{+({Du(#t78P4Z4HaBC=*d)AGtJN^AR{KCY_X3rL+k@ZBQ+{4t zT%>;eMWEN~lhA1NvIF>Q>(&77te>!RHl!@|f>Z2RSIe7I#?FPQmb@2_CLtK?m?%nm zuU?qicP>h*WhA9_u%wrN9;%!@C0$^-Yf6hk3$9c0i{|(x1+GJOdOW_F^w&`mg0TZJKZ@bvkN4py^tz>||M%P$!KCs8c_932h#gblt#m zqw=Byv>`j7??49Q38!hV^0KI|jw7Bg_883DjNh{_5;#wzy?PwFTlW{yw+vfr7KT>@ zyesdiSR5Bt-5DZkjn=Dm=S=%uLAxh*4S+_YDXy5qmWCK%I^DUx!Ta{^IpNGoAo2l; z9n7D!R-Q;Xf)QZBP{T~7-*IuKF<`#mCp!w(;%v!MoK0pv1!x5MH~GyRb0B2(;*q|> zjyY}uoL{Q1z#9Ypv*ZJ>TmWdJ`Yr$`!JvHLZZpv94Yeo-?0BobpX(L%Y%l_`ygL7i U%ga%wmE#ISz!MJ&{7+~652Mpcv;Y7A literal 0 HcmV?d00001 diff --git a/src/img/tubi.png b/src/img/tubi.png new file mode 100644 index 0000000000000000000000000000000000000000..5a8ce56942971269f4d8d003e55e7e999ee5e10e GIT binary patch literal 4266 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 literal 0 HcmV?d00001 diff --git a/src/img/vumoo.png b/src/img/vumoo.png new file mode 100644 index 0000000000000000000000000000000000000000..ddf273a8509b710bbb99f78f9eefe39b49c36979 GIT binary patch literal 3702 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 literal 0 HcmV?d00001 diff --git a/src/manifest.json b/src/manifest.json index f3070f4..ae5b911 100644 --- a/src/manifest.json +++ b/src/manifest.json @@ -25,11 +25,18 @@ "content_scripts": [ // Allows media downloads { - "matches": ["*://*.openload.co/*", "*://*.openload.com/*", "*://*.oload.fun/*"], + "matches": ["*://*.openload.co/*", "*://*.openload.com/*", "*://*.oload.fun/*", "*://*.oload.biz/*"], "js": ["download/oload.js"], "all_frames": true }, + // Testing purposes only + { + "matches": ["*://ephellon.github.io/web.to.plex/test/*"], + "js": ["utils.js", "sites/__test__.js"], + "css": ["sites/common.css"] + }, + // The sites { "matches": ["*://*.movieo.me/*"], @@ -56,7 +63,7 @@ "js": ["utils.js", "sites/tvdb/index.js"], "css": ["sites/tvdb/index.css", "sites/common.css"] },{ - "matches": ["*://*.themoviedb.org/movie/*", "https://*.themoviedb.org/tv/*"], + "matches": ["*://*.themoviedb.org/movie/*", "*://*.themoviedb.org/tv/*"], "js": ["utils.js", "sites/tmdb/index.js"], "css": ["sites/tmdb/index.css", "sites/common.css"] },{ @@ -108,9 +115,9 @@ "js": ["utils.js", "sites/netflix/index.js"], "css": ["sites/netflix/index.css", "sites/common.css"] },{ - "matches": ["*://*.gostream.site/*"], - "js": ["utils.js", "sites/gostream/index.js"], - "css": ["sites/gostream/index.css", "sites/common.css"] + "matches": ["*://*.vumoo.to/*"], + "js": ["utils.js", "sites/vumoo/index.js"], + "css": ["sites/vumoo/index.css", "sites/common.css"] },{ "matches": ["*://www.google.com/*"], "js": ["utils.js", "sites/google/index.js"], @@ -135,7 +142,15 @@ "matches": ["*://*.allocine.fr/*"], "js": ["utils.js", "sites/allocine/index.js"], "css": ["sites/allocine/index.css", "sites/common.css"] - } + },{ + "matches": ["*://*.gostream.site/*"], + "js": ["utils.js", "sites/gostream/index.js"], + "css": ["sites/gostream/index.css", "sites/common.css"] + },{ + "matches": ["*://*.tubitv.com/*"], + "js": ["utils.js", "sites/tubi/index.js"], + "css": ["sites/tubi/index.css", "sites/common.css"] + } ], "background": { @@ -165,5 +180,5 @@ "contextMenus", "" ], - "web_accessible_resources": ["img/*"] + "web_accessible_resources": ["img/*", "options/test/*"] } diff --git a/src/options/index.html b/src/options/index.html index f7c327b..0e77ba1 100644 --- a/src/options/index.html +++ b/src/options/index.html @@ -1,7 +1,7 @@ - Web To Plex Options + Web To Plex | Options + + + +

+ +
+
+ + + +
+ + + + +
+
+ + + + + + + + + + + + diff --git a/src/options/test/index.js b/src/options/test/index.js new file mode 100644 index 0000000..b388b85 --- /dev/null +++ b/src/options/test/index.js @@ -0,0 +1,118 @@ +let $ = selector => document.querySelector(selector); + +function modify({ type, title, year, info }) { + let object = { title, year, ...info }; + + $('#example').setAttribute('type', type); + + $('#movie').removeAttribute('active'); + $('#tv-show').removeAttribute('active'); + + $(`#${ type }`).setAttribute('active', true); + + let element; + for(let key in object) + if(element = $(`#${ key }`)) + element.innerHTML = object[key] || ""; + + $('#body').setAttribute('style', `background-image: url("${ type }.poster.jpg")`); + $('#poster').setAttribute('src', `${ type }.poster.jpg`); + + let { imdb, tmdb, tvdb } = object, + ids = { imdb, tmdb, tvdb }; + + for(let id in ids) + $(`#${ id }`).setAttribute('href', ( + ids[id]? + id == 'imdb'? + `https://www.imdb.com/videoembed/${ object[id.toUpperCase()] }/`: + id == 'tmdb'? + `https://www.youtube.com/embed/${ object[id.toUpperCase()] }`: + `https://www.youtube.com/embed/${ object[id.toUpperCase()] }`: + 'blank.html' + )); +} + +function as(type) { + open('blank.html', 'frame'); + + return modify({ + "movie": { + 'type': "movie", + 'title': "Being John Malkovich", + 'year': 1999, + 'info': { + 'rating': "R", + 'runtime': "1:53", + 'genre': "Comedy, Drama, Fantasy", + 'release-date': "December 3, 1999 (USA)", + 'description': `One day at work, unsuccessful puppeteer Craig finds a portal into the head of actor John Malkovich. The portal soon becomes a passion for anybody who enters it's mad and controlling world of overtaking another human body.`, + + 'imdb': "tt0120601", + 'IMDB': "vi3568894233", + 'tmdb': 492, + 'TMDB': "HdVvjvW_OEo", + 'tvdb': null, + 'TVDB': null, + }, + }, + + "tv-show": { + 'type': "tv-show", + 'title': "Love, Death & Robots", + 'year': 2019, + 'info': { + 'rating': "TV-MA", + 'runtime': "0:15", + 'genre': "Animation, Comedy, Fantasy, Horror, Science-Fiction", + 'release-date': "May 15, 2019 (USA)", + 'description': `Terrifying creatures, wicked surprises and dark comedy converge in this NSFW anthology of animated stories presented by Tim Miller and David Fincher.`, + + 'imdb': "tt9561862", + 'IMDB': "vi1035648281", + 'tmdb': 86831, + 'TMDB': "wUFwunMKa4E", + 'tvdb': 357888, + 'TVDB': "wUFwunMKa4E", + }, + }, + }[type]); +} + +document.querySelectorAll('#movie, #tv-show').forEach(element => { + element.onmouseup = event => { + let self = event.target; + + $('#frame').setAttribute('content', false); + + as(self.id); + }; +}); + +document.querySelectorAll('[target="frame"]').forEach(element => { + let body = document.body, + frame = $('#frame'), + loading = $('#loading'), + description = $('#description'); + + element.onmouseup = event => { + frame.setAttribute('content', true); + + [loading, description] + .forEach(element => { + element.setAttribute('loading', true); + element.removeAttribute('style'); + }); + } + + frame.onload = frame.onerror = event => { + + [loading] + .forEach(element => { + element.setAttribute('loading', false); + setTimeout(() => element.setAttribute('style', 'display:none'), 500); + }); + } +}); + +document.body.onload = event => /#(movie|tv-show)/i.test(location.hash)? as(`${ location.hash.replace('#', '') }`): as('movie'); diff --git a/src/options/test/loading.png b/src/options/test/loading.png new file mode 100644 index 0000000000000000000000000000000000000000..749aa93169449de1b43b516ad826b6314d1a9683 GIT binary patch literal 1804 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 C?^g8y literal 0 HcmV?d00001 diff --git a/src/options/test/noise.png b/src/options/test/noise.png new file mode 100644 index 0000000000000000000000000000000000000000..7eead13ca236b9b03a2a309f5dc232b27fc12f39 GIT binary patch literal 54413 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�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 literal 0 HcmV?d00001 diff --git a/src/options/test/tv-show.poster.jpg b/src/options/test/tv-show.poster.jpg new file mode 100644 index 0000000000000000000000000000000000000000..cc96009e7a2caca8a73eac49750891fc6a5c5541 GIT binary patch literal 56325 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 wpV$vOJ>kp!2kdN literal 0 HcmV?d00001 diff --git a/src/plugn.js b/src/plugn.js index 64f4e44..70df308 100644 --- a/src/plugn.js +++ b/src/plugn.js @@ -1,5 +1,5 @@ /* plugn.js (Plugin) - Web to Plex */ -/* global config */ +/* global configuration */ let DISABLE_DEBUGGER = false; @@ -10,6 +10,9 @@ let scribe = let LAST, LAST_JS, LAST_INSTANCE, LAST_ID, LAST_TYPE, FOUND = {}; +let storage = chrome.storage.sync || chrome.storage.local; +let configuration; + function load(name) { return JSON.parse(localStorage.getItem(btoa(name))); } @@ -18,10 +21,154 @@ function save(name, data) { return localStorage.setItem(btoa(name), JSON.stringify(data)); } -function GetConsent(origin) { - return load('permission:' + origin); +async function Load(name = '') { + if(!name) + return /* invalid name */; + + name = 'Cache-Data/' + btoa(name.toLowerCase().replace(/\s+/g, '')); + + return new Promise((resolve, reject) => { + function LOAD(DISK) { + let data = JSON.parse(DISK[name] || null); + + return resolve(data); + } + + storage.get(null, DISK => { + if(chrome.runtime.lastError) + chrome.storage.local.get(null, LOAD); + else + LOAD(DISK); + }); + }); +} + +async function Save(name = '', data) { + if(!name) + return /* invalid name */; + + name = 'Cache-Data/' + btoa(name.toLowerCase().replace(/\s+/g, '')); + data = JSON.stringify(data); + + await storage.set({[name]: data}, () => data); + + return name; +} + +function GetConsent(name, builtin) { + return configuration[`${ (builtin? 'builtin': 'plugin') }_${ name }`]; +} + +// get the saved options +function getConfiguration() { + return new Promise((resolve, reject) => { + function handleConfiguration(options) { + if((!options.plexToken || !options.servers) && !options.DO_NOT_USE) + return reject(new Error('Required options are missing')), + null; + + let server, o; + + if(!options.DO_NOT_USE) { + // For now we support only one Plex server, but the options already + // allow multiple for easy migration in the future. + server = options.servers[0]; + o = { + server: { + ...server, + // Compatibility for users who have not updated their settings yet. + connections: server.connections || [{ uri: server.url }] + }, + ...options + }; + + options.plexURL = o.plexURL? + `${ o.plexURL }web#!/server/${ o.server.id }/`: + `https://app.plex.tv/web/app#!/server/${ o.server.id }/`; + } else { + o = options; + } + + if(o.couchpotatoBasicAuthUsername) + o.couchpotatoBasicAuth = { + username: o.couchpotatoBasicAuthUsername, + password: o.couchpotatoBasicAuthPassword + }; + + // TODO: stupid copy/pasta + if(o.watcherBasicAuthUsername) + o.watcherBasicAuth = { + username: o.watcherBasicAuthUsername, + password: o.watcherBasicAuthPassword + }; + + if(o.radarrBasicAuthUsername) + o.radarrBasicAuth = { + username: o.radarrBasicAuthUsername, + password: o.radarrBasicAuthPassword + }; + + if(o.sonarrBasicAuthUsername) + o.sonarrBasicAuth = { + username: o.sonarrBasicAuthUsername, + password: o.sonarrBasicAuthPassword + }; + + if(o.usingOmbi && o.ombiURLRoot && o.ombiToken) { + o.ombiURL = o.ombiURLRoot; + } else { + delete o.ombiURL; // prevent variable ghosting + } + + if(o.usingCouchPotato && o.couchpotatoURLRoot && o.couchpotatoToken) { + o.couchpotatoURL = `${ items.couchpotatoURLRoot }/api/${encodeURIComponent(o.couchpotatoToken)}`; + } else { + delete o.couchpotatoURL; // prevent variable ghosting + } + + if(o.usingWatcher && o.watcherURLRoot && o.watcherToken) { + o.watcherURL = o.watcherURLRoot; + } else { + delete o.watcherURL; // prevent variable ghosting + } + + if(o.usingRadarr && o.radarrURLRoot && o.radarrToken) { + o.radarrURL = o.radarrURLRoot; + } else { + delete o.radarrURL; // prevent variable ghosting + } + + if(o.usingSonarr && o.sonarrURLRoot && o.sonarrToken) { + o.sonarrURL = o.sonarrURLRoot; + } else { + delete o.sonarrURL; // prevent variable ghosting + } + + resolve(o); + } + + storage.get(null, options => { + if(chrome.runtime.lastError) + chrome.storage.local.get(null, handleOptions); + else + handleConfiguration(options); + }); + }); +} + +// self explanatory, returns an object; sets the configuration variable +function parseConfiguration() { + return getConfiguration().then(options => (configuration = options), error => { throw error }); } +chrome.storage.onChanged.addListener(async(changes, namespace) => { + await parseConfiguration(); +}); + +(async() => { + await parseConfiguration(); +})(); + function RandomName(length = 16, symbol = '') { let values = []; @@ -32,7 +179,7 @@ function RandomName(length = 16, symbol = '') { let running = [], instance = RandomName(), TAB, cache = {}; -let tabchange = tabs => { +let tabchange = async tabs => { let tab = tabs[0]; if(!tab || FOUND[instance]) return; @@ -42,7 +189,8 @@ let tabchange = tabs => { let id = tab.id, url = tab.url, org, ali, js, - type, cached; + type, cached, + allowed; if( !url @@ -59,12 +207,12 @@ let tabchange = tabs => { url = new URL(url); org = url.origin; ali = url.host.replace(/^(ww\w+\.|\w{2}\.)/i, ''); - can = GetConsent(ali); type = (load(`builtin:${ ali }`) + '') == 'true'? 'script': 'plugin'; js = load(`${ type }:${ ali }`); code = cache[ali]; + allowed = await GetConsent(ali, type == 'script'); - if(!can || !js) return; + if(!allowed || !js) return; if(code) { chrome.tabs.executeScript(id, { file: 'helpers.js' }, () => { @@ -90,46 +238,51 @@ let tabchange = tabs => { // Sorry, but the instance needs to be callable multiple times chrome.tabs.executeScript(id, { code: (LAST = cache[ali] = -`/* tabchange */ +`/* ${ type }* (${ (DISABLE_DEBUGGER? 'on':'off') }line) - "${ url.href }" */ ${ name } = (${ name } || (${ name }$ = $ => { - 'use strict'; - - ${ code } - - ;top.onlocationchange = event => ${ type }.init(); - - let InjectedReadyState; - - return (${ type }.RegExp = RegExp( - ${ type }.url - /*.replace(/\\|.*?(\\)|$)/g,'')*/ - .replace(/^\\*\\:/,'\\\\w{3,}:') - .replace(/\\*\\./g,'([^\\\\.]+\\\\.)?') - .replace(/\\/\\*/g,'/[^$]*'),'i') - ).test - ("${ url.href }")? - /* URL matches pattern */ - ${ type }.ready? - /* Injected file has the "ready" property */ - (InjectedReadyState = - ${ type }.ready.constructor.name == 'AsyncFunction'? - /* "ready" is an async function */ - ${ type }.ready(): - /* "ready" is a sync (normal) function */ - ${ type }.ready() - )? - /* Injected file is ready */ - ${ type }.init( InjectedReadyState ): - /* Injected file isn't ready */ - (${ type }.timeout || 1000): - /* Injected file doesn't have the "ready" property */ - ${ type }.init(): - /* URL doesn't match pattern */ -( console.warn("The domain '${ org }' ('${ url.href }') does not match the domain pattern '"+${ type }.url+"' ("+${ type }.RegExp+")"), 5000); +'use strict'; + +if(${ allowed } === false) + return ''; + +/* Start Injected */ +${ code } +/* End Injected */ + +let InjectedReadyState; + +return (${ type }.RegExp = RegExp( + ${ type }.url + /*.replace(/\\|.*?(\\)|$)/g,'')*/ + .replace(/^\\*\\:/,'\\\\w{3,}:') + .replace(/\\*\\./g,'([^\\\\.]+\\\\.)?') + .replace(/\\/\\*/g,'/[^$]*'),'i') +).test +(location.href)? +/* URL matches pattern */ + ${ type }.ready? + /* Injected file has the "ready" property */ + (InjectedReadyState = + ${ type }.ready.constructor.name == 'AsyncFunction'? + /* "ready" is an async function */ + ${ type }.ready(): + /* "ready" is a sync (normal) function */ + ${ type }.ready() + )? + /* Injected file is ready */ + ${ type }.init( InjectedReadyState ): + /* Injected file isn't ready */ + (${ type }.timeout || 1000): + /* Injected file doesn't have the "ready" property */ + ${ type }.init(): +/* URL doesn't match pattern */ +(console.warn("The domain '${ org }' (" + location.href + ") does not match the domain pattern '" + ${ type }.url + "' (" + ${ type }.RegExp + ")"), 5000); })(document.queryBy)); console.log('[${ name }]', ${ name }); +top.onlocationchange = (event) => chrome.runtime.sendMessage({ type: '$INIT$', options: { ${ type }: '${ js }' } }, callback => callback); + ;${ name };` ) }, results => handle(results, LAST_ID = id, LAST_INSTANCE = instance, LAST_JS = js, LAST_TYPE = type)) }) @@ -152,14 +305,49 @@ let handle = async(results, tabID, instance, script, type) => { let data = await results[0]; + if(typeof data == 'number') { + if(handle.timeout) + return /* already running */; + + return handle.timeout = setTimeout(() => { let { request, sender, callback } = (processMessage.properties || {}); handle.timeout = null; processMessage(request, sender, callback) }, data); + } else if(typeof data == 'string') { + let R = RegExp; + + if(/^<([^<>]+)>$/.test(data)) + return scribe.warn(`The instance requires the "${ R.$1 }" permission: ${ instance }`); + + data.replace(/^([^]+?)\s*\((\d{4})\):([\w\-]+)$/); + + let title = R.$1, + year = R.$2, + type = R.$3; + + data = { type, title, year }; + } + + if(typeof data != 'object') + return /* timeout */; + if(typeof data == 'number') return setTimeout(() => { let { request, sender, callback } = (processMessage.properties || {}); processMessage(request, sender, callback) }, data); if(typeof data != 'object') return /* setTimeout */; try { + + let { type, title, year } = data; + + title = title + .replace(/[\u2010-\u2015]/g, '-') // fancy hyphen + .replace(/[\u201a\u275f]/g, ',') // fancy comma + .replace(/[\u2018\u2019\u201b\u275b\u275c]/g, "'") // fancy apostrophe + .replace(/[\u201c-\u201f\u275d\u275e]/g, '"'); // fancy quotation marks + year = +year; + + data = { ...data, type, title, year }; + chrome.tabs.insertCSS(tabID, { file: 'sites/common.css' }); - chrome.tabs.sendMessage(tabID, { data, script, instance, instance_type: 'script', type: 'POPULATE' }); + chrome.tabs.sendMessage(tabID, { data, script, instance, instance_type: type, type: 'POPULATE' }); } catch(error) { throw new Error(InstanceWarning + ' - ' + String(error)); } @@ -175,6 +363,24 @@ chrome.tabs.onActivated.addListener(change => { chrome.tabs.get(change.tabId, tab => tabchange([ tab ])); }); +let refresh; + +chrome.tabs.onUpdated.addListener(refresh = (ID, change, tab) => { + instance = RandomName(); + + if(change.status == 'complete' && !tab.discarded) + tabchange([ tab ]); + else if(!tab.discarded) + setTimeout(() => refresh(ID, change, tab), 1000); +}); + +// workaround for the above +chrome.tabs.onActivated.addListener(change => { + instance = RandomName(); + + chrome.tabs.get(change.tabId, tab => tabchange([ tab ])); +}); + chrome.tabs.onUpdated.addListener((ID, change, tab) => { instance = RandomName(); @@ -187,7 +393,7 @@ chrome.tabs.onUpdated.addListener((ID, change, tab) => { // listen for a page load let processMessage; -chrome.runtime.onMessage.addListener(processMessage = (request, sender, callback) => { +chrome.runtime.onMessage.addListener(processMessage = async(request, sender, callback) => { let { options } = request, tab = TAB || {}, { id, url, href } = tab, @@ -215,7 +421,8 @@ chrome.runtime.onMessage.addListener(processMessage = (request, sender, callback if(request && request.options) { let { type } = request, { plugin, script } = options, - _type = type.toLowerCase(); + _type = type.toLowerCase(), + allowed; type = type.toUpperCase(); @@ -227,6 +434,8 @@ chrome.runtime.onMessage.addListener(processMessage = (request, sender, callback switch(type) { case 'PLUGIN': + allowed = await GetConsent(plugin, false); + fetch(file, { mode: 'cors' }) .then(response => response.text()) .then(code => { @@ -234,13 +443,16 @@ chrome.runtime.onMessage.addListener(processMessage = (request, sender, callback // Sorry, but the instance needs to be callable multiple times chrome.tabs.executeScript(id, { code: (LAST = cache[plugin] = -`/* plugin */ +`/* plugin (${ (DISABLE_DEBUGGER? 'on':'off') }line) - "${ url.href }" */ ${ name } = (${ name } || (${ name }$ = $ => { 'use strict'; -${ code } +if(${ allowed } === false) + return ''; -;top.onlocationchange = event => plugin.init(); +/* Start Injected */ +${ code } +/* End Injected */ let PluginReadyState; @@ -251,7 +463,7 @@ return (plugin.RegExp = RegExp( .replace(/\\*\\./g,'([^\\\\.]+\\\\.)?') .replace(/\\/\\*/g,'/[^$]*'),'i') ).test -("${ url.href }")? +(location.href)? /* URL matches pattern */ plugin.ready? /* Plugin has the "ready" property */ @@ -269,11 +481,13 @@ return (plugin.RegExp = RegExp( /* Plugin doesn't have the "ready" property */ plugin.init(): /* URL doesn't match pattern */ -(console.warn("The domain '${ org }' ('${ url.href }') does not match the domain pattern '" + plugin.url + "' (" + plugin.RegExp + ")"), 5000); +(console.warn("The domain '${ org }' (" + location.href + ") does not match the domain pattern '" + plugin.url + "' (" + plugin.RegExp + ")"), 5000); })(document.queryBy)); console.log('[${ name }]', ${ name }); +top.onlocationchange = (event) => chrome.runtime.sendMessage({ type: '$INIT$', options: { plugin: '${ plugin }' } }, callback => callback); + ;${ name };` ) }, results => handle(results, LAST_ID = id, LAST_INSTANCE = instance, LAST_JS = plugin, LAST_TYPE = type)) }) @@ -283,6 +497,8 @@ console.log('[${ name }]', ${ name }); break; case 'SCRIPT': + allowed = await GetConsent(script, true); + fetch(file, { mode: 'cors' }) .then(response => response.text()) .then(code => { @@ -290,13 +506,16 @@ console.log('[${ name }]', ${ name }); // Sorry, but the instance needs to be callable multiple times chrome.tabs.executeScript(id, { code: (LAST = cache[script] = -`/* script */ +`/* script (${ (DISABLE_DEBUGGER? 'on':'off') }line) - "${ url.href }" */ ${ name } = (${ name } || (${ name }$ = $ => { 'use strict'; -${ code } +if(${ allowed } === false) + return ''; -;top.onlocationchange = event => script.init(); +/* Start Injected */ +${ code } +/* End Injected */ let ScriptReadyState; @@ -307,7 +526,7 @@ return (script.RegExp = RegExp( .replace(/\\*\\./g,'([^\\\\.]+\\\\.)?') .replace(/\\/\\*/g,'/[^$]*'),'i') ).test -("${ url.href }")? +(location.href)? /* URL matches pattern */ script.ready? /* Script has the "ready" property */ @@ -325,11 +544,13 @@ return (script.RegExp = RegExp( /* Script doesn't have the "ready" property */ script.init(): /* URL doesn't match pattern */ -(console.warn("The domain '${ org }' ('${ url.href }') does not match the domain pattern '" + script.url + "' (" + script.RegExp + ")"), 5000); +(console.warn("The domain '${ org }' (" + location.href + ") does not match the domain pattern '" + script.url + "' (" + script.RegExp + ")"), 5000); })(document.queryBy)); console.log('[${ name }]', ${ name }); +top.onlocationchange = (event) => chrome.runtime.sendMessage({ type: '$INIT$', options: { script: '${ script }' } }, callback => callback); + ;${ name };` ) }, results => handle(results, LAST_ID = id, LAST_INSTANCE = instance, LAST_JS = script, LAST_TYPE = type)) }) @@ -342,6 +563,14 @@ console.log('[${ name }]', ${ name }); chrome.tabs.executeScript(id, { code: LAST }, results => handle(results, LAST_ID, LAST_INSTANCE, LAST_JS, LAST_TYPE)); break; + case '$INIT$': + chrome.tabs.getCurrent(tab => { + instance = RandomName(); + + setTimeout(() => tabchange([ tab ]), 5000); + }); + break; + case 'FOUND': FOUND[request.instance] = request.found; break; diff --git a/src/popup/index.html b/src/popup/index.html index dedd62b..4554a5a 100644 --- a/src/popup/index.html +++ b/src/popup/index.html @@ -164,8 +164,8 @@ box-shadow: 0 10px 128px inset #6A8592; } - #gostream:hover { - box-shadow: 0 10px 128px inset #028CC9; + #vumoo:hover { + box-shadow: 0 10px 128px inset #DD1B2F; } #shana-project:hover { @@ -192,6 +192,14 @@ box-shadow: 0 10px 128px inset #222222; } + #gostream:hover { + box-shadow: 0 10px 128px inset #028CC9; + } + + #tubi:hover { + box-shadow: 0 10px 128px inset #26262D; + } + #local-plex:hover { box-shadow: 0 10px 128px inset #F9BD03; } @@ -216,6 +224,10 @@ box-shadow: 0 10px 128px inset #E48F34; } + #local-medusa:hover { + box-shadow: 0 10px 128px inset #26B043; + } + [save-file]:after, [cost-cash-low]:after, [cost-cash-med]:after, [cost-cash-hig]:after { content: "____"; color: transparent; @@ -241,7 +253,7 @@ float: right; } - [is-shy] label:after { + [is-shy] label:after, [is-dead] label:after { content: " \1f910"; float: right; } @@ -250,6 +262,11 @@ background: url("../img/48.png") no-repeat center; } + [not-safe] label:after { + content: " \1F527"; + float: right; + } + /* $1 - $10 */ [cost-cash-low]:after { background: url("../img/$48.png") no-repeat center; @@ -301,7 +318,7 @@ - + Verizon @@ -316,13 +333,13 @@ - + Shana Project - + YouTube @@ -337,27 +354,33 @@ + + + Vumoo + + + fandango - + Amazon + + + IMDb - - - CouchPotato @@ -370,36 +393,36 @@ + + + The MovieDb - - - Letterboxd - + Hulu + + + The TVDb - - - Flickmetrix @@ -412,16 +435,16 @@ + + + iTunes - - - - + showRSS @@ -433,21 +456,15 @@ + + + Movieo - - - - - - GoStream - - - TV Maze @@ -482,6 +499,21 @@ + + + + + GoStream + + + + + + Tubi + + + + diff --git a/src/popup/index.js b/src/popup/index.js index ac75a63..faf74de 100644 --- a/src/popup/index.js +++ b/src/popup/index.js @@ -55,7 +55,9 @@ document.body.onload = function() { "disabled": "Not yet implemented", "is-shy": "Can only be accessed via: {*}", "is-slow": "Resource intensive (loads slowly)", + "is-dead": "Isn't meant to show the Web to Plex button", "local": "Opens a link to ^{*}", + "not-safe": "Updated irregularly, may drop support", "pop-ups": "Contains annoying/intrusive ads and/or pop-ups", "save-file": "Uses {*} before using your manager(s)", // $0.99 one time; $0.99 - $9.99/mon @@ -81,8 +83,10 @@ document.body.onload = function() { let elements = document.querySelectorAll(selectors.join(',')); - for(let element, index = 0, length = elements.length; index < length; index++) + for(let element, index = 0, length = elements.length; index < length; index++) { + let number = 1; for(let attribute in messages) if(attribute in (element = elements[index]).attributes) - element.title = `${ parse(messages[attribute], attribute, element) }. ${ element.title }`; + element.title += `\n${(number++)}) ${ parse(messages[attribute], attribute, element) }.`; + } } diff --git a/src/sites/__test__.js b/src/sites/__test__.js new file mode 100644 index 0000000..a4c3de9 --- /dev/null +++ b/src/sites/__test__.js @@ -0,0 +1,2 @@ +/* global sendUpdate(type:string, details:object) */ +(init = () => sendUpdate('SCRIPT', { script: '__test__' }))(); diff --git a/src/sites/common.css b/src/sites/common.css index 7ea7c9a..ec296d3 100644 --- a/src/sites/common.css +++ b/src/sites/common.css @@ -116,8 +116,13 @@ background: #2A2AFF !important; } -/* Web to Plex warning notifications */ -.web-to-plex-notification.warning { +/* Web to Plex success notifications */ +.web-to-plex-notification.success { + background: #03BDF9 !important; +} + +/* Web to Plex error/warning notifications */ +.web-to-plex-notification.warning, .web-to-plex-notification.error { background: #FF2A2A !important; } @@ -218,9 +223,14 @@ max-width: 60% !important; } -.web-to-plex-prompt-option h2 { +.web-to-plex-prompt-option.mutable > h2 { + background: #0000 !important; + color: inherit !important; font-family: inherit !important; font-size: initial !important; + text-align: inherit !important; + + margin: inherit !important; } .web-to-plex-prompt-option.mutable > .remove { diff --git a/src/sites/flenix/index.js b/src/sites/flenix/index.js deleted file mode 100644 index c5444d6..0000000 --- a/src/sites/flenix/index.js +++ /dev/null @@ -1,50 +0,0 @@ -/* global parseOptions, modifyPlexButton, findPlexMedia */ -function isMoviePage() { - // An example movie page: /movies/3030-the-1517-to-paris.html - return /\/(movies?|views?)\//.test(window.location.pathname); -} -function isMoviePageReady() { - return !!document.querySelector('#videoplayer video').getAttribute('onplay') != ''; -} -function init() { - if (isMoviePage()) - if (isMoviePageReady()) - initPlexThingy(); - else - // This almost never happens, but sometimes the page is too slow so we need to wait a bit. - setTimeout(init, 1000); -} -parseOptions().then(() => { - window.addEventListener('popstate', init); - window.addEventListener('pushstate-changed', init); - init(); -}); -async function initPlexThingy() { - let button = renderPlexButton(); - if (!button) - return /* Fatal Error: Fail Silently */; - let $title = document.querySelector('#dle-content .about > h1'), - $date = document.querySelector('.features > .reset:nth-child(2) a'); - if (!$title || !$date) - return modifyPlexButton( - button, - 'error', - 'Could not extract title or year from Flenix' - ), - null; - let meta = { - method: 'POST', - headers: {'Content-Type': 'application/x-www-form-urlencoded'}, - mode: 'no-cors' - }; - let title = $title.innerText.trim(), - year = $date.innerText, - type = 'movie'; - let Db = await getIDs({ title, year, type }), - IMDbID = Db.imdb, - TMDbID = Db.tmdb, - TVDbID = Db.tvdb; - title = Db.title; - year = Db.year; - findPlexMedia({ title, year, button, IMDbID, TMDbID, TVDbID, type, remote: '/engine/ajax/get.php', locale: 'flenix' }); -} \ No newline at end of file diff --git a/src/sites/google/play.js b/src/sites/google/play.js index 448d8a7..6d67eba 100644 --- a/src/sites/google/play.js +++ b/src/sites/google/play.js @@ -1,2 +1,2 @@ /* global sendUpdate(type:string, details:object) */ -(init = () => sendUpdate('SCRIPT', { script: 'play.google' }))(); +(init = () => sendUpdate('SCRIPT', { script: 'google.play' }))(); diff --git a/src/sites/flenix/index.css b/src/sites/tubi/index.css similarity index 100% rename from src/sites/flenix/index.css rename to src/sites/tubi/index.css diff --git a/src/sites/tubi/index.js b/src/sites/tubi/index.js new file mode 100644 index 0000000..f4a7ec8 --- /dev/null +++ b/src/sites/tubi/index.js @@ -0,0 +1,2 @@ +/* global sendUpdate(type:string, details:object) */ +(init = () => sendUpdate('SCRIPT', { script: 'tubi' }))(); diff --git a/src/sites/vumoo/index.css b/src/sites/vumoo/index.css new file mode 100644 index 0000000..e69de29 diff --git a/src/sites/vumoo/index.js b/src/sites/vumoo/index.js new file mode 100644 index 0000000..d932306 --- /dev/null +++ b/src/sites/vumoo/index.js @@ -0,0 +1,2 @@ +/* global sendUpdate(type:string, details:object) */ +(init = () => sendUpdate('SCRIPT', { script: 'vumoo' }))(); diff --git a/src/utils.js b/src/utils.js index 8995c14..f815fa3 100644 --- a/src/utils.js +++ b/src/utils.js @@ -1,1735 +1,1979 @@ /* eslint-disable no-unused-vars */ -/* global config */ - -let DISABLE_DEBUGGER = false; - -let date = (new Date), - terminal = - DISABLE_DEBUGGER? - { error: m => m, info: m => m, log: m => m, warn: m => m, group: m => m, groupEnd: m => m }: - console; - -let YEAR = date.getFullYear(), - MONTH = date.getMonth() + 1, - DATE = date.getDate(), - NOTIFIED = false; - -let getURL = url => chrome.extension.getURL(url), - $ = (selector, container) => queryBy(selector, container), - init; - -let IMG_URL = { - 'icon_16': getURL('img/16.png'), - 'icon_48': getURL('img/48.png'), - 'icon_white_16': getURL('img/_16.png'), - 'icon_white_48': getURL('img/_48.png'), - 'icon_outline_16': getURL('img/o16.png'), - 'icon_outline_48': getURL('img/o48.png'), - 'hide_icon_16': getURL('img/hide.16.png'), - 'hide_icon_48': getURL('img/hide.48.png'), - 'show_icon_16': getURL('img/show.16.png'), - 'show_icon_48': getURL('img/show.48.png'), - 'plexit_icon_16': getURL('img/plexit.16.png'), - 'plexit_icon_48': getURL('img/plexit.48.png'), - 'reload_icon_16': getURL('img/reload.16.png'), - 'reload_icon_48': getURL('img/reload.48.png'), - 'close_icon_16': getURL('img/close.16.png'), - 'close_icon_48': getURL('img/close.48.png'), - 'settings_icon_16': getURL('img/settings.16.png'), - 'settings_icon_48': getURL('img/settings.48.png'), - 'noise_background': getURL('img/noise.png'), - 'nil': getURL('img/null.png'), -}; +/* global config, init, sendUpdate, "Helpers" */ + +let config, init, sendUpdate; + +(async date => { + + // default date items + let YEAR = date.getFullYear(), + MONTH = date.getMonth() + 1, + DATE = date.getDate(), + NOTIFIED = false; + + // simple helpers + let extURL = url => chrome.extension.getURL(url), + $ = (selector, container) => queryBy(selector, container); + + let IMG_URL = { + 'nil': extURL('img/null.png'), + 'icon_16': extURL('img/16.png'), + 'icon_48': extURL('img/48.png'), + 'hide_icon_16': extURL('img/hide.16.png'), + 'hide_icon_48': extURL('img/hide.48.png'), + 'show_icon_16': extURL('img/show.16.png'), + 'show_icon_48': extURL('img/show.48.png'), + 'close_icon_16': extURL('img/close.16.png'), + 'close_icon_48': extURL('img/close.48.png'), + 'icon_white_16': extURL('img/_16.png'), + 'icon_white_48': extURL('img/_48.png'), + 'plexit_icon_16': extURL('img/plexit.16.png'), + 'plexit_icon_48': extURL('img/plexit.48.png'), + 'reload_icon_16': extURL('img/reload.16.png'), + 'reload_icon_48': extURL('img/reload.48.png'), + 'icon_outline_16': extURL('img/o16.png'), + 'icon_outline_48': extURL('img/o48.png'), + 'noise_background': extURL('img/noise.png'), + 'settings_icon_16': extURL('img/settings.16.png'), + 'settings_icon_48': extURL('img/settings.48.png'), + }; -// the storage -const storage = chrome.storage.sync || chrome.storage.local; + // the storage - priority to sync + const storage = chrome.storage.sync || chrome.storage.local; -async function load(name = '') { - if(!name) return; + async function load(name = '') { + if(!name) + return /* invalid name */; - name = 'Cache-Data/' + btoa(name.toLowerCase().replace(/\s+/g, '')); + name = 'Cache-Data/' + btoa(name.toLowerCase().replace(/\s+/g, '')); - return new Promise((resolve, reject) => { - function LOAD(DISK) { - let data = JSON.parse(DISK[name] || null); + return new Promise((resolve, reject) => { + function LOAD(DISK) { + let data = JSON.parse(DISK[name] || null); - return resolve(data); - } + return resolve(data); + } - storage.get(null, DISK => { - if (chrome.runtime.lastError) - chrome.storage.local.get(null, LOAD); - else - LOAD(DISK); + storage.get(null, DISK => { + if(chrome.runtime.lastError) + chrome.storage.local.get(null, LOAD); + else + LOAD(DISK); + }); }); - }); -} - -async function save(name = '', data) { - if(!name) return; - - name = 'Cache-Data/' + btoa(name.toLowerCase().replace(/\s+/g, '')); - data = JSON.stringify(data); - - await storage.set({[name]: data}, () => data); - - return name; -} - -async function kill(name) { - return storage.remove(['Cache-Data/' + btoa(name.toLowerCase().replace(/\s+/g, ''))]); -} - -// create and/or queue a notification -// state = "error" - red -// state = "update" - blue -// state = "info" - grey -// anything else for state will show as orange -class Notification { - constructor(state, text, timeout = 7000, callback = () => {}, requiresClick = true) { - let queue = (Notification.queue = Notification.queue || { list: [] }), - last = queue.list[queue.list.length - 1]; - - if((config.NotifyNewOnly && /\balready (exists|(been )?added)\b/.test(text)) || (config.NotifyOnlyOnce && NOTIFIED && state === 'info')) - return /* Don't match /.../i as to not match item titles */; - - NOTIFIED = true; - - if (last && last.done === false) - return (last => setTimeout(() => new Notification(state, text, timeout, callback, requiresClick), +(new Date) - last.start))(last); + } - let element = furnish(`div.web-to-plex-notification.${state}`, { - onmouseup: event => { - let notification = Notification.queue[event.target.id], - element = notification.element; + async function save(name = '', data) { + if(!name) + return /* invalid name */; - notification.done = true; - Notification.queue.list.splice(notification.index, 1); - clearTimeout(notification.job); - element.remove(); + name = 'Cache-Data/' + btoa(name.toLowerCase().replace(/\s+/g, '')); + data = JSON.stringify(data); - let removed = delete Notification.queue[notification.id]; + await storage.set({[name]: data}, () => data); - return (event.requiresClick)? null: notification.callback(removed); - } - }, text); - - queue[element.id = +(new Date)] = { - start: +element.id, - stop: +element.id + timeout, - span: +timeout, - done: false, - index: queue.list.length, - job: setTimeout(() => element.onmouseup({ target: element, requiresClick }), timeout), - id: +element.id, - callback, element - }; - queue.list.push(queue[element.id]); + return name; + } - document.body.appendChild(element); + async function remove(name) { + if(!name) + return /* invalid name */; - return queue[element.id]; + return await storage.remove(['Cache-Data/' + btoa(name.toLowerCase().replace(/\s+/g, ''))]); } -} -class Prompt { - constructor(prompt_type, options, callback = () => {}, container = document.body) { - let prompt, remove, - array = (options instanceof Array? options: [].slice.call(options)), - data = [...array], - profiles = { - movie: JSON.parse( - config.usingRadarr? - config.radarrQualities: - config.usingWatcher? - config.watcherQualities: - '[]' - ), - show: JSON.parse( - config.usingSonarr? - config.sonarrQualities: - '[]' - ) - }, - locations = { - movie: JSON.parse( - config.usingRadarr? - config.radarrStoragePaths: - config.usingWatcher? - config.watcherStoragePaths: - '[]' - ), - show: JSON.parse( - config.usingSonarr? - config.sonarrStoragePaths: - '[]' - ) - }, - defaults = { - movie: ( - config.usingRadarr? - { quality: config.__radarrQuality, location: config.__radarrStoragePath }: - {} - ), - show: ( - config.usingSonarr? - { quality: config.__sonarrQuality, location: config.__sonarrStoragePath }: - {} - ) + /* Notifications */ + // create and/or queue a notification + // state = "warning" - red + // state = "error" + // state = "update" - blue + // state = "info" - grey + // anything else for state will show as orange + class Notification { + constructor(state, text, timeout = 7000, callback = () => {}, requiresClick = true) { + let queue = (Notification.queue = Notification.queue || { list: [] }), + last = queue.list[queue.list.length - 1]; + + if(((state == 'error' || state == 'warning') && config.NotifyNewOnly && /\balready\s+(exists?|(been\s+)?added)\b/.test(text)) || (config.NotifyOnlyOnce && NOTIFIED && state === 'info')) + return /* Don't match /.../i as to not match item titles */; + NOTIFIED = true; + + if(last && !last.done) + return (last => setTimeout(() => new Notification(state, text, timeout, callback, requiresClick), +(new Date) - last.start))(last); + + let element = furnish(`div.web-to-plex-notification.${state}`, { + onmouseup: event => { + let notification = Notification.queue[event.target.id], + element = notification.element; + + notification.done = true; + Notification.queue.list.splice(notification.index, 1); + clearTimeout(notification.job); + element.remove(); + + let removed = delete Notification.queue[notification.id]; + + return (event.requiresClick)? null: notification.callback(removed); + } + }, text); + + queue[element.id = +(new Date)] = { + start: +element.id, + stop: +element.id + timeout, + span: +timeout, + done: false, + index: queue.list.length, + job: setTimeout(() => element.onmouseup({ target: element, requiresClick }), timeout), + id: +element.id, + callback, element }; + queue.list.push(queue[element.id]); - switch(prompt_type) { - /* Allows the user to add and remove items from a list */ - case 'prompt': - case 'input': - remove = element => { - let prompter = $('.web-to-plex-prompt').first, - header = $('.web-to-plex-prompt-header').first, - counter = $('.web-to-plex-prompt-options').first; - - if(element === true) - return prompter.remove(); - else - element.remove(); + document.body.appendChild(element); - data.splice(+element.value, 1, null); - header.innerText = 'Approve ' + counter.children.length + (counter.children.length == 1?' item': ' items'); + return queue[element.id]; + } + } + + class Prompt { + constructor(prompt_type, options, callback = () => {}, container = document.body) { + let prompt, remove, + array = (options instanceof Array? options: [].slice.call(options)), + data = [...array], + profiles = { + movie: JSON.parse( + config.usingRadarr? + config.radarrQualities: + config.usingWatcher? + config.watcherQualities: + '[]' + ), + show: JSON.parse( + config.usingSonarr? + config.sonarrQualities: + config.usingMedusa? + config.medusaQualities: + '[]' + ) + }, + locations = { + movie: JSON.parse( + config.usingRadarr? + config.radarrStoragePaths: + config.usingWatcher? + config.watcherStoragePaths: + '[]' + ), + show: JSON.parse( + config.usingSonarr? + config.sonarrStoragePaths: + config.usingMedusa? + config.medusaStoragePaths: + '[]' + ) + }, + defaults = { + movie: ( + config.usingRadarr? + { quality: config.__radarrQuality, location: config.__radarrStoragePath }: + {} + ), + show: ( + config.usingSonarr? + { quality: config.__sonarrQuality, location: config.__sonarrStoragePath }: + config.usingMedusa? + { quality: config.__medusaQuality, location: config.__medusaStoragePath }: + {} + ) }; - prompt = furnish('div.web-to-plex-prompt', {}, - furnish('div.web-to-plex-prompt-body', {}, - // The prompt's title - furnish('h1.web-to-plex-prompt-header', {}, 'Approve ' + array.length + (array.length == 1? ' item': ' items')), - - // The prompt's items - furnish('div.web-to-plex-prompt-options', {}, - ...(ITEMS => { - let elements = []; - - for(let index = 0, length = ITEMS.length, ITEM, P_QUA, P_LOC; index < length; index++) { - ITEM = ITEMS[index]; - - elements.push( - furnish('li.web-to-plex-prompt-option.mutable', { value: index, innerHTML: `

${ index + 1 } \u00b7 ${ ITEM.title }${ ITEM.year? ` (${ ITEM.year })`: '' } \u2014 ${ ITEM.type }

` }, - furnish('button.remove', { title: `Remove "${ ITEM.title }"`, onmouseup: event => { remove(event.target.parentElement); event.target.remove() } }), - ( - config.PromptQuality? - P_QUA = furnish('select.quality', { index, onchange: event => data[event.target.getAttribute('index')].quality = event.target.value }, ...profiles[/(movie|film|cinema)/i.test(ITEM.type)?'movie':'show'].map(Q => furnish('option', { value: Q.id }, Q.name))): - '' - ),( - config.PromptLocation? - P_LOC = furnish('select.location', { index, onchange: event => data[event.target.getAttribute('index')].location = event.target.value }, ...locations[/(movie|film|cinema)/i.test(ITEM.type)?'movie':'show'].map(Q => furnish('option', { value: Q.id }, Q.path))): - '' + switch(prompt_type) { + /* Allows the user to add and remove items from a list */ + case 'prompt': + case 'input': + remove = element => { + let prompter = $('.web-to-plex-prompt').first, + header = $('.web-to-plex-prompt-header').first, + counter = $('.web-to-plex-prompt-options').first; + + if(element === true) + return prompter.remove(); + else + element.remove(); + + data.splice(+element.value, 1, null); + header.innerText = 'Approve ' + counter.children.length + (counter.children.length == 1?' item': ' items'); + }; + + prompt = furnish('div.web-to-plex-prompt', {}, + furnish('div.web-to-plex-prompt-body', {}, + // The prompt's title + furnish('h1.web-to-plex-prompt-header', {}, 'Approve ' + array.length + (array.length == 1? ' item': ' items')), + + // The prompt's items + furnish('div.web-to-plex-prompt-options', {}, + ...(ITEMS => { + let elements = []; + + for(let index = 0, length = ITEMS.length, ITEM, P_QUA, P_LOC; index < length; index++) { + ITEM = ITEMS[index]; + + elements.push( + furnish('li.web-to-plex-prompt-option.mutable', { value: index, innerHTML: `

${ index + 1 } \u00b7 ${ ITEM.title }${ ITEM.year? ` (${ ITEM.year })`: '' } \u2014 ${ ITEM.type }

` }, + furnish('button.remove', { title: `Remove "${ ITEM.title }"`, onmouseup: event => { remove(event.target.parentElement); event.target.remove() } }), + ( + config.PromptQuality? + P_QUA = furnish('select.quality', { index, onchange: event => data[event.target.getAttribute('index')].quality = event.target.value }, ...profiles[/(movie|film|cinema)/i.test(ITEM.type)?'movie':'show'].map(Q => furnish('option', { value: Q.id }, Q.name))): + '' + ),( + config.PromptLocation? + P_LOC = furnish('select.location', { index, onchange: event => data[event.target.getAttribute('index')].location = event.target.value }, ...locations[/(movie|film|cinema)/i.test(ITEM.type)?'movie':'show'].map(Q => furnish('option', { value: Q.id }, Q.path))): + '' + ) ) - ) - ); - - if(P_QUA) P_QUA.value = defaults[ITEM.type].quality; - if(P_LOC) P_LOC.value = defaults[ITEM.type].location; + ); - P_QUA = P_LOC = null; - } + if(P_QUA) P_QUA.value = defaults[ITEM.type].quality; + if(P_LOC) P_LOC.value = defaults[ITEM.type].location; - return elements - })(array) - ), - - // The engagers - furnish('div.web-to-plex-prompt-footer', {}, - furnish('input.web-to-plex-prompt-input[type=text]', { placeholder: 'Add an item (enter to add): Title (Year) Type / ID Type', title: 'Solo: A Star Wars Story (2018) movie / tt3778644 m', onkeydown: async event => { - if (event.keyCode === 13) { - let title, year, type, self = event.target, R = RegExp, - movie = /^(m(?:ovies?)?|f(?:ilms?)?|c(?:inemas?)?)/i, - Db, IMDbID, TMDbID, TVDbID, value = self.value; - - self.setAttribute('disabled', self.disabled = true); - self.value = `Searching for "${ value }"...`; - data = data.filter(value => value !== null && value !== undefined); - - if(/^\s*((?:tt)?\d+)(?:\s+(\w+)|\s*)?$/i.test(value)) { - let APIID = R.$1, - type = R.$2 || (data.length? data[0].type: 'movie'), - APIType = movie.test(type)? /^tt/i.test(APIID)? 'imdb': 'tmdb': 'tvdb'; - - type = movie.test(type)? 'movie': 'show'; - - Db = await getIDs({ type, APIID, APIType }); - IMDbID = Db.imdb; - TMDbID = Db.tmdb; - TVDbID = Db.tvdb; - - title = Db.title; - year = Db.year; - } else if(/^([^]+)(\s*\(\d{2,4}\)\s*|\s+\d{2,4}\s+)([\w\s\-]+)$/.test(value)) { - title = R.$1; - year = R.$2 || YEAR + ''; - type = R.$3 || (data.length? data[0].type: 'movie'); - - year = +year.replace(/\D/g, '').replace(/^\d{2}$/, '20$&'); - type = movie.test(type)? 'movie': 'show'; - - Db = await getIDs({ type, title, year }); - IMDbID = Db.imdb; - TMDbID = Db.tmdb; - TVDbID = Db.tvdb; + P_QUA = P_LOC = null; } - event.preventDefault(); - if(type && title && !(/^(?:tt)?$/i.test(IMDbID || '') && /^0?$/.test(+TMDbID | 0) && /^0?$/.test(+TVDbID | 0))) { - remove(true); - new Prompt(prompt_type, [{ ...Db, type, IMDbID, TMDbID, TVDbID }, ...data], callback, container); - } else { - self.disabled = self.removeAttribute('disabled'); - self.value = value; - new Notification('error', `Couldn't find "${ value }"`); + return elements + })(array) + ), + + // The engagers + furnish('div.web-to-plex-prompt-footer', {}, + furnish('input.web-to-plex-prompt-input[type=text]', { placeholder: 'Add an item (enter to add): Title (Year) Type / ID Type', title: 'Solo: A Star Wars Story (2018) movie / tt3778644 m', onkeydown: async event => { + if(event.keyCode === 13) { + let title, year, type, self = event.target, R = RegExp, + movie = /^(m(?:ovies?)?|f(?:ilms?)?|c(?:inemas?)?)/i, + Db, IMDbID, TMDbID, TVDbID, value = self.value; + + self.setAttribute('disabled', self.disabled = true); + self.value = `Searching for "${ value }"...`; + data = data.filter(value => value !== null && value !== undefined); + + if(/^\s*((?:tt)?\d+)(?:\s+(\w+)|\s*)?$/i.test(value)) { + let APIID = R.$1, + type = R.$2 || (data.length? data[0].type: 'movie'), + APIType = movie.test(type)? /^tt/i.test(APIID)? 'imdb': 'tmdb': 'tvdb'; + + type = movie.test(type)? 'movie': 'show'; + + Db = await getIDs({ type, APIID, APIType }); + IMDbID = Db.imdb; + TMDbID = Db.tmdb; + TVDbID = Db.tvdb; + + title = Db.title; + year = Db.year; + } else if(/^([^]+)(\s*\(\d{2,4}\)\s*|\s+\d{2,4}\s+)([\w\s\-]+)$/.test(value)) { + title = R.$1; + year = R.$2 || YEAR + ''; + type = R.$3 || (data.length? data[0].type: 'movie'); + + year = +year.replace(/\D/g, '').replace(/^\d{2}$/, '20$&'); + type = movie.test(type)? 'movie': 'show'; + + Db = await getIDs({ type, title, year }); + IMDbID = Db.imdb; + TMDbID = Db.tmdb; + TVDbID = Db.tvdb; + } + + event.preventDefault(); + if(type && title && !(/^(?:tt)?$/i.test(IMDbID || '') && /^0?$/.test(+TMDbID | 0) && /^0?$/.test(+TVDbID | 0))) { + remove(true); + new Prompt(prompt_type, [{ ...Db, type, IMDbID, TMDbID, TVDbID }, ...data], callback, container); + } else { + self.disabled = self.removeAttribute('disabled'); + self.value = value; + new Notification('error', `Couldn't find "${ value }"`); + } } - } - } }), - furnish('button.web-to-plex-prompt-decline', { onmouseup: event => { remove(true); callback([]) }, title: 'Close' }, '\u2718'), - furnish('button.web-to-plex-prompt-accept', { onmouseup: event => { remove(true); new Prompt(prompt_type, options, callback, container) }, title: 'Reset' }, '\u21BA'), - furnish('button.web-to-plex-prompt-accept', { onmouseup: event => { remove(true); callback(data.filter(value => value !== null && value !== undefined)) }, title: 'Continue' }, '\u2714') + } }), + furnish('button.web-to-plex-prompt-decline', { onmouseup: event => { remove(true); callback([]) }, title: 'Close' }, '\u2718'), + furnish('button.web-to-plex-prompt-accept', { onmouseup: event => { remove(true); new Prompt(prompt_type, options, callback, container) }, title: 'Reset' }, '\u21BA'), + furnish('button.web-to-plex-prompt-accept', { onmouseup: event => { remove(true); callback(data.filter(value => value !== null && value !== undefined)) }, title: 'Continue' }, '\u2714') + ) ) - ) - ); - break; + ); + break; + + /* Allows the user to remove predetermined items */ + case 'select': + remove = element => { + let prompter = $('.web-to-plex-prompt').first, + header = $('.web-to-plex-prompt-header').first, + counter = $('.web-to-plex-prompt-options').first; + + if(element === true) + return prompter.remove(); + else + element.remove(); + + data.splice(+element.value, 1, null); + header.innerText = 'Approve ' + counter.children.length + (counter.children.length == 1?' item': ' items'); + }; + + prompt = furnish('div.web-to-plex-prompt', {}, + furnish('div.web-to-plex-prompt-body', {}, + // The prompt's title + furnish('h1.web-to-plex-prompt-header', {}, 'Approve ' + array.length + (array.length == 1? ' item': ' items')), + + // The prompt's items + furnish('div.web-to-plex-prompt-options', {}, + ...(ITEMS => { + let elements = []; + + for(let index = 0, length = ITEMS.length, ITEM, P_QUA, P_LOC; index < length; index++) { + ITEM = ITEMS[index]; + + elements.push( + furnish('li.web-to-plex-prompt-option.mutable', { value: index, innerHTML: `

${ index + 1 } \u00b7 ${ ITEM.title }${ ITEM.year? ` (${ ITEM.year })`: '' } \u2014 ${ ITEM.type }

` }, + furnish('button.remove', { title: `Remove "${ ITEM.title }"`, onmouseup: event => { remove(event.target.parentElement); event.target.remove() } }), + ( + config.PromptQuality? + P_QUA = furnish('select.quality', { index, onchange: event => data[event.target.getAttribute('index')].quality = event.target.value }, ...profiles[/(movie|film|cinema)/i.test(ITEM.type)?'movie':'show'].map(Q => furnish('option', { value: Q.id }, Q.name))): + '' + ),( + config.PromptLocation? + P_LOC = furnish('select.location', { index, onchange: event => data[event.target.getAttribute('index')].location = event.target.value }, ...locations[/(movie|film|cinema)/i.test(ITEM.type)?'movie':'show'].map(Q => furnish('option', { value: Q.id }, Q.path))): + '' + ) + ) + ); - /* Allows the user to remove predetermined items */ - case 'select': - remove = element => { - let prompter = $('.web-to-plex-prompt').first, - header = $('.web-to-plex-prompt-header').first, - counter = $('.web-to-plex-prompt-options').first; + if(P_QUA) P_QUA.value = defaults[ITEM.type].quality; + if(P_LOC) P_LOC.value = defaults[ITEM.type].location; - if(element === true) - return prompter.remove(); - else - element.remove(); - - data.splice(+element.value, 1, null); - header.innerText = 'Approve ' + counter.children.length + (counter.children.length == 1?' item': ' items'); - }; + P_QUA = P_LOC = null; + } - prompt = furnish('div.web-to-plex-prompt', {}, - furnish('div.web-to-plex-prompt-body', {}, - // The prompt's title - furnish('h1.web-to-plex-prompt-header', {}, 'Approve ' + array.length + (array.length == 1? ' item': ' items')), - - // The prompt's items - furnish('div.web-to-plex-prompt-options', {}, - ...(ITEMS => { - let elements = []; - - for(let index = 0, length = ITEMS.length, ITEM, P_QUA, P_LOC; index < length; index++) { - ITEM = ITEMS[index]; - - elements.push( - furnish('li.web-to-plex-prompt-option.mutable', { value: index, innerHTML: `

${ index + 1 } \u00b7 ${ ITEM.title }${ ITEM.year? ` (${ ITEM.year })`: '' } \u2014 ${ ITEM.type }

` }, - furnish('button.remove', { title: `Remove "${ ITEM.title }"`, onmouseup: event => { remove(event.target.parentElement); event.target.remove() } }), - ( - config.PromptQuality? - P_QUA = furnish('select.quality', { index, onchange: event => data[event.target.getAttribute('index')].quality = event.target.value }, ...profiles[/(movie|film|cinema)/i.test(ITEM.type)?'movie':'show'].map(Q => furnish('option', { value: Q.id }, Q.name))): - '' - ),( - config.PromptLocation? - P_LOC = furnish('select.location', { index, onchange: event => data[event.target.getAttribute('index')].location = event.target.value }, ...locations[/(movie|film|cinema)/i.test(ITEM.type)?'movie':'show'].map(Q => furnish('option', { value: Q.id }, Q.path))): - '' - ) - ) - ); + return elements + })(array) + ), - if(P_QUA) P_QUA.value = defaults[ITEM.type].quality; - if(P_LOC) P_LOC.value = defaults[ITEM.type].location; + // The engagers + furnish('div.web-to-plex-prompt-footer', {}, + furnish('button.web-to-plex-prompt-decline', { onmouseup: event => { remove(true); callback([]) }, title: 'Close' }, '\u2718'), + furnish('button.web-to-plex-prompt-accept', { onmouseup: event => { remove(true); new Prompt(prompt_type, options, callback, container) }, title: 'Reset' }, '\u21BA'), + furnish('button.web-to-plex-prompt-accept', { onmouseup: event => { remove(true); callback(data.filter(value => value !== null && value !== undefined)) }, title: 'Continue' }, '\u2714') + ) + ) + ); + break; + + /* Allows the user to modify a single item (before being pushed) */ + case 'modify': + let { title, year, type, IMDbID, TMDbID, TVDbID } = options, + P_QUA, P_LOC; + + let i = IMDbID, + t = TMDbID, + v = TVDbID, + s = 'style="text-decoration: none !important; color: #cc7b19 !important; font-style: italic !important;" target="_blank"'; + + i = /^tt-?$/.test(i)? '': i; + t = /^0?$/.test(t)? '': t; + v = /^0?$/.test(v)? '': v; + + remove = element => { + let prompter = $('.web-to-plex-prompt').first, + header = $('.web-to-plex-prompt-header').first, + counter = $('.web-to-plex-prompt-options').first; + + if(element === true) + return prompter.remove(); + else + element.remove(); + }; + + type = /(movie|film|cinema)/i.test(type)?'movie':'show'; + + prompt = furnish('div.web-to-plex-prompt', {}, + furnish('div.web-to-plex-prompt-body', {}, + // The prompt's title + furnish('h1.web-to-plex-prompt-header', { innerHTML: `${ title }${ year? ` (${ year })`: '' } \u2014 ${ type }` }), + + // The prompt's items + furnish('div.web-to-plex-prompt-options', {}, + furnish('div.web-to-plex-prompt-option', { innerHTML: `${ i? `${i}`: '/' } \u2014 ${ t? `${t}`: '/' } \u2014 ${ v? `${v}`: '/' }` }), + ( + config.PromptQuality? + P_QUA = furnish('select.quality', { onchange: event => options.quality = event.target.value }, ...profiles[type].map(Q => furnish('option', { value: Q.id }, Q.name))): + '' + ), + furnish('br'), + ( + config.PromptLocation? + P_LOC = furnish('select.location', { onchange: event => options.location = event.target.value }, ...locations[type].map(Q => furnish('option', { value: Q.id }, Q.path))): + '' + ) + ), + + // The engagers + furnish('div.web-to-plex-prompt-footer', {}, + furnish('button.web-to-plex-prompt-decline', { onmouseup: event => { remove(true); callback([]) }, title: 'Close' }, '\u2718'), + furnish('button.web-to-plex-prompt-accept', { onmouseup: event => { remove(true); new Prompt(prompt_type, options, callback, container) }, title: 'Reset' }, '\u21BA'), + furnish('button.web-to-plex-prompt-accept', { onmouseup: event => { remove(true); callback(options) }, title: 'Continue' }, '\u2714') + ) + ) + ); - P_QUA = P_LOC = null; - } + if(P_QUA) P_QUA.value = defaults[type].quality; + if(P_LOC) P_LOC.value = defaults[type].location; - return elements - })(array) - ), + P_QUA = P_LOC = null; + break; - // The engagers - furnish('div.web-to-plex-prompt-footer', {}, - furnish('button.web-to-plex-prompt-decline', { onmouseup: event => { remove(true); callback([]) }, title: 'Close' }, '\u2718'), - furnish('button.web-to-plex-prompt-accept', { onmouseup: event => { remove(true); new Prompt(prompt_type, options, callback, container) }, title: 'Reset' }, '\u21BA'), - furnish('button.web-to-plex-prompt-accept', { onmouseup: event => { remove(true); callback(data.filter(value => value !== null && value !== undefined)) }, title: 'Continue' }, '\u2714') - ) - ) - ); - break; + default: + return terminal.warn(`Unknown prompt type "${ prompt_type }"`); + break; + } - default: - return terminal.warn(`Unknown prompt type "${ prompt_type }"`); - break; + return container.append(prompt), prompt; } + } - return container.append(prompt), prompt; + // self explanatory + function openOptionsPage() { + chrome.runtime.sendMessage({ + type: 'OPEN_OPTIONS' + }); } -} -// Send an update query to background.js -function sendUpdate(type, options = {}) { - terminal.log(`Requesting update: ${ type }`, options); + // Send an update query to background.js + sendUpdate = (type, options = {}, postToo) => { + if(config) + terminal.log(`Requesting update: ${ type }`, options); - chrome.runtime.sendMessage({ - type, - options - }); -} + chrome.runtime.sendMessage({ + type, + options + }); -// get the saved options -function $getOptions() { - return new Promise((resolve, reject) => { - function handleOptions(options) { - if ((!options.plexToken || !options.servers) && !options.DO_NOT_USE) - return reject(new Error('Required options are missing')), - null; - - let server, o; - - if (!options.DO_NOT_USE) { - // For now we support only one Plex server, but the options already - // allow multiple for easy migration in the future. - server = options.servers[0]; - o = { - server: { - ...server, - // Compatibility for users who have not updated their settings yet. - connections: server.connections || [{ uri: server.url }] - }, - ...options - }; + if(postToo) + top.postMessage(options); + }; - options.plexURL = o.plexURL? - `${ o.plexURL }web#!/server/${ o.server.id }/`: - `https://app.plex.tv/web/app#!/server/${ o.server.id }/`; - } else { - o = options; - } + // get the saved options + function __getOptions__() { + return new Promise((resolve, reject) => { + function handleOptions(options) { + if((!options.plexToken || !options.servers) && !options.DO_NOT_USE) + return reject(new Error('Required options are missing')), + null; + + let server, o; + + if(!options.DO_NOT_USE) { + // For now we support only one Plex server, but the options already + // allow multiple for easy migration in the future. + server = options.servers[0]; + o = { + server: { + ...server, + // Compatibility for users who have not updated their settings yet. + connections: server.connections || [{ uri: server.url }] + }, + ...options + }; + + options.plexURL = o.plexURL? + `${ o.plexURL }web#!/server/${ o.server.id }/`: + `https://app.plex.tv/web/app#!/server/${ o.server.id }/`; + } else { + o = options; + } - if (o.couchpotatoBasicAuthUsername) - o.couchpotatoBasicAuth = { - username: o.couchpotatoBasicAuthUsername, - password: o.couchpotatoBasicAuthPassword - }; + if(o.couchpotatoBasicAuthUsername) + o.couchpotatoBasicAuth = { + username: o.couchpotatoBasicAuthUsername, + password: o.couchpotatoBasicAuthPassword + }; + + // TODO: stupid copy/pasta + if(o.watcherBasicAuthUsername) + o.watcherBasicAuth = { + username: o.watcherBasicAuthUsername, + password: o.watcherBasicAuthPassword + }; + + if(o.radarrBasicAuthUsername) + o.radarrBasicAuth = { + username: o.radarrBasicAuthUsername, + password: o.radarrBasicAuthPassword + }; + + if(o.sonarrBasicAuthUsername) + o.sonarrBasicAuth = { + username: o.sonarrBasicAuthUsername, + password: o.sonarrBasicAuthPassword + }; + + if(o.medusaBasicAuthUsername) + o.medusaBasicAuth = { + username: o.medusaBasicAuthUsername, + password: o.medusaBasicAuthPassword + }; + + if(o.usingOmbi && o.ombiURLRoot && o.ombiToken) { + o.ombiURL = o.ombiURLRoot; + } else { + delete o.ombiURL; // prevent variable ghosting + } - // TODO: stupid copy/pasta - if (o.watcherBasicAuthUsername) - o.watcherBasicAuth = { - username: o.watcherBasicAuthUsername, - password: o.watcherBasicAuthPassword - }; + if(o.usingCouchPotato && o.couchpotatoURLRoot && o.couchpotatoToken) { + o.couchpotatoURL = `${ items.couchpotatoURLRoot }/api/${encodeURIComponent(o.couchpotatoToken)}`; + } else { + delete o.couchpotatoURL; // prevent variable ghosting + } - if (o.radarrBasicAuthUsername) - o.radarrBasicAuth = { - username: o.radarrBasicAuthUsername, - password: o.radarrBasicAuthPassword - }; + if(o.usingWatcher && o.watcherURLRoot && o.watcherToken) { + o.watcherURL = o.watcherURLRoot; + } else { + delete o.watcherURL; // prevent variable ghosting + } - if (o.sonarrBasicAuthUsername) - o.sonarrBasicAuth = { - username: o.sonarrBasicAuthUsername, - password: o.sonarrBasicAuthPassword - }; + if(o.usingRadarr && o.radarrURLRoot && o.radarrToken) { + o.radarrURL = o.radarrURLRoot; + } else { + delete o.radarrURL; // prevent variable ghosting + } - if (o.ombiURLRoot && o.ombiToken) { - o.ombiURL = o.ombiURLRoot; - } else { - delete o.ombiURL; // prevent variable ghosting - } + if(o.usingSonarr && o.sonarrURLRoot && o.sonarrToken) { + o.sonarrURL = o.sonarrURLRoot; + } else { + delete o.sonarrURL; // prevent variable ghosting + } - if (o.couchpotatoURLRoot && o.couchpotatoToken) { - o.couchpotatoURL = `${ items.couchpotatoURLRoot }/api/${encodeURIComponent(o.couchpotatoToken)}`; - } else { - delete o.couchpotatoURL; // prevent variable ghosting - } + if(o.usingMedusa && o.medusaURLRoot && o.medusaToken) { + o.medusaURL = o.medusaURLRoot; + } else { + delete o.medusaURL; // prevent variable ghosting + } - if (o.watcherURLRoot && o.watcherToken) { - o.watcherURL = o.watcherURLRoot; - } else { - delete o.watcherURL; // prevent variable ghosting + resolve(o); } - if (o.radarrURLRoot && o.radarrToken) { - o.radarrURL = o.radarrURLRoot; - } else { - delete o.radarrURL; // prevent variable ghosting - } + storage.get(null, options => { + if(chrome.runtime.lastError) + chrome.storage.local.get(null, handleOptions); + else + handleOptions(options); + }); + }); + } - if (o.sonarrURLRoot && o.sonarrToken) { - o.sonarrURL = o.sonarrURLRoot; - } else { - delete o.sonarrURL; // prevent variable ghosting - } + // self explanatory, returns an object; sets the config variable + function parseOptions() { + return __getOptions__() + .then( + options => (config = options), + error => { + new Notification( + 'warning', + 'Fill in missing Web to Plex options', + 15000, + openOptionsPage + ); + throw error; + } + ); + } - resolve(o); - } + await parseOptions(); - storage.get(null, options => { - if (chrome.runtime.lastError) - chrome.storage.local.get(null, handleOptions); - else - handleOptions(options); - }); - }); -} + let AUTO_GRAB = { + ENABLED: config.UseAutoGrab, + LIMIT: config.AutoGrabLimit, + }, + DISABLE_DEBUGGER = !config.ExtensionBranchType, // = { false: Developer Mode, true: Standard Mode } + terminal = + DISABLE_DEBUGGER? + { error: m => m, info: m => m, log: m => m, warn: m => m, group: m => m, groupEnd: m => m }: + console; -// self explanatory -function openOptionsPage() { - chrome.runtime.sendMessage({ - type: 'OPEN_OPTIONS' - }); -} + terminal.log('DISABLE_DEBUGGER:', DISABLE_DEBUGGER, config); -// self explanatory, returns an object -function parseOptions() { - return $getOptions() - .then( - options => (config = options), - error => { - new Notification( - 'warning', - 'Fill in missing Web to Plex options', - 15000, - openOptionsPage - ); - throw error; - } - ); -} + // parse the formatted headers and URL + function HandleProxyHeaders(Headers = "", URL = "") { + let headers = {}; -let config = parseOptions(), - AUTO_GRAB = { - ENABLED: config.UseAutoGrab, - LIMIT: config.AutoGrabLimit, - }; + Headers.replace(/^[ \t]*([^\=\s]+)[ \t]*=[ \t]*((["'`])(?:[^\\\3]*|\\.)\3|[^\f\n\r\v]*)/gm, ($0, $1, $2, $3, $$, $_) => { + let string = !!$3; -function HandleProxyHeaders(Headers = "", URL = "") { - let headers = {}; + if(string) { + headers[$1] = $2.replace(RegExp(`^${ $3 }|${ $3 }$`, 'g'), ''); + } else { + $2 = $2.replace(/@([\w\.]+)/g, (_0, _1, _$, __) => { + let path = _1.split('.'), property = top; - Headers.replace(/^[ \t]*([^\=\s]+)[ \t]*=[ \t]*((["'`])(?:[^\\\3]*|\\.)\3|[^\f\n\r\v]*)/gm, ($0, $1, $2, $3, $$, $_) => { - let string = !!$3; + for(let index = 0, length = path.length; index < length; index++) + property = property[path[index]]; - if(string) { - headers[$1] = $2.replace(RegExp(`^${ $3 }|${ $3 }$`, 'g'), ''); - } else { - $2 = $2.replace(/@([\w\.]+)/g, (_0, _1, _$, __) => { - let path = _1.split('.'), property = top; + headers[$1] = property; + }) + .replace(/@\{b(ase-?)?64-url\}/gi, btoa(URL)) + .replace(/@\{enc(ode)?-url\}/gi, encodeURIComponent(URL)) + .replace(/@\{(raw-)?url\}/gi, URL); + } + }); - for(let index = 0, length = path.length; index < length; index++) - property = property[path[index]]; + return headers; + } - headers[$1] = property; - }) - .replace(/@\{b(ase-?)?64-url\}/gi, btoa(URL)) - .replace(/@\{enc(ode)?-url\}/gi, encodeURIComponent(URL)) - .replace(/@\{(raw-)?url\}/gi, URL); + // fetch/search for the item's media ID(s) + // rerun enum - [0bWXYZ] - [Tried Different URL | Tried Matching Title | Tried Loose Searching | Tried Rerunning Altogether] + async function getIDs({ title, year, type, IMDbID, TMDbID, TVDbID, APIType, APIID, meta, rerun }) { + let json = {}, // returned object + data = {}, // mutated object + promise, // query promise + api = { + tmdb: config.TMDbAPI || 'bcb95f026f9a01ffa707fcff71900e94', + omdb: config.OMDbAPI || 'PlzBanMe', + ombi: config.ombiToken, + }, + apit = APIType || type, // api type (depends on "rqut") + apid = APIID || null, // api id + iid = IMDbID || null, // IMDbID + mid = TMDbID || null, // TMDbID + tid = TVDbID || null, // TVDbID + rqut = apit, // request type: tmdb, imdb, or tvdb + manable = config.ManagerSearch && !(rerun & 0b1000), // is the user's "Manager Searches" option enabled? + UTF_16 = /[^0\u0020-\u007e, 1\u00a1\u00bf-\u00ff, 2\u0100-\u017f, 3\u0180-\u024f, 4\u0300-\u036f, 5\u0370-\u03ff, 6\u0400-\u04ff, 7\u0500-\u052f, 8\u20a0-\u20bf]+/g; + + type = type || null; + meta = { ...meta, mode: 'cors' }; + rqut = + /(tv|show|series)/i.test(rqut)? + 'tvdb': + /(movie|film|cinema)s?/i.test(rqut)? + 'tmdb': + rqut || '*'; + manable = manable && (config.usingOmbi || (config.usingRadarr && rqut == 'tmdb') || ((config.usingSonarr || config.usingMedusa) && rqut == 'tvdb')); + title = (title? title.replace(/\s*[\:,]\s*seasons?\s+\d+.*$/i, '').toCaps(): "") + .replace(/[\u2010-\u2015]/g, '-') // fancy hyphen + .replace(/[\u201a\u275f]/g, ',') // fancy comma + .replace(/[\u2018\u2019\u201b\u275b\u275c]/g, "'") // fancy apostrophe + .replace(/[\u201c-\u201f\u275d\u275e]/g, '"') // fancy quotation marks + .replace(UTF_16, ''); // only accept "usable" characters + /* 0[ -~], 1[¡¿-ÿ], 2[Ā-ſ], 3[ƀ-ɏ], 4[ò-oͯ], 5[Ͱ-Ͽ], 6[Ѐ-ӿ], 7[Ԁ-ԯ], 8[₠-₿] */ + /** Symbol Classes + 0) Basic Latin, and standard characters + 1) Latin (Supplement) + 2) Latin Extended I + 3) Latin Extended II + 4) Diatrical Marks + 5) Greek & Coptic + 6) Basic Cyrillic + 7) Cyrillic (Supplement) + 8) Currency Symbols + */ + year = year? (year + '').replace(/\D+/g, ''): year; + + let plus = (string, character = '+') => string.replace(/\s+/g, character); + + let local, savename; + + if(year) { + savename = `${title} (${year}).${rqut}`.toLowerCase(), + local = await load(savename); + } else { + year = await load(`${title}.${rqut}`.toLowerCase()) || year; + `${title} (${year}).${rqut}`.toLowerCase(); + local = await load(savename); } - }); - return headers; -} + if(local) { + terminal.log('[LOCAL] Search results', local); + return local; + } -// fetch/search for the item's media ID(s) -async function getIDs({ title, year, type, IMDbID, TMDbID, TVDbID, APIType, APIID, meta, rerun }) { - let json = {}, // returned object - data = {}, // mutated object - promise, // query promise - api = { - tmdb: config.TMDbAPI || 'bcb95f026f9a01ffa707fcff71900e94', - omdb: config.OMDbAPI || 'PlzBanMe', - ombi: config.ombiToken, - }, - apit = APIType || type, // api type (depends on "rqut") - apid = APIID || null, // api id - iid = IMDbID || null, // IMDbID - mid = TMDbID || null, // TMDbID - tid = TVDbID || null, // TVDbID - rqut = apit, // request type: tmdb, imdb, or tvdb - manable = config.ManagerSearch && !rerun; // is the user's "Manager Searches" option enabled? - - type = type || null; - meta = { ...meta, mode: 'cors' }; - rqut = - /(tv|show|series)/i.test(rqut)? - 'tvdb': - /(movie|film|cinema)s?/i.test(rqut)? - 'tmdb': - rqut || '*'; - manable = manable && (config.usingOmbi || (config.usingRadarr && rqut == 'tmdb') || (config.usingSonarr && rqut == 'tvdb')); - title = (title? title.replace(/\s*[\:,]\s*seasons?\s+\d+.*$/i, '').toCaps(): "") - .replace(/\u201a/g, ',') // fancy comma - .replace(/[\u2019\u201b]/g, "'") // fancy apostrophe - .replace(/[\u201c\u201d]/g, '"') // fancy quotation marks - .replace(/[^\u0000-\u00ff]+/g, ''); // only accept UTF-8 characters - year = year? (year + '').replace(/\D+/g, ''): year; - - let plus = (string, character = '+') => string.replace(/\s+/g, character); - - let local, savename; - - if(year) { - savename = `${title} (${year}).${rqut}`.toLowerCase(), - local = await load(savename); - } else { - year = await load(`${title}.${rqut}`.toLowerCase()) || year; - `${title} (${year}).${rqut}`.toLowerCase(); - local = await load(savename); - } + /* the rest of this function is a beautiful mess that will need to be dealt with later... but it works */ + let url = + (manable && title && config.usingOmbi)? + `${ config.ombiURLRoot }api/v1/Search/${ (rqut == 'imdb' || rqut == 'tmdb' || apit == 'movie')? 'movie': 'tv' }/${ plus(title, '%20') }/?apikey=${ api.ombi }`: + (manable && (config.usingRadarr || config.usingSonarr || config.usingMedusa))? + (config.usingRadarr && (rqut == 'imdb' || rqut == 'tmdb'))? + (mid)? + `${ config.radarrURLRoot }api/movie/lookup/tmdb?tmdbId=${ mid }&apikey=${ config.radarrToken }`: + (iid)? + `${ config.radarrURLRoot }api/movie/lookup/imdb?imdbId=${ iid }&apikey=${ config.radarrToken }`: + `${ config.radarrURLRoot }api/movie/lookup?term=${ plus(title, '%20') }&apikey=${ config.radarrToken }`: + (config.usingSonarr)? + (tid)? + `${ config.sonarrURLRoot }api/series/lookup?term=tvdb:${ tid }&apikey=${ config.sonarrToken }`: + `${ config.sonarrURLRoot }api/series/lookup?term=${ plus(title, '%20') }&apikey=${ config.sonarrToken }`: + (config.usingMedusa)? + (tid)? + `${ config.medusarURLRoot }api/v2/series/tvdb${ tid }?detailed=true&${ tid }&api_key=${ config.medusaToken }`: + `${ config.medusaURLRoot }api/v2/internal/searchIndexersForShowName?query=${ plus(title) }&indexerId=0&api_key=${ config.medusaToken }`: + null: + (rqut == 'imdb' || (rqut == '*' && !iid && title) || (rqut == 'tvdb' && !iid && title && !(rerun & 0b1000)) && (rerun |= 0b1000))? + (iid)? + `https://www.omdbapi.com/?i=${ iid }&apikey=${ api.omdb }`: + (year)? + `https://www.omdbapi.com/?t=${ plus(title) }&y=${ year }&apikey=${ api.omdb }`: + `https://www.omdbapi.com/?t=${ plus(title) }&apikey=${ api.omdb }`: + (rqut == 'tmdb' || (rqut == '*' && !mid && title && year) || apit == 'movie')? + (apit && apid)? + `https://api.themoviedb.org/3/${ apit }/${ apid }?api_key=${ api.tmdb }`: + (iid)? + `https://api.themoviedb.org/3/find/${ iid || mid || tid }?api_key=${ api.tmdb }&external_source=${ iid? 'imdb': mid? 'tmdb': 'tvdb' }_id`: + `https://api.themoviedb.org/3/search/${ apit }?api_key=${ api.tmdb }&query=${ encodeURI(title) }${ year? '&year=' + year: '' }`: + (rqut == 'tvdb' || (rqut == '*' && !tid && title) || (apid == tid))? + (tid)? + `https://api.tvmaze.com/shows/?thetvdb=${ tid }`: + (iid)? + `https://api.tvmaze.com/shows/?imdb=${ iid }`: + `https://api.tvmaze.com/search/shows?q=${ encodeURI(title) }`: + (title)? + (apit && year)? + `https://www.theimdbapi.org/api/find/${ apit }?title=${ encodeURI(title) }&year=${ year }`: + `https://www.theimdbapi.org/api/find/movie?title=${ encodeURI(title) }${ year? '&year=' + year: '' }`: + null; + + if(url === null) return null; + + let proxy = config.proxy, + cors = proxy.url, // if cors is requried and not uspported, proxy through this URL + headers = HandleProxyHeaders(proxy.headers, url); + + if(proxy.enabled && /(^http:\/\/)(?!localhost|127\.0\.0\.1(?:\/8)?|::1(?:\/128)?|:\d+)\b/i.test(url)) { + url = cors + .replace(/\{b(ase-?)?64-url\}/gi, btoa(url)) + .replace(/\{enc(ode)?-url\}/gi, encodeURIComponent(url)) + .replace(/\{(raw-)?url\}/gi, url); + + terminal.log({ proxy, url, headers }); + } - if(local) { - terminal.log('[LOCAL] Search results', local); - return local; - } + terminal.log(`Searching for "${ title } (${ year })" in ${ type || apit }/${ rqut }${ proxy.enabled? '[PROXY]': '' } => ${ url }`); - /* the rest of this function is a beautiful mess that will need to be dealt with later... but it works */ - let url = - (manable && title && config.usingOmbi)? - `${ config.ombiURLRoot }api/v1/Search/${ (rqut == 'imdb' || rqut == 'tmdb' || apit == 'movie')? 'movie': 'tv' }/${ plus(title, '%20') }/?apikey=${ api.ombi }`: - (manable && (config.usingRadarr || config.usingSonarr))? - (config.usingRadarr && (rqut == 'imdb' || rqut == 'tmdb'))? - (mid)? - `${ config.radarrURLRoot }api/movie/lookup/tmdb?tmdbId=${ mid }&apikey=${ config.radarrToken }`: - (iid)? - `${ config.radarrURLRoot }api/movie/lookup/imdb?imdbId=${ iid }&apikey=${ config.radarrToken }`: - `${ config.radarrURLRoot }api/movie/lookup?term=${ plus(title, '%20') }&apikey=${ config.radarrToken }`: - (tid)? - `${ config.sonarrURLRoot }api/series/lookup?term=tvdb:${ tid }&apikey=${ config.sonarrToken }`: - `${ config.sonarrURLRoot }api/series/lookup?term=${ plus(title, '%20') }&apikey=${ config.sonarrToken }`: - (rqut == 'imdb' || (rqut == '*' && !iid && title) || (rqut == 'tvdb' && !iid && title && rerun))? - (iid)? - `https://www.omdbapi.com/?i=${ iid }&apikey=${ api.omdb }`: - (year)? - `https://www.omdbapi.com/?t=${ plus(title) }&y=${ year }&apikey=${ api.omdb }`: - `https://www.omdbapi.com/?t=${ plus(title) }&apikey=${ api.omdb }`: - (rqut == 'tmdb' || (rqut == '*' && !mid && title && year) || apit == 'movie')? - (apit && apid)? - `https://api.themoviedb.org/3/${ apit }/${ apid }?api_key=${ api.tmdb }`: - (iid)? - `https://api.themoviedb.org/3/find/${ iid || mid || tid }?api_key=${ api.tmdb }&external_source=${ iid? 'imdb': mid? 'tmdb': 'tvdb' }_id`: - `https://api.themoviedb.org/3/search/${ apit }?api_key=${ api.tmdb }&query=${ encodeURI(title) }${ year? '&year=' + year: '' }`: - (rqut == 'tvdb' || (rqut == '*' && !tid && title) || (apid == tid))? - (tid)? - `https://api.tvmaze.com/shows/?thetvdb=${ tid }`: - (iid)? - `https://api.tvmaze.com/shows/?imdb=${ iid }`: - `https://api.tvmaze.com/search/shows?q=${ encodeURI(title) }`: - (title)? - (apit && year)? - `https://www.theimdbapi.org/api/find/${ apit }?title=${ encodeURI(title) }&year=${ year }`: - `https://www.theimdbapi.org/api/find/movie?title=${ encodeURI(title) }${ year? '&year=' + year: '' }`: - null; - - if(url === null) return null; - - let proxy = config.proxy, - cors = proxy.url, // if cors is requried and not uspported, proxy through this URL - headers = HandleProxyHeaders(proxy.headers, url); - - if(proxy.enabled && /(^http:\/\/)(?!localhost|127\.0\.0\.1(?:\/8)?|::1(?:\/128)?|:\d+)\b/i.test(url)) { - url = cors - .replace(/\{b(ase-?)?64-url\}/gi, btoa(url)) - .replace(/\{enc(ode)?-url\}/gi, encodeURIComponent(url)) - .replace(/\{(raw-)?url\}/gi, url); - - terminal.log({ proxy, url, headers }); - } + await(proxy.enabled? fetch(url, { mode: "cors", headers }): fetch(url)) + .then(response => response.text()) + .then(data => { + try { + if(data) + json = JSON.parse(data); + } catch(error) { + terminal.error(`Failed to parse JSON: "${ data }"`); + } + }) + .catch(error => { + throw error; + }); - terminal.log(`Searching for "${ title } (${ year })" in ${ type || apit }/${ rqut }${ proxy.enabled? '[PROXY]': '' } => ${ url }`); + terminal.log('Search results', { title, year, url, json }); - await(proxy? fetch(url, { mode: "cors", headers }): fetch(url)) - .then(response => response.text()) - .then(data => { - try { - if(data) - json = JSON.parse(data); - } catch(error) { - terminal.error(`Failed to parse JSON: "${ data }"`); - } - }) - .catch(error => { - throw error; - }); + if('results' in json) + json = json.results; - terminal.log('Search results', { title, year, url, json }); + if(json instanceof Array) { + let b = { release_date: '', year: '' }, + t = (s = "") => s.toLowerCase(), + c = (s = "") => t(s).replace(/\&/g, 'and').replace(UTF_16, ''), + k = (s = "") => { - if('results' in json) - json = json.results; + let r = [ + [/(?!^\s*)\b(show|series|a([st]|nd?|cross|fter|lthough)?|b(e(cause|fore|tween)|ut|y)|during|from|in(to)?|[io][fn]|[fn]?or|the|[st]o|through|under|with(out)?|yet)\b\s*/gi, ''], + // try replacing common words, e.g. Conjunctions, "Show," "Series," etc. + [/\^\s*|\s*$/g, ''], + [/\s+/g, '|'] + ]; - if(json instanceof Array) { - let b = { release_date: '', year: '' }, - t = (s = "") => s.toLowerCase(), - c = (s = "") => t(s).replace(/\&/g, 'and').replace(/\W+/g, ''), - k = (s = "") => { + for(let i = 0; i < r.length; i++) { + if(/^([\(\|\)]+)?$/.test(s)) return ""; - let r = [ - [/(?!^\s*)\b(show|series|a([st]|nd?|cross|fter|lthough)?|b(e(cause|fore|tween)|ut|y)|during|from|in(to)?|[io][fn]|[fn]?or|the|[st]o|through|under|with(out)?|yet)\b\s*/gi, ''], - // try replacing common words, e.g. Conjunctions, "Show," "Series," etc. - [/\s+/g, '|'] - ]; + s = s.replace(r[i][0], r[i][1]); + } - for(let i = 0; i < r.length; i++) { - if(/^([\(\|\)]+)?$/.test(s)) return ""; + return c(s); + }, + R = (s = "", S = "", n = !0) => { + let l = s.split(' ').length, L = S.split(' ').length, + score = 100 * (((S.match(RegExp(`\\b(${k(s)})\\b`, 'i')) || [null]).length) / (L || 1)), + passing = config.UseLooseScore | 0; - s = s.replace(r[i][0], r[i][1]); - } + terminal.log(`=> "${ s }"/"${ S }" = ${ score }`); + score *= (l > L? (L||1)/l: L > l? (l||1)/L: 1); + terminal.log(`~> ... = ${ score }`); - return c(s); - }, - R = (s = "", S = "", n = !0) => { - let score = 100 * ((S.match(RegExp(`\\b(${k(s)})\\b`, 'i')) || [null]).length / (S.split(' ').length || 1)), - passing = config.UseLooseScore | 0; + return (S != '' && score >= passing) || (n? R(S, s, !n): n); + }, + en = /^(u[ks]-?|utf8-?)?en(glish)?$/i; + + // Find an exact match: Title (Year) | #IMDbID + let index, found, $data, lastscore; + for(index = 0, found = false, $data, lastscore = 0; (title && year) && index < json.length && !found; rerun |= 0b0100, index++) { + $data = json[index]; + + let altt = $data.alternativeTitles, + $alt = (altt && altt.length? altt.filter(v => t(v) == t(title))[0]: null); + + // Managers + if(manable) + // Medusa + if(config.usingMedusa && $data instanceof Array) + found = ((t($data[4]) == t(title) || $alt) && +year === +$data[5].slice(0, 4))? + $alt || $data: + found; + // Radarr & Sonarr + else if(config.usingRadarr || config.usingSonarr) + found = ((t($data.title) == t(title) || $alt) && +year === +$data.year)? + $alt || $data: + found; + //api.tvmaze.com/ + else if(('externals' in ($data = $data.show || $data) || 'show' in $data) && $data.premiered) + found = (iid == $data.externals.imdb || t($data.name) == t(title) && year == $data.premiered.slice(0, 4))? + $data: + found; + //api.themoviedb.org/ \local + else if(('movie_results' in $data || 'tv_results' in $data || 'results' in $data) && $data.release_date) + found = (DATA => { + if(DATA.results) + if(rqut == 'tmdb') + DATA.movie_results = DATA.results; + else + DATA.tv_results = DATA.results; + + let i, f, o, l; + + for(i = 0, f = !1, o = DATA.movie_results, l = o.length | 0; i < l; i++) + f = (t(o.title) === t(title) && o.release_date.slice(0, 4) == year); + + for(i = (+f * l), o = (f? o: DATA.tv_results), l = (f? l: o.length | 0); i < l; i++) + f = (t(o.name) === t(title) && o.first_air_date.slice(0, 4) == year); + + return f? o: f = !!iid; + })($data); + //api.themoviedb.org/ \remote + else if(('original_name' in $data || 'original_title' in $data) && $data.release_date) + found = (tid == $data.id || (t($data.original_name || $data.original_title) == t(title) || t($data.name) == t(title)) && year == ($data || b).release_date.slice(0, 4))? + $data: + found; + //theimdbapi.org/ + else if($data.release_date) + found = (t($data.title) === t(title) && year == ($data.url || $data || b).release_date.slice(0, 4))? + $data: + found; - return (S != '' && score >= passing) || (n? R(S, s, !n): n); - }, - en = /^(u[ks]-?|utf8-?)?en(glish)?$/i; - - // Find an exact match: Title (Year) | #IMDbID - let index, found, $data, lastscore; - for(index = 0, found = false, $data, lastscore = 0; (title && year) && index < json.length && !found; index++) { - $data = json[index]; - - let altt = $data.alternativeTitles, - $alt = (altt && altt.length? altt.filter(v => t(v) == t(title))[0]: null); - - // Radarr & Sonarr - if(manable) - found = ((t($data.title) == t(title) || $alt) && +year === +$data.year)? - $alt || $data: - found; - //api.tvmaze.com/ - else if(('externals' in ($data = $data.show || $data) || 'show' in $data) && $data.premiered) - found = (iid == $data.externals.imdb || t($data.name) == t(title) && year == $data.premiered.slice(0, 4))? - $data: - found; - //api.themoviedb.org/ \local - else if(('movie_results' in $data || 'tv_results' in $data || 'results' in $data) && $data.release_date) - found = (DATA => { - if(DATA.results) - if(rqut == 'tmdb') - DATA.movie_results = DATA.results; - else - DATA.tv_results = DATA.results; - - let i, f, o, l; - - for(i = 0, f = !1, o = DATA.movie_results, l = o.length | 0; i < l; i++) - f = (t(o.title) === t(title) && o.release_date.slice(0, 4) == year); - - for(i = (+f * l), o = (f? o: DATA.tv_results), l = (f? l: o.length | 0); i < l; i++) - f = (t(o.name) === t(title) && o.first_air_date.slice(0, 4) == year); - - return f? o: f = !!iid; - })($data); - //api.themoviedb.org/ \remote - else if(('original_name' in $data || 'original_title' in $data) && $data.release_date) - found = (tid == $data.id || (t($data.original_name || $data.original_title) == t(title) || t($data.name) == t(title)) && year == ($data || b).release_date.slice(0, 4))? - $data: - found; - //theimdbapi.org/ - else if($data.release_date) - found = (t($data.title) === t(title) && year == ($data.url || $data || b).release_date.slice(0, 4))? - $data: - found; - -// terminal.log(`Strict Matching: ${ !!found }`, !!found? found: null); - } + terminal.log(`Strict Matching: ${ !!found }`, !!found? found: null); + } - // Find a close match: Title - for(index = 0; title && index < json.length && (!found || lastscore > 0); index++) { - $data = json[index]; - - let altt = $data.alternativeTitles, - $alt = (altt && altt.length? altt.filter(v => c(v) == c(title)): null); - - // Radarr & Sonarr - if(manable) - found = (c($data.title) == c(title) || $alt)? - $alt || $data: - found; - //api.tvmaze.com/ - else if('externals' in ($data = $data.show || $data) || 'show' in $data) - found = - // ignore language barriers - (c($data.name) == c(title))? + // Find a close match: Title + for(index = 0; title && index < json.length && (!found || lastscore > 0); rerun |= 0b0100, index++) { + $data = json[index]; + + let altt = $data.alternativeTitles, + $alt = (altt && altt.length? altt.filter(v => c(v) == c(title)): null); + + // Managers + if(manable) + // Medusa + if(config.usingMedusa && $data instanceof Array) + found = (c($data[4]) == c(title) || $alt)? + $alt || $data: + found; + // Radarr & Sonarr + if(config.usingRadarr || config.usingSonarr) + found = (c($data.title) == c(title) || $alt)? + $alt || $data: + found; + //api.tvmaze.com/ + else if('externals' in ($data = $data.show || $data) || 'show' in $data) + found = + // ignore language barriers + (c($data.name) == c(title))? + $data: + // trust the api matching + ($data.score > lastscore)? + (lastscore = $data.score || $data.vote_count, $data): + found; + //api.themoviedb.org/ \local + else if('movie_results' in $data || 'tv_results' in $data || 'results' in $data) + found = (DATA => { + let i, f, o, l; + + if(DATA.results) + if(rqut == 'tmdb') + DATA.movie_results = DATA.results; + else + DATA.tv_results = DATA.results; + + for(i = 0, f = !1, o = DATA.movie_results, l = o.length | 0; i < l; i++) + f = (c(o.title) == c(title)); + + for(i = (+f * l), o = (f? o: DATA.tv_results), l = (f? l: o.length | 0); i < l; i++) + f = (c(o.name) == c(title)); + + return f? o: f; + })($data); + //api.themoviedb.org/ \remote + else if('original_name' in $data || 'original_title' in $data || 'name' in $data) + found = (c($data.original_name || $data.original_title || $data.name) == c(title))? + $data: + found; + //theimdbapi.org/ + else if(en.test($data.language)) + found = (c($data.title) == c(title))? $data: - // trust the api matching - ($data.score > lastscore)? - (lastscore = $data.score || $data.vote_count, $data): found; - //api.themoviedb.org/ \local - else if('movie_results' in $data || 'tv_results' in $data || 'results' in $data) - found = (DATA => { - let i, f, o, l; - - if(DATA.results) - if(rqut == 'tmdb') - DATA.movie_results = DATA.results; - else - DATA.tv_results = DATA.results; - - for(i = 0, f = !1, o = DATA.movie_results, l = o.length | 0; i < l; i++) - f = (c(o.title) == c(title)); - - for(i = (+f * l), o = (f? o: DATA.tv_results), l = (f? l: o.length | 0); i < l; i++) - f = (c(o.name) == c(title)); - - return f? o: f; - })($data); - //api.themoviedb.org/ \remote - else if('original_name' in $data || 'original_title' in $data || 'name' in $data) - found = (c($data.original_name || $data.original_title || $data.name) == c(title))? - $data: - found; - //theimdbapi.org/ - else if(en.test($data.language)) - found = (c($data.title) == c(title))? - $data: - found; - -// terminal.log(`Title Matching: ${ !!found }`, !!found? found: null); - } - // Find an OK match (Loose Searching): Title ~ Title - // The examples below are correct - // GOOD, found: VRV's "Bakemonogatari" vs. TVDb's "Monogatari Series" - // /\b(monogatari)\b/i.test('bakemonogatari') === true - // this is what this option is for - // OK, found: "The Title of This is Bad" vs. "The Title of This is OK" (this is semi-errornous) - // /\b(title|this|bad)\b/i.test('title this ok') === true - // this may be a possible match, but it may also be an error: 'title' and 'this' - // BAD, not found: "Gun Show Showdown" vs. "Gundarr" - // /\b(gun|showdown)\b/i.test('gundarr') === false - // this should not match; the '\b' (border between \w and \W) keeps them from matching - for(index = 0; config.UseLoose && title && index < json.length && (!found || lastscore > 0); index++) { - $data = json[index]; - - let altt = $data.alternativeTitles, - $alt = (altt && altt.length? altt.filter(v => R(v, title)): null); - - // Radarr & Sonarr - if(manable) - found = (R($data.name, title) || $alt)? - $alt || $data: - found; - //api.tvmaze.com/ - else if('externals' in ($data = $data.show || $data) || 'show' in $data) - found = - // ignore language barriers - (R($data.name, title) || terminal.log('Matching:', [$data.name, title], R($data.name, title)))? + terminal.log(`Title Matching: ${ !!found }`, !!found? found: null); + } + + // Find an OK match (Loose Searching): Title ~ Title + // The examples below are correct + // GOOD, found: VRV's "Bakemonogatari" vs. TVDb's "Monogatari Series" + // /\b(monogatari)\b/i.test('bakemonogatari') === true + // this is what this option was designed for + // OK, found: "The Title of This is Bad" vs. "The Title of This is OK" (this is semi-errornous) + // /\b(title|this|bad)\b/i.test('title this ok') === true + // this may be a possible match, but it may also be an error: 'title' and 'this' + // the user's defined threshold is used in this case (above 65% would match these two items) + // BAD, not found: "Gun Show Showdown" vs. "Gundarr" + // /\b(gun|showdown)\b/i.test('gundarr') === false + // this should not match; the '\b' (border between \w and \W) keeps them from matching + for(index = 0; config.UseLoose && title && index < json.length && (!found || lastscore > 0); rerun |= 0b0010, index++) { + $data = json[index]; + + let altt = $data.alternativeTitles, + $alt = (altt && altt.length? altt.filter(v => R(v, title)): null); + + // Managers + if(manable) + // Medusa + if(config.usingMedusa && $data instanceof Array) + found = (R($data[4], title) || $alt)? + $alt || $data: + found; + // Radarr & Sonarr + if(config.usingRadarr || config.usingSonarr) + found = (R($data.name || $data.title, title) || $alt)? + $alt || $data: + found; + //api.tvmaze.com/ + else if('externals' in ($data = $data.show || $data) || 'show' in $data) + found = + // ignore language barriers + (R($data.name, title) || terminal.log('Matching:', [$data.name, title], R($data.name, title)))? + $data: + // trust the api matching + ($data.score > lastscore)? + (lastscore = $data.score, $data): + found; + //api.themoviedb.org/ \local + else if('movie_results' in $data || 'tv_results' in $data) + found = (DATA => { + let i, f, o, l; + + for(i = 0, f = !1, o = DATA.movie_results, l = o.length | 0; i < l; i++) + f = R(o.title, title); + + for(i = (+f * l), o = (f? o: DATA.tv_results), l = (f? l: o.length | 0); i < l; i++) + f = R(o.name, title); + + return f? o: f; + })($data); + //api.themoviedb.org/ \remote + else if('original_name' in $data || 'original_title' in $data) + found = (R($data.original_name, title) || R($data.original_title, title) || R($data.name, title))? + $data: + found; + //theimdbapi.org/ + else if(en.test($data.language)) + found = (R($data.title, title))? $data: - // trust the api matching - ($data.score > lastscore)? - (lastscore = $data.score, $data): found; - //api.themoviedb.org/ \local - else if('movie_results' in $data || 'tv_results' in $data) - found = (DATA => { - let i, f, o, l; - - for(i = 0, f = !1, o = DATA.movie_results, l = o.length | 0; i < l; i++) - f = R(o.title, title); - - for(i = (+f * l), o = (f? o: DATA.tv_results), l = (f? l: o.length | 0); i < l; i++) - f = R(o.name, title); - - return f? o: f; - })($data); - //api.themoviedb.org/ \remote - else if('original_name' in $data || 'original_title' in $data) - found = (R($data.original_name, title) || R($data.original_title, title) || R($data.name, title))? - $data: - found; - //theimdbapi.org/ - else if(en.test($data.language)) - found = (R($data.title, title))? - $data: - found; - -// terminal.log(`Loose Matching: ${ !!found }`, !!found? found: null); - } - json = found; - } + terminal.log(`Loose Matching: ${ !!found }`, !!found? found: null); + } - if((json === undefined || json === null || json === false) && !rerun) - return json = getIDs({ title, year: YEAR, type, IMDbID, TMDbID, TVDbID, APIType, APIID, meta, rerun: true }); - else if((json === undefined || json === null)) - json = { IMDbID, TMDbID, TVDbID }; + json = found; + } - let ei = 'tt', - mr = 'movie_results', - tr = 'tv_results'; + if((json === undefined || json === null || json === false) && (rerun & 0b0001)) + return rerun |= 0b0001, json = getIDs({ title, year: YEAR, type, IMDbID, TMDbID, TVDbID, APIType, APIID, meta, rerun }); + else if((json === undefined || json === null)) + json = { IMDbID, TMDbID, TVDbID }; + + let ei = 'tt', + mr = 'movie_results', + tr = 'tv_results'; + + json = json && mr in json? json[mr].length > json[tr].length? json[mr]: json[tr]: json; + + if(json instanceof Array && (!config.usingMedusa? true: (config.usingSonarr || config.usingOmbi))) + json = json[0]; + + if(!json) + json = { IMDbID, TMDbID, TVDbID }; + + // Ombi, Medusa, Radarr and Sonarr + if(manable) + data = ( + (config.usingMedusa && !(config.usingSonarr || config.usingOmbi))? + { + imdb: iid || ei, + tmdb: mid | 0, + tvdb: tid || json[3] || (json[8]? json[8][1]: 0), + title: json.title || title, + year: +(json.year || year) + }: + { + imdb: iid || json.imdbId || ei, + tmdb: mid || json.tmdbId || json.theMovieDbId | 0, + tvdb: tid || json.tvdbId || json.theTvDbId | 0, + title: json.title || title, + year: +(json.year || year) + } + ); + //api.tvmaze.com/ + else if('externals' in (json = json.show || json)) + data = { + imdb: iid || json.externals.imdb || ei, + tmdb: mid || json.externals.themoviedb | 0, + tvdb: tid || json.externals.thetvdb | 0, + title: json.name || title, + year: ((json.premiered || json.first_aired_date || year) + '').slice(0, 4) + }; + //api.themoviedb.org/ + else if('imdb_id' in (json = mr in json? json[mr].length > json[tr].length? json[mr]: json[tr]: json) || 'original_name' in json || 'original_title' in json) + data = { + imdb: iid || json.imdb_id || ei, + tmdb: mid || json.id | 0, + tvdb: tid || json.tvdb | 0, + title: json.title || json.name || title, + year: ((json.release_date || json.first_air_date || year) + '').slice(0, 4) + }; + //omdbapi.com/ + else if('imdbID' in json) + data = { + imdb: iid || json.imdbID || ei, + tmdb: mid || json.tmdbID | 0, + tvdb: tid || json.tvdbID | 0, + title: json.Title || json.Name || title, + year: json.Year || year + }; + //theapache64.com/movie_db/ + else if('data' in json) + data = { + imdb: iid || json.data.imdb_id || ei, + tmdb: mid || json.data.tmdb_id | 0, + tvdb: tid || json.data.tvdb_id | 0, + title: json.data.name || json.data.title || title, + year: json.data.year || year + }; + //theimdbapi.org/ + else if('imdb' in json) + data = { + imdb: iid || json.imdb || ei, + tmdb: mid || json.id | 0, + tvdb: tid || json.tvdb | 0, + title, + year + }; + // given by the requesting service + else + data = { + imdb: iid || ei, + tmdb: mid | 0, + tvdb: tid | 0, + title, + year + }; - json = json && mr in json? json[mr].length > json[tr].length? json[mr]: json[tr]: json; + year = +((data.year + '').slice(0, 4)) || 0; + data.year = year; - if(json instanceof Array) - json = json[0]; + let best = { title, year, data, type, rqut, score: json.score | 0 }; - if(!json) - json = { IMDbID, TMDbID, TVDbID }; + terminal.log('Best match:', url, { best, json }); - // Ombi, Radarr and Sonarr - if(manable) - data = { - imdb: iid || json.imdbId || ei, - tmdb: mid || json.tmdbId || json.theMovieDbId | 0, - tvdb: tid || json.tvdbId || json.theTvDbId | 0, - title: json.title || title, - year: +(json.year || year) - }; - //api.tvmaze.com/ - else if('externals' in (json = json.show || json)) - data = { - imdb: iid || json.externals.imdb || ei, - tmdb: mid || json.externals.themoviedb | 0, - tvdb: tid || json.externals.thetvdb | 0, - title: json.name || title, - year: ((json.premiered || json.first_aired_date || year) + '').slice(0, 4) - }; - //api.themoviedb.org/ - else if('imdb_id' in (json = mr in json? json[mr].length > json[tr].length? json[mr]: json[tr]: json) || 'original_name' in json || 'original_title' in json) - data = { - imdb: iid || json.imdb_id || ei, - tmdb: mid || json.id | 0, - tvdb: tid || json.tvdb | 0, - title: json.title || json.name || title, - year: ((json.release_date || json.first_air_date || year) + '').slice(0, 4) - }; - //omdbapi.com/ - else if('imdbID' in json) - data = { - imdb: iid || json.imdbID || ei, - tmdb: mid || json.tmdbID | 0, - tvdb: tid || json.tvdbID | 0, - title: json.Title || json.Name || title, - year: json.Year || year - }; - //theapache64.com/movie_db/ - else if('data' in json) - data = { - imdb: iid || json.data.imdb_id || ei, - tmdb: mid || json.data.tmdb_id | 0, - tvdb: tid || json.data.tvdb_id | 0, - title: json.data.name || json.data.title || title, - year: json.data.year || year - }; - //theimdbapi.org/ - else if('imdb' in json) - data = { - imdb: iid || json.imdb || ei, - tmdb: mid || json.id | 0, - tvdb: tid || json.tvdb | 0, - title, - year - }; - // given by the requesting service - else - data = { - imdb: iid || ei, - tmdb: mid | 0, - tvdb: tid | 0, - title, - year - }; + if(best.data.imdb == ei && best.data.tmdb == 0 && best.data.tvdb == 0) + return terminal.log(`No information was found for "${ title } (${ year })"`), {}; - year = +((data.year + '').slice(0, 4)) || 0; - data.year = year; + save(savename, data); // e.g. "Coco (0)" on Netflix before correction / no repeat searches + save(savename = `${title} (${year}).${rqut}`.toLowerCase(), data); // e.g. "Coco (2017)" on Netflix after correction / no repeat searches + save(`${title}.${rqut}`.toLowerCase(), year); - let best = { title, year, data, type, rqut, score: json.score | 0 }; + terminal.log(`Saved as "${ savename }"`, data); - terminal.log('Best match:', url, { best, json }); + rerun |= 0b00001; - if(best.data.imdb == ei && best.data.tmdb == 0 && best.data.tvdb == 0) - return terminal.log(`No information was found for "${ title } (${ year })"`), {}; + return data; + } - save(savename, data); // e.g. "Coco (0)" on Netflix before correction / no repeat searches - save(savename = `${title} (${year}).${rqut}`.toLowerCase(), data); // e.g. "Coco (2017)" on Netflix after correction / no repeat searches - save(`${title}.${rqut}`.toLowerCase(), year); + function $pushAddToCouchpotato(options) { + // TODO: this does not work anymore! + if(!options.IMDbID) + return new Notification( + 'warning', + 'Stopped adding to CouchPotato: No IMDb ID' + ); + + chrome.runtime.sendMessage( + { + type: 'VIEW_COUCHPOTATO', + url: `${ config.couchpotatoURL }/media.get`, + IMDbID: options.IMDbID, + TMDbID: options.TMDbID, + TVDbID: options.TVDbID, + basicAuth: config.couchpotatoBasicAuth, + }, + response => { + let movieExists = response.success; + if(response.error) { + return new Notification( + 'warning', + 'CouchPotato request failed (see your console)' + ) || + (!response.silent && terminal.error('Error viewing CouchPotato: ' + String(response.error))); + } + if(!movieExists) { + pushCouchPotatoRequest(options); + return; + } + new Notification( + 'warning', + `Movie already exists in CouchPotato (status: ${response.status})` + ); + } + ); + } - terminal.log(`Saved as "${ savename }"`, data); + // Movies/TV Shows + function pushOmbiRequest(options) { + new Notification('info', `Adding "${ options.title }" to Ombi`, 3000); - return data; -} + if((!options.IMDbID && !options.TMDbID) && !options.TVDbID) { + return new Notification( + 'warning', + 'Stopped adding to Ombi: No content ID' + ); + } -function $pushAddToCouchpotato(options) { - // TODO: this does not work anymore! - if (!options.IMDbID) - return new Notification( - 'warning', - 'Stopped adding to CouchPotato: No IMDb ID' - ); - - chrome.runtime.sendMessage( - { - type: 'VIEW_COUCHPOTATO', - url: `${ config.couchpotatoURL }/media.get`, - IMDbID: options.IMDbID, - TMDbID: options.TMDbID, - TVDbID: options.TVDbID, - basicAuth: config.couchpotatoBasicAuth, - }, - response => { - let movieExists = response.success; - if (response.error) { - return new Notification( - 'warning', - 'CouchPotato request failed (see your console)' - ) || - (!response.silent && terminal.error('Error viewing CouchPotato: ' + String(response.error))); - } - if (!movieExists) { - pushCouchPotatoRequest(options); - return; - } - new Notification( - 'warning', - `Movie already exists in CouchPotato (status: ${response.status})` - ); - } - ); -} + let contentType = (/movies?|film/i.test(options.type)? 'movie': 'tv'); -// Movies/TV Shows -function pushOmbiRequest(options) { - new Notification('info', `Adding "${ options.title }" to Ombi`, 3000); + chrome.runtime.sendMessage({ + type: 'ADD_OMBI', + url: `${ config.ombiURL }api/v1/Request/${ contentType }`, + token: config.ombiToken, + title: options.title, + year: options.year, + imdbId: options.IMDbID, + tmdbId: options.TMDbID, + tvdbId: options.TVDbID, + contentType, + }, + response => { + terminal.log('Pushing to Ombi', response); + + if(response && response.error) { + return new Notification('warning', `Could not add "${ options.title }" to Ombi: ${ response.error }`) || + (!response.silent && terminal.error('Error adding to Ombi: ' + String(response.error), response.location, response.debug)); + } else if(response && response.success) { + let title = options.title.replace(/\&/g, 'and').replace(/\s+/g, '-').replace(/[^\w\-]+/g, '').replace(/\-{2,}/g, '-').toLowerCase(); - if ((!options.IMDbID && !options.TMDbID) && !options.TVDbID) { - return new Notification( - 'warning', - 'Stopped adding to Ombi: No content ID' + terminal.log('Successfully pushed', options); + new Notification('update', `Added "${ options.title }" to Ombi`, 7000, () => window.open(config.ombiURL, '_blank')); + } else { + new Notification('warning', `Could not add "${ options.title }" to Ombi: Unknown Error`) || + (!response.silent && terminal.error('Error adding to Ombi: ' + String(response))); + } + } ); } - let contentType = (/movies?|film/i.test(options.type)? 'movie': 'tv'); - - chrome.runtime.sendMessage({ - type: 'ADD_OMBI', - url: `${ config.ombiURL }api/v1/Request/${ contentType }`, - token: config.ombiToken, - title: options.title, - year: options.year, - imdbId: options.IMDbID, - tmdbId: options.TMDbID, - tvdbId: options.TVDbID, - contentType, - }, - response => { - terminal.log('Pushing to Ombi', response); + // Movies/TV Shows + function pushCouchPotatoRequest(options) { + new Notification('info', `Adding "${ options.title }" to CouchPotato`, 3000); + + chrome.runtime.sendMessage( + { + type: 'ADD_COUCHPOTATO', + url: `${ config.couchpotatoURL }/movie.add`, + IMDbID: options.IMDbID, + TMDbID: options.TMDbID, + TVDbID: options.TVDbID, + basicAuth: config.couchpotatoBasicAuth, + }, + response => { + terminal.log('Pushing to CouchPotato', response); + + if(response.error) { + return new Notification( + 'warning', + `Could not add "${ options.title }" to CouchPotato (see your console)` + ) || + (!response.silent && terminal.error('Error adding to CouchPotato: ' + String(response.error), response.location, response.debug)); + } + if(response.success) { + terminal.log('Successfully pushed', options); + new Notification('update', `Added "${ options.title }" to CouchPotato`); + } else { + new Notification('warning', `Could not add "${ options.title }" to CouchPotato`); + } + } + ); + } - if (response && response.error) { - return new Notification('warning', `Could not add "${ options.title }" to Ombi: ${ response.error }`) || - (!response.silent && terminal.error('Error adding to Ombi: ' + String(response.error), response.location, response.debug)); - } else if (response && response.success) { - let title = options.title.replace(/\&/g, 'and').replace(/\s+/g, '-').replace(/[^\w\-]+/g, '').replace(/\-{2,}/g, '-').toLowerCase(); + // Movies + function pushWatcherRequest(options) { + new Notification('info', `Adding "${ options.title }" to Watcher`, 3000); - terminal.log('Successfully pushed', options); - new Notification('update', `Added "${ options.title }" to Ombi`, 7000, () => window.open(config.ombiURL, '_blank')); - } else { - new Notification('warning', `Could not add "${ options.title }" to Ombi: Unknown Error`) || - (!response.silent && terminal.error('Error adding to Ombi: ' + String(response))); - } + if(!options.IMDbID && !options.TMDbID) { + return new Notification( + 'warning', + 'Stopped adding to Watcher: No IMDb/TMDb ID' + ); } - ); -} - -// Movies/TV Shows -function pushCouchPotatoRequest(options) { - new Notification('info', `Adding "${ options.title }" to CouchPotato`, 3000); - - chrome.runtime.sendMessage( - { - type: 'ADD_COUCHPOTATO', - url: `${ config.couchpotatoURL }/movie.add`, - IMDbID: options.IMDbID, - TMDbID: options.TMDbID, - TVDbID: options.TVDbID, - basicAuth: config.couchpotatoBasicAuth, - }, - response => { - terminal.log('Pushing to CouchPotato', response); - - if (response.error) { - return new Notification( - 'warning', - `Could not add "${ options.title }" to CouchPotato (see your console)` - ) || - (!response.silent && terminal.error('Error adding to CouchPotato: ' + String(response.error), response.location, response.debug)); - } - if (response.success) { - terminal.log('Successfully pushed', options); - new Notification('update', `Added "${ options.title }" to CouchPotato`); - } else { - new Notification('warning', `Could not add "${ options.title }" to CouchPotato`); - } - } - ); -} -// Movies -function pushWatcherRequest(options) { - new Notification('info', `Adding "${ options.title }" to Watcher`, 3000); - - if (!options.IMDbID && !options.TMDbID) { - return new Notification( - 'warning', - 'Stopped adding to Watcher: No IMDb/TMDb ID' + chrome.runtime.sendMessage({ + type: 'ADD_WATCHER', + url: `${ config.watcherURL }api/`, + token: config.watcherToken, + StoragePath: config.watcherStoragePath, + basicAuth: config.watcherBasicAuth, + title: options.title, + year: options.year, + imdbId: options.IMDbID, + tmdbId: options.TMDbID, + }, + response => { + terminal.log('Pushing to Watcher', response); + + if(response && response.error) { + return new Notification('warning', `Could not add "${ options.title }" to Watcher: ${ response.error }`) || + (!response.silent && terminal.error('Error adding to Watcher: ' + String(response.error), response.location, response.debug)); + } else if(response && (response.success || (response.response + "") == "true")) { + let title = options.title.replace(/\&/g, 'and').replace(/\s+/g, '-').replace(/[^\w\-]+/g, '').replace(/\-{2,}/g, '-').toLowerCase(), + TMDbID = options.TMDbID || response.tmdbId; + + terminal.log('Successfully pushed', options); + new Notification('update', `Added "${ options.title }" to Watcher`, 7000, () => window.open(`${config.watcherURL}library/status${TMDbID? `#${title}-${TMDbID}`: '' }`, '_blank')); + } else { + new Notification('warning', `Could not add "${ options.title }" to Watcher: Unknown Error`) || + (!response.silent && terminal.error('Error adding to Watcher: ' + String(response))); + } + } ); } - chrome.runtime.sendMessage({ - type: 'ADD_WATCHER', - url: `${ config.watcherURL }api/`, - token: config.watcherToken, - StoragePath: config.watcherStoragePath, - basicAuth: config.watcherBasicAuth, - title: options.title, - year: options.year, - imdbId: options.IMDbID, - tmdbId: options.TMDbID, - }, - response => { - terminal.log('Pushing to Watcher', response); - - if (response && response.error) { - return new Notification('warning', `Could not add "${ options.title }" to Watcher: ${ response.error }`) || - (!response.silent && terminal.error('Error adding to Watcher: ' + String(response.error), response.location, response.debug)); - } else if (response && (response.success || (response.response + "") == "true")) { - let title = options.title.replace(/\&/g, 'and').replace(/\s+/g, '-').replace(/[^\w\-]+/g, '').replace(/\-{2,}/g, '-').toLowerCase(), - TMDbID = options.TMDbID || response.tmdbId; - - terminal.log('Successfully pushed', options); - new Notification('update', `Added "${ options.title }" to Watcher`, 7000, () => window.open(`${config.watcherURL}library/status${TMDbID? `#${title}-${TMDbID}`: '' }`, '_blank')); - } else { - new Notification('warning', `Could not add "${ options.title }" to Watcher: Unknown Error`) || - (!response.silent && terminal.error('Error adding to Watcher: ' + String(response))); - } - } - ); -} + // Movies + function pushRadarrRequest(options, prompted) { + if(!options.IMDbID && !options.TMDbID) + return (!prompted)? new Notification( + 'warning', + 'Stopped adding to Radarr: No IMDb/TMDb ID' + ): null; -// Movies -function pushRadarrRequest(options) { - new Notification('info', `Adding "${ options.title }" to Radarr`, 3000); + let PromptValues = {}, + { PromptQuality, PromptLocation } = config; - if (!options.IMDbID && !options.TMDbID) { - return new Notification( - 'warning', - 'Stopped adding to Radarr: No IMDb/TMDb ID' - ); - } + if(!prompted && (PromptQuality || PromptLocation)) + return new Prompt('modify', options, refined => pushRadarrRequest(refined, true)); - let PromptValues = {}, - { PromptQuality, PromptLocation } = config; - - if(PromptQuality && +options.quality > 0) - PromptValues.QualityID = +options.quality; - if(PromptLocation && options.location) - PromptValues.StoragePath = JSON.parse(config.radarrStoragePaths)[+options.location - 1].path.replace(/\\/g, '\\\\'); - - chrome.runtime.sendMessage({ - type: 'ADD_RADARR', - url: `${ config.radarrURL }api/movie/`, - token: config.radarrToken, - StoragePath: config.radarrStoragePath, - QualityID: config.radarrQualityProfileId, - basicAuth: config.radarrBasicAuth, - title: options.title, - year: options.year, - imdbId: options.IMDbID, - tmdbId: options.TMDbID, - ...PromptValues - }, - response => { - terminal.log('Pushing to Radarr', response); - - if (response && response.error) { - return new Notification('warning', `Could not add "${ options.title }" to Radarr: ${ response.error }`) || - (!response.silent && terminal.error('Error adding to Radarr: ' + String(response.error), response.location, response.debug)); - } else if (response && response.success) { - let title = options.title.replace(/\&/g, 'and').replace(/\s+/g, '-').replace(/[^\w\-]+/g, '').replace(/\-{2,}/g, '-').toLowerCase(), - TMDbID = options.TMDbID || response.tmdbId; - - terminal.log('Successfully pushed', options); - new Notification('update', `Added "${ options.title }" to Radarr`, 7000, () => window.open(`${config.radarrURL}${TMDbID? `movies/${title}-${TMDbID}`: '' }`, '_blank')); - } else { - new Notification('warning', `Could not add "${ options.title }" to Radarr: Unknown Error`) || - (!response.silent && terminal.error('Error adding to Radarr: ' + String(response))); - } - } - ); -} + if(PromptQuality && +options.quality > 0) + PromptValues.QualityID = +options.quality; + if(PromptLocation && options.location) + PromptValues.StoragePath = JSON.parse(config.radarrStoragePaths).map(item => item.id == options.location? item: null).filter(n => n)[0].path.replace(/\\/g, '\\\\'); -// TV Shows -function pushSonarrRequest(options) { - new Notification('info', `Adding "${ options.title }" to Sonarr`, 3000); + new Notification('info', `Adding "${ options.title }" to Radarr`, 3000); - if (!options.TVDbID) { - return new Notification( - 'warning', - 'Stopped adding to Sonarr: No TVDb ID' + chrome.runtime.sendMessage({ + type: 'ADD_RADARR', + url: `${ config.radarrURL }api/movie/`, + token: config.radarrToken, + StoragePath: config.radarrStoragePath, + QualityID: config.radarrQualityProfileId, + basicAuth: config.radarrBasicAuth, + title: options.title, + year: options.year, + imdbId: options.IMDbID, + tmdbId: options.TMDbID, + ...PromptValues + }, + response => { + terminal.log('Pushing to Radarr', response); + + if(response && response.error) { + return new Notification('warning', `Could not add "${ options.title }" to Radarr: ${ response.error }`) || + (!response.silent && terminal.error('Error adding to Radarr: ' + String(response.error), response.location, response.debug)); + } else if(response && response.success) { + let title = options.title.replace(/\&/g, 'and').replace(/\s+/g, '-').replace(/[^\w\-]+/g, '').replace(/\-{2,}/g, '-').toLowerCase(), + TMDbID = options.TMDbID || response.tmdbId; + + terminal.log('Successfully pushed', options); + new Notification('update', `Added "${ options.title }" to Radarr`, 7000, () => window.open(`${config.radarrURL}${TMDbID? `movies/${title}-${TMDbID}`: '' }`, '_blank')); + } else { + new Notification('warning', `Could not add "${ options.title }" to Radarr: Unknown Error`) || + (!response.silent && terminal.error('Error adding to Radarr: ' + String(response))); + } + } ); } - let PromptValues = {}, - { PromptQuality, PromptLocation } = config; - - if(PromptQuality && +options.quality > 0) - PromptValues.QualityID = +options.quality; - if(PromptLocation && options.location) - PromptValues.StoragePath = JSON.parse(config.sonarrStoragePaths)[+options.location - 1].path.replace(/\\/g, '\\\\'); - - chrome.runtime.sendMessage({ - type: 'ADD_SONARR', - url: `${ config.sonarrURL }api/series/`, - token: config.sonarrToken, - StoragePath: config.sonarrStoragePath, - QualityID: config.sonarrQualityProfileId, - basicAuth: config.sonarrBasicAuth, - title: options.title, - year: options.year, - tvdbId: options.TVDbID, - ...PromptValues - }, - response => { - terminal.log('Pushing to Sonarr', response); + // TV Shows + function pushSonarrRequest(options, prompted) { + if(!options.TVDbID) + return (!prompted)? new Notification( + 'warning', + 'Stopped adding to Sonarr: No TVDb ID' + ): null; - if (response && response.error) { - return new Notification('warning', `Could not add "${ options.title }" to Sonarr: ${ response.error }`) || - (!response.silent && terminal.error('Error adding to Sonarr: ' + String(response.error), response.location, response.debug)); - } else if (response && response.success) { - let title = options.title.replace(/\&/g, 'and').replace(/\s+/g, '-').replace(/[^\w\-]+/g, '').replace(/\-{2,}/g, '-').toLowerCase(); + let PromptValues = {}, + { PromptQuality, PromptLocation } = config; - terminal.log('Successfully pushed', options); - new Notification('update', `Added "${ options.title }" to Sonarr`, 7000, () => window.open(`${config.sonarrURL}series/${title}`, '_blank')); - } else { - new Notification('warning', `Could not add "${ options.title }" to Sonarr: Unknown Error`) || - (!response.silent && terminal.error('Error adding to Sonarr: ' + String(response))); - } - } - ); -} + if(!prompted && (PromptQuality || PromptLocation)) + return new Prompt('modify', options, refined => pushSonarrRequest(refined, true)); -// make the button -function renderPlexButton(persistent) { - let existingButtons = document.querySelectorAll('.web-to-plex-button'), - firstButton = existingButtons[0]; - - if (existingButtons.length && !persistent) - [].slice.call(existingButtons).forEach(button => button.remove()); - else if(persistent && firstButton !== null && firstButton !== undefined) - return firstButton; - - // + } - document.body.appendChild(button); + // make the button + let MASTER_BUTTON; + function renderPlexButton(persistent) { + let existingButtons = document.querySelectorAll('.web-to-plex-button'), + firstButton = existingButtons[0]; + + if(existingButtons.length && !persistent) + [].slice.call(existingButtons).forEach(button => button.remove()); + else if(persistent && firstButton !== null && firstButton !== undefined) + return firstButton; + + // - t = t.join(', '); - t = t.length > 24? t.slice(0, 21).replace(/\W+$/, '') + '...': t; + document.body.appendChild(button); - element.ON_CLICK = e => { - e.preventDefault(); + return MASTER_BUTTON = button; + } - let self = e.target, tv = /tv[\s-]?|shows?|series/i, fail = 0, - options = JSON.parse(atob(button.getAttribute('saved_options'))); + function modifyPlexButton(button, action, title, options = {}) { + let multiple = (action == 'multiple' || options instanceof Array), + element = button.querySelector('.w2p-action, .list-action'), + delimeter = '', + ty = 'Item', txt = 'title', hov = 'tooltip', + em = /^(tt|0)?$/i, + tv = /tv[\s-]?|shows?|series/i; + + if(!element) { + element = button; + button = element.parentElement; + }; - for(let index = 0, length = options.length, option; index < length; index++) { - option = options[index]; + sendUpdate('SEARCH_FOR', { ...options, button }); - try { - if(config.usingOmbi) - pushOmbiRequest(option); - else if (config.usingWatcher && !tv.test(option.type)) - pushWatcherRequest(option); - else if (config.usingRadarr && !tv.test(option.type)) - pushRadarrRequest(option); - else if (config.usingSonarr && tv.test(option.type)) - pushSonarrRequest(option); - else if(config.usingCouchPotato) - $pushAddToCouchpotato(option); - } catch(error) { - terminal.error(`Failed to get "${ option.title }" (Error #${ ++fail })`) - } - } - NOTIFIED = false; + /* Handle a list of items */ + if(multiple) { + options = [].slice.call(options); - if (fail) - new Notification('error', `Failed to grab ${ fail } item${fail==1?'':'s'}`); - }; + let saved_options = [], // a list of successful searches (not on Plex) + len = options.length, + s = (len == 1? '': 's'), + t = []; - button.setAttribute('saved_options', btoa(JSON.stringify(saved_options))); - element.addEventListener('click', e => (AUTO_GRAB.ENABLED && AUTO_GRAB.LIMIT > options.length)? element.ON_CLICK(e): new Prompt('select', options, o => { button.setAttribute('saved_options', btoa(JSON.stringify(o))); element.ON_CLICK(e) })); + for(let index = 0; index < len; index++) { + let option = options[index]; - element.setAttribute(hov, `Grab ${len} new item${s}: ${ t }`); - button.classList.add(saved_options.length || len? 'wtp--download': 'wtp--error'); - } else { - /* Handle a single item */ + // Skip empty entries + if(!option || !option.type || !option.title) continue; - if(!options || !options.type || !options.title) return; + // the action should be an array + // we'll give the button a list of links to engage, so make it snappy! + let url = `#${ option.imdb || 'tt' }-${ option.tmdb | 0 }-${ option.tvdb | 0 }`; - let empty = (em.test(options.IMDbID) && em.test(options.TMDbID) && em.test(options.TVDbID)), - nice_title = `${options.title.toCaps()}${options.year? ` (${options.year})`: ''}`; + /* Failed */ + if(/#tt-0-0/i.test(url)) + continue; - if(options) { - ty = (options.type == 'movie'? 'Movie': 'TV Show'); - txt = options.txt || txt; - hov = options.hov || hov; - } + saved_options.push(option); + t.push(option.title); + } - if (action == 'found') { - element.href = getPlexMediaURL(config.server.id, options.key); - element.setAttribute(hov, `Watch "${options.title} (${options.year})" on Plex`); - button.classList.add('wtp--found'); - } else if (action == 'downloader' || options.remote) { - - switch(options.remote) { - /* GoStream */ - case 'oload': - let href = options.href, path = ''; - - if (config.usingOmbi) { - path = ''; - } else if (config.usingWatcher && !tv.test(options.type)) { - path = ''; - } else if (config.usingRadarr && !tv.test(options.type)) { - path = config.radarrStoragePath; - } else if (config.usingSonarr && tv.test(options.type)) { - path = config.sonarrStoragePath; - } else if(config.usingCouchPotato) { - path = ''; + t = t.join(', '); + t = t.length > 24? t.slice(0, 21).replace(/\W+$/, '') + '...': t; + + element.ON_CLICK = e => { + e.preventDefault(); + + let self = e.target, tv = /tv[\s-]?|shows?|series/i, fail = 0, + options = JSON.parse(atob(button.getAttribute('saved_options'))); + + for(let index = 0, length = options.length, option; index < length; index++) { + option = options[index]; + + try { + if(config.usingOmbi) + pushOmbiRequest(option); + else if(config.usingWatcher && !tv.test(option.type)) + pushWatcherRequest(option); + else if(config.usingRadarr && !tv.test(option.type)) + pushRadarrRequest(option); + else if(config.usingSonarr && tv.test(option.type)) + pushSonarrRequest(option); + else if(config.usingMedusa && tv.test(option.type)) + pushMedusaRequest(option); + else if(config.usingCouchPotato) + $pushAddToCouchpotato(option); + } catch(error) { + terminal.error(`Failed to get "${ option.title }" (Error #${ ++fail })`) } + } + NOTIFIED = false; - element.href = `#${ options.IMDbID || 'tt' }-${ options.TMDbID | 0 }-${ options.TVDbID | 0 }`; - button.classList.add('wtp--download'); - element.removeEventListener('click', element.ON_CLICK); - element.addEventListener('click', element.ON_DOWNLOAD = e => { - e.preventDefault(); + if(fail) + new Notification('error', `Failed to grab ${ fail } item${fail==1?'':'s'}`); + }; - sendUpdate('DOWNLOAD_FILE', { ...options, button, href, path }); - new Notification('update', 'Opening prompt (may take a while)...'); - }); + button.setAttribute('saved_options', btoa(JSON.stringify(saved_options))); + element.addEventListener('click', e => (AUTO_GRAB.ENABLED && AUTO_GRAB.LIMIT > options.length)? element.ON_CLICK(e): new Prompt('select', options, o => { button.setAttribute('saved_options', btoa(JSON.stringify(o))); element.ON_CLICK(e) })); - element.setAttribute(hov, `Download "${ nice_title }" | ${ty}`); - sendUpdate('SAVE_AS', { ...options, button, href, path }); - new Notification('update', `"${ nice_title }" can be downloaded`, 7000, e => element.click(e)); - return; + element.setAttribute(hov, `Grab ${len} new item${s}: ${ t }`); + button.classList.add(saved_options.length || len? 'wtp--download': 'wtp--error'); + } else { + /* Handle a single item */ + if(!options || !options.type || !options.title) return; - /* Default & Error */ - default: - let url = `#${ options.IMDbID || 'tt' }-${ options.TMDbID | 0 }-${ options.TVDbID | 0 }`; - - /* Failed */ - if(/#tt-0-0/i.test(url)) - return modifyPlexButton(button, 'notfound', title, options); - - element.href = url; - button.classList.add('wtp--download'); - element.addEventListener('click', element.ON_CLICK = e => { - e.preventDefault(); - if (config.usingOmbi) { - pushOmbiRequest(options); - } else if (config.usingWatcher && !tv.test(options.type)) { - pushWatcherRequest(options); - } else if (config.usingRadarr && !tv.test(options.type)) { - pushRadarrRequest(options); - } else if (config.usingSonarr && tv.test(options.type)) { - pushSonarrRequest(options); + let empty = (em.test(options.IMDbID) && em.test(options.TMDbID) && em.test(options.TVDbID)), + nice_title = `${options.title.toCaps()}${options.year? ` (${options.year})`: ''}`; + + if(options) { + ty = (options.type == 'movie'? 'Movie': 'TV Show'); + txt = options.txt || txt; + hov = options.hov || hov; + } + + if(action == 'found') { + element.href = getPlexMediaURL(config.server.id, options.key); + element.setAttribute(hov, `Watch "${options.title} (${options.year})" on Plex`); + button.classList.add('wtp--found'); + + new Notification('success', `Watch "${ nice_title }"`, 7000, e => element.click(e)); + } else if(action == 'downloader' || options.remote) { + + switch(options.remote) { + /* Vumoo */ + case 'oload': + let href = options.href, path = ''; + + if(config.usingOmbi) { + path = ''; + } else if(config.usingWatcher && !tv.test(options.type)) { + path = ''; + } else if(config.usingRadarr && !tv.test(options.type)) { + path = config.radarrStoragePath; + } else if(config.usingSonarr && tv.test(options.type)) { + path = config.sonarrStoragePath; + } else if(config.usingMedusa && tv.test(options.type)) { + path = config.medusaStoragePath; } else if(config.usingCouchPotato) { - $pushAddToCouchpotato(options); + path = ''; } - }); - } - NOTIFIED = false; - element.setAttribute(hov, `Add "${ nice_title }" | ${ty}`); - element.style.removeProperty('display'); - } else if (action == 'notfound' || action == 'error' || empty) { - element.removeAttribute('href'); + element.href = `#${ options.IMDbID || 'tt' }-${ options.TMDbID | 0 }-${ options.TVDbID | 0 }`; + button.classList.add('wtp--download'); + element.removeEventListener('click', element.ON_CLICK); + element.addEventListener('click', element.ON_DOWNLOAD = e => { + e.preventDefault(); - empty = !(options && options.title); + sendUpdate('DOWNLOAD_FILE', { ...options, button, href, path }); + new Notification('update', 'Opening prompt (may take a while)...'); + }); - if(empty) - element.setAttribute(hov, `${ty || 'Item'} not found`); - else - element.setAttribute(hov, `"${ nice_title }" was not found`); + element.setAttribute(hov, `Download "${ nice_title }" | ${ty}`); + sendUpdate('SAVE_AS', { ...options, button, href, path }); + new Notification('update', `"${ nice_title }" can be downloaded`, 7000, e => element.click(e)); + return; + + + /* Default & Error */ + default: + let url = `#${ options.IMDbID || 'tt' }-${ options.TMDbID | 0 }-${ options.TVDbID | 0 }`; + + /* Failed */ + if(/#tt-0-0/i.test(url)) + return modifyPlexButton(button, 'notfound', title, options); + + element.href = url; + button.classList.add('wtp--download'); + element.addEventListener('click', element.ON_CLICK = e => { + e.preventDefault(); + if(config.usingOmbi) { + pushOmbiRequest(options); + } else if(config.usingWatcher && !tv.test(options.type)) { + pushWatcherRequest(options); + } else if(config.usingRadarr && !tv.test(options.type)) { + pushRadarrRequest(options); + } else if(config.usingSonarr && tv.test(options.type)) { + pushSonarrRequest(options); + } else if(config.usingMedusa && tv.test(options.type)) { + pushMedusaRequest(options); + } else if(config.usingCouchPotato) { + $pushAddToCouchpotato(options); + } + }); + } + NOTIFIED = false; - button.classList.remove('wtp--found'); - button.classList.add('wtp--error'); - } + element.setAttribute(hov, `Add "${ nice_title }" | ${ty}`); + element.style.removeProperty('display'); + } else if(action == 'notfound' || action == 'error' || empty) { + element.removeAttribute('href'); + + empty = !(options && options.title); + + if(empty) + element.setAttribute(hov, `${ty || 'Item'} not found`); + else + element.setAttribute(hov, `"${ nice_title }" was not found`); - element.id = options? `${options.IMDbID || 'tt'}-${options.TMDbID | 0}-${options.TVDbID | 0}`: 'tt-0-0'; + button.classList.remove('wtp--found'); + button.classList.add('wtp--error'); + } + + element.id = options? `${options.IMDbID || 'tt'}-${options.TMDbID | 0}-${options.TVDbID | 0}`: 'tt-0-0'; + } } -} -async function squabblePlexMedia(options, button) { - if(!(options && options.length && button)) - return; + async function squabblePlexMedia(options, button) { + if(!(options && options.length && button)) + return; - let results = [], - length = options.length, - queries = (squabblePlexMedia.queries = squabblePlexMedia.queries || {}); + let results = [], + length = options.length, + queries = (squabblePlexMedia.queries = squabblePlexMedia.queries || {}); - squabblePlexMedia.OPTIONS = options; + squabblePlexMedia.OPTIONS = options; - let query = JSON.stringify(options); + let query = JSON.stringify(options); - query = (queries[query] = queries[query] || {}); + query = (queries[query] = queries[query] || {}); - if(query.running === true) - return; - else if(query.results) { - let { results, multiple, items } = query; + if(query.running === true) + return; + else if(query.results) { + let { results, multiple, items } = query; - new Notification('update', `Welcome back. ${ multiple } new ${ items } can be grabbed`, 7000, (event, target = button.querySelector('.list-action')) => target.click({ ...event, target })); + new Notification('update', `Welcome back. ${ multiple } new ${ items } can be grabbed`, 7000, (event, target = button.querySelector('.list-action')) => target.click({ ...event, target })); - if (multiple) - modifyPlexButton(button, 'multiple', `Download ${ multiple } ${ items }`, results); + if(multiple) + modifyPlexButton(button, 'multiple', `Download ${ multiple } ${ items }`, results); - return; - } + return; + } - query.running = true; + query.running = true; - new Notification('info', `Processing ${ length } item${ 's'[+(length === 1)] || '' }...`); + new Notification('info', `Processing ${ length } item${ 's'[+(length === 1)] || '' }...`); - for(let index = 0, option, opt; index < length; index++) { - let { IMDbID, TMDbID, TVDbID } = (option = await options[index]); + for(let index = 0, option, opt; index < length; index++) { + let { IMDbID, TMDbID, TVDbID } = (option = await options[index]); - opt = { name: option.title, title: option.title, year: option.year, image: options.image, type: option.type, imdb: IMDbID, IMDbID, tmdb: TMDbID, TMDbID, tvdb: TVDbID, TVDbID }; + opt = { name: option.title, title: option.title, year: option.year, image: options.image, type: option.type, imdb: IMDbID, IMDbID, tmdb: TMDbID, TMDbID, tvdb: TVDbID, TVDbID }; - try { - await getPlexMediaRequest(option) - .then(async({ found, key }) => { - if (found) { - // ignore found items, we only want new items - } else { - option.field = 'original_title'; + try { + await getPlexMediaRequest(option) + .then(async({ found, key }) => { + if(found) { + // ignore found items, we only want new items + } else { + option.field = 'original_title'; - return await getPlexMediaRequest(option) - .then(({ found, key }) => { - if (found) { - // ignore found items, we only want new items - } else { - let available = (config.usingOmbi || config.usingWatcher || config.usingRadarr || config.usingSonarr || config.usingCouchPotato), - action = (available ? 'downloader' : 'notfound'), - title = available ? - 'Not on Plex (download available)': - 'Not on Plex (download not available)'; + return await getPlexMediaRequest(option) + .then(({ found, key }) => { + if(found) { + // ignore found items, we only want new items + } else { + let available = (config.usingOmbi || config.usingWatcher || config.usingRadarr || config.usingSonarr || config.usingMedusa || config.usingCouchPotato), + action = (available ? 'downloader' : 'notfound'), + title = available ? + 'Not on Plex (download available)': + 'Not on Plex (download not available)'; - results.push({ ...opt, found: false, status: action }); - } - }); - } - }) - } catch(error) { - terminal.error('Request to Plex failed: ' + String(error)); - // new Notification('error', 'Failed to query item #' + (index + 1)); + results.push({ ...opt, found: false, status: action }); + } + }); + } + }) + } catch(error) { + terminal.error('Request to Plex failed: ' + String(error)); + // new Notification('error', 'Failed to query item #' + (index + 1)); + } } - } - results = results.filter(v => v.status == 'downloader'); + results = results.filter(v => v.status == 'downloader'); - let img = furnish('img', { title: 'Add to Plex It!', src: IMG_URL.plexit_icon_48, onmouseup: event => {let frame = document.querySelector('#plexit-bookmarklet-frame'); frame.src = frame.src.replace(/(#plexit:.*)?$/, '#plexit:' + event.target.parentElement.getAttribute('data'))} }), - po, pi = furnish('li#plexit.list-item', { data: btoa(JSON.stringify(results)) }, img), - op = document.querySelector('#wtp-plexit'); + let img = furnish('img', { title: 'Add to Plex It!', src: IMG_URL.plexit_icon_48, onmouseup: event => {let frame = document.querySelector('#plexit-bookmarklet-frame'); frame.src = frame.src.replace(/(#plexit:.*)?$/, '#plexit:' + event.target.parentElement.getAttribute('data'))} }), + po, pi = furnish('li#plexit.list-item', { data: btoa(JSON.stringify(results)) }, img), + op = document.querySelector('#wtp-plexit'); - if(po = button.querySelector('#plexit')) - po.remove(); - try { - button.querySelector('ul').insertBefore(pi, op); - } catch(e) { /* Don't do anything */ } + if(po = button.querySelector('#plexit')) + po.remove(); + try { + button.querySelector('ul').insertBefore(pi, op); + } catch(e) { /* Don't do anything */ } - let multiple = results.length, - items = multiple == 1? 'item': 'items'; + let multiple = results.length, + items = multiple == 1? 'item': 'items'; - new Notification('update', `Done. ${ multiple } new ${ items } can be grabbed`, 7000, (event, target = button.querySelector('.list-action')) => target.click({ ...event, target })); + new Notification('update', `Done. ${ multiple } new ${ items } can be grabbed`, 7000, (event, target = button.querySelector('.list-action')) => target.click({ ...event, target })); - query.running = false; - query.results = results; - query.multiple = multiple; - query.items = items; + query.running = false; + query.results = results; + query.multiple = multiple; + query.items = items; - if (multiple) - modifyPlexButton(button, 'multiple', `Download ${ multiple } ${ items }`, results); -} + if(multiple) + modifyPlexButton(button, 'multiple', `Download ${ multiple } ${ items }`, results); + } -function findPlexMedia(options) { - if(!(options && options.title)) - return; + function findPlexMedia(options) { + if(!(options && options.title)) + return; - let { IMDbID, TMDbID, TVDbID } = options; + let { IMDbID, TMDbID, TVDbID } = options; - TMDbID = +TMDbID; - TVDbID = +TVDbID; + TMDbID = +TMDbID; + TVDbID = +TVDbID; - let opt = { name: options.title, year: options.year, image: options.image || IMG_URL.nil, type: options.type, imdb: IMDbID, IMDbID, tmdb: TMDbID, TMDbID, tvdb: TVDbID, TVDbID }, - op = document.querySelector('#wtp-plexit'), - img = (options.image)? - furnish('div', { tooltip: 'Add to Plex It!', style: `background: url(${ IMG_URL.plexit_icon_16 }) top right/60% no-repeat, #0004 url(${ opt.image }) center/contain no-repeat; height: 48px; width: 34px;`, draggable: true, onmouseup: event => {let frame = document.querySelector('#plexit-bookmarklet-frame'); frame.src = frame.src.replace(/(#plexit:.*)?$/, '#plexit:' + event.target.parentElement.getAttribute('data'))} }): - furnish('img', { title: 'Add to Plex It!', src: IMG_URL.plexit_icon_48, onmouseup: event => {let frame = document.querySelector('#plexit-bookmarklet-frame'); frame.src = frame.src.replace(/(#plexit:.*)?$/, '#plexit:' + event.target.parentElement.getAttribute('data'))} }); + let opt = { name: options.title, year: options.year, image: options.image || IMG_URL.nil, type: options.type, imdb: IMDbID, IMDbID, tmdb: TMDbID, TMDbID, tvdb: TVDbID, TVDbID }, + op = document.querySelector('#wtp-plexit'), + img = (options.image)? + furnish('div', { tooltip: 'Add to Plex It!', style: `background: url(${ IMG_URL.plexit_icon_16 }) top right/60% no-repeat, #0004 url(${ opt.image }) center/contain no-repeat; height: 48px; width: 34px;`, draggable: true, onmouseup: event => {let frame = document.querySelector('#plexit-bookmarklet-frame'); frame.src = frame.src.replace(/(#plexit:.*)?$/, '#plexit:' + event.target.parentElement.getAttribute('data'))} }): + furnish('img', { title: 'Add to Plex It!', src: IMG_URL.plexit_icon_48, onmouseup: event => {let frame = document.querySelector('#plexit-bookmarklet-frame'); frame.src = frame.src.replace(/(#plexit:.*)?$/, '#plexit:' + event.target.parentElement.getAttribute('data'))} }); - findPlexMedia.OPTIONS = options; + findPlexMedia.OPTIONS = options; - try { - return getPlexMediaRequest(options) - .then(({ found, key }) => { - if (found) { - modifyPlexButton(options.button, 'found', 'On Plex', { ...options, key }); - opt = { ...opt, url: options.button.href, found: true, status: 'found' }; + try { + return getPlexMediaRequest(options) + .then(({ found, key }) => { + if(found) { + modifyPlexButton(options.button, 'found', 'On Plex', { ...options, key }); + opt = { ...opt, url: options.button.href, found: true, status: 'found' }; + + let po, pi = furnish('li#plexit.list-item', { data: btoa(JSON.stringify(opt)) }, img); + + if(po = options.button.querySelector('#plexit')) + po.remove(); + try { + options.button.querySelector('ul').insertBefore(pi, op); + } catch(e) { /* Don't do anything */ } + } else { + options.field = 'original_title'; - let po, pi = furnish('li#plexit.list-item', { data: btoa(JSON.stringify(opt)) }, img); + return getPlexMediaRequest(options) + .then(({ found, key }) => { + if(found) { + modifyPlexButton(options.button, 'found', 'On Plex', { ...options, key }); + opt = { ...opt, url: options.button.href, found: true, status: 'found' }; - if(po = options.button.querySelector('#plexit')) - po.remove(); - try { - options.button.querySelector('ul').insertBefore(pi, op); - } catch(e) { /* Don't do anything */ } - } else { - options.field = 'original_title'; + let po, pi = furnish('li#plexit.list-item', { data: btoa(JSON.stringify(opt)) }, img); - return getPlexMediaRequest(options) - .then(({ found, key }) => { - if (found) { - modifyPlexButton(options.button, 'found', 'On Plex', { ...options, key }); - opt = { ...opt, url: options.button.href, found: true, status: 'found' }; + if(po = options.button.querySelector('#plexit')) + po.remove(); + try { + options.button.querySelector('ul').insertBefore(pi, op); + } catch(e) { /* Don't do anything */ } + } else { + let available = (config.usingOmbi || config.usingWatcher || config.usingRadarr || config.usingSonarr || config.usingMedusa || config.usingCouchPotato), + action = (available ? 'downloader' : 'notfound'), + title = available ? + 'Not on Plex (download available)': + 'Not on Plex (download not available)'; - let po, pi = furnish('li#plexit.list-item', { data: btoa(JSON.stringify(opt)) }, img); + modifyPlexButton(options.button, action, title, options); + opt = { ...opt, found: false, status: action }; - if(po = options.button.querySelector('#plexit')) - po.remove(); - try { - options.button.querySelector('ul').insertBefore(pi, op); - } catch(e) { /* Don't do anything */ } - } else { - let available = (config.usingOmbi || config.usingWatcher || config.usingRadarr || config.usingSonarr || config.usingCouchPotato), - action = (available ? 'downloader' : 'notfound'), - title = available ? - 'Not on Plex (download available)': - 'Not on Plex (download not available)'; + let po, pi = furnish('li#plexit.list-item', { data: btoa(JSON.stringify(opt)) }, img); - modifyPlexButton(options.button, action, title, options); - opt = { ...opt, found: false, status: action }; + if(po = options.button.querySelector('#plexit')) + po.remove(); + if(!!~[].slice.call(options.button.querySelector('ul').children).indexOf(op)) + try { + options.button.querySelector('ul').insertBefore(pi, op); + } catch(e) { /* Don't do anything */ } + } + return found; + }); + } + return found; + }) + } catch(error) { + return modifyPlexButton( + options.button, + 'error', + 'Request to Plex Media Server failed', + options + ), + terminal.error(`Request to Plex failed: ${ String(error) }`), + false; + // new Notification('Failed to communicate with Plex'); + } + } - let po, pi = furnish('li#plexit.list-item', { data: btoa(JSON.stringify(opt)) }, img); + function getPlexMediaRequest(options) { + if(!(config.plexURL && config.plexToken) || config.DO_NOT_USE) + return new Promise((resolve, reject) => resolve({ found: false, key: null })); - if(po = options.button.querySelector('#plexit')) - po.remove(); - if(!!~[].slice.call(options.button.querySelector('ul').children).indexOf(op)) - try { - options.button.querySelector('ul').insertBefore(pi, op); - } catch(e) { /* Don't do anything */ } - } - return found; - }); - } - return found; - }) - } catch(error) { - return modifyPlexButton( - options.button, - 'error', - 'Request to Plex Media Server failed', - options - ), - terminal.error(`Request to Plex failed: ${ String(error) }`), - false; - // new Notification('Failed to communicate with Plex'); - } -} + return new Promise((resolve, reject) => { + chrome.runtime.sendMessage({ + type: 'SEARCH_PLEX', + options, + serverConfig: config.server + }, + response => + (response && response.error)? + reject(response.error): + (!response)? + reject(new Error('Unknown error')): + resolve(response) + ); + }); + } -function getPlexMediaRequest(options) { - if(!(config.plexURL && config.plexToken) || config.DO_NOT_USE) - return new Promise((resolve, reject) => resolve({ found: false, key: null })); + function getPlexMediaURL(PlexUIID, key) { + return config.plexURL.replace(RegExp(`\/(${ config.server.id })?$`), `/web#!/server/` + PlexUIID) + `/details?key=${encodeURIComponent( key )}`; + } - return new Promise((resolve, reject) => { - chrome.runtime.sendMessage({ - type: 'SEARCH_PLEX', - options, - serverConfig: config.server - }, - response => - (response && response.error)? - reject(response.error): - (!response)? - reject(new Error('Unknown error')): - resolve(response) - ); - }); -} + /* Listen for events */ + chrome.runtime.onMessage.addListener(async(request, sender) => { + terminal.log(`Listener event [${ request.instance_type }#${ request[request.instance_type.toLowerCase()] }]:`, request); -function getPlexMediaURL(PlexUIID, key) { - return config.plexURL.replace(RegExp(`\/(${ config.server.id })?$`), `/web#!/server/` + PlexUIID) + `/details?key=${encodeURIComponent( key )}`; -} + let data = request.data, + LOCATION = `${ request.name || 'anonymous' } @ instance ${ request.instance }`, + PARSING_ERROR = `Can't parse missing information. ${ LOCATION }`, + BUTTON_ERROR = `The button failed to render. ${ LOCATION }`, + EMPTY_REQUEST = `The given request is empty. ${ LOCATION }`; -/* Listen for events */ -chrome.runtime.onMessage.addListener(async(request, sender) => { - terminal.log(`Listener event [${ request.instance_type }#${ request[request.instance_type] }]:`, request); + if(!data) + return terminal.warn(EMPTY_REQUEST); + let button = renderPlexButton(); - let data = request.data, - LOCATION = `${ request.name || 'anonymous' } @ instance ${ request.instance }`, - PARSING_ERROR = `Can't parse missing information. ${ LOCATION }`, - BUTTON_ERROR = `The button failed to render. ${ LOCATION }`, - EMPTY_REQUEST = `The given request is empty. ${ LOCATION }`; + if(!button) + return terminal.warn(BUTTON_ERROR); - if(!data) - return terminal.warn(EMPTY_REQUEST); - let button = renderPlexButton(); + switch(request.type) { + case 'POPULATE': + + if(data instanceof Array) { + for(let index = 0, length = data.length, item; index < length; index++) + if(!(item = data[index]) || !item.type) + data.splice(index, 1, null); - if(!button) - return terminal.warn(BUTTON_ERROR); + data = data.filter(value => value !== null && value !== undefined); - switch(request.type) { - case 'POPULATE': + for(let index = 0, length = data.length, item; index < length; index++) { + let { image, type, title, year, IMDbID, TMDbID, TVDbID } = (item = data[index]); - if(data instanceof Array) { - for(let index = 0, length = data.length, item; index < length; index++) - if(!(item = data[index]) || !item.type) - data.splice(index, 1, null); + if(!item.title || !item.type) + continue; - data = data.filter(value => value !== null && value !== undefined); + let Db = await getIDs(item); - for(let index = 0, length = data.length, item; index < length; index++) { - let { image, type, title, year, IMDbID, TMDbID, TVDbID } = (item = data[index]); + IMDbID = IMDbID || Db.imdb || 'tt'; + TMDbID = TMDbID || Db.tmdb || 0; + TVDbID = TVDbID || Db.tvdb || 0; - if(!item.title || !item.type) - continue; + title = title || Db.title; + year = +(year || Db.year || 0); - let Db = await getIDs(item); + data.splice(index, 1, { type, title, year, image, button, IMDbID, TMDbID, TVDbID }); + } + + if(!data.length) + return terminal.error(PARSING_ERROR); + else + squabblePlexMedia(data, button); + } else { + if(!data || !data.title || !data.type) + return terminal.error(PARSING_ERROR); + + let { image, type, title, year, IMDbID, TMDbID, TVDbID } = data; + let Db = await getIDs(data); IMDbID = IMDbID || Db.imdb || 'tt'; TMDbID = TMDbID || Db.tmdb || 0; @@ -1738,91 +1982,104 @@ chrome.runtime.onMessage.addListener(async(request, sender) => { title = title || Db.title; year = +(year || Db.year || 0); - data.splice(index, 1, { type, title, year, image, button, IMDbID, TMDbID, TVDbID }); + let found = await findPlexMedia({ type, title, year, image, button, IMDbID, TMDbID, TVDbID }); + sendUpdate('FOUND', { ...request, found }, true); } + return true; - if(!data.length) - return terminal.error(PARSING_ERROR); - else - squabblePlexMedia(data, button); - } else { - if(!data || !data.title || !data.type) - return terminal.error(PARSING_ERROR); - - let { image, type, title, year, IMDbID, TMDbID, TVDbID } = data; - let Db = await getIDs(data); + default: + // terminal.warn(`Unknown event [${ request.type }]`); + return false; + } + }); - IMDbID = IMDbID || Db.imdb || 'tt'; - TMDbID = TMDbID || Db.tmdb || 0; - TVDbID = TVDbID || Db.tvdb || 0; + /* Listen for Window events - from iframes, etc. */ + top.addEventListener('message', request => { + try { + request = request.data; - title = title || Db.title; - year = +(year || Db.year || 0); + switch(request.type) { + case 'SEND_VIDEO_LINK': + let options = { ...findPlexMedia.OPTIONS, href: request.href, remote: request.from }; - let found = await findPlexMedia({ type, title, year, image, button, IMDbID, TMDbID, TVDbID }); - sendUpdate('FOUND', { ...request, found }); - } - return true; + terminal.log('oload Event:', options); - default: -// terminal.warn(`Unknown event [${ request.type }]`); - return false; - } -}); + modifyPlexButton(MASTER_BUTTON, 'downloader', 'Download', options); + return true; -/* Listen for Window events - from iframes, etc. */ -top.addEventListener('message', request => { - try { - request = request.data; + case 'NOTIFICATION': + let { state, text, timeout = 7000, callback = () => {}, requiresClick = true } = request.data; + new Notification(state, text, timeout, callback, requiresClick); + return true; - switch(request.type) { - case 'SEND_VIDEO_LINK': - let options = { ...findPlexMedia.OPTIONS, href: request.href, remote: request.from }; + default: + // terminal.warn(`Unknown event [${ request.type }]`); + return false; + } + } catch(error) { + new Notification('error', `Unable to use downloader: ${ String(error) }`); + throw error + } + }); - modifyPlexButton(options.button, 'downloader', 'Download', options); - return true; +})(new Date); - default: - // terminal.warn(`Unknown event [${ request.type }]`); - return false; - } - } catch(error) { - new Notification('error', `Unable to use downloader: ${ String(error) }`); - throw error - } -}); +/* Helpers */ function wait(on, then) { - if (on && on()) + if(on && ((on instanceof Function && on()) || true)) then && then(); else setTimeout(() => wait(on, then), 50); } // the custom "on location change" event -let locationchangecallbacks = []; - function watchlocationchange(subject) { + let locationchangecallbacks = watchlocationchange.locationchangecallbacks; + watchlocationchange[subject] = watchlocationchange[subject] || location[subject]; - if (watchlocationchange[subject] != location[subject]) { + if(watchlocationchange[subject] != location[subject]) { + let from = watchlocationchange[subject], + to = location[subject], + properties = { from, to }, + sign = code => (code + '').replace(/\s+/g, ''); + watchlocationchange[subject] = location[subject]; - for(let index = 0, length = locationchangecallbacks.length, callback; index < length; index++) { + for(let index = 0, length = locationchangecallbacks.length, callback, called; length > 0 && index < length; index++) { callback = locationchangecallbacks[index]; + called = locationchangecallbacks.called[sign(callback)]; + + let event = new Event('locationchange', { bubbles: true }); + + if(!called && callback && typeof callback == 'function') { + locationchangecallbacks.called[sign(callback)] = true; + window.addEventListener('beforeunload', event => { + event.preventDefault(false); + + callback({ event, ...properties }); + }); - if(callback && typeof callback == 'function') - callback(new Event('locationchange', { bubbles: true })); + callback({ event, ...properties }); + + open(to, '_self'); + } else { + return /* The eventlistener was already called */; + } } } } +watchlocationchange.locationchangecallbacks = watchlocationchange.locationchangecallbacks || []; +watchlocationchange.locationchangecallbacks.called = watchlocationchange.locationchangecallbacks.called || {}; if(!('onlocationchange' in window)) Object.defineProperty(window, 'onlocationchange', { - set: callback => locationchangecallbacks.push(callback) + set: callback => (typeof callback == 'function'? watchlocationchange.locationchangecallbacks.push(callback): null), + get: () => watchlocationchange.locationchangecallbacks }); -watchlocationchange.interval = watchlocationchange.interval || setInterval(() => watchlocationchange('href'), 1000); +watchlocationchange.onlocationchangeinterval = watchlocationchange.onlocationchangeinterval || setInterval(() => watchlocationchange('href'), 1); // at least 1s is needed to properly fire the event ._. String.prototype.toCaps = String.prototype.toCaps || function toCaps(all) { @@ -1835,7 +2092,8 @@ String.prototype.toCaps = String.prototype.toCaps || function toCaps(all) { titles = /(?!^|(?:an?|the)\s+)\b(a([st]|nd?|cross|fter|lthough)?|b(e(cause|fore|tween)?|ut|y)|during|from|in(to)?|[io][fn]|[fn]?or|the|[st]o|through|under|with(out)?|yet)(?!\s*$)\b/gi, cap_exceptions = /([\|\"\(]\s*[a-z]|[\:\.\!\?]\s+[a-z]|(?:^\b|[^\'\-\+]\b)[^aeiouy\d\W]+\b)/gi, // Punctuation exceptions, e.g. "And not I" all_exceptions = /\b((?:ww)?(?:m{1,4}(?:c?d(?:c{0,3}(?:x?l(?:x{0,3}(?:i?vi{0,3})?)?)?)?)?|c?d(?:c{0,3}(?:x?l(?:x{0,3}(?:i?vi{0,3})?)?)?)?|c{1,3}(?:x?l(?:x{0,3}(?:i?vi{0,3})?)?)?|x?l(?:x{0,3}(?:i?vi{0,3})?)?|x{1,3}(?:i?vi{0,3})?|i?vi{0,3}|i{1,3}))\b/gi, // Roman Numberals - cam_exceptions = /\b((?:mr?s|[sdjm]r|mx)|(?:adm|cm?dr?|chf|c[op][lmr]|cpt|gen|lt|mjr|sgt)|doc|hon|prof)(?:\.|\b)/gi; // Titles (Most Common?) + cam_exceptions = /\b((?:mr?s|[sdjm]r|mx)|(?:adm|cm?dr?|chf|c[op][lmr]|cpt|gen|lt|mjr|sgt)|doc|hon|prof)(?:\.|\b)/gi, // Titles (Most Common?) + low_exceptions = /'([\w]+)/gi; // Apostrphe cases array = array.split(/\s+/); @@ -1851,10 +2109,11 @@ String.prototype.toCaps = String.prototype.toCaps || function toCaps(all) { if(!all) string = string - .replace(titles, ($0, $1, $$, $_) => $1.toLowerCase()) - .replace(cap_exceptions, ($0, $1, $$, $_) => $1.toUpperCase()) - .replace(all_exceptions, ($0, $1, $$, $_) => $1.toUpperCase()) - .replace(cam_exceptions, ($0, $1, $$, $_) => $1[0].toUpperCase() + $1.slice(1, $1.length).toLowerCase() + '.'); + .replace(titles, ($0, $1, $$, $_) => $1.toLowerCase()) + .replace(all_exceptions, ($0, $1, $$, $_) => $1.toUpperCase()) + .replace(cap_exceptions, ($0, $1, $$, $_) => $1.toUpperCase()) + .replace(low_exceptions, ($0, $1, $$, $_) => $0.toLowerCase()) + .replace(cam_exceptions, ($0, $1, $$, $_) => $1[0].toUpperCase() + $1.slice(1, $1.length).toLowerCase() + '.'); return string; }; @@ -1995,7 +2254,7 @@ String.prototype.toCaps = String.prototype.toCaps || function toCaps(all) { else if(t == '.') attributes.classList = [].slice.call(attributes.classList || []).concat(v); else if(/\[(.+)\]/.test(n[i])) - R.$1.split('][').forEach(N => attributes[(N = N.split('=', 2))[0]] = N[1] || ''); + R.$1.split('][').forEach(N => attributes[(N = N.replace(/\s*=\s*(?:("?)([^]*)\1)?/, '=$2').split('=', 2))[0]] = N[1] || ''); name = name[0]; let element = document.createElement(name, options); @@ -2005,6 +2264,20 @@ String.prototype.toCaps = String.prototype.toCaps || function toCaps(all) { Object.entries(attributes).forEach( ([name, value]) => (/^(on|(?:(?:inner|outer)(?:HTML|Text)|textContent|class(?:List|Name)|value)$)/.test(name))? + (typeof value == 'string' && /^on/.test(name))? + (() => { + try { + /* Can't make a new function(eval) */ + element[name] = new Function('', value); + } catch (__error) { + try { + /* Not a Chrome (extension) state */ + chrome.tabs.getCurrent(tab => chrome.tabs.executeScript(tab.id, { code: `document.furnish.__cache__ = () => {${ value }}` }, __cache__ => element[name] = __cache__[0] || parent.furnish.__cache__ || value)); + } catch (_error) { + throw __error, _error; + } + } + })(): element[name] = value: element.setAttribute(name, value) );

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