parent
6494d9eaa1
commit
5bad39943e
@ -5,7 +5,7 @@ ext {
|
|||||||
appName = 'Tachiyomi: Manga.ae'
|
appName = 'Tachiyomi: Manga.ae'
|
||||||
pkgNameSuffix = 'ar.mangaae'
|
pkgNameSuffix = 'ar.mangaae'
|
||||||
extClass = '.MangaAe'
|
extClass = '.MangaAe'
|
||||||
extVersionCode = 4
|
extVersionCode = 5
|
||||||
libVersion = '1.2'
|
libVersion = '1.2'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2,7 +2,11 @@ package eu.kanade.tachiyomi.extension.ar.mangaae
|
|||||||
|
|
||||||
import eu.kanade.tachiyomi.lib.ratelimit.RateLimitInterceptor
|
import eu.kanade.tachiyomi.lib.ratelimit.RateLimitInterceptor
|
||||||
import eu.kanade.tachiyomi.network.GET
|
import eu.kanade.tachiyomi.network.GET
|
||||||
import eu.kanade.tachiyomi.source.model.*
|
import eu.kanade.tachiyomi.source.model.Filter
|
||||||
|
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.source.online.ParsedHttpSource
|
import eu.kanade.tachiyomi.source.online.ParsedHttpSource
|
||||||
import okhttp3.Headers
|
import okhttp3.Headers
|
||||||
import okhttp3.HttpUrl
|
import okhttp3.HttpUrl
|
||||||
@ -42,7 +46,11 @@ class MangaAe : ParsedHttpSource() {
|
|||||||
|
|
||||||
override fun popularMangaFromElement(element: Element): SManga = SManga.create().apply {
|
override fun popularMangaFromElement(element: Element): SManga = SManga.create().apply {
|
||||||
val lazysrc = element.select("img").attr("data-pagespeed-lazy-src")
|
val lazysrc = element.select("img").attr("data-pagespeed-lazy-src")
|
||||||
thumbnail_url = if (lazysrc.isNullOrEmpty()) { element.select("img").attr("src") } else { lazysrc }
|
thumbnail_url = if (lazysrc.isNullOrEmpty()) {
|
||||||
|
element.select("img").attr("src")
|
||||||
|
} else {
|
||||||
|
lazysrc
|
||||||
|
}
|
||||||
element.select("div.mangacontainer a.manga")[0].let {
|
element.select("div.mangacontainer a.manga")[0].let {
|
||||||
title = it.text()
|
title = it.text()
|
||||||
setUrlWithoutDomain(it.attr("abs:href"))
|
setUrlWithoutDomain(it.attr("abs:href"))
|
||||||
@ -58,7 +66,11 @@ class MangaAe : ParsedHttpSource() {
|
|||||||
|
|
||||||
override fun latestUpdatesFromElement(element: Element): SManga = SManga.create().apply {
|
override fun latestUpdatesFromElement(element: Element): SManga = SManga.create().apply {
|
||||||
val lazysrc = element.select("img").attr("data-pagespeed-lazy-src")
|
val lazysrc = element.select("img").attr("data-pagespeed-lazy-src")
|
||||||
thumbnail_url = if (lazysrc.isNullOrEmpty()) { element.select("img").attr("src") } else { lazysrc }
|
thumbnail_url = if (lazysrc.isNullOrEmpty()) {
|
||||||
|
element.select("img").attr("src")
|
||||||
|
} else {
|
||||||
|
lazysrc
|
||||||
|
}
|
||||||
element.select("a")[2].let {
|
element.select("a")[2].let {
|
||||||
setUrlWithoutDomain(it.attr("abs:href"))
|
setUrlWithoutDomain(it.attr("abs:href"))
|
||||||
title = it.text()
|
title = it.text()
|
||||||
@ -73,7 +85,7 @@ class MangaAe : ParsedHttpSource() {
|
|||||||
filters.forEach { filter ->
|
filters.forEach { filter ->
|
||||||
when (filter) {
|
when (filter) {
|
||||||
is OrderByFilter -> {
|
is OrderByFilter -> {
|
||||||
if(filter.state != 0) {
|
if (filter.state != 0) {
|
||||||
url += "|order:${filter.toUriPart()}"
|
url += "|order:${filter.toUriPart()}"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -92,7 +104,7 @@ class MangaAe : ParsedHttpSource() {
|
|||||||
// Manga summary page
|
// Manga summary page
|
||||||
override fun mangaDetailsParse(document: Document): SManga = SManga.create().apply {
|
override fun mangaDetailsParse(document: Document): SManga = SManga.create().apply {
|
||||||
val infoElement = document.select("div.indexcontainer").first()
|
val infoElement = document.select("div.indexcontainer").first()
|
||||||
title = infoElement.select("h1.EnglishName").text().removeSurrounding("(",")")
|
title = infoElement.select("h1.EnglishName").text().removeSurrounding("(", ")")
|
||||||
author = infoElement.select("div.manga-details-author h4")[0].text()
|
author = infoElement.select("div.manga-details-author h4")[0].text()
|
||||||
artist = author
|
artist = author
|
||||||
status = parseStatus(infoElement.select("div.manga-details-extended h4")[1].text())
|
status = parseStatus(infoElement.select("div.manga-details-extended h4")[1].text())
|
||||||
@ -115,8 +127,7 @@ class MangaAe : ParsedHttpSource() {
|
|||||||
val chapter = SChapter.create()
|
val chapter = SChapter.create()
|
||||||
element.select("a").let {
|
element.select("a").let {
|
||||||
// use full pages for easier links
|
// use full pages for easier links
|
||||||
chapter.setUrlWithoutDomain(it.attr("href")
|
chapter.setUrlWithoutDomain(it.attr("href").removeSuffix("/1/") + "/0/full")
|
||||||
.replace("/1/", "/0/full"))
|
|
||||||
chapter.name = "\u061C" + it.text() //Add unicode ARABIC LETTER MARK to ensure all titles are right to left
|
chapter.name = "\u061C" + it.text() //Add unicode ARABIC LETTER MARK to ensure all titles are right to left
|
||||||
}
|
}
|
||||||
return chapter
|
return chapter
|
||||||
@ -130,7 +141,8 @@ class MangaAe : ParsedHttpSource() {
|
|||||||
}
|
}
|
||||||
return pages
|
return pages
|
||||||
}
|
}
|
||||||
override fun imageUrlParse(document: Document): String = throw UnsupportedOperationException("Not used")
|
|
||||||
|
override fun imageUrlParse(document: Document): String = throw Exception("Not used")
|
||||||
|
|
||||||
private open class UriPartFilter(displayName: String, val vals: Array<Pair<String, String>>) :
|
private open class UriPartFilter(displayName: String, val vals: Array<Pair<String, String>>) :
|
||||||
Filter.Select<String>(displayName, vals.map { it.first }.toTypedArray()) {
|
Filter.Select<String>(displayName, vals.map { it.first }.toTypedArray()) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user