feat(indexers): add support for optional baseurl override (#551)

* feat(indexers): optional baseurl override

* feat(indexers): update baseUrl parsing

* refactor(indexers): BREAKING move parse to IRC struct

* Move Parse as part of IRC struct from Indexer
* Updated definitions
* Build torrentUrl in stages
* Use new url.JoinPath to build torrentUrl
* Update tests

* refactor(indexers): select option obj

* refactor(indexers): make backwards compatible
This commit is contained in:
ze0s 2022-12-03 15:40:45 +01:00 committed by GitHub
parent 301180e55b
commit 25a165b764
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
66 changed files with 1533 additions and 1211 deletions

View file

@ -5,7 +5,7 @@ identifier: polishsource
description: PolishSource (PS) is a POLISH private torrent tracker for 0DAY / GENERAL.
language: en-us
urls:
- https://polishsource.cz
- https://polishsource.cz/
privacy: private
protocol: torrent
supports:
@ -54,22 +54,22 @@ irc:
label: Invite command
help: Invite auth with PS-Info. Replace IRCKEY with your IRC key.
parse:
type: single
lines:
- test:
- "Some.Show.S09E01.HDTV.x264-GROUP > TV/SD > 359.285 MB / 2 F > [ http://polishsource.cz/details.php?id=000000 ]-[ 5h 25min 15sec after pre ]"
- "Some.Movie.2011.DVDRip.x264-GROUP2 > Movies/x264 (Documentary) > 563.296 MB / 2 F > [ http://polishsource.cz/details.php?id=000000 ]-[ 2min 48sec after pre ]"
pattern: '(.*) > (.*) > (.*) \/.*>\s*\[ (https?\:\/\/.+\/).*[&?]id=(\d+)\s\](?:-\[ (.*) \])?'
vars:
- torrentName
- category
- torrentSize
- baseUrl
- torrentId
- preTime
parse:
type: single
lines:
- test:
- "Some.Show.S09E01.HDTV.x264-GROUP > TV/SD > 359.285 MB / 2 F > [ http://polishsource.cz/details.php?id=000000 ]-[ 5h 25min 15sec after pre ]"
- "Some.Movie.2011.DVDRip.x264-GROUP2 > Movies/x264 (Documentary) > 563.296 MB / 2 F > [ http://polishsource.cz/details.php?id=000000 ]-[ 2min 48sec after pre ]"
pattern: '(.*)\s>\s(.*)\s>\s(.*) \/.*>\s*\[ https?\:\/\/([^\/]+)\/.*[&?]id=(\d+)\s\](?:-\[ (.*) \])?'
vars:
match:
torrenturl: "/downloadssl.php?id={{ .torrentId }}&torr={{ .torrentName }}.torrent&passkey={{ .passkey }}"
encode:
- torrentName
- category
- torrentSize
- baseUrl
- torrentId
match:
torrenturl: "https://{{ .baseUrl }}/downloadssl.php?id={{ .torrentId }}&torr={{ .torrentName }}.torrent&passkey={{ .passkey }}"
encode:
- torrentName