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

@ -7,6 +7,15 @@ language: en-us
urls:
- https://iptorrents.com/
- https://iptorrents.me/
- https://nemo.iptorrents.com/
- https://ipt.getcrazy.me/
- https://ipt.findnemo.net/
- https://ipt.beelyrics.net/
- https://ipt.venom.global/
- https://ipt.workisboring.net/
- https://ipt.lol/
- https://ipt.cool/
- https://ipt.world/
privacy: private
protocol: torrent
supports:
@ -49,22 +58,22 @@ irc:
label: NickServ Password
help: NickServ password
parse:
type: single
lines:
- test:
- "[Movies/XviD] The Movie 2010 DVDRip XviD-GROUP FREELEECH - http://www.iptorrents.com/details.php?id=000000 - 716.219 MB"
- "[Movies/XviD] The Movie 2010 DVDRip XviD-GROUP - http://www.iptorrents.com/details.php?id=000000 - 716.219 MB"
pattern: '^\[([^\]]*)] (.*?)\s*(FREELEECH)*\s*-\s+(https?\:\/\/[^\/]+).*[&\?]id=(\d+)\s*- (.*)'
vars:
- category
- torrentName
- freeleech
- baseUrl
- torrentId
- torrentSize
parse:
type: single
lines:
- test:
- "[Movies/XviD] The Movie 2010 DVDRip XviD-GROUP FREELEECH - http://www.iptorrents.com/details.php?id=000000 - 716.219 MB"
- "[Movies/XviD] The Movie 2010 DVDRip XviD-GROUP - http://www.iptorrents.com/details.php?id=000000 - 716.219 MB"
pattern: '\[(.+)] (.*?)\s*(FREELEECH)* - (https?\:\/\/.+\/).+id=(\d+) - (.*)'
vars:
- category
- torrentName
- freeleech
- baseUrl
- torrentId
- torrentSize
match:
torrenturl: "{{ .baseUrl }}/download.php/{{ .torrentId }}/{{ .torrentName }}.torrent?torrent_pass={{ .passkey }}"
encode:
- torrentName
match:
torrenturl: "/download.php/{{ .torrentId }}/{{ .torrentName }}.torrent?torrent_pass={{ .passkey }}"
encode:
- torrentName