More HTTPS upgrades (#2057)

This commit is contained in:
ObserverOfTime 2020-02-23 06:35:13 +02:00 committed by GitHub
parent b1f787e5b2
commit e23b69f8a7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
69 changed files with 120 additions and 120 deletions

View File

@ -21,7 +21,7 @@ abstract class HttpSource : CatalogueSource {
protected val network: NetworkHelper = throw Exception("Stub!")
/**
* Base url of the website without the trailing slash, like: http://mysite.com
* Base url of the website without the trailing slash, like: https://mysite.com
*/
abstract val baseUrl: String

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: BoomManga, ManManga, TwinsComics'
pkgNameSuffix = 'all.boommanga'
extClass = '.BoomMangaFactory'
extVersionCode = 2
extVersionCode = 3
libVersion = '1.2'
}

View File

@ -119,7 +119,7 @@ open class BoomManga (
else -> element.attr("data-src")
}
if (url.startsWith("//")) {
url = "http:$url"
url = "https:$url"
}
return url
}

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: FMReader (multiple aggregators)'
pkgNameSuffix = 'all.fmreader'
extClass = '.FMReaderFactory'
extVersionCode = 6
extVersionCode = 7
libVersion = '1.2'
}

View File

@ -118,7 +118,7 @@ class ReadComicOnlineOrg : FMReader("ReadComicOnline.org", "https://readcomiconl
override fun getGenreList() = getComicsGenreList()
}
class HanaScan : FMReader("HanaScan (RawQQ)", "http://rawqq.com", "ja") {
class HanaScan : FMReader("HanaScan (RawQQ)", "https://hanascan.com", "ja") {
override fun popularMangaNextPageSelector() = "div.col-md-8 button"
}
@ -299,7 +299,7 @@ class Manhwa18NetRaw : FMReader("Manhwa18.net Raw", "https://manhwa18.net", "ko"
override fun getFilterList() = FilterList(super.getFilterList().filterNot { it == GenreList(getGenreList()) })
}
class MangaBorn : FMReader("MangaBorn", "http://hellxlight.com", "en") {
class MangaBorn : FMReader("MangaBorn", "https://hellxlight.com", "en") {
override val requestPath = "manga_list"
override val popularSort = "type=topview"
override fun popularMangaNextPageSelector() = "div.page-number a.select + a:not(.go-p-end)"

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: FoolSlide (multiple sources)'
pkgNameSuffix = 'all.foolslide'
extClass = '.FoolSlideFactory'
extVersionCode = 35
extVersionCode = 36
libVersion = '1.2'
}

View File

@ -131,13 +131,13 @@ class LupiTeam : FoolSlide("LupiTeam", "https://lupiteam.net", "it", "/reader")
}
}
class ZandynoFansub : FoolSlide("Zandy no Fansub", "http://zandynofansub.aishiteru.org", "en", "/reader")
class ZandynoFansub : FoolSlide("Zandy no Fansub", "https://zandynofansub.aishiteru.org", "en", "/reader")
class HelveticaScans : FoolSlide("Helvetica Scans", "https://helveticascans.com", "en", "/r")
class KirishimaFansub : FoolSlide("Kirishima Fansub", "https://kirishimafansub.net", "es", "/lector")
class PowerMangaIT : FoolSlide("PowerManga", "http://reader.powermanga.org", "it", "")
class PowerMangaIT : FoolSlide("PowerManga", "https://reader.powermanga.org", "it", "")
class BaixarHentai : FoolSlide("Baixar Hentai", "https://leitura.baixarhentai.net", "pt") {
override fun mangaDetailsParse(document: Document): SManga {

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: MangaBox (Mangakakalot and others)'
pkgNameSuffix = 'all.mangabox'
extClass = '.MangaBoxFactory'
extVersionCode = 12
extVersionCode = 13
libVersion = '1.2'
}

View File

@ -43,7 +43,7 @@ class Manganelo : MangaBox("Manganelo", "https://manganelo.com", "en") {
override fun getFilterList() = FilterList()
}
class Mangafree : MangaBox("Mangafree", "http://mangafree.online", "en") {
class Mangafree : MangaBox("Mangafree", "https://mangafree.online", "en") {
override val popularUrlPath = "hotmanga/"
override val latestUrlPath = "latest/"
override fun popularMangaParse(response: Response): MangasPage {

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: Mangatensei (and others)'
pkgNameSuffix = 'all.mangatensei'
extClass = '.MangatenseiFactory'
extVersionCode = 4
extVersionCode = 5
libVersion = '1.2'
}

View File

@ -40,7 +40,7 @@ open class Mangatensei(override val lang: String, private val Mtlang: String) :
override fun latestUpdatesFromElement(element: Element): SManga {
val manga = SManga.create()
val item = element.select("a.item-cover")
val imgurl = "http:" + item.select("img").attr("src")
val imgurl = "https:" + item.select("img").attr("src")
manga.setUrlWithoutDomain(item.attr("href"))
manga.title = element.select("a.item-title").text()
manga.thumbnail_url = imgurl
@ -166,7 +166,7 @@ open class Mangatensei(override val lang: String, private val Mtlang: String) :
manga.status = parseStatus(status)
manga.genre = genres.joinToString(", ")
manga.description = infoElement.select("h5:contains(summary) + pre").text()
manga.thumbnail_url = "http:" + document.select("div.attr-cover img")
manga.thumbnail_url = "https:" + document.select("div.attr-cover img")
.attr("src")
return manga
}

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: My Manga Reader CMS (Many sources)'
pkgNameSuffix = 'all.mmrcms'
extClass = '.MyMangaReaderCMSSources'
extVersionCode = 27
extVersionCode = 28
libVersion = '1.2'
}

View File

@ -1,22 +1,22 @@
package eu.kanade.tachiyomi.extension.all.mmrcms
// GENERATED FILE, DO NOT MODIFY!
//Generated Tue, 14 Jan 2020 21:40:33 -0500
// Generated Tue, 14 Jan 2020 21:40:33 -0500
private const val MMRSOURCE_1 = """{"language":"ar","name":"مانجا اون لاين","base_url":"https://onma.me","supports_latest":false,"item_url":"https://onma.me/manga/","categories":[{"id":"1","name":"أكشن"},{"id":"2","name":"مغامرة"},{"id":"3","name":"كوميدي"},{"id":"4","name":"شياطين"},{"id":"5","name":"دراما"},{"id":"6","name":"إيتشي"},{"id":"7","name":"خيال"},{"id":"8","name":"انحراف جنسي"},{"id":"9","name":"حريم"},{"id":"10","name":"تاريخي"},{"id":"11","name":"رعب"},{"id":"12","name":"جوسي"},{"id":"13","name":"فنون قتالية"},{"id":"14","name":"ناضج"},{"id":"15","name":"ميكا"},{"id":"16","name":"غموض"},{"id":"17","name":"وان شوت"},{"id":"18","name":"نفسي"},{"id":"19","name":"رومنسي"},{"id":"20","name":"حياة مدرسية"},{"id":"21","name":"خيال علمي"},{"id":"22","name":"سينين"},{"id":"23","name":"شوجو"},{"id":"24","name":"شوجو أي"},{"id":"25","name":"شونين"},{"id":"26","name":"شونين أي"},{"id":"27","name":"شريحة من الحياة"},{"id":"28","name":"رياضة"},{"id":"29","name":"خارق للطبيعة"},{"id":"30","name":"مأساة"},{"id":"31","name":"مصاصي الدماء"},{"id":"32","name":"سحر"},{"id":"33","name":"ويب تون"},{"id":"34","name":"دوجينشي"}],"tags":"null"}"""
private const val MMRSOURCE_2 = """{"language":"en","name":"Read Comics Online","base_url":"http://readcomicsonline.ru","supports_latest":true,"item_url":"https://readcomicsonline.ru/comic/","categories":[{"id":"1","name":"One Shots \u0026 TPBs"},{"id":"2","name":"DC Comics"},{"id":"3","name":"Marvel Comics"},{"id":"4","name":"Boom Studios"},{"id":"5","name":"Dynamite"},{"id":"6","name":"Rebellion"},{"id":"7","name":"Dark Horse"},{"id":"8","name":"IDW"},{"id":"9","name":"Archie"},{"id":"10","name":"Graphic India"},{"id":"11","name":"Darby Pop"},{"id":"12","name":"Oni Press"},{"id":"13","name":"Icon Comics"},{"id":"14","name":"United Plankton"},{"id":"15","name":"Udon"},{"id":"16","name":"Image Comics"},{"id":"17","name":"Valiant"},{"id":"18","name":"Vertigo"},{"id":"19","name":"Devils Due"},{"id":"20","name":"Aftershock Comics"},{"id":"21","name":"Antartic Press"},{"id":"22","name":"Action Lab"},{"id":"23","name":"American Mythology"},{"id":"24","name":"Zenescope"},{"id":"25","name":"Top Cow"},{"id":"26","name":"Hermes Press"},{"id":"27","name":"451"},{"id":"28","name":"Black Mask"},{"id":"29","name":"Chapterhouse Comics"},{"id":"30","name":"Red 5"},{"id":"31","name":"Heavy Metal"},{"id":"32","name":"Bongo"},{"id":"33","name":"Top Shelf"},{"id":"34","name":"Bubble"},{"id":"35","name":"Boundless"},{"id":"36","name":"Avatar Press"},{"id":"37","name":"Space Goat Productions"},{"id":"38","name":"BroadSword Comics"},{"id":"39","name":"AAM-Markosia"},{"id":"40","name":"Fantagraphics"},{"id":"41","name":"Aspen"},{"id":"42","name":"American Gothic Press"},{"id":"43","name":"Vault"},{"id":"44","name":"215 Ink"},{"id":"45","name":"Abstract Studio"},{"id":"46","name":"Albatross"},{"id":"47","name":"ARH Comix"},{"id":"48","name":"Legendary Comics"},{"id":"49","name":"Monkeybrain"},{"id":"50","name":"Joe Books"},{"id":"51","name":"MAD"},{"id":"52","name":"Comics Experience"},{"id":"53","name":"Alterna Comics"},{"id":"54","name":"Lion Forge"},{"id":"55","name":"Benitez"},{"id":"56","name":"Storm King"},{"id":"57","name":"Sucker"},{"id":"58","name":"Amryl Entertainment"},{"id":"59","name":"Ahoy Comics"},{"id":"60","name":"Mad Cave"},{"id":"61","name":"Coffin Comics"}],"tags":"null"}"""
private const val MMRSOURCE_3 = """{"language":"en","name":"Biamam Scans","base_url":"http://biamam.com/","supports_latest":false,"item_url":"http://biamam.com/manga/","categories":[],"tags":"null"}"""
private const val MMRSOURCE_4 = """{"language":"en","name":"Fallen Angels","base_url":"http://manga.fascans.com","supports_latest":false,"item_url":"https://manga.fascans.com/manga/","categories":[],"tags":"null"}"""
private const val MMRSOURCE_2 = """{"language":"en","name":"Read Comics Online","base_url":"https://readcomicsonline.ru","supports_latest":true,"item_url":"https://readcomicsonline.ru/comic/","categories":[{"id":"1","name":"One Shots \u0026 TPBs"},{"id":"2","name":"DC Comics"},{"id":"3","name":"Marvel Comics"},{"id":"4","name":"Boom Studios"},{"id":"5","name":"Dynamite"},{"id":"6","name":"Rebellion"},{"id":"7","name":"Dark Horse"},{"id":"8","name":"IDW"},{"id":"9","name":"Archie"},{"id":"10","name":"Graphic India"},{"id":"11","name":"Darby Pop"},{"id":"12","name":"Oni Press"},{"id":"13","name":"Icon Comics"},{"id":"14","name":"United Plankton"},{"id":"15","name":"Udon"},{"id":"16","name":"Image Comics"},{"id":"17","name":"Valiant"},{"id":"18","name":"Vertigo"},{"id":"19","name":"Devils Due"},{"id":"20","name":"Aftershock Comics"},{"id":"21","name":"Antartic Press"},{"id":"22","name":"Action Lab"},{"id":"23","name":"American Mythology"},{"id":"24","name":"Zenescope"},{"id":"25","name":"Top Cow"},{"id":"26","name":"Hermes Press"},{"id":"27","name":"451"},{"id":"28","name":"Black Mask"},{"id":"29","name":"Chapterhouse Comics"},{"id":"30","name":"Red 5"},{"id":"31","name":"Heavy Metal"},{"id":"32","name":"Bongo"},{"id":"33","name":"Top Shelf"},{"id":"34","name":"Bubble"},{"id":"35","name":"Boundless"},{"id":"36","name":"Avatar Press"},{"id":"37","name":"Space Goat Productions"},{"id":"38","name":"BroadSword Comics"},{"id":"39","name":"AAM-Markosia"},{"id":"40","name":"Fantagraphics"},{"id":"41","name":"Aspen"},{"id":"42","name":"American Gothic Press"},{"id":"43","name":"Vault"},{"id":"44","name":"215 Ink"},{"id":"45","name":"Abstract Studio"},{"id":"46","name":"Albatross"},{"id":"47","name":"ARH Comix"},{"id":"48","name":"Legendary Comics"},{"id":"49","name":"Monkeybrain"},{"id":"50","name":"Joe Books"},{"id":"51","name":"MAD"},{"id":"52","name":"Comics Experience"},{"id":"53","name":"Alterna Comics"},{"id":"54","name":"Lion Forge"},{"id":"55","name":"Benitez"},{"id":"56","name":"Storm King"},{"id":"57","name":"Sucker"},{"id":"58","name":"Amryl Entertainment"},{"id":"59","name":"Ahoy Comics"},{"id":"60","name":"Mad Cave"},{"id":"61","name":"Coffin Comics"}],"tags":"null"}"""
private const val MMRSOURCE_3 = """{"language":"en","name":"Biamam Scans","base_url":"https://biamam.com/","supports_latest":false,"item_url":"http://biamam.com/manga/","categories":[],"tags":"null"}"""
private const val MMRSOURCE_4 = """{"language":"en","name":"Fallen Angels","base_url":"https://manga.fascans.com","supports_latest":false,"item_url":"https://manga.fascans.com/manga/","categories":[],"tags":"null"}"""
private const val MMRSOURCE_5 = """{"language":"en","name":"Hatigarm Scans","base_url":"https://hatigarmscans.net","supports_latest":false,"item_url":"https://hatigarmscans.net/manga/","categories":[],"tags":"null"}"""
private const val MMRSOURCE_6 = """{"language":"en","name":"Mangawww Reader","base_url":"http://mangawww.club","supports_latest":false,"item_url":"http://mangawww.club/manga/","categories":[],"tags":[{"id":"action","name":"Action"},{"id":"adventure","name":"Adventure"},{"id":"comedy","name":"Comedy"},{"id":"drama","name":"Drama"},{"id":"ecchi","name":"Ecchi"},{"id":"fantasy","name":"Fantasy"},{"id":"mystery","name":"Mystery"},{"id":"romance","name":"Romance"},{"id":"Seisen","name":"Seisen"},{"id":"shoujo","name":"Shoujo"},{"id":"shounen","name":"Shounen"},{"id":"sports","name":"Sports"},{"id":"yuri","name":"Yuri"},{"id":"historical","name":"Historical"},{"id":"supernatural","name":"Supernatural"},{"id":"seinen","name":"Seinen"},{"id":"mature","name":"Mature"},{"id":"psychological","name":"Psychological"},{"id":"tragedy","name":"Tragedy"},{"id":"school-life","name":"School Life"},{"id":"horror","name":"Horror"},{"id":"harem","name":"Harem"},{"id":"slice-of-life","name":"Slice Of Life"},{"id":"manhua","name":"Manhua"},{"id":"martial-arts","name":"Martial Arts"},{"id":"sci-fi","name":"Sci-fi"},{"id":"josei","name":"Josei"},{"id":"mecha","name":"Mecha"},{"id":"one-shot","name":"One Shot"}]}"""
private const val MMRSOURCE_7 = """{"language":"en","name":"White Cloud Pavilion","base_url":"http://www.whitecloudpavilion.com/manga/free","supports_latest":false,"item_url":"https://www.whitecloudpavilion.com/manga/free/manga/","categories":[],"tags":"null"}"""
private const val MMRSOURCE_8 = """{"language":"fr","name":"Scan FR","base_url":"http://www.scan-fr.io","supports_latest":false,"item_url":"https://www.scan-fr.co/manga/","categories":[{"id":"1","name":"Comedy"},{"id":"2","name":"Doujinshi"},{"id":"3","name":"Drama"},{"id":"4","name":"Ecchi"},{"id":"5","name":"Fantasy"},{"id":"6","name":"Gender Bender"},{"id":"7","name":"Josei"},{"id":"8","name":"Mature"},{"id":"9","name":"Mecha"},{"id":"10","name":"Mystery"},{"id":"11","name":"One Shot"},{"id":"12","name":"Psychological"},{"id":"13","name":"Romance"},{"id":"14","name":"School Life"},{"id":"15","name":"Sci-fi"},{"id":"16","name":"Seinen"},{"id":"17","name":"Shoujo"},{"id":"18","name":"Shoujo Ai"},{"id":"19","name":"Shounen"},{"id":"20","name":"Shounen Ai"},{"id":"21","name":"Slice of Life"},{"id":"22","name":"Sports"},{"id":"23","name":"Supernatural"},{"id":"24","name":"Tragedy"},{"id":"25","name":"Yaoi"},{"id":"26","name":"Yuri"},{"id":"27","name":"Comics"},{"id":"28","name":"Autre"},{"id":"29","name":"BD Occidentale"},{"id":"30","name":"Manhwa"}],"tags":"null"}"""
private const val MMRSOURCE_6 = """{"language":"en","name":"Mangawww Reader","base_url":"https://mangawww.club","supports_latest":false,"item_url":"http://mangawww.club/manga/","categories":[],"tags":[{"id":"action","name":"Action"},{"id":"adventure","name":"Adventure"},{"id":"comedy","name":"Comedy"},{"id":"drama","name":"Drama"},{"id":"ecchi","name":"Ecchi"},{"id":"fantasy","name":"Fantasy"},{"id":"mystery","name":"Mystery"},{"id":"romance","name":"Romance"},{"id":"Seisen","name":"Seisen"},{"id":"shoujo","name":"Shoujo"},{"id":"shounen","name":"Shounen"},{"id":"sports","name":"Sports"},{"id":"yuri","name":"Yuri"},{"id":"historical","name":"Historical"},{"id":"supernatural","name":"Supernatural"},{"id":"seinen","name":"Seinen"},{"id":"mature","name":"Mature"},{"id":"psychological","name":"Psychological"},{"id":"tragedy","name":"Tragedy"},{"id":"school-life","name":"School Life"},{"id":"horror","name":"Horror"},{"id":"harem","name":"Harem"},{"id":"slice-of-life","name":"Slice Of Life"},{"id":"manhua","name":"Manhua"},{"id":"martial-arts","name":"Martial Arts"},{"id":"sci-fi","name":"Sci-fi"},{"id":"josei","name":"Josei"},{"id":"mecha","name":"Mecha"},{"id":"one-shot","name":"One Shot"}]}"""
private const val MMRSOURCE_7 = """{"language":"en","name":"White Cloud Pavilion","base_url":"https://www.whitecloudpavilion.com/manga/free","supports_latest":false,"item_url":"https://www.whitecloudpavilion.com/manga/free/manga/","categories":[],"tags":"null"}"""
private const val MMRSOURCE_8 = """{"language":"fr","name":"Scan FR","base_url":"https://www.scan-fr.io","supports_latest":false,"item_url":"https://www.scan-fr.co/manga/","categories":[{"id":"1","name":"Comedy"},{"id":"2","name":"Doujinshi"},{"id":"3","name":"Drama"},{"id":"4","name":"Ecchi"},{"id":"5","name":"Fantasy"},{"id":"6","name":"Gender Bender"},{"id":"7","name":"Josei"},{"id":"8","name":"Mature"},{"id":"9","name":"Mecha"},{"id":"10","name":"Mystery"},{"id":"11","name":"One Shot"},{"id":"12","name":"Psychological"},{"id":"13","name":"Romance"},{"id":"14","name":"School Life"},{"id":"15","name":"Sci-fi"},{"id":"16","name":"Seinen"},{"id":"17","name":"Shoujo"},{"id":"18","name":"Shoujo Ai"},{"id":"19","name":"Shounen"},{"id":"20","name":"Shounen Ai"},{"id":"21","name":"Slice of Life"},{"id":"22","name":"Sports"},{"id":"23","name":"Supernatural"},{"id":"24","name":"Tragedy"},{"id":"25","name":"Yaoi"},{"id":"26","name":"Yuri"},{"id":"27","name":"Comics"},{"id":"28","name":"Autre"},{"id":"29","name":"BD Occidentale"},{"id":"30","name":"Manhwa"}],"tags":"null"}"""
private const val MMRSOURCE_9 = """{"language":"fr","name":"Scan VF","base_url":"https://www.scan-vf.co","supports_latest":false,"item_url":"https://www.scan-vf.net/","categories":[],"tags":"null"}"""
private const val MMRSOURCE_10 = """{"language":"id","name":"Komikid","base_url":"http://www.komikid.com","supports_latest":false,"item_url":"https://www.komikid.com/manga/","categories":[],"tags":"null"}"""
private const val MMRSOURCE_10 = """{"language":"id","name":"Komikid","base_url":"https://www.komikid.com","supports_latest":false,"item_url":"https://www.komikid.com/manga/","categories":[],"tags":"null"}"""
private const val MMRSOURCE_11 = """{"language":"pl","name":"ToraScans","base_url":"http://torascans.pl","supports_latest":false,"item_url":"http://torascans.pl/manga/","categories":[{"id":"1","name":"Akcja"},{"id":"2","name":"Przygodowe"},{"id":"3","name":"Komedia"},{"id":"4","name":"Doujinshi"},{"id":"5","name":"Dramat"},{"id":"6","name":"Ecchi"},{"id":"7","name":"Fantasy"},{"id":"8","name":"Zamiana płci"},{"id":"9","name":"Harem"},{"id":"10","name":"Historyczne"},{"id":"11","name":"Horror"},{"id":"12","name":"Josei"},{"id":"13","name":"Sztuki walki"},{"id":"14","name":"Dla dorosłych"},{"id":"15","name":"Mecha"},{"id":"16","name":"Tajemnica"},{"id":"17","name":"Psychologiczne"},{"id":"18","name":"Romans"},{"id":"19","name":"Szkolne życie"},{"id":"20","name":"S-F"},{"id":"21","name":"Seinen"},{"id":"22","name":"Shoujo"},{"id":"23","name":"Shoujo Ai"},{"id":"24","name":"Shounen"},{"id":"25","name":"Shounen Ai"},{"id":"26","name":"Okruchy życia"},{"id":"27","name":"Sportowe"},{"id":"28","name":"Supermoce"},{"id":"29","name":"Tragedia"},{"id":"30","name":"Yaoi"},{"id":"31","name":"Yuri"},{"id":"32","name":"Smut"},{"id":"33","name":"Isekai"}],"tags":"null"}"""
private const val MMRSOURCE_12 = """{"language":"pt","name":"Comic Space","base_url":"https://www.comicspace.com.br","supports_latest":false,"item_url":"http://acomic.space/manga/","categories":[],"tags":"null"}"""
private const val MMRSOURCE_13 = """{"language":"pt","name":"Mangás Yuri","base_url":"https://mangasyuri.net","supports_latest":false,"item_url":"https://mangasyuri.net/manga/","categories":[],"tags":"null"}"""
private const val MMRSOURCE_14 = """{"language":"pl","name":"Dracaena","base_url":"http://dracaena.webd.pl/czytnik","supports_latest":false,"item_url":"http://dracaena.webd.pl/czytnik/manga/","categories":[{"id":"1","name":"Dramat"},{"id":"2","name":"Fantasy"},{"id":"3","name":"Historyczny"},{"id":"4","name":"Komedia"},{"id":"5","name":"Okruchy Życia"},{"id":"6","name":"Romans"},{"id":"7","name":"Shoujo"},{"id":"8","name":"Shounen-ai"},{"id":"9","name":"Sport"},{"id":"10","name":"Tragedia"},{"id":"11","name":"Yaoi"},{"id":"12","name":"Szkolne Życie"},{"id":"13","name":"Nadprzyrodzone moce"},{"id":"14","name":"Psychologiczne"},{"id":"15","name":"Science Fiction"},{"id":"16","name":"Josei"},{"id":"17","name":"Akcja"}],"tags":"null"}"""
private const val MMRSOURCE_14 = """{"language":"pl","name":"Dracaena","base_url":"https://dracaena.webd.pl/czytnik","supports_latest":false,"item_url":"http://dracaena.webd.pl/czytnik/manga/","categories":[{"id":"1","name":"Dramat"},{"id":"2","name":"Fantasy"},{"id":"3","name":"Historyczny"},{"id":"4","name":"Komedia"},{"id":"5","name":"Okruchy Życia"},{"id":"6","name":"Romans"},{"id":"7","name":"Shoujo"},{"id":"8","name":"Shounen-ai"},{"id":"9","name":"Sport"},{"id":"10","name":"Tragedia"},{"id":"11","name":"Yaoi"},{"id":"12","name":"Szkolne Życie"},{"id":"13","name":"Nadprzyrodzone moce"},{"id":"14","name":"Psychologiczne"},{"id":"15","name":"Science Fiction"},{"id":"16","name":"Josei"},{"id":"17","name":"Akcja"}],"tags":"null"}"""
private const val MMRSOURCE_15 = """{"language":"pl","name":"Nikushima","base_url":"http://azbivo.webd.pro","supports_latest":false,"item_url":"http://azbivo.webd.pro/manga/","categories":[{"id":"1","name":"Action"},{"id":"2","name":"Adventure"},{"id":"3","name":"Comedy"},{"id":"4","name":"Doujinshi"},{"id":"5","name":"Drama"},{"id":"6","name":"Ecchi"},{"id":"7","name":"Fantasy"},{"id":"8","name":"Gender Bender"},{"id":"9","name":"Harem"},{"id":"10","name":"Historical"},{"id":"11","name":"Horror"},{"id":"12","name":"Josei"},{"id":"13","name":"Martial Arts"},{"id":"14","name":"Mature"},{"id":"15","name":"Mecha"},{"id":"16","name":"Mystery"},{"id":"17","name":"One Shot"},{"id":"18","name":"Psychological"},{"id":"19","name":"Romance"},{"id":"20","name":"School Life"},{"id":"21","name":"Sci-fi"},{"id":"22","name":"Seinen"},{"id":"23","name":"Shoujo"},{"id":"24","name":"Shounen"},{"id":"25","name":"Slice of Life"},{"id":"26","name":"Sports"},{"id":"27","name":"Supernatural"},{"id":"28","name":"Tragedy"},{"id":"29","name":"Isekai"}],"tags":"null"}"""
private const val MMRSOURCE_16 = """{"language":"ru","name":"Anigai clan","base_url":"http://anigai.ru","supports_latest":false,"item_url":"\u003chtml\u003e\n \u003chead\u003e\u003c/head\u003e\n \u003cbody\u003e\u003c/body\u003e\n\u003c/html\u003e/","categories":[],"tags":"null"}"""
private const val MMRSOURCE_17 = """{"language":"tr","name":"MangaHanta","base_url":"http://mangahanta.com","supports_latest":false,"item_url":"http://mangahanta.com/manga/","categories":[],"tags":[{"id":"tag","name":"-ヒトガタナ-"},{"id":"amber","name":"Amber"},{"id":"amber-manga","name":"Amber manga"},{"id":"amber-oku","name":"Amber oku"},{"id":"amber-turkce-oku","name":"Amber Türkçe Oku"},{"id":"amber-yuno","name":"Amber Yuno"},{"id":"back-stage","name":"Back Stage"},{"id":"ballroom-e-youkoso","name":"Ballroom e Youkoso"},{"id":"beauty-game","name":"Beauty Game"},{"id":"beauty-game-oku","name":"Beauty Game Oku"},{"id":"boku-wa-mari-no-naka","name":"Boku Wa Mari No Naka"},{"id":"full-drive","name":"Full Drive"},{"id":"god-eater-kyuuseishu-no-kikan","name":"God Eater - Kyuuseishu no Kikan"},{"id":"god-eater-the-spiral-fate","name":"God Eater - The Spiral Fate"},{"id":"hanekoi-lion","name":"Hanekoi Lion"},{"id":"happiness","name":"Happiness"},{"id":"happiness-manga-oku","name":"happiness manga oku"},{"id":"happiness-turkce-oku","name":"happiness türkçe oku"},{"id":"hitogatana","name":"Hitogatana"},{"id":"im-in-mari-im-inside-mari","name":"ぼくは麻理のなか I\u0027m in Mari I\u0027m Inside Mari"},{"id":"itsuwaribito-utsuho","name":"Itsuwaribito Utsuho"},{"id":"kaguya-sama-wa-kokurasetai","name":"Kaguya-sama wa Kokurasetai"},{"id":"les-memoires-de-vanitas","name":"Les Mémoires de Vanitas"},{"id":"mahouka-koukou-no-rettousei-tsuioku-hen","name":"Mahouka Koukou no Rettousei - Tsuioku Hen"},{"id":"manga-oku","name":"manga oku"},{"id":"maou-na-ore-to-fushihime-no-yubiwa","name":"Maou na Ore to Fushihime no Yubiwa"},{"id":"may-i-shake-your-hand","name":"May I shake your hand"},{"id":"may-i-shake-your-hand-oku","name":"may I shake your hand oku"},{"id":"may-i-shake-your-hand-turkce-oku","name":"May I Shake Your Hand türkçe oku"},{"id":"memoir-of-vanitas","name":"Memoir of Vanitas"},{"id":"monster-musume-no-iru-nichijou","name":"Monster Musume No Iru Nichijou"},{"id":"mutluluk","name":"Mutluluk"},{"id":"nanatsu-no-taizai","name":"Nanatsu No Taizai"},{"id":"nanatsu-no-taizai-turkce-oku","name":"Nanatsu no taizai Türkçe oku"},{"id":"oshimi-shuzo","name":"OSHIMI Shuzo"},{"id":"platina-end","name":"Platina End"},{"id":"platinum-end","name":"Platinum End"},{"id":"sousei-manga-oku","name":"sousei manga oku"},{"id":"sousei-no-onmyouji","name":"Sousei no Onmyouji"},{"id":"sousei-no-onmyouji-manga-oku","name":"Sousei no onmyouji manga oku"},{"id":"sousei-no-onmyouji-turkce-oku","name":"sousei no onmyouji türkçe oku"},{"id":"the-case-study-of-vanitas","name":"The Case Study of Vanitas"},{"id":"the-seven-deadly-sins","name":"The Seven Deadly Sins"},{"id":"vanitas-no-carte","name":"Vanitas no Carte"},{"id":"vanitas-no-shuki","name":"Vanitas no Shuki"},{"id":"yedi-olumcul-gunah","name":"Yedi Ölümcül Günah"}]}"""

View File

@ -20,7 +20,7 @@ import javax.net.ssl.X509TrustManager
* This class generates the sources for MMRCMS.
* Credit to nulldev for writing the original shell script
*
# CMS: https://getcyberworks.com/product/manga-reader-cms/
* CMS: https://getcyberworks.com/product/manga-reader-cms/
*/
class Generator {
@ -31,7 +31,7 @@ class Generator {
val dateTime = ZonedDateTime.now()
val formattedDate = dateTime.format(DateTimeFormatter.RFC_1123_DATE_TIME)
buffer.append("package eu.kanade.tachiyomi.extension.all.mmrcms")
buffer.append("\n\n// GENERATED FILE, DO NOT MODIFY!\n//Generated $formattedDate\n\n")
buffer.append("\n\n// GENERATED FILE, DO NOT MODIFY!\n// Generated $formattedDate\n\n")
var number = 1
sources.forEach {
try {
@ -226,23 +226,22 @@ class Generator {
const val DRY_RUN = false
val sources = listOf(
Triple("ar", "مانجا اون لاين", "https://onma.me"),
Triple("en", "Read Comics Online", "http://readcomicsonline.ru"),
Triple("en", "Biamam Scans", "http://biamam.com/"),
Triple("en", "Fallen Angels", "http://manga.fascans.com"),
Triple("en", "Read Comics Online", "https://readcomicsonline.ru"),
Triple("en", "Biamam Scans", "https://biamam.com/"),
Triple("en", "Fallen Angels", "https://manga.fascans.com"),
Triple("en", "Hatigarm Scans", "https://hatigarmscans.net"),
Triple("en", "Mangawww Reader", "http://mangawww.club"),
Triple("en", "White Cloud Pavilion", "http://www.whitecloudpavilion.com/manga/free"),
Triple("fr", "Scan FR", "http://www.scan-fr.io"),
Triple("en", "Mangawww Reader", "https://mangawww.club"),
Triple("en", "White Cloud Pavilion", "https://www.whitecloudpavilion.com/manga/free"),
Triple("fr", "Scan FR", "https://www.scan-fr.io"),
Triple("fr", "Scan VF", "https://www.scan-vf.co"),
Triple("id", "Komikid", "http://www.komikid.com"),
Triple("id", "Komikid", "https://www.komikid.com"),
Triple("pl", "ToraScans", "http://torascans.pl"),
Triple("pt", "Comic Space", "https://www.comicspace.com.br"),
Triple("pt", "Mangás Yuri", "https://mangasyuri.net"),
Triple("pl", "Dracaena", "http://dracaena.webd.pl/czytnik"),
Triple("pl", "Dracaena", "https://dracaena.webd.pl/czytnik"),
Triple("pl", "Nikushima", "http://azbivo.webd.pro"),
Triple("ru", "Anigai clan", "http://anigai.ru"),
Triple("tr", "MangaHanta", "http://mangahanta.com"),
Triple("vi", "Fallen Angels Scans", "http://truyen.fascans.com"),
Triple("vi", "Fallen Angels Scans", "https://truyen.fascans.com"),
Triple("es", "LeoManga", "https://leomanga.me"),
Triple("es", "submanga", "https://submanga.li"),
Triple("es", "Mangadoor", "https://mangadoor.com"),
@ -255,9 +254,10 @@ class Generator {
Triple("other", "HentaiShark", "https://www.hentaishark.com"))
//Changed CMS
//Triple("en", "MangaTreat Scans", "http://www.mangatreat.com"),
//Triple("en", "Chibi Manga Reader", "http://www.cmreader.info"),
//Triple("tr", "Epikmanga", "http://www.epikmanga.com"),
//Triple("en", "Chibi Manga Reader", "https://www.cmreader.info"),
//Triple("tr", "Epikmanga", "https://www.epikmanga.com"),
//Went offline
//Triple("ru", "Anigai clan", "http://anigai.ru"),
//Triple("en", "ZXComic", "http://zxcomic.com"),
//Triple("es", "SOS Scanlation", "https://sosscanlation.com"),
//Triple("es", "MangaCasa", "https://mangacasa.com"))

View File

@ -23,9 +23,9 @@ class MyMangaReaderCMSSources : SourceFactory {
* {
* "language": "en",
* "name": "Example manga reader",
* "base_url": "http://example.com",
* "base_url": "https://example.com",
* "supports_latest": true,
* "item_url": "http://example.com/manga/",
* "item_url": "https://example.com/manga/",
* "categories": [
* {"id": "stuff", "name": "Stuff"},
* {"id": "test", "name": "Test"}

View File

@ -142,7 +142,7 @@ open class MyReadingManga(override val lang: String) : ParsedHttpSource() {
else -> element.attr("data-lazy-src")
}
if (url.startsWith("//")) {
url = "http:$url"
url = "https:$url"
}
return url
}
@ -259,7 +259,7 @@ open class MyReadingManga(override val lang: String) : ParsedHttpSource() {
} else {
arrayOf(Pair("","Open 'Latest' and force restart app"))
}
//Generates the filter lists for app
override fun getFilterList(): FilterList {
val filterList = FilterList(

View File

@ -156,7 +156,7 @@ open class NineManga(override val name: String, override val baseUrl: String, ov
)
// $(document.querySelectorAll('.optionbox .typelist:nth-child(3) ul li.cate_list')).map((i, el)=>`Genre("${$(el).first().text().trim()}", "${$(el).attr("cate_id")}")`).get().sort().join(",\n")
// http://en.ninemanga.com/search/?type=high
// https://en.ninemanga.com/search/?type=high
open fun getGenreList() = listOf(
Genre("4-Koma", "56"),
Genre("Action", "1"),

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: Webtoons'
pkgNameSuffix = 'all.webtoons'
extClass = '.WebtoonsFactory'
extVersionCode = 14
extVersionCode = 15
libVersion = '1.2'
}

View File

@ -13,7 +13,7 @@ abstract class Webtoons(override val lang: String, open val langCode: String = l
override val name = "Webtoons.com"
override val baseUrl = "http://www.webtoons.com"
override val baseUrl = "https://www.webtoons.com"
override val supportsLatest = true
@ -55,10 +55,10 @@ abstract class Webtoons(override val lang: String, open val langCode: String = l
override fun latestUpdatesSelector() = "div#dailyList > $day li > a:has(span:contains(UP))"
override fun headersBuilder(): Headers.Builder = super.headersBuilder()
.add("Referer", "http://www.webtoons.com/$langCode/")
.add("Referer", "https://www.webtoons.com/$langCode/")
protected val mobileHeaders: Headers = super.headersBuilder()
.add("Referer", "http://m.webtoons.com")
.add("Referer", "https://m.webtoons.com")
.build()
override fun popularMangaRequest(page: Int) = GET("$baseUrl/$langCode/dailySchedule", headers)

View File

@ -34,7 +34,7 @@ open class WebtoonsDefault(override val lang: String, override val langCode: Str
return SimpleDateFormat("MMM d, yyyy", Locale.ENGLISH).parse(date).time
}
override fun chapterListRequest(manga: SManga) = GET("http://m.webtoons.com" + manga.url, mobileHeaders)
override fun chapterListRequest(manga: SManga) = GET("https://m.webtoons.com" + manga.url, mobileHeaders)
override fun pageListParse(document: Document) = document.select("div#_imageList > img").mapIndexed { i, element -> Page(i, "", element.attr("data-url")) }
}

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: WP Manga Stream'
pkgNameSuffix = 'all.wpmangastream'
extClass = '.WPMangaStreamFactory'
extVersionCode = 5
extVersionCode = 6
libVersion = '1.2'
}

View File

@ -231,11 +231,11 @@ abstract class WPMangaStream(override val name: String, override val baseUrl: St
when(quality){
LOW_QUALITY -> {
url = url.replace("https://", "")
url = "http://images.weserv.nl/?w=300&q=70&url=" + url
url = "https://images.weserv.nl/?w=300&q=70&url=" + url
}
MID_QUALITY -> {
url = url.replace("https://", "")
url = "http://images.weserv.nl/?w=600&q=70&url=" + url
url = "https://images.weserv.nl/?w=600&q=70&url=" + url
}
}
return url

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: Dragon Ball Multiverse'
pkgNameSuffix = 'en.dragonball_multiverse'
extClass = '.DbMultiverse'
extVersionCode = 2
extVersionCode = 3
libVersion = '1.2'
}

View File

@ -16,7 +16,7 @@ import rx.Observable
open class DbMultiverse : ParsedHttpSource() {
override val name = "Dragon Ball Multiverse"
override val baseUrl = "http://www.dragonball-multiverse.com"
override val baseUrl = "https://www.dragonball-multiverse.com"
override val supportsLatest = false
override val lang = "en"

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: Existential Comics'
pkgNameSuffix = 'en.existentialcomics'
extClass = '.ExistentialComics'
extVersionCode = 1
extVersionCode = 2
libVersion = '1.2'
}

View File

@ -43,7 +43,7 @@ class ExistentialComics : ParsedHttpSource() {
override fun chapterListSelector() = "div#date-comics ul li a:eq(0)"
override fun chapterFromElement(element: Element): SChapter {
val urlregex = "http://existentialcomics.com/comic/(.*)".toRegex()
val urlregex = "https://existentialcomics.com/comic/(.*)".toRegex()
val chapterUrl = element.attr("href")
val number = urlregex.find(chapterUrl)!!.groupValues[1]
@ -55,7 +55,7 @@ class ExistentialComics : ParsedHttpSource() {
return chapter
}
override fun pageListParse(document: Document) = document.select(".comicImg").mapIndexed { i, element -> Page(i, "", "http:" + element.attr("src").substring(1)) }
override fun pageListParse(document: Document) = document.select(".comicImg").mapIndexed { i, element -> Page(i, "", "https:" + element.attr("src").substring(1)) }
override fun imageUrlParse(document: Document) = throw Exception("Not used")

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: Mangaeden'
pkgNameSuffix = 'en.mangaeden'
extClass = '.Mangaeden'
extVersionCode = 3
extVersionCode = 4
libVersion = '1.2'
}

View File

@ -83,7 +83,7 @@ class Mangaeden : ParsedHttpSource() {
description = document.select("h2#mangaDescription").text()
status = parseStatus(infos.select("h4:containsOwn(Status)").first()?.nextSibling().toString())
val img = infos.select("div.mangaImage2 > img").first()?.attr("src")
if (!img.isNullOrBlank()) thumbnail_url = img.let { "http:$it" }
if (!img.isNullOrBlank()) thumbnail_url = img.let { "https:$it" }
}
private fun parseStatus(status: String) = when {
@ -130,7 +130,7 @@ class Mangaeden : ParsedHttpSource() {
}
}
override fun imageUrlParse(document: Document): String = document.select("a#nextA.next > img").first()?.attr("src").let { "http:$it" }
override fun imageUrlParse(document: Document): String = document.select("a#nextA.next > img").first()?.attr("src").let { "https:$it" }
private class NamedId(name: String, val id: Int) : Filter.CheckBox(name)
private class Genre(name: String, val id: String) : Filter.TriState(name)

View File

@ -188,7 +188,7 @@ class Mangahere : ParsedHttpSource() {
} catch (e: ParseException) {
0L
}
}
}
}
override fun pageListRequest(chapter: SChapter): Request {

View File

@ -200,7 +200,7 @@ class MangaLife : HttpSource() {
// Chapters - Mind special cases like decimal chapters (e.g. One Punch Man) and manga with seasons (e.g. The Gamer)
private val dateFormat = SimpleDateFormat("yyyy-MM-dd", Locale.getDefault())
private fun chapterURLEncode(e: String ):String {
var index = ""
val t = e.substring(0,1).toInt()
@ -211,7 +211,7 @@ class MangaLife : HttpSource() {
if (0 != path) {suffix = ".$path"}
return "-chapter-$n$index$suffix.html"
}
private fun chapterImage(e: String): String {
val a = e.substring(1,e.length-1)
val b = e.substring(e.length-1).toInt()
@ -285,7 +285,7 @@ class MangaLife : HttpSource() {
)
// [...document.querySelectorAll("label.triStateCheckBox input")].map(el => `Filter("${el.getAttribute('name')}", "${el.nextSibling.textContent.trim()}")`).join(',\n')
// http://mangalife.co/advanced-search/
// https://manga4life.com/advanced-search/
private fun getGenreList() = listOf(
Genre("Action"),
Genre("Adult"),

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: MangaOwl'
pkgNameSuffix = 'en.mangaowl'
extClass = '.MangaOwl'
extVersionCode = 2
extVersionCode = 3
libVersion = '1.2'
}

View File

@ -15,7 +15,7 @@ class MangaOwl : ParsedHttpSource() {
override val name = "MangaOwl"
override val baseUrl = "http://mangaowl.com"
override val baseUrl = "https://mangaowl.com"
override val lang = "en"

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: MangaPark'
pkgNameSuffix = 'en.mangapark'
extClass = '.MangaPark'
extVersionCode = 9
extVersionCode = 10
libVersion = '1.2'
}

View File

@ -32,7 +32,7 @@ class MangaPark : ParsedHttpSource() {
private val dateFormatTimeOnly = SimpleDateFormat("HH:mm a", Locale.ENGLISH)
private fun cleanUrl(url: String) = if (url.startsWith("//"))
"http:$url"
"https:$url"
else url

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: Mangatown'
pkgNameSuffix = 'en.mangatown'
extClass = '.Mangatown'
extVersionCode = 3
extVersionCode = 4
libVersion = '1.2'
}

View File

@ -19,7 +19,7 @@ class Mangatown : ParsedHttpSource() {
override val name = "Mangatown"
override val baseUrl = "http://www.mangatown.com"
override val baseUrl = "https://www.mangatown.com"
override val lang = "en"

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: Perveden'
pkgNameSuffix = 'en.perveden'
extClass = '.Perveden'
extVersionCode = 2
extVersionCode = 3
libVersion = '1.2'
}

View File

@ -15,7 +15,7 @@ class Perveden : ParsedHttpSource() {
override val name = "PervEden"
override val baseUrl = "http://www.perveden.com"
override val baseUrl = "https://www.perveden.com"
override val lang = "en"
@ -84,7 +84,7 @@ class Perveden : ParsedHttpSource() {
description = document.select("h2#mangaDescription").text()
status = parseStatus(infos.select("h4:containsOwn(Status)").first()?.nextSibling().toString())
val img = infos.select("div.mangaImage2 > img").first()?.attr("src")
if (!img.isNullOrBlank()) thumbnail_url = img.let { "http:$it" }
if (!img.isNullOrBlank()) thumbnail_url = img.let { "https:$it" }
}
private fun parseStatus(status: String) = when {
@ -131,7 +131,7 @@ class Perveden : ParsedHttpSource() {
}
}
override fun imageUrlParse(document: Document): String = document.select("a#nextA.next > img").first()?.attr("src").let { "http:$it" }
override fun imageUrlParse(document: Document): String = document.select("a#nextA.next > img").first()?.attr("src").let { "https:$it" }
private class NamedId(name: String, val id: Int) : Filter.CheckBox(name)
private class TextField(name: String, val key: String) : Filter.Text(name)

View File

@ -191,7 +191,7 @@ class Readmangatoday : ParsedHttpSource() {
)
// [...document.querySelectorAll("ul.manga-cat span")].map(el => `Genre("${el.nextSibling.textContent.trim()}", ${el.getAttribute('data-id')})`).join(',\n')
// http://www.readmanga.today/advanced-search
// https://www.readmng.com/advanced-search
private fun getGenreList() = listOf(
Genre("Action", 2),
Genre("Adventure", 4),

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: Sleepy Panda Scans'
pkgNameSuffix = 'en.sleepypandascans'
extClass = '.SleepyPandaScans'
extVersionCode = 2
extVersionCode = 3
libVersion = '1.2'
}

View File

@ -15,7 +15,7 @@ class SleepyPandaScans : ParsedHttpSource() {
override val name = "Sleepy Panda Scans"
override val baseUrl = "http://sleepypandascans.co"
override val baseUrl = "https://sleepypandascans.co"
override val lang = "en"

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: vgperson'
pkgNameSuffix = 'en.vgperson'
extClass = '.Vgperson'
extVersionCode = 2
extVersionCode = 3
libVersion = '1.2'
}

View File

@ -105,7 +105,7 @@ class Vgperson : ParsedHttpSource() {
"Azure and Claude" -> "buXnlmh.jpg"
"Three Days of Happiness" -> "kL5dvnp.jpg"
else -> null
}?.let { "http://i.imgur.com/$it" }
}?.let { "https://i.imgur.com/$it" }
override fun latestUpdatesSelector() = ""

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: Webcomics'
pkgNameSuffix = 'en.webcomics'
extClass = '.Webcomics'
extVersionCode = 2
extVersionCode = 3
libVersion = '1.2'
}

View File

@ -15,7 +15,7 @@ class Webcomics : ParsedHttpSource() {
override val name = "Webcomics"
override val baseUrl = "http://www.webcomicsapp.com"
override val baseUrl = "https://www.webcomicsapp.com"
override val lang = "en"
@ -26,7 +26,7 @@ class Webcomics : ParsedHttpSource() {
override fun latestUpdatesSelector() = "section.mangas div div.col-md-3"
override fun headersBuilder() = super.headersBuilder()
.add("Referer", "http://www.webcomicsapp.com")
.add("Referer", "https://www.webcomicsapp.com")
override fun popularMangaRequest(page: Int) = GET("$baseUrl/popular.html", headers)
@ -162,7 +162,7 @@ class Webcomics : ParsedHttpSource() {
)
// [...$('.row.wiki-book-nav .col-md-8 ul a')].map(el => `"${el.textContent.trim()}"`).join(',\n')
// http://www.webcomicsapp.com/wiki.html
// https://www.webcomicsapp.com/wiki.html
private fun getGenreList() = arrayOf(
"All",
"Fantasy",

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: HeavenManga'
pkgNameSuffix = 'es.heavenmanga'
extClass = '.HeavenManga'
extVersionCode = 3
extVersionCode = 4
libVersion = '1.2'
}

View File

@ -18,7 +18,7 @@ class HeavenManga : ParsedHttpSource() {
override val name = "HeavenManga"
override val baseUrl = "http://heavenmanga.com"
override val baseUrl = "https://heavenmanga.com"
override val lang = "es"
@ -111,7 +111,7 @@ class HeavenManga : ParsedHttpSource() {
}
}
}
}
return GET(search_url, headers)
@ -240,7 +240,7 @@ class HeavenManga : ParsedHttpSource() {
/**
* Array.from(document.querySelectorAll('.categorias a')).map(a => `Pair("${a.textContent}", "${a.getAttribute('href')}")`).join(',\n')
* on http://heavenmanga.com/top/
* on https://heavenmanga.com/top/
* */
private class GenreFilter : UriPartFilter("Géneros", arrayOf(
Pair("Todo", ""),
@ -331,7 +331,7 @@ class HeavenManga : ParsedHttpSource() {
/**
* Array.from(document.querySelectorAll('.letras a')).map(a => `Pair("${a.textContent}", "${a.getAttribute('href')}")`).join(',\n')
* on http://heavenmanga.com/top/
* on https://heavenmanga.com/top/
* */
private class AlphabeticoFilter : UriPartFilter("Alfabético", arrayOf(
Pair("Todo", ""),
@ -366,7 +366,7 @@ class HeavenManga : ParsedHttpSource() {
/**
* Array.from(document.querySelectorAll('#t li a')).map(a => `Pair("${a.textContent}", "${a.getAttribute('href')}")`).join(',\n')
* on http://heavenmanga.com/top/
* on https://heavenmanga.com/top/
* */
private class ListaCompletasFilter: UriPartFilter("Lista Completa", arrayOf(
Pair("Todo", ""),
@ -390,5 +390,5 @@ class HeavenManga : ParsedHttpSource() {
Filter.Select<String>(displayName, vals.map { it.first }.toTypedArray()) {
fun toUriPart() = vals[state].second
}
}

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: MangaMx & Doujin-Yang'
pkgNameSuffix = 'es.mangamx'
extClass = '.MangaMxFactory'
extVersionCode = 4
extVersionCode = 5
libVersion = '1.2'
}

View File

@ -53,7 +53,7 @@ class DoujinYang: MangaMx() {
override fun pageListParse(response: Response): List<Page> {
return response.body()!!.string().substringAfter(",[").substringBefore("]")
.replace(Regex("""[\\"]"""), "").split(",").let { list ->
val path = "http:" + list[0]
val path = "https:" + list[0]
list.drop(1).mapIndexed { i, img -> Page(i, "", path + img) }
}
}

View File

@ -190,7 +190,7 @@ class HentaiFantasy : ParsedHttpSource() {
// Tags: 47
// $("select[name='tag[]']:eq(0) > option").map((i, el) => `Tag("${$(el).text().trim()}", ${$(el).attr("value")})`).get().sort().join(",\n")
// on http://www.hentaifantasy.it/search/
// on https://www.hentaifantasy.it/search/
private fun getTagList() = listOf(
Tag("Ahegao", 56),
Tag("Anal", 28),

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: Mangaeden'
pkgNameSuffix = 'it.mangaeden'
extClass = '.Mangaeden'
extVersionCode = 3
extVersionCode = 4
libVersion = '1.2'
}

View File

@ -83,7 +83,7 @@ class Mangaeden : ParsedHttpSource() {
description = document.select("h2#mangaDescription").text()
status = parseStatus(infos.select("h4:containsOwn(Stato)").first()?.nextSibling().toString())
val img = infos.select("div.mangaImage2 > img").first()?.attr("src")
if (!img.isNullOrBlank()) thumbnail_url = img.let { "http:$it" }
if (!img.isNullOrBlank()) thumbnail_url = img.let { "https:$it" }
}
private fun parseStatus(status: String) = when {
@ -130,7 +130,7 @@ class Mangaeden : ParsedHttpSource() {
}
}
override fun imageUrlParse(document: Document): String = document.select("a#nextA.next > img").first()?.attr("src").let { "http:$it" }
override fun imageUrlParse(document: Document): String = document.select("a#nextA.next > img").first()?.attr("src").let { "https:$it" }
private class NamedId(name: String, val id: Int) : Filter.CheckBox(name)
private class Genre(name: String, val id: String) : Filter.TriState(name)

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: Perveden'
pkgNameSuffix = 'it.perveden'
extClass = '.Perveden'
extVersionCode = 2
extVersionCode = 3
libVersion = '1.2'
}

View File

@ -15,7 +15,7 @@ class Perveden : ParsedHttpSource() {
override val name = "PervEden"
override val baseUrl = "http://www.perveden.com"
override val baseUrl = "https://www.perveden.com"
override val lang = "it"
@ -84,7 +84,7 @@ class Perveden : ParsedHttpSource() {
description = document.select("h2#mangaDescription").text()
status = parseStatus(infos.select("h4:containsOwn(Stato)").first()?.nextSibling().toString())
val img = infos.select("div.mangaImage2 > img").first()?.attr("src")
if (!img.isNullOrBlank()) thumbnail_url = img.let { "http:$it" }
if (!img.isNullOrBlank()) thumbnail_url = img.let { "https:$it" }
}
private fun parseStatus(status: String) = when {
@ -131,7 +131,7 @@ class Perveden : ParsedHttpSource() {
}
}
override fun imageUrlParse(document: Document): String = document.select("a#nextA.next > img").first()?.attr("src").let { "http:$it" }
override fun imageUrlParse(document: Document): String = document.select("a#nextA.next > img").first()?.attr("src").let { "https:$it" }
private class NamedId(name: String, val id: Int) : Filter.CheckBox(name)
private class TextField(name: String, val key: String) : Filter.Text(name)

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: Desu'
pkgNameSuffix = 'ru.desu'
extClass = '.Desu'
extVersionCode = 4
extVersionCode = 5
libVersion = '1.2'
}

View File

@ -13,7 +13,7 @@ import java.util.*
class Desu : HttpSource() {
override val name = "Desu"
override val baseUrl = "http://desu.me/manga/api"
override val baseUrl = "https://desu.me/manga/api"
override val lang = "ru"

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: Henchan'
pkgNameSuffix = 'ru.henchan'
extClass = '.Henchan'
extVersionCode = 13
extVersionCode = 14
libVersion = '1.2'
}
dependencies {

View File

@ -26,7 +26,7 @@ class Henchan : ParsedHttpSource() {
override val name = "Henchan"
override val baseUrl = "http://h-chan.me"
override val baseUrl = "https://h-chan.me"
private val exhentaiBaseUrl = "http://exhentai-dono.me"

View File

@ -236,7 +236,7 @@ class Mangachan : ParsedHttpSource() {
/* [...document.querySelectorAll("li.sidetag > a:nth-child(1)")]
* .map(el => `Genre("${el.getAttribute('href').substr(6)}")`).join(',\n')
* on http://mangachan.me/
* on https://mangachan.me/
*/
private fun getGenreList() = listOf(
Genre("18_плюс"),

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: Mangahub'
pkgNameSuffix = 'ru.mangahub'
extClass = '.Mangahub'
extVersionCode = 6
extVersionCode = 7
libVersion = '1.2'
}

View File

@ -116,7 +116,7 @@ open class Mangahub : ParsedHttpSource() {
val r = Regex("""\/\/([\w\.\/])+""")
val pages = mutableListOf<Page>()
for ((index, value) in r.findAll(pictures).withIndex()) {
pages.add(Page(index = index, imageUrl = "http:${value.value}"))
pages.add(Page(index = index, imageUrl = "https:${value.value}"))
}
return pages

View File

@ -234,7 +234,7 @@ class Mintmanga : ParsedHttpSource() {
/* [...document.querySelectorAll("tr.advanced_option:nth-child(1) > td:nth-child(3) span.js-link")]
* .map(el => `Genre("${el.textContent.trim()}", $"{el.getAttribute('onclick')
* .substr(31,el.getAttribute('onclick').length-33)"})`).join(',\n')
* on http://mintmanga.live/search/advanced
* on https://mintmanga.live/search/advanced
*/
override fun getFilterList() = FilterList(
Category(getCategoryList()),

View File

@ -234,7 +234,7 @@ class Readmanga : ParsedHttpSource() {
/* [...document.querySelectorAll("tr.advanced_option:nth-child(1) > td:nth-child(3) span.js-link")]
* .map(el => `Genre("${el.textContent.trim()}", $"{el.getAttribute('onclick')
* .substr(31,el.getAttribute('onclick').length-33)"})`).join(',\n')
* on http://readmanga.me/search/advanced
* on https://readmanga.me/search/advanced
*/
override fun getFilterList() = FilterList(
Category(getCategoryList()),

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: Selfmanga'
pkgNameSuffix = 'ru.selfmanga'
extClass = '.Selfmanga'
extVersionCode = 4
extVersionCode = 5
libVersion = '1.2'
}

View File

@ -18,7 +18,7 @@ class Selfmanga : ParsedHttpSource() {
override val name = "Selfmanga"
override val baseUrl = "http://selfmanga.ru"
override val baseUrl = "https://selfmanga.ru"
override val lang = "ru"
@ -185,7 +185,7 @@ class Selfmanga : ParsedHttpSource() {
/* [...document.querySelectorAll("tr.advanced_option:nth-child(1) > td:nth-child(3) span.js-link")]
* .map(el => `Genre("${el.textContent.trim()}", $"{el.getAttribute('onclick')
* .substr(31,el.getAttribute('onclick').length-33)"})`).join(',\n')
* on http://selfmanga.ru/search/advanced
* on https://selfmanga.ru/search/advanced
*/
override fun getFilterList() = FilterList(
Category(getCategoryList()),
@ -238,4 +238,4 @@ class Selfmanga : ParsedHttpSource() {
Genre("школа", "el_2127"),
Genre("этти", "el_4982")
)
}
}

View File

@ -5,8 +5,8 @@ ext {
appName = 'Tachiyomi: MeDocTruyenTranh'
pkgNameSuffix = 'vi.medoctruyentranh'
extClass = '.MeDocTruyenTranh'
extVersionCode = 1
extVersionCode = 2
libVersion = '1.2'
}
apply from: "$rootDir/common.gradle"
apply from: "$rootDir/common.gradle"

View File

@ -18,7 +18,7 @@ class MeDocTruyenTranh : ParsedHttpSource() {
override val name = "MeDocTruyenTranh"
override val baseUrl = "http://www.medoctruyentranh.net"
override val baseUrl = "https://www.medoctruyentranh.net"
override val lang = "vi"
@ -51,7 +51,7 @@ class MeDocTruyenTranh : ParsedHttpSource() {
return manga
}
override fun searchMangaFromElement(element: Element): SManga {
val manga = SManga.create()
val jsonData = element.ownerDocument().select("#__NEXT_DATA__").first()!!.data()
@ -166,4 +166,4 @@ class MeDocTruyenTranh : ParsedHttpSource() {
override fun latestUpdatesRequest(page: Int) = throw UnsupportedOperationException("This method should not be called!")
override fun chapterFromElement(element: Element): SChapter = throw UnsupportedOperationException("This method should not be called!")
}
}

View File

@ -5,7 +5,7 @@ ext {
appName = 'Tachiyomi: WNACG'
pkgNameSuffix = 'zh.wnacg'
extClass = '.wnacg'
extVersionCode = 1
extVersionCode = 2
libVersion = '1.2'
}

View File

@ -15,7 +15,7 @@ class wnacg : ParsedHttpSource() {
override val baseUrl = "https://www.wnacg.org"
override val lang = "zh"
override val supportsLatest = false
override fun popularMangaSelector() = "div.pic_box"
override fun latestUpdatesSelector() = throw Exception("Not used")
override fun searchMangaSelector() = popularMangaSelector()
@ -85,7 +85,7 @@ class wnacg : ParsedHttpSource() {
val matchresult = regex.findAll(galleryaid).map { it.value }.toList()
val pages = mutableListOf<Page>()
for (i in 0 until matchresult.size){
pages.add(Page(i, "", "http:"+matchresult[i]))
pages.add(Page(i, "", "https:"+matchresult[i]))
}
return pages
}