diff --git a/src/NzbDrone.Core.Test/Files/Indexers/Waffles/waffles.xml b/src/NzbDrone.Core.Test/Files/Indexers/Waffles/waffles.xml
new file mode 100644
index 000000000..7c5025f7b
--- /dev/null
+++ b/src/NzbDrone.Core.Test/Files/Indexers/Waffles/waffles.xml
@@ -0,0 +1,586 @@
+
+
+
+ Waffles
+ https://waffles.ch
+ To make the links go to the details page, add &i to the end of the URL.
+ en-usde
+ Copyright 2009 Waffles
+ waffles@waffles.ch
+
+ artist:coldplay
+ https://waffles.ch/favicon.ico
+ https://waffles.ch/browse.php?c0=1&q=artist%3Acoldplay&limit=50
+ 16
+ 16
+ artist:coldplay
+
+ -
+ Coldplay - Kaleidoscope EP (FLAC HD) [2017-Web-FLAC-Lossless]
+
+ <table id="waffles-rss-t1166992" class="rsstable" border=0 cellspacing=0 cellpadding=10><tr><td>Link: <a href="https://waffles.ch/details.php?id=1166992&hit=1">Description/Comments Page</a><br/>
+ Genre: Alternative<br/>
+ Year: 2017<br/>
+ Size: 552668227<br/>
+ </td><td>Link: <a href="https://waffles.ch/download.php/xxx/1166992/Coldplay%20-%20Kaleidoscope%20EP%20%28FLAC%20HD%29%20%5B2017-Web-FLAC-Lossless%5D.torrent?passkey=123456789&uid=xxx&rss=1">Download Torrent</a><br/>
+ Seeders: 11<br/>
+ Leechers: 0<br/>
+ Format: FLAC<br/>
+ </td><td>Link: <a href="https://waffles.ch/userdetails.php?id=0">*Anonymous*</a> (Uploader)<br/>
+ Comments: 0<br/>
+ Files: 6<br/>
+ Bitrate: Lossless<br/>
+ </tr></td></table><br/>
+ Coldplay – Kaleidoscope EP (FLAC HD)<br />
+ <br />
+ Year: 2017/07/13<br />
+ Genre: Alternative<br />
+ (24bit/96kHz)<br />
+ <br />
+ Tracklist<br />
+ 1. Coldplay – All I Can Think About Is You (04:34)<br />
+ 2. Coldplay & Big Sean – Miracles (Someone Special) (04:36)<br />
+ 3. Coldplay – A L I E N S (04:42)<br />
+ 4. Coldplay & The Chainsmokers – Something Just Like This (Tokyo Remix) (04:33)<br />
+ 5. Coldplay – Hypnotised (EP Mix) (06:31)
+
+ https://waffles.ch/download.php/xxx/1166992/Coldplay%20-%20Kaleidoscope%20EP%20%28FLAC%20HD%29%20%5B2017-Web-FLAC-Lossless%5D.torrent?passkey=123456789&uid=xxx&rss=1
+ https://waffles.ch/details.php?id=1166992&hit=1
+ Alternative
+ 2017-07-16T09:51:54Z
+ 1166992-9d438d94dc7fc934b801439f4c05458b
+
+ -
+ Coldplay - Kaleidoscope EP [2017-Web-MP3-320]
+
+ <table id="waffles-rss-t1166785" class="rsstable" border=0 cellspacing=0 cellpadding=10><tr><td>Link: <a href="https://waffles.ch/details.php?id=1166785&hit=1">Description/Comments Page</a><br/>
+ Genre: Alternative<br/>
+ Year: 2017<br/>
+ Size: 69580307<br/>
+ </td><td>Link: <a href="https://waffles.ch/download.php/xxx/1166785/Coldplay%20-%20Kaleidoscope%20EP%20%5B2017-Web-MP3-320%5D.torrent?passkey=123456789&uid=xxx&rss=1">Download Torrent</a><br/>
+ Seeders: 11<br/>
+ Leechers: 0<br/>
+ Format: MP3<br/>
+ </td><td>Link: <a href="https://waffles.ch/userdetails.php?id=230211">idenline</a> (Uploader)<br/>
+ Comments: 0<br/>
+ Files: 6<br/>
+ Bitrate: 320<br/>
+ </tr></td></table><br/>
+ <img src="https://i.imgur.com/FMJLwf4.jpg" style="max-width:640px;max-height:480px;" /><br />
+ <br />
+ <span style="font-size:large"><b>Coldplay – Kaleidoscope EP</b></span><br />
+ <b>Year:</b> 2017-07-13<br />
+ <b>Genre:</b> <a href="https://anon.click/https://www.waffles.fm/tags.php?tag=alternative" target="_blank">Alternative</a><br />
+ <br />
+ <span style="font-size:medium"><b>Tracklist</b></span><br />
+ 1. Coldplay – All I Can Think About Is You (04:34)<br />
+ 2. Coldplay & Big Sean – Miracles (Someone Special) (04:36)<br />
+ 3. Coldplay – A L I E N S (04:42)<br />
+ 4. Coldplay & The Chainsmokers – Something Just Like This (Tokyo Remix) (04:33)<br />
+ 5. Coldplay – Hypnotised (EP Mix) (06:31)<br />
+ <br />
+ <b>Total length:</b> 24:56<br />
+ <br />
+ More information: <a href="https://anon.click/https://itunes.apple.com/us/album/kaleidoscope-ep/id1248904974?uo=4" target="_blank">https://itunes.apple.com/us/album/kaleidoscope-ep/id1248904974?uo=4</a>
+
+ https://waffles.ch/download.php/xxx/1166785/Coldplay%20-%20Kaleidoscope%20EP%20%5B2017-Web-MP3-320%5D.torrent?passkey=123456789&uid=xxx&rss=1
+ https://waffles.ch/details.php?id=1166785&hit=1
+ Alternative
+ 2017-07-14T20:30:17Z
+ 1166785-bb582163c070d5e2bd297b8d72308f7d
+
+ -
+ Coldplay - Kaleidoscope EP [2017-Web-FLAC-Lossless]
+
+ <table id="waffles-rss-t1166784" class="rsstable" border=0 cellspacing=0 cellpadding=10><tr><td>Link: <a href="https://waffles.ch/details.php?id=1166784&hit=1">Description/Comments Page</a><br/>
+ Genre: Alternative<br/>
+ Year: 2017<br/>
+ Size: 176342030<br/>
+ </td><td>Link: <a href="https://waffles.ch/download.php/xxx/1166784/Coldplay%20-%20Kaleidoscope%20EP%20%5B2017-Web-FLAC-Lossless%5D.torrent?passkey=123456789&uid=xxx&rss=1">Download Torrent</a><br/>
+ Seeders: 43<br/>
+ Leechers: 0<br/>
+ Format: FLAC<br/>
+ </td><td>Link: <a href="https://waffles.ch/userdetails.php?id=230211">idenline</a> (Uploader)<br/>
+ Comments: 1<br/>
+ Files: 6<br/>
+ Bitrate: Lossless<br/>
+ </tr></td></table><br/>
+ <img src="https://i.imgur.com/FMJLwf4.jpg" style="max-width:640px;max-height:480px;" /><br />
+ <br />
+ <span style="font-size:large"><b>Coldplay – Kaleidoscope EP</b></span><br />
+ <b>Year:</b> 2017-07-13<br />
+ <b>Genre:</b> <a href="https://anon.click/https://www.waffles.fm/tags.php?tag=alternative" target="_blank">Alternative</a><br />
+ <br />
+ <span style="font-size:medium"><b>Tracklist</b></span><br />
+ 1. Coldplay – All I Can Think About Is You (04:34)<br />
+ 2. Coldplay & Big Sean – Miracles (Someone Special) (04:36)<br />
+ 3. Coldplay – A L I E N S (04:42)<br />
+ 4. Coldplay & The Chainsmokers – Something Just Like This (Tokyo Remix) (04:33)<br />
+ 5. Coldplay – Hypnotised (EP Mix) (06:31)<br />
+ <br />
+ <b>Total length:</b> 24:56
+
+ https://waffles.ch/download.php/xxx/1166784/Coldplay%20-%20Kaleidoscope%20EP%20%5B2017-Web-FLAC-Lossless%5D.torrent?passkey=123456789&uid=xxx&rss=1
+ https://waffles.ch/details.php?id=1166784&hit=1
+ Alternative
+ 2017-07-14T20:28:38Z
+ 1166784-344a753385ac46905e90b03bc674a3f6
+
+ -
+ Coldplay - Kaleidoscope EP [2017-Web-MP3-V0(VBR)]
+
+ <table id="waffles-rss-t1166765" class="rsstable" border=0 cellspacing=0 cellpadding=10><tr><td>Link: <a href="https://waffles.ch/details.php?id=1166765&hit=1">Description/Comments Page</a><br/>
+ Genre: Rock<br/>
+ Year: 2017<br/>
+ Size: 51228307<br/>
+ </td><td>Link: <a href="https://waffles.ch/download.php/xxx/1166765/Coldplay%20-%20Kaleidoscope%20EP%20%5B2017-Web-MP3-V0%28VBR%29%5D.torrent?passkey=123456789&uid=xxx&rss=1">Download Torrent</a><br/>
+ Seeders: 17<br/>
+ Leechers: 0<br/>
+ Format: MP3<br/>
+ </td><td>Link: <a href="https://waffles.ch/userdetails.php?id=0">*Anonymous*</a> (Uploader)<br/>
+ Comments: 0<br/>
+ Files: 6<br/>
+ Bitrate: V0<br/>
+ </tr></td></table><br/>
+ From Redacted<br />
+ 2017 - Parlophone / WEB<br />
+ <br />
+ <img src="https://i.imgur.com/FMJLwf4.jpg" style="max-width:640px;max-height:480px;" /><br />
+ <br />
+ <span style="font-size:large"><b>Tracklist</b></span><br />
+ <b>1.</b> Coldplay – All I Can Think About Is You <i>(04:34)</i><br />
+ <b>2.</b> Coldplay & Big Sean – Miracles (Someone Special) <i>(04:36)</i><br />
+ <b>3.</b> Coldplay – A L I E N S <i>(04:42)</i><br />
+ <b>4.</b> Coldplay & The Chainsmokers – Something Just Like This (Tokyo Remix) <i>(04:33)</i><br />
+ <b>5.</b> Coldplay – Hypnotised (EP Mix) <i>(06:31)</i><br />
+ <br />
+ <b>Total length:</b> 24:56<br />
+ <br />
+ More information: <a href="https://anon.click/https://itunes.apple.com/us/album/kaleidoscope-ep/id1248904974?uo=4" target="_blank">https://itunes.apple.com/us/album/kaleidoscope-ep/id1248904974?uo=4</a>
+
+ https://waffles.ch/download.php/xxx/1166765/Coldplay%20-%20Kaleidoscope%20EP%20%5B2017-Web-MP3-V0%28VBR%29%5D.torrent?passkey=123456789&uid=xxx&rss=1
+ https://waffles.ch/details.php?id=1166765&hit=1
+ Rock
+ 2017-07-14T16:24:28Z
+ 1166765-6e93009d6a6d1689133a292bfc6c79ce
+
+ -
+ Coldplay - All I Can Think About Is You [Single] [2017-Web-MP3-320] (Scene)
+
+ <table id="waffles-rss-t1163589" class="rsstable" border=0 cellspacing=0 cellpadding=10><tr><td>Link: <a href="https://waffles.ch/details.php?id=1163589&hit=1">Description/Comments Page</a><br/>
+ Genre: Alternative<br/>
+ Year: 2017<br/>
+ Size: 11407841<br/>
+ </td><td>Link: <a href="https://waffles.ch/download.php/xxx/1163589/Coldplay%20-%20All%20I%20Can%20Think%20About%20Is%20You%20%5BSingle%5D%20%5B2017-Web-MP3-320%5D%20%28Scene%29.torrent?passkey=123456789&uid=xxx&rss=1">Download Torrent</a><br/>
+ Seeders: 2<br/>
+ Leechers: 0<br/>
+ Format: MP3<br/>
+ </td><td>Link: <a href="https://waffles.ch/userdetails.php?id=230211">idenline</a> (Uploader)<br/>
+ Comments: 0<br/>
+ Files: 5<br/>
+ Bitrate: 320<br/>
+ </tr></td></table><br/>
+ <img src="https://lut.im/dOcMCtGdnH/RF3xaArHwxC67lZq.jpg" style="max-width:640px;max-height:480px;" /><br />
+ <br />
+ <span style="font-size:small"><b>Coldplay – All I Can Think About Is You</b></span><br />
+ <br />
+ <span style="font-size:large"><b>Tracklist</b></span><br />
+ <br />
+ <b>1.</b>Coldplay – All I Can Think About Is You <i>(04:34)</i><br />
+ <br />
+ <b>Total length:</b> 04:34<br />
+ <br />
+ From the forthcoming EP Kaleidoscope
+
+ https://waffles.ch/download.php/xxx/1163589/Coldplay%20-%20All%20I%20Can%20Think%20About%20Is%20You%20%5BSingle%5D%20%5B2017-Web-MP3-320%5D%20%28Scene%29.torrent?passkey=123456789&uid=xxx&rss=1
+ https://waffles.ch/details.php?id=1163589&hit=1
+ Alternative
+ 2017-06-18T20:13:26Z
+ 1163589-590295b689e5e9bfd193bedd5a2108cc
+
+ -
+ Coldplay - Parachutes [24bit-192kHz] [2000-Web-FLAC-Lossless]
+
+ <table id="waffles-rss-t1159282" class="rsstable" border=0 cellspacing=0 cellpadding=10><tr><td>Link: <a href="https://waffles.ch/details.php?id=1159282&hit=1">Description/Comments Page</a><br/>
+ Genre: Alternative<br/>
+ Year: 2000<br/>
+ Size: 1789688738<br/>
+ </td><td>Link: <a href="https://waffles.ch/download.php/xxx/1159282/Coldplay%20-%20Parachutes%20%5B24bit-192kHz%5D%20%5B2000-Web-FLAC-Lossless%5D.torrent?passkey=123456789&uid=xxx&rss=1">Download Torrent</a><br/>
+ Seeders: 3<br/>
+ Leechers: 1<br/>
+ Format: FLAC<br/>
+ </td><td>Link: <a href="https://waffles.ch/userdetails.php?id=236337">calabasas</a> (Uploader)<br/>
+ Comments: 0<br/>
+ Files: 11<br/>
+ Bitrate: Lossless<br/>
+ </tr></td></table><br/>
+ Purchased from HDTracks - <a href="https://anon.click/http://www.hdtracks.com/parachutes-315927?format=FLAC" target="_blank">http://www.hdtracks.com/parachutes-315927?format=FLAC</a><br />
+ <br />
+ <img src="http://imgur.com/lPFxYfS.jpg" style="max-width:640px;max-height:480px;" /><br />
+ <br />
+ <b><span style="font-size:large">Coldplay - Parachutes</span></b><br />
+ <br />
+ <b>Label/Cat#:</b> Parlophone<br />
+ <b>Country:</b> UK<br />
+ <b>Year:</b> 2000<br />
+ <b>Genre:</b> Alternative Rock, Britpop<br />
+ <b>Format:</b> WEB, Album<br />
+ <br />
+ <b>Tracklist</b><br />
+ <br />
+ <b>1.</b> Don't Panic <i>(02:17)</i><br />
+ <b>2.</b> Shiver <i>(04:59)</i><br />
+ <b>3.</b> Spies <i>(05:18)</i><br />
+ <b>4.</b> Sparks <i>(03:47)</i><br />
+ <b>5.</b> Yellow <i>(04:29)</i><br />
+ <b>6.</b> Trouble <i>(04:31)</i><br />
+ <b>7.</b> Parachutes <i>(00:46)</i><br />
+ <b>8.</b> High Speed <i>(04:14)</i><br />
+ <b>9.</b> We Never Change <i>(04:09)</i><br />
+ <b>10.</b> Everything's Not Lost / Life is for Living (Hidden Track) <i>(07:15)</i><br />
+ <br />
+ <b>Total length</b>: 41:47
+
+ https://waffles.ch/download.php/xxx/1159282/Coldplay%20-%20Parachutes%20%5B24bit-192kHz%5D%20%5B2000-Web-FLAC-Lossless%5D.torrent?passkey=123456789&uid=xxx&rss=1
+ https://waffles.ch/details.php?id=1159282&hit=1
+ Alternative
+ 2017-05-18T22:18:16Z
+ 1159282-015073d67c0b4e7ac2a00e95d98603bb
+
+ -
+ Coldplay - A Head Full of Dreams (Japanese Tour Edition) [2017-FLAC-Lossless-Log]
+
+ <table id="waffles-rss-t1154242" class="rsstable" border=0 cellspacing=0 cellpadding=10><tr><td>Link: <a href="https://waffles.ch/details.php?id=1154242&hit=1">Description/Comments Page</a><br/>
+ Genre: Rock<br/>
+ Year: 2017<br/>
+ Size: 595533199<br/>
+ </td><td>Link: <a href="https://waffles.ch/download.php/xxx/1154242/Coldplay%20-%20A%20Head%20Full%20of%20Dreams%20%28Japanese%20Tour%20Edition%29%20%5B2017-FLAC-Lossless-Log%5D.torrent?passkey=123456789&uid=xxx&rss=1">Download Torrent</a><br/>
+ Seeders: 12<br/>
+ Leechers: 0<br/>
+ Format: FLAC<br/>
+ </td><td>Link: <a href="https://waffles.ch/userdetails.php?id=6301">heirloom</a> (Uploader)<br/>
+ Comments: 0<br/>
+ Files: 25<br/>
+ Bitrate: Lossless<br/>
+ </tr></td></table><br/>
+ <b>Japan Tour Edition:</b><br />
+ CD1<br />
+ 01 A Head Full of Dreams<br />
+ 02 Birds<br />
+ 03 Hymn for the Weekend<br />
+ 04 Everglow<br />
+ 05 Adventure of a Lifetime<br />
+ 06 Fun<br />
+ 07 Kaleidoscope<br />
+ 08 Army of One / X Marks the Spot<br />
+ 09 Amazing Day<br />
+ 10 Colour Spectrum<br />
+ 11 Up&Up<br />
+ 12 Miracles<br />
+ CD2<br />
+ 01 Adventure of a Lifetime (Matoma Remix)<br />
+ 02 Hymn for the Weekend (SeeB Remix)<br />
+ 03 Up&Up (Freedo Remix)<br />
+ 04 Magic (Live at Tokyo Dome City Hall, Tokyo)<br />
+ 05 Clocks (Live at Tokyo Dome City Hall, Tokyo)<br />
+ 06 Viva la Vida (Live at Tokyo Dome City Hall, Tokyo)<br />
+ 07 Oceans (Live at Tokyo Dome City Hall, Tokyo)<br />
+ 08 A Sky Full of Stars (Live at Tokyo Dome City Hall, Tokyo)
+
+ https://waffles.ch/download.php/xxx/1154242/Coldplay%20-%20A%20Head%20Full%20of%20Dreams%20%28Japanese%20Tour%20Edition%29%20%5B2017-FLAC-Lossless-Log%5D.torrent?passkey=123456789&uid=xxx&rss=1
+ https://waffles.ch/details.php?id=1154242&hit=1
+ Rock
+ 2017-04-15T12:52:32Z
+ 1154242-56d56f2d649a9bd6a61b25d10f92d8b2
+
+ -
+ Coldplay - A Head Full of Dreams (Japanese Tour Edition) [2017-CD-MP3-320-Log]
+
+ <table id="waffles-rss-t1154063" class="rsstable" border=0 cellspacing=0 cellpadding=10><tr><td>Link: <a href="https://waffles.ch/details.php?id=1154063&hit=1">Description/Comments Page</a><br/>
+ Genre: Rock<br/>
+ Year: 2017<br/>
+ Size: 213357581<br/>
+ </td><td>Link: <a href="https://waffles.ch/download.php/xxx/1154063/Coldplay%20-%20A%20Head%20Full%20of%20Dreams%20%28Japanese%20Tour%20Edition%29%20%5B2017-CD-MP3-320-Log%5D.torrent?passkey=123456789&uid=xxx&rss=1">Download Torrent</a><br/>
+ Seeders: 4<br/>
+ Leechers: 0<br/>
+ Format: MP3<br/>
+ </td><td>Link: <a href="https://waffles.ch/userdetails.php?id=6301">heirloom</a> (Uploader)<br/>
+ Comments: 0<br/>
+ Files: 25<br/>
+ Bitrate: 320<br/>
+ </tr></td></table><br/>
+ <b>Japan Tour Edition:</b><br />
+ CD1<br />
+ 01 A Head Full of Dreams<br />
+ 02 Birds<br />
+ 03 Hymn for the Weekend<br />
+ 04 Everglow<br />
+ 05 Adventure of a Lifetime<br />
+ 06 Fun<br />
+ 07 Kaleidoscope<br />
+ 08 Army of One / X Marks the Spot<br />
+ 09 Amazing Day<br />
+ 10 Colour Spectrum<br />
+ 11 Up&Up<br />
+ 12 Miracles<br />
+ CD2<br />
+ 01 Adventure of a Lifetime (Matoma Remix)<br />
+ 02 Hymn for the Weekend (SeeB Remix)<br />
+ 03 Up&Up (Freedo Remix)<br />
+ 04 Magic (Live at Tokyo Dome City Hall, Tokyo)<br />
+ 05 Clocks (Live at Tokyo Dome City Hall, Tokyo)<br />
+ 06 Viva la Vida (Live at Tokyo Dome City Hall, Tokyo)<br />
+ 07 Oceans (Live at Tokyo Dome City Hall, Tokyo)<br />
+ 08 A Sky Full of Stars (Live at Tokyo Dome City Hall, Tokyo)
+
+ https://waffles.ch/download.php/xxx/1154063/Coldplay%20-%20A%20Head%20Full%20of%20Dreams%20%28Japanese%20Tour%20Edition%29%20%5B2017-CD-MP3-320-Log%5D.torrent?passkey=123456789&uid=xxx&rss=1
+ https://waffles.ch/details.php?id=1154063&hit=1
+ Rock
+ 2017-04-14T15:27:13Z
+ 1154063-cad18a6758c940860e448795a4a50375
+
+ -
+ Coldplay - A Head Full of Dreams (Japanese Tour Edition) [2017-CD-MP3-V0(VBR)-Log]
+
+ <table id="waffles-rss-t1154060" class="rsstable" border=0 cellspacing=0 cellpadding=10><tr><td>Link: <a href="https://waffles.ch/details.php?id=1154060&hit=1">Description/Comments Page</a><br/>
+ Genre: Rock<br/>
+ Year: 2017<br/>
+ Size: 178934031<br/>
+ </td><td>Link: <a href="https://waffles.ch/download.php/xxx/1154060/Coldplay%20-%20A%20Head%20Full%20of%20Dreams%20%28Japanese%20Tour%20Edition%29%20%5B2017-CD-MP3-V0%28VBR%29-Log%5D.torrent?passkey=123456789&uid=xxx&rss=1">Download Torrent</a><br/>
+ Seeders: 7<br/>
+ Leechers: 0<br/>
+ Format: MP3<br/>
+ </td><td>Link: <a href="https://waffles.ch/userdetails.php?id=6301">heirloom</a> (Uploader)<br/>
+ Comments: 0<br/>
+ Files: 25<br/>
+ Bitrate: V0<br/>
+ </tr></td></table><br/>
+ <b>Japan Tour Edition:</b><br />
+ CD1<br />
+ 01 A Head Full of Dreams<br />
+ 02 Birds<br />
+ 03 Hymn for the Weekend<br />
+ 04 Everglow<br />
+ 05 Adventure of a Lifetime<br />
+ 06 Fun<br />
+ 07 Kaleidoscope<br />
+ 08 Army of One / X Marks the Spot<br />
+ 09 Amazing Day<br />
+ 10 Colour Spectrum<br />
+ 11 Up&Up<br />
+ 12 Miracles<br />
+ CD2<br />
+ 01 Adventure of a Lifetime (Matoma Remix)<br />
+ 02 Hymn for the Weekend (SeeB Remix)<br />
+ 03 Up&Up (Freedo Remix)<br />
+ 04 Magic (Live at Tokyo Dome City Hall, Tokyo)<br />
+ 05 Clocks (Live at Tokyo Dome City Hall, Tokyo)<br />
+ 06 Viva la Vida (Live at Tokyo Dome City Hall, Tokyo)<br />
+ 07 Oceans (Live at Tokyo Dome City Hall, Tokyo)<br />
+ 08 A Sky Full of Stars (Live at Tokyo Dome City Hall, Tokyo)
+
+ https://waffles.ch/download.php/xxx/1154060/Coldplay%20-%20A%20Head%20Full%20of%20Dreams%20%28Japanese%20Tour%20Edition%29%20%5B2017-CD-MP3-V0%28VBR%29-Log%5D.torrent?passkey=123456789&uid=xxx&rss=1
+ https://waffles.ch/details.php?id=1154060&hit=1
+ Rock
+ 2017-04-14T15:23:22Z
+ 1154060-c30c33036dd692110303cb39de4fc051
+
+ -
+ Coldplay - X&Y [2005-CD-MP3-V2(VBR)-Log]
+
+ <table id="waffles-rss-t1152893" class="rsstable" border=0 cellspacing=0 cellpadding=10><tr><td>Link: <a href="https://waffles.ch/details.php?id=1152893&hit=1">Description/Comments Page</a><br/>
+ Genre: Alternative<br/>
+ Year: 2005<br/>
+ Size: 89254820<br/>
+ </td><td>Link: <a href="https://waffles.ch/download.php/xxx/1152893/Coldplay%20-%20X%26%23x26%3BY%20%5B2005-CD-MP3-V2%28VBR%29-Log%5D.torrent?passkey=123456789&uid=xxx&rss=1">Download Torrent</a><br/>
+ Seeders: 2<br/>
+ Leechers: 0<br/>
+ Format: MP3<br/>
+ </td><td>Link: <a href="https://waffles.ch/userdetails.php?id=235469">hpet0</a> (Uploader)<br/>
+ Comments: 0<br/>
+ Files: 16<br/>
+ Bitrate: V2<br/>
+ </tr></td></table><br/>
+ <b>Tracklist:</b><br />
+ <br />
+ 1. Square One (4:46)<br />
+ 2. What If (4:56)<br />
+ 3. White Shadows (5:28)<br />
+ 4. Fix You (4:55)<br />
+ 5. Talk (5:11)<br />
+ 6. X&Y (4:34)<br />
+ 7. Speed of Sound (4:48)<br />
+ 8. A Message (4:45)<br />
+ 9. Low (5:32)<br />
+ 10. The Hardest Part (4:25)<br />
+ 11. Swallowed in the Sea (3:59)<br />
+ 12. Twisted Logic (4:31)<br />
+ 13. 'til Kingdom Come / How You See the World (8:44)
+
+ https://waffles.ch/download.php/xxx/1152893/Coldplay%20-%20X%26%23x26%3BY%20%5B2005-CD-MP3-V2%28VBR%29-Log%5D.torrent?passkey=123456789&uid=xxx&rss=1
+ https://waffles.ch/details.php?id=1152893&hit=1
+ Alternative
+ 2017-04-08T00:37:41Z
+ 1152893-267fcd8cd8f0e5cb8925a4289be4ad94
+
+ -
+ Coldplay - Viva La Vida or Death And All His Friends (Japan) [2008-CD-MP3-V2(VBR)-Log]
+
+ <table id="waffles-rss-t1152891" class="rsstable" border=0 cellspacing=0 cellpadding=10><tr><td>Link: <a href="https://waffles.ch/details.php?id=1152891&hit=1">Description/Comments Page</a><br/>
+ Genre: Rock<br/>
+ Year: 2008<br/>
+ Size: 71570327<br/>
+ </td><td>Link: <a href="https://waffles.ch/download.php/xxx/1152891/Coldplay%20-%20Viva%20La%20Vida%20or%20Death%20And%20All%20His%20Friends%20%28Japan%29%20%5B2008-CD-MP3-V2%28VBR%29-Log%5D.torrent?passkey=123456789&uid=xxx&rss=1">Download Torrent</a><br/>
+ Seeders: 1<br/>
+ Leechers: 0<br/>
+ Format: MP3<br/>
+ </td><td>Link: <a href="https://waffles.ch/userdetails.php?id=235469">hpet0</a> (Uploader)<br/>
+ Comments: 0<br/>
+ Files: 17<br/>
+ Bitrate: V2<br/>
+ </tr></td></table><br/>
+ <b>Tracklist:</b><br />
+ <br />
+ 01. Life In Technicolor [02:30]<br />
+ 02. Cemeteries Of London [03:21]<br />
+ 03. Lost! [03:55]<br />
+ 04. 42 [03:57]<br />
+ 05. Lovers In Japan [06:51]<br />
+ 06. Yes [07:07]<br />
+ 07. Viva La Vida [04:01]<br />
+ 08. Violet Hill [03:43]<br />
+ 09. Strawberry Swing [04:10]<br />
+ 10. Death And All His Friends [06:24]<br />
+ 11. Lost! (Alternate Version) (Bonus Track) [03:44]
+
+ https://waffles.ch/download.php/xxx/1152891/Coldplay%20-%20Viva%20La%20Vida%20or%20Death%20And%20All%20His%20Friends%20%28Japan%29%20%5B2008-CD-MP3-V2%28VBR%29-Log%5D.torrent?passkey=123456789&uid=xxx&rss=1
+ https://waffles.ch/details.php?id=1152891&hit=1
+ Rock
+ 2017-04-08T00:34:22Z
+ 1152891-e11d2bb5c9375017471d8768c3844b51
+
+ -
+ Coldplay - Parachutes [2000-CD-MP3-V2(VBR)-Log]
+
+ <table id="waffles-rss-t1152889" class="rsstable" border=0 cellspacing=0 cellpadding=10><tr><td>Link: <a href="https://waffles.ch/details.php?id=1152889&hit=1">Description/Comments Page</a><br/>
+ Genre: Alternative<br/>
+ Year: 2000<br/>
+ Size: 58474976<br/>
+ </td><td>Link: <a href="https://waffles.ch/download.php/xxx/1152889/Coldplay%20-%20Parachutes%20%5B2000-CD-MP3-V2%28VBR%29-Log%5D.torrent?passkey=123456789&uid=xxx&rss=1">Download Torrent</a><br/>
+ Seeders: 2<br/>
+ Leechers: 0<br/>
+ Format: MP3<br/>
+ </td><td>Link: <a href="https://waffles.ch/userdetails.php?id=235469">hpet0</a> (Uploader)<br/>
+ Comments: 0<br/>
+ Files: 12<br/>
+ Bitrate: V2<br/>
+ </tr></td></table><br/>
+ <b>Tracklist:</b><br />
+ 1. Don't Panic (2:19)<br />
+ 2. Shiver (5:01)<br />
+ 3. Spies (5:20)<br />
+ 4. Sparks (3:48)<br />
+ 5. Yellow (4:30)<br />
+ 6. Trouble (4:32)<br />
+ 7. Parachutes (0:47)<br />
+ 8. High Speed (4:15)<br />
+ 9. We Never Change (4:11)<br />
+ 10. Everything's Not Lost (7:16)
+
+ https://waffles.ch/download.php/xxx/1152889/Coldplay%20-%20Parachutes%20%5B2000-CD-MP3-V2%28VBR%29-Log%5D.torrent?passkey=123456789&uid=xxx&rss=1
+ https://waffles.ch/details.php?id=1152889&hit=1
+ Alternative
+ 2017-04-08T00:29:02Z
+ 1152889-eacb784b83fea23f353f437299795b68
+
+ -
+ Coldplay - A Head Full Of Dreams [2015-CD-MP3-V2(VBR)] (Scene)
+
+ <table id="waffles-rss-t1152888" class="rsstable" border=0 cellspacing=0 cellpadding=10><tr><td>Link: <a href="https://waffles.ch/details.php?id=1152888&hit=1">Description/Comments Page</a><br/>
+ Genre: Pop<br/>
+ Year: 2015<br/>
+ Size: 67264805<br/>
+ </td><td>Link: <a href="https://waffles.ch/download.php/xxx/1152888/Coldplay%20-%20A%20Head%20Full%20Of%20Dreams%20%5B2015-CD-MP3-V2%28VBR%29%5D%20%28Scene%29.torrent?passkey=123456789&uid=xxx&rss=1">Download Torrent</a><br/>
+ Seeders: 6<br/>
+ Leechers: 0<br/>
+ Format: MP3<br/>
+ </td><td>Link: <a href="https://waffles.ch/userdetails.php?id=235469">hpet0</a> (Uploader)<br/>
+ Comments: 1<br/>
+ Files: 14<br/>
+ Bitrate: V2<br/>
+ </tr></td></table><br/>
+ <b>Tracklist:</b><br />
+ <br />
+ 01. A Head Full Of Dreams <br />
+ 02. Birds <br />
+ 03. Hymn For The Weekend (Feat. Beyonce) <br />
+ 04. Everglow <br />
+ 05. Adventure Of A Lifetime <br />
+ 06. Fun (Feat. Tove Lo) <br />
+ 07. Kaleidoscope <br />
+ 08. Army Of One / X Marks The Spot <br />
+ 09. Amazing Day <br />
+ 10. Colour Spectrum <br />
+ 11. Up&Up
+
+ https://waffles.ch/download.php/xxx/1152888/Coldplay%20-%20A%20Head%20Full%20Of%20Dreams%20%5B2015-CD-MP3-V2%28VBR%29%5D%20%28Scene%29.torrent?passkey=123456789&uid=xxx&rss=1
+ https://waffles.ch/details.php?id=1152888&hit=1
+ Pop
+ 2017-04-08T00:25:28Z
+ 1152888-85625243ba9b4cded8c96f4f8b2ab411
+
+ -
+ The Chainsmokers & Coldplay - Something Just Like This (Single) [2017-Web-FLAC-Lossless]
+
+ <table id="waffles-rss-t1147894" class="rsstable" border=0 cellspacing=0 cellpadding=10><tr><td>Link: <a href="https://waffles.ch/details.php?id=1147894&hit=1">Description/Comments Page</a><br/>
+ Genre: Electronic<br/>
+ Year: 2017<br/>
+ Size: 30491794<br/>
+ </td><td>Link: <a href="https://waffles.ch/download.php/xxx/1147894/The%20Chainsmokers%20%26%23x26%3B%20Coldplay%20-%20Something%20Just%20Like%20This%20%28Single%29%20%5B2017-Web-FLAC-Lossless%5D.torrent?passkey=123456789&uid=xxx&rss=1">Download Torrent</a><br/>
+ Seeders: 23<br/>
+ Leechers: 0<br/>
+ Format: FLAC<br/>
+ </td><td>Link: <a href="https://waffles.ch/userdetails.php?id=3218">cdzo</a> (Uploader)<br/>
+ Comments: 2<br/>
+ Files: 2<br/>
+ Bitrate: Lossless<br/>
+ </tr></td></table><br/>
+ Year: 2017<br />
+ Artist: The Chainsmokers & Coldplay<br />
+ Source: WEB <br />
+ Quality: FLAC<br />
+ <br />
+ 01. The Chainsmokers & Coldplay - Something Just Like This [4:08]
+
+ https://waffles.ch/download.php/xxx/1147894/The%20Chainsmokers%20%26%23x26%3B%20Coldplay%20-%20Something%20Just%20Like%20This%20%28Single%29%20%5B2017-Web-FLAC-Lossless%5D.torrent?passkey=123456789&uid=xxx&rss=1
+ https://waffles.ch/details.php?id=1147894&hit=1
+ Electronic
+ 2017-03-24T03:42:33Z
+ 1147894-f5c1965de8509793c0c1bd86e624e99b
+
+ -
+ Coldplay - Adventure of a Lifetime (Audien Remix) [2016-Web-MP3-320]
+
+ <table id="waffles-rss-t1126256" class="rsstable" border=0 cellspacing=0 cellpadding=10><tr><td>Link: <a href="https://waffles.ch/details.php?id=1126256&hit=1">Description/Comments Page</a><br/>
+ Genre: Pop<br/>
+ Year: 2016<br/>
+ Size: 9694440<br/>
+ </td><td>Link: <a href="https://waffles.ch/download.php/xxx/1126256/Coldplay%20-%20Adventure%20of%20a%20Lifetime%20%28Audien%20Remix%29%20%5B2016-Web-MP3-320%5D.torrent?passkey=123456789&uid=xxx&rss=1">Download Torrent</a><br/>
+ Seeders: 0<br/>
+ Leechers: 0<br/>
+ Format: MP3<br/>
+ </td><td>Link: <a href="https://waffles.ch/userdetails.php?id=0">*Anonymous*</a> (Uploader)<br/>
+ Comments: 0<br/>
+ Files: 1<br/>
+ Bitrate: 320<br/>
+ </tr></td></table><br/>
+ Audien remix of Coldplay's Adventure of a Lifetime
+
+ https://waffles.ch/download.php/xxx/1126256/Coldplay%20-%20Adventure%20of%20a%20Lifetime%20%28Audien%20Remix%29%20%5B2016-Web-MP3-320%5D.torrent?passkey=123456789&uid=xxx&rss=1
+ https://waffles.ch/details.php?id=1126256&hit=1
+ Pop
+ 2016-03-06T14:14:39Z
+ 1126256-0c99292f358b2d130bf5b3a1180f3606
+
+
+
diff --git a/src/NzbDrone.Core.Test/IndexerTests/WafflesTests/WafflesFixture.cs b/src/NzbDrone.Core.Test/IndexerTests/WafflesTests/WafflesFixture.cs
new file mode 100644
index 000000000..4fcb3934b
--- /dev/null
+++ b/src/NzbDrone.Core.Test/IndexerTests/WafflesTests/WafflesFixture.cs
@@ -0,0 +1,56 @@
+using System;
+using System.Linq;
+using FluentAssertions;
+using Moq;
+using NUnit.Framework;
+using NzbDrone.Common.Http;
+using NzbDrone.Core.Indexers;
+using NzbDrone.Core.Indexers.Waffles;
+using NzbDrone.Core.Test.Framework;
+
+namespace NzbDrone.Core.Test.IndexerTests.WafflesTests
+{
+ [TestFixture]
+ public class WafflesFixture : CoreTest
+ {
+ [SetUp]
+ public void Setup()
+ {
+ Subject.Definition = new IndexerDefinition()
+ {
+ Name = "Waffles",
+ Settings = new WafflesSettings()
+ {
+ UserId = "xxx",
+ RssPasskey = "123456789"
+ }
+ };
+ }
+
+ [Test]
+ public void should_parse_recent_feed_from_waffles()
+ {
+ var recentFeed = ReadAllText(@"Files/Indexers/Waffles/Waffles.xml");
+
+ Mocker.GetMock()
+ .Setup(o => o.Execute(It.Is(v => v.Method == HttpMethod.GET)))
+ .Returns(r => new HttpResponse(r, new HttpHeader(), recentFeed));
+
+ var releases = Subject.FetchRecent();
+
+ releases.Should().HaveCount(15);
+
+ var releaseInfo = releases.First();
+
+ releaseInfo.Title.Should().Be("Coldplay - Kaleidoscope EP (FLAC HD) [2017-Web-FLAC-Lossless]");
+ releaseInfo.DownloadProtocol.Should().Be(DownloadProtocol.Torrent);
+ releaseInfo.DownloadUrl.Should().Be("https://waffles.ch/download.php/xxx/1166992/" +
+ "Coldplay%20-%20Kaleidoscope%20EP%20%28FLAC%20HD%29%20%5B2017-Web-FLAC-Lossless%5D.torrent?passkey=123456789&uid=xxx&rss=1");
+ releaseInfo.InfoUrl.Should().Be("https://waffles.ch/details.php?id=1166992&hit=1");
+ releaseInfo.CommentUrl.Should().Be("https://waffles.ch/details.php?id=1166992&hit=1");
+ releaseInfo.Indexer.Should().Be(Subject.Definition.Name);
+ releaseInfo.PublishDate.Should().Be(DateTime.Parse("2017-07-16 09:51:54"));
+ releaseInfo.Size.Should().Be(552668227);
+ }
+ }
+}
diff --git a/src/NzbDrone.Core.Test/NzbDrone.Core.Test.csproj b/src/NzbDrone.Core.Test/NzbDrone.Core.Test.csproj
index 09c968886..a7e4d7937 100644
--- a/src/NzbDrone.Core.Test/NzbDrone.Core.Test.csproj
+++ b/src/NzbDrone.Core.Test/NzbDrone.Core.Test.csproj
@@ -275,6 +275,7 @@
+
@@ -431,6 +432,9 @@
Always
+
+ Always
+
Always
diff --git a/src/NzbDrone.Core/Indexers/Waffles/Waffles.cs b/src/NzbDrone.Core/Indexers/Waffles/Waffles.cs
new file mode 100644
index 000000000..f337ca6d5
--- /dev/null
+++ b/src/NzbDrone.Core/Indexers/Waffles/Waffles.cs
@@ -0,0 +1,31 @@
+using NzbDrone.Common.Http;
+using NzbDrone.Core.Configuration;
+using NLog;
+using NzbDrone.Core.Parser;
+
+namespace NzbDrone.Core.Indexers.Waffles
+{
+ public class Waffles : HttpIndexerBase
+ {
+ public override string Name => "Waffles";
+
+ public override DownloadProtocol Protocol => DownloadProtocol.Torrent;
+ public override int PageSize => 15;
+
+ public Waffles(IHttpClient httpClient, IIndexerStatusService indexerStatusService, IConfigService configService, IParsingService parsingService, Logger logger)
+ : base(httpClient, indexerStatusService, configService, parsingService, logger)
+ {
+
+ }
+
+ public override IIndexerRequestGenerator GetRequestGenerator()
+ {
+ return new WafflesRequestGenerator() { Settings = Settings };
+ }
+
+ public override IParseIndexerResponse GetParser()
+ {
+ return new WafflesRssParser() { ParseSizeInDescription = true, ParseSeedersInDescription = true };
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/NzbDrone.Core/Indexers/Waffles/WafflesRequestGenerator.cs b/src/NzbDrone.Core/Indexers/Waffles/WafflesRequestGenerator.cs
new file mode 100644
index 000000000..19af4a864
--- /dev/null
+++ b/src/NzbDrone.Core/Indexers/Waffles/WafflesRequestGenerator.cs
@@ -0,0 +1,86 @@
+using System.Collections.Generic;
+using NzbDrone.Common.Extensions;
+using NzbDrone.Common.Http;
+using System.Text;
+using System;
+using NzbDrone.Core.IndexerSearch.Definitions;
+
+namespace NzbDrone.Core.Indexers.Waffles
+{
+ public class WafflesRequestGenerator : IIndexerRequestGenerator
+ {
+ public WafflesSettings Settings { get; set; }
+
+ public virtual IndexerPageableRequestChain GetRecentRequests()
+ {
+ var pageableRequests = new IndexerPageableRequestChain();
+
+ pageableRequests.Add(GetPagedRequests(null));
+
+ return pageableRequests;
+ }
+
+ [System.Obsolete("Sonarr TV Stuff -- Shouldn't be needed for Lidarr")]
+ public virtual IndexerPageableRequestChain GetSearchRequests(SingleEpisodeSearchCriteria searchCriteria)
+ {
+ throw new NotImplementedException ();
+ }
+
+ [System.Obsolete("Sonarr TV Stuff -- Shouldn't be needed for Lidarr")]
+ public virtual IndexerPageableRequestChain GetSearchRequests(SeasonSearchCriteria searchCriteria)
+ {
+ throw new NotImplementedException();
+ }
+
+ [System.Obsolete("Sonarr TV Stuff -- Shouldn't be needed for Lidarr")]
+ public virtual IndexerPageableRequestChain GetSearchRequests(DailyEpisodeSearchCriteria searchCriteria)
+ {
+ throw new NotImplementedException();
+ }
+
+ [System.Obsolete("Sonarr TV Stuff -- Shouldn't be needed for Lidarr")]
+ public virtual IndexerPageableRequestChain GetSearchRequests(AnimeEpisodeSearchCriteria searchCriteria)
+ {
+ throw new NotImplementedException();
+ }
+
+ [System.Obsolete("Sonarr TV Stuff -- Shouldn't be needed for Lidarr")]
+ public virtual IndexerPageableRequestChain GetSearchRequests(SpecialEpisodeSearchCriteria searchCriteria)
+ {
+ throw new NotImplementedException();
+ }
+
+ public IndexerPageableRequestChain GetSearchRequests(AlbumSearchCriteria searchCriteria)
+ {
+ var pageableRequests = new IndexerPageableRequestChain();
+
+ pageableRequests.Add(GetPagedRequests(string.Format("&q=artist:{0} album:{1}",searchCriteria.Artist.Name,searchCriteria.Album.Title)));
+
+ return pageableRequests;
+ }
+
+ public IndexerPageableRequestChain GetSearchRequests(ArtistSearchCriteria searchCriteria)
+ {
+ var pageableRequests = new IndexerPageableRequestChain();
+
+ pageableRequests.Add(GetPagedRequests(string.Format("&q=artist:{0}", searchCriteria.Artist.Name)));
+
+ return pageableRequests;
+ }
+
+ private IEnumerable GetPagedRequests(string query)
+ {
+
+ var url = new StringBuilder();
+
+ url.AppendFormat("{0}/browse.php?rss=1&c0=1&uid={1}&passkey={2}", Settings.BaseUrl.Trim().TrimEnd('/'), Settings.UserId, Settings.RssPasskey);
+
+ if (query.IsNotNullOrWhiteSpace())
+ {
+ url.AppendFormat(query);
+ }
+
+ yield return new IndexerRequest(url.ToString(), HttpAccept.Rss);
+ }
+ }
+}
diff --git a/src/NzbDrone.Core/Indexers/Waffles/WafflesRssParser.cs b/src/NzbDrone.Core/Indexers/Waffles/WafflesRssParser.cs
new file mode 100644
index 000000000..4cc8e6be6
--- /dev/null
+++ b/src/NzbDrone.Core/Indexers/Waffles/WafflesRssParser.cs
@@ -0,0 +1,88 @@
+using System;
+using System.Globalization;
+using System.Linq;
+using System.Xml.Linq;
+using System.Text.RegularExpressions;
+using NzbDrone.Common.Extensions;
+using NzbDrone.Core.Indexers.Exceptions;
+using NzbDrone.Core.Parser.Model;
+
+
+namespace NzbDrone.Core.Indexers.Waffles
+{
+ public class WafflesRssParser : TorrentRssParser
+ {
+ public const string ns = "{http://purl.org/rss/1.0/}";
+ public const string dc = "{http://purl.org/dc/elements/1.1/}";
+
+ protected override bool PreProcess(IndexerResponse indexerResponse)
+ {
+ var xdoc = LoadXmlDocument(indexerResponse);
+ var error = xdoc.Descendants("error").FirstOrDefault();
+
+ if (error == null) return true;
+
+ var code = Convert.ToInt32(error.Attribute("code").Value);
+ var errorMessage = error.Attribute("description").Value;
+
+ if (code >= 100 && code <= 199) throw new ApiKeyException("Invalid Pass key");
+
+ if (!indexerResponse.Request.Url.FullUri.Contains("passkey=") && errorMessage == "Missing parameter")
+ {
+ throw new ApiKeyException("Indexer requires an Pass key");
+ }
+
+ if (errorMessage == "Request limit reached")
+ {
+ throw new RequestLimitReachedException("API limit reached");
+ }
+
+ throw new IndexerException(indexerResponse, errorMessage);
+ }
+
+ protected override ReleaseInfo ProcessItem(XElement item, ReleaseInfo releaseInfo)
+ {
+ var torrentInfo = base.ProcessItem(item, releaseInfo) as TorrentInfo;
+
+ return torrentInfo;
+ }
+
+ protected override string GetInfoUrl(XElement item)
+ {
+ return ParseUrl(item.TryGetValue("comments").TrimEnd("#comments"));
+ }
+
+ protected override string GetCommentUrl(XElement item)
+ {
+ return ParseUrl(item.TryGetValue("comments"));
+ }
+
+ private static readonly Regex ParseSizeRegex = new Regex(@"(?:Size: )(?\d+)<",
+ RegexOptions.IgnoreCase | RegexOptions.Compiled);
+
+ protected override long GetSize(XElement item)
+ {
+ var match = ParseSizeRegex.Matches(item.Element("description").Value);
+
+ if (match.Count != 0)
+ {
+ var value = decimal.Parse(Regex.Replace(match[0].Groups["value"].Value, "\\,", ""), CultureInfo.InvariantCulture);
+ return (long)value;
+ }
+
+ return 0;
+ }
+
+ protected override DateTime GetPublishDate(XElement item)
+ {
+ var dateString = item.TryGetValue(dc + "date");
+
+ if (dateString.IsNullOrWhiteSpace())
+ {
+ throw new UnsupportedFeedException("Rss feed must have a pubDate element with a valid publish date.");
+ }
+
+ return XElementExtensions.ParseDate(dateString);
+ }
+ }
+}
diff --git a/src/NzbDrone.Core/Indexers/Waffles/WafflesSettings.cs b/src/NzbDrone.Core/Indexers/Waffles/WafflesSettings.cs
new file mode 100644
index 000000000..df5f5aa42
--- /dev/null
+++ b/src/NzbDrone.Core/Indexers/Waffles/WafflesSettings.cs
@@ -0,0 +1,43 @@
+using System.Text.RegularExpressions;
+using FluentValidation;
+using NzbDrone.Core.Annotations;
+using NzbDrone.Core.ThingiProvider;
+using NzbDrone.Core.Validation;
+
+namespace NzbDrone.Core.Indexers.Waffles
+{
+ public class WafflesSettingsValidator : AbstractValidator
+ {
+ public WafflesSettingsValidator()
+ {
+ RuleFor(c => c.BaseUrl).ValidRootUrl();
+ RuleFor(c => c.UserId).NotEmpty();
+ RuleFor(c => c.RssPasskey).NotEmpty();
+ }
+ }
+
+ public class WafflesSettings : IProviderConfig
+ {
+ private static readonly WafflesSettingsValidator Validator = new WafflesSettingsValidator();
+
+ public WafflesSettings()
+ {
+ BaseUrl = "https://www.waffles.ch";
+ }
+
+ [FieldDefinition(0, Label = "Website URL")]
+ public string BaseUrl { get; set; }
+
+ [FieldDefinition(1, Label = "UserId")]
+ public string UserId { get; set; }
+
+ [FieldDefinition(2, Label = "RSS Passkey")]
+ public string RssPasskey { get; set; }
+
+
+ public NzbDroneValidationResult Validate()
+ {
+ return new NzbDroneValidationResult(Validator.Validate(this));
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/NzbDrone.Core/NzbDrone.Core.csproj b/src/NzbDrone.Core/NzbDrone.Core.csproj
index 1e5c0751e..f1b8027ad 100644
--- a/src/NzbDrone.Core/NzbDrone.Core.csproj
+++ b/src/NzbDrone.Core/NzbDrone.Core.csproj
@@ -611,6 +611,10 @@
+
+
+
+