parent
cfb03b5fd8
commit
e1abb544e4
|
@ -5,7 +5,7 @@ ext {
|
|||
appName = 'Tachiyomi: Dynasty'
|
||||
pkgNameSuffix = 'en.dynasty'
|
||||
extClass = '.DynastyFactory'
|
||||
extVersionCode = 9
|
||||
extVersionCode = 10
|
||||
libVersion = '1.2'
|
||||
}
|
||||
|
||||
|
|
|
@ -2,9 +2,14 @@ package eu.kanade.tachiyomi.extension.en.dynasty
|
|||
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.source.model.FilterList
|
||||
import eu.kanade.tachiyomi.source.model.Page
|
||||
import eu.kanade.tachiyomi.source.model.SChapter
|
||||
import eu.kanade.tachiyomi.source.model.SManga
|
||||
import eu.kanade.tachiyomi.util.asJsoup
|
||||
import okhttp3.Request
|
||||
import okhttp3.Response
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
|
||||
class DynastyDoujins : DynastyScans() {
|
||||
|
||||
|
@ -12,20 +17,60 @@ class DynastyDoujins : DynastyScans() {
|
|||
|
||||
override fun popularMangaInitialUrl() = "$baseUrl/doujins?view=cover"
|
||||
|
||||
override fun popularMangaFromElement(element: Element): SManga {
|
||||
return super.popularMangaFromElement(element).apply {
|
||||
thumbnail_url = element.select("img").attr("abs:src").let {
|
||||
if (it.contains("cover_missing")) {
|
||||
null
|
||||
} else {
|
||||
it
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request {
|
||||
return GET("$baseUrl/search?q=$query&classes%5B%5D=Doujin&sort=&page=$page", headers)
|
||||
}
|
||||
|
||||
override fun mangaDetailsParse(document: Document): SManga {
|
||||
val manga = SManga.create()
|
||||
super.mangaDetailsParse(document)
|
||||
parseThumbnail(manga)
|
||||
manga.author = ".."
|
||||
manga.status = SManga.UNKNOWN
|
||||
val manga = SManga.create().apply {
|
||||
thumbnail_url = document.select("a.thumbnail img").firstOrNull()?.attr("abs:src")
|
||||
?.replace("/thumb/", "/medium/")
|
||||
}
|
||||
parseGenres(document, manga)
|
||||
return manga
|
||||
}
|
||||
|
||||
override fun chapterListSelector() = "div.span9 > dl.chapter-list > dd"
|
||||
|
||||
override fun chapterListParse(response: Response): List<SChapter> {
|
||||
val document = response.asJsoup()
|
||||
|
||||
val chapters = document.select(chapterListSelector()).map { chapterFromElement(it) }.toMutableList()
|
||||
|
||||
document.select("a.thumbnail img").let { images ->
|
||||
if (images.isNotEmpty()) chapters.add(SChapter.create().apply {
|
||||
name = "Images"
|
||||
setUrlWithoutDomain(document.location() + "/images")
|
||||
})
|
||||
}
|
||||
|
||||
return chapters
|
||||
}
|
||||
|
||||
override fun pageListParse(document: Document): List<Page> {
|
||||
return if (document.location().endsWith("/images")) {
|
||||
document.select("a.thumbnail").mapIndexed { i, element ->
|
||||
Page(i, element.attr("abs:href"))
|
||||
}
|
||||
} else {
|
||||
super.pageListParse(document)
|
||||
}
|
||||
}
|
||||
|
||||
override fun imageUrlParse(document: Document): String {
|
||||
return document.select("div.image img").attr("abs:src")
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -74,10 +74,6 @@ abstract class DynastyScans : ParsedHttpSource() {
|
|||
.select("div#main").filter { it.hasText() }.first().childNodes()
|
||||
}
|
||||
|
||||
protected fun parseThumbnail(manga: SManga) {
|
||||
if (_valid.isManga) manga.thumbnail_url = baseUrl + imgList[_valid.pos].substringBefore('?')
|
||||
}
|
||||
|
||||
protected fun parseHeader(document: Document, manga: SManga): Boolean {
|
||||
val elements = document.select("div.tags > h2.tag-title").first().getElementsByTag("a")
|
||||
if (elements.isEmpty()) {
|
||||
|
|
Loading…
Reference in New Issue