From e72e111100912ff1aa897d8e53b24caf27b86ef0 Mon Sep 17 00:00:00 2001 From: ThaUnknown Date: Mon, 9 Nov 2020 15:41:45 +0100 Subject: [PATCH] regex parsing futureproofing --- app/js/animeHandler.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/js/animeHandler.js b/app/js/animeHandler.js index 3642e3f..611f968 100644 --- a/app/js/animeHandler.js +++ b/app/js/animeHandler.js @@ -419,8 +419,8 @@ async function nyaaRss(media, episode) { const nameParseRegex = { - "https://subsplease.org/rss/?r=": /(\[.[^\]]*\]\ ?)?(.+?(?=\ \-\ \d))?(\ \-\ )?(\d+)?(.*)?/i, - "https://miru.kirdow.com/request/?url=https://www.erai-raws.info/rss-": /(\[.*\]\ ?)?(.+?(?=\ \–\ \d))?(\ \–\ )?(\d+)?/i, + "SubsPlease": /(\[.[^\]]*\]\ ?)?(.+?(?=\ \-\ \d))?(\ \-\ )?(\d+)?(.*)?/i, + "Erai-raws": /(\[.*\]\ ?)?(.+?(?=\ \–\ \d))?(\ \–\ )?(\d+)?/i, fallback: /((?:\[[^\]]*\])*)?\s*((?:[^\d\[\.](?!S\d))*)?\s*((?:S\d+[^\w\[]*E?)?[\d\-]*)\s*(.*)?/i } let store = JSON.parse(localStorage.getItem("store")) || {}, @@ -429,7 +429,7 @@ let store = JSON.parse(localStorage.getItem("store")) || {}, async function releasesRss() { let frag = document.createDocumentFragment(), releases = document.querySelector(".releases"), - url = settings.torrent4 == "https://miru.kirdow.com/request/?url=https://www.erai-raws.info/rss-" ? settings.torrent4 + settings.torrent1 + "-magnet" : settings.torrent4 + settings.torrent1 + url = torrent4.options[torrent4.selectedIndex].text == "Erai-raws" ? settings.torrent4 + settings.torrent1 + "-magnet" : settings.torrent4 + settings.torrent1 res = await fetch(url) await res.text().then(async (xmlTxt) => { try { @@ -441,7 +441,7 @@ async function releasesRss() { let items = doc.querySelectorAll("item") for (let item of items) { let i = item.querySelector.bind(item), - regexParse = (nameParseRegex[settings.torrent4] || nameParseRegex.parse).exec(i("title").textContent) + regexParse = (nameParseRegex[torrent4.options[torrent4.selectedIndex].text] || nameParseRegex.fallback).exec(i("title").textContent) if (!store.hasOwnProperty(regexParse[2]) && !alResponse.data.Page.media.some(media => (Object.values(media.title).concat(media.synonyms).filter(name => name != null).includes(regexParse[2]) && ((store[regexParse[2]] = media) && true)))) { //shit not found, lookup let res = await alRequest(regexParse[2], 1)