diff --git a/dart/manga/multisrc/mangareader/mangareader.dart b/dart/manga/multisrc/mangareader/mangareader.dart index 44fe3b91..8489afe9 100644 --- a/dart/manga/multisrc/mangareader/mangareader.dart +++ b/dart/manga/multisrc/mangareader/mangareader.dart @@ -8,10 +8,16 @@ class MangaReader extends MProvider { final Client client = Client(source); + @override + String get baseUrl => getPreferenceValue(source.id, "override_baseurl"); + + @override + Map get headers => {"Referer": "$baseUrl/"}; + @override Future getPopular(int page) async { final res = (await client.get(Uri.parse( - "${source.baseUrl}${getMangaUrlDirectory(source.name)}/?page=$page&order=popular"))) + "$baseUrl${getMangaUrlDirectory(source.name)}/?page=$page&order=popular"))) .body; return mangaRes(res); } @@ -19,7 +25,7 @@ class MangaReader extends MProvider { @override Future getLatestUpdates(int page) async { final res = (await client.get(Uri.parse( - "${source.baseUrl}${getMangaUrlDirectory(source.name)}/?page=$page&order=update"))) + "$baseUrl${getMangaUrlDirectory(source.name)}/?page=$page&order=update"))) .body; return mangaRes(res); } @@ -29,7 +35,7 @@ class MangaReader extends MProvider { final filters = filterList.filters; String url = - "${source.baseUrl}${getMangaUrlDirectory(source.name)}/?&title=$query&page=$page"; + "$baseUrl${getMangaUrlDirectory(source.name)}/?&title=$query&page=$page"; for (var filter in filters) { if (filter.type == "AuthorFilter") { @@ -127,7 +133,7 @@ class MangaReader extends MProvider { url = getUrlWithoutDomain(url); MManga manga = MManga(); - final res = (await client.get(Uri.parse("${source.baseUrl}$url"))).body; + final res = (await client.get(Uri.parse("$baseUrl$url"))).body; List author = xpath( res, "//table[contains(@class, 'infotable')]//tr[contains(text(), 'Author')]/td[last()]/text() | //div[contains(@class, 'tsinfo')]//div[contains(@class, 'imptdt') and contains(text(), 'Author')]//i/text() | //div[contains(@class, 'fmed')]//b[contains(text(), 'Author')]/following-sibling::span[1]/text() | //span[contains(text(), 'Author')]/text()", @@ -191,7 +197,7 @@ class MangaReader extends MProvider { @override Future> getPageList(String url) async { url = getUrlWithoutDomain(url); - final res = (await client.get(Uri.parse('${source.baseUrl}$url'))).body; + final res = (await client.get(Uri.parse('$baseUrl$url'))).body; List pages = []; List pagesUrl = []; @@ -286,6 +292,20 @@ class MangaReader extends MProvider { ]; } + @override + List getSourcePreferences() { + return [ + EditTextPreference( + key: "override_baseurl", + title: "Override BaseUrl", + summary: "", + value: baseUrl, + dialogTitle: "Override BaseUrl", + dialogMessage: "Default: $baseUrl", + text: baseUrl), + ]; + } + String authorLocalStr(String lang) { if (lang == "fr") { return "Auteur"; diff --git a/dart/manga/multisrc/mangareader/sources.dart b/dart/manga/multisrc/mangareader/sources.dart index 23000b43..f69e9bbf 100644 --- a/dart/manga/multisrc/mangareader/sources.dart +++ b/dart/manga/multisrc/mangareader/sources.dart @@ -127,7 +127,7 @@ import 'src/shijiescans/shijiescans.dart'; import 'src/summertoon/summertoon.dart'; import 'src/zenithscans/zenithscans.dart'; -const mangareaderVersion = "0.1.0"; +const mangareaderVersion = "0.1.05"; const mangareaderSourceCodeUrl = "https://raw.githubusercontent.com/kodjodevf/mangayomi-extensions/$branchName/dart/manga/multisrc/mangareader/mangareader.dart";