Lint fixes
This commit is contained in:
parent
5d5c6016ea
commit
5e05175f8c
|
@ -1,6 +1,10 @@
|
|||
package eu.kanade.tachiyomi.extension.en.existentialcomics
|
||||
|
||||
import eu.kanade.tachiyomi.source.model.*
|
||||
import eu.kanade.tachiyomi.source.model.FilterList
|
||||
import eu.kanade.tachiyomi.source.model.MangasPage
|
||||
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 okhttp3.Request
|
||||
import okhttp3.Response
|
||||
|
@ -79,5 +83,4 @@ class ExistentialComics : ParsedHttpSource() {
|
|||
override fun latestUpdatesRequest(page: Int): Request = throw Exception("Not used")
|
||||
|
||||
override fun latestUpdatesSelector(): String = throw Exception("Not used")
|
||||
|
||||
}
|
||||
|
|
|
@ -1,17 +1,21 @@
|
|||
package eu.kanade.tachiyomi.extension.en.explosm
|
||||
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.source.model.*
|
||||
import eu.kanade.tachiyomi.source.model.FilterList
|
||||
import eu.kanade.tachiyomi.source.model.MangasPage
|
||||
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.HttpSource
|
||||
import eu.kanade.tachiyomi.util.asJsoup
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Locale
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
import okhttp3.Response
|
||||
import org.jsoup.nodes.Document
|
||||
import rx.Observable
|
||||
import org.jsoup.nodes.Element
|
||||
import java.util.Locale
|
||||
import java.text.SimpleDateFormat
|
||||
import rx.Observable
|
||||
|
||||
class Explosm : HttpSource() {
|
||||
|
||||
|
|
|
@ -1,7 +1,10 @@
|
|||
package eu.kanade.tachiyomi.extension.en.gunnerkriggcourt
|
||||
|
||||
import android.util.Log
|
||||
import eu.kanade.tachiyomi.source.model.*
|
||||
import eu.kanade.tachiyomi.source.model.FilterList
|
||||
import eu.kanade.tachiyomi.source.model.MangasPage
|
||||
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 okhttp3.Request
|
||||
import okhttp3.Response
|
||||
|
|
|
@ -1,26 +1,34 @@
|
|||
package eu.kanade.tachiyomi.extension.en.guya
|
||||
|
||||
import android.app.Application
|
||||
import eu.kanade.tachiyomi.source.model.*
|
||||
import eu.kanade.tachiyomi.source.online.HttpSource
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.network.asObservableSuccess
|
||||
import eu.kanade.tachiyomi.source.ConfigurableSource
|
||||
import android.content.SharedPreferences
|
||||
import android.os.Build
|
||||
import android.support.v7.preference.ListPreference
|
||||
import android.support.v7.preference.PreferenceScreen
|
||||
import eu.kanade.tachiyomi.extension.BuildConfig
|
||||
import okhttp3.*
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.network.asObservableSuccess
|
||||
import eu.kanade.tachiyomi.source.ConfigurableSource
|
||||
import eu.kanade.tachiyomi.source.model.FilterList
|
||||
import eu.kanade.tachiyomi.source.model.MangasPage
|
||||
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.HttpSource
|
||||
import java.io.IOException
|
||||
import java.util.HashMap
|
||||
import java.util.concurrent.TimeUnit
|
||||
import okhttp3.Call
|
||||
import okhttp3.Callback
|
||||
import okhttp3.Headers
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
import okhttp3.Response
|
||||
import org.json.JSONArray
|
||||
import org.json.JSONObject
|
||||
import rx.Observable
|
||||
import uy.kohesive.injekt.Injekt
|
||||
import uy.kohesive.injekt.api.get
|
||||
import java.io.IOException
|
||||
import java.util.*
|
||||
import java.util.concurrent.TimeUnit
|
||||
import kotlin.collections.ArrayList
|
||||
|
||||
open class Guya() : ConfigurableSource, HttpSource() {
|
||||
|
||||
|
@ -167,7 +175,6 @@ open class Guya() : ConfigurableSource, HttpSource() {
|
|||
if (mangaDetails.get("slug") == slug) {
|
||||
truncatedJSON.put(mangaTitle, mangaDetails)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return parseManga(truncatedJSON)
|
||||
|
|
|
@ -40,5 +40,4 @@ class GuyaUrlActivity : Activity() {
|
|||
finish()
|
||||
exitProcess(0)
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -2,17 +2,22 @@ package eu.kanade.tachiyomi.extension.en.hentai2read
|
|||
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.network.POST
|
||||
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.MangasPage
|
||||
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.util.asJsoup
|
||||
import java.util.Calendar
|
||||
import java.util.regex.Pattern
|
||||
import okhttp3.FormBody
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
import okhttp3.Response
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import java.util.Calendar
|
||||
import java.util.regex.Pattern
|
||||
|
||||
class Hentai2Read : ParsedHttpSource() {
|
||||
|
||||
|
@ -44,11 +49,11 @@ class Hentai2Read : ParsedHttpSource() {
|
|||
|
||||
override fun latestUpdatesSelector() = popularMangaSelector()
|
||||
|
||||
override fun popularMangaRequest(page: Int)
|
||||
= GET("$baseUrl/hentai-list/all/any/all/most-popular/$page/", headers)
|
||||
override fun popularMangaRequest(page: Int) =
|
||||
GET("$baseUrl/hentai-list/all/any/all/most-popular/$page/", headers)
|
||||
|
||||
override fun latestUpdatesRequest(page: Int)
|
||||
= GET("$baseUrl/hentai-list/all/any/all/last-updated/$page/", headers)
|
||||
override fun latestUpdatesRequest(page: Int) =
|
||||
GET("$baseUrl/hentai-list/all/any/all/last-updated/$page/", headers)
|
||||
|
||||
override fun popularMangaFromElement(element: Element): SManga {
|
||||
return SManga.create().apply {
|
||||
|
@ -99,7 +104,7 @@ class Hentai2Read : ParsedHttpSource() {
|
|||
}
|
||||
POST(searchUrl, headers, form.build())
|
||||
} else {
|
||||
GET("$searchUrl/${base64String}", headers)
|
||||
GET("$searchUrl/$base64String", headers)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1,7 +1,12 @@
|
|||
package eu.kanade.tachiyomi.extension.en.hentaifox
|
||||
|
||||
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.MangasPage
|
||||
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.util.asJsoup
|
||||
import okhttp3.OkHttpClient
|
||||
|
@ -197,5 +202,4 @@ class HentaiFox : ParsedHttpSource() {
|
|||
Filter.Select<String>(displayName, vals.map { it.first }.toTypedArray()) {
|
||||
fun toUriPart() = vals[state].second
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -1,14 +1,17 @@
|
|||
package eu.kanade.tachiyomi.extension.en.hentainexus
|
||||
|
||||
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 java.net.URLEncoder
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import java.lang.StringBuilder
|
||||
import java.net.URLEncoder
|
||||
|
||||
class HentaiNexus : ParsedHttpSource() {
|
||||
|
||||
|
|
|
@ -11,6 +11,10 @@ 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.util.asJsoup
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Date
|
||||
import java.util.Locale
|
||||
import java.util.concurrent.TimeUnit
|
||||
import okhttp3.Call
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
|
@ -18,10 +22,6 @@ import okhttp3.Response
|
|||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import rx.Observable
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Date
|
||||
import java.util.Locale
|
||||
import java.util.concurrent.TimeUnit
|
||||
|
||||
class Hiveworks : ParsedHttpSource() {
|
||||
|
||||
|
@ -76,7 +76,6 @@ class Hiveworks : ParsedHttpSource() {
|
|||
override fun latestUpdatesFromElement(element: Element) = mangaFromElement(element)
|
||||
override fun latestUpdatesParse(response: Response): MangasPage = popularMangaParse(response)
|
||||
|
||||
|
||||
// Search
|
||||
// Source's website doesn't appear to have a search function; so searching locally
|
||||
|
||||
|
@ -168,7 +167,6 @@ class Hiveworks : ParsedHttpSource() {
|
|||
?.let { mangaFromElement(it) } ?: SManga.create()
|
||||
}
|
||||
|
||||
|
||||
// Chapters
|
||||
|
||||
// Included to call custom error codes
|
||||
|
@ -269,10 +267,13 @@ class Hiveworks : ParsedHttpSource() {
|
|||
private class KidsFilter : Filter.CheckBox("Kids Comics")
|
||||
private class CompletedFilter : Filter.CheckBox("Completed Comics")
|
||||
|
||||
|
||||
private open class UriSelectFilter(displayName: String, val uriParam: String, val vals: Array<Pair<String, String>>,
|
||||
private open class UriSelectFilter(
|
||||
displayName: String,
|
||||
val uriParam: String,
|
||||
val vals: Array<Pair<String, String>>,
|
||||
val firstIsUnspecified: Boolean = true,
|
||||
defaultValue: Int = 0) :
|
||||
defaultValue: Int = 0
|
||||
) :
|
||||
Filter.Select<String>(displayName, vals.map { it.second }.toTypedArray(), defaultValue), UriFilter {
|
||||
override fun addToUri(uri: Uri.Builder) {
|
||||
if (state != 0 || !firstIsUnspecified)
|
||||
|
@ -412,7 +413,4 @@ class Hiveworks : ParsedHttpSource() {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -1,16 +1,20 @@
|
|||
package eu.kanade.tachiyomi.extension.en.holymanga
|
||||
|
||||
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.util.asJsoup
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Locale
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
import okhttp3.Response
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.*
|
||||
|
||||
abstract class HManga(
|
||||
override val name: String,
|
||||
|
|
|
@ -12,4 +12,3 @@ class HMangaFactory : SourceFactory {
|
|||
|
||||
class HolyManga : HManga("HolyManga", "http://w12.holymanga.net")
|
||||
class HeavenManga : HManga("HeavenManga", "http://ww8.heavenmanga.org")
|
||||
|
||||
|
|
|
@ -13,13 +13,13 @@ 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.util.asJsoup
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Locale
|
||||
import java.util.concurrent.TimeUnit
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Response
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.*
|
||||
import java.util.concurrent.TimeUnit
|
||||
|
||||
class Honkaiimpact : ParsedHttpSource() {
|
||||
|
||||
|
@ -43,7 +43,6 @@ class Honkaiimpact : ParsedHttpSource() {
|
|||
override fun popularMangaRequest(page: Int) = GET("$baseUrl/book", headers)
|
||||
override fun popularMangaFromElement(element: Element) = mangaFromElement(element)
|
||||
|
||||
|
||||
// Latest
|
||||
override fun latestUpdatesSelector() = throw Exception("Not Used")
|
||||
|
||||
|
@ -51,7 +50,6 @@ class Honkaiimpact : ParsedHttpSource() {
|
|||
override fun latestUpdatesRequest(page: Int) = throw Exception("Not Used")
|
||||
override fun latestUpdatesFromElement(element: Element) = mangaFromElement(element)
|
||||
|
||||
|
||||
// Search
|
||||
override fun searchMangaSelector() = throw Exception("Not Used")
|
||||
|
||||
|
@ -112,6 +110,4 @@ class Honkaiimpact : ParsedHttpSource() {
|
|||
|
||||
override fun pageListParse(document: Document) = throw Exception("Not Used")
|
||||
override fun imageUrlParse(document: Document) = throw Exception("Not Used")
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -10,6 +10,8 @@ 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 java.text.SimpleDateFormat
|
||||
import java.util.regex.Pattern
|
||||
import okhttp3.FormBody
|
||||
import okhttp3.Headers
|
||||
import okhttp3.OkHttpClient
|
||||
|
@ -18,8 +20,6 @@ import okhttp3.Response
|
|||
import org.jsoup.Jsoup
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.regex.Pattern
|
||||
|
||||
class Kissmanga : ParsedHttpSource() {
|
||||
|
||||
|
|
|
@ -2,7 +2,11 @@ package eu.kanade.tachiyomi.extension.en.latisbooks
|
|||
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.network.asObservableSuccess
|
||||
import eu.kanade.tachiyomi.source.model.*
|
||||
import eu.kanade.tachiyomi.source.model.FilterList
|
||||
import eu.kanade.tachiyomi.source.model.MangasPage
|
||||
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.HttpSource
|
||||
import eu.kanade.tachiyomi.util.asJsoup
|
||||
import okhttp3.OkHttpClient
|
||||
|
|
|
@ -1,18 +1,21 @@
|
|||
package eu.kanade.tachiyomi.extension.en.mangacruzers
|
||||
|
||||
import android.net.Uri
|
||||
import android.util.Log
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.source.model.*
|
||||
import eu.kanade.tachiyomi.source.model.FilterList
|
||||
import eu.kanade.tachiyomi.source.model.MangasPage
|
||||
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.util.asJsoup
|
||||
import okhttp3.*
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Locale
|
||||
import java.util.concurrent.TimeUnit
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
import okhttp3.Response
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.*
|
||||
import java.util.concurrent.TimeUnit
|
||||
|
||||
|
||||
class mangacruzers : ParsedHttpSource() {
|
||||
|
||||
|
@ -40,7 +43,6 @@ class mangacruzers : ParsedHttpSource() {
|
|||
override fun latestUpdatesRequest(page: Int) = throw Exception("Not Used")
|
||||
override fun searchMangaRequest(page: Int, query: String, filters: FilterList) = throw Exception("Not Used")
|
||||
|
||||
|
||||
override fun popularMangaParse(response: Response): MangasPage {
|
||||
val document = response.asJsoup()
|
||||
val mangas = mutableListOf<SManga>()
|
||||
|
@ -49,7 +51,6 @@ class mangacruzers : ParsedHttpSource() {
|
|||
mangas.add(mangaFromElement(element[i]))
|
||||
}
|
||||
return MangasPage(mangas, false)
|
||||
|
||||
}
|
||||
|
||||
override fun mangaDetailsRequest(manga: SManga) = chapterListRequest(manga)
|
||||
|
@ -114,5 +115,3 @@ class mangacruzers : ParsedHttpSource() {
|
|||
override fun imageUrlRequest(page: Page) = throw Exception("Not used")
|
||||
override fun imageUrlParse(document: Document) = throw Exception("Not used")
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -6,14 +6,18 @@ import com.github.salomonbrys.kotson.string
|
|||
import com.google.gson.JsonElement
|
||||
import com.google.gson.JsonParser
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.source.model.*
|
||||
import eu.kanade.tachiyomi.source.model.FilterList
|
||||
import eu.kanade.tachiyomi.source.model.MangasPage
|
||||
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.HttpSource
|
||||
import eu.kanade.tachiyomi.util.asJsoup
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Locale
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
import okhttp3.Response
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.*
|
||||
|
||||
class Mangadog : HttpSource() {
|
||||
|
||||
|
@ -90,7 +94,6 @@ class Mangadog : HttpSource() {
|
|||
return manga
|
||||
}
|
||||
|
||||
|
||||
override fun chapterListRequest(manga: SManga): Request {
|
||||
val id = manga.url.substringAfterLast("/").substringBefore(".html")
|
||||
return GET("$baseUrl/index/detail/getChapterList?comic_id=$id&page=1", headers)
|
||||
|
|
|
@ -1,15 +1,20 @@
|
|||
package eu.kanade.tachiyomi.extension.en.mangaeden
|
||||
|
||||
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 java.text.ParseException
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Calendar
|
||||
import java.util.Locale
|
||||
import okhttp3.HttpUrl
|
||||
import okhttp3.Request
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import java.text.ParseException
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.*
|
||||
|
||||
class Mangaeden : ParsedHttpSource() {
|
||||
|
||||
|
|
|
@ -1,17 +1,21 @@
|
|||
package eu.kanade.tachiyomi.extension.en.mangafreak
|
||||
|
||||
import android.net.Uri
|
||||
import android.util.Log
|
||||
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 okhttp3.*
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Locale
|
||||
import java.util.concurrent.TimeUnit
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
import okhttp3.Response
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.*
|
||||
import java.util.concurrent.TimeUnit
|
||||
|
||||
|
||||
class Mangafreak : ParsedHttpSource() {
|
||||
override val name: String = "Mangafreak"
|
||||
|
@ -101,7 +105,6 @@ class Mangafreak : ParsedHttpSource() {
|
|||
val glist = document.select("div.series_sub_genre_list a").map { it.text() }
|
||||
genre = glist.joinToString(", ")
|
||||
description = document.select("div.manga_series_description p").text()
|
||||
|
||||
}
|
||||
|
||||
// Chapter
|
||||
|
@ -180,8 +183,4 @@ class Mangafreak : ParsedHttpSource() {
|
|||
Genre("Yaoi"),
|
||||
Genre("Yuri")
|
||||
)
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -12,13 +12,13 @@ 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 java.text.SimpleDateFormat
|
||||
import java.util.Locale
|
||||
import okhttp3.Headers
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Locale
|
||||
|
||||
class Mangahasu : ParsedHttpSource() {
|
||||
|
||||
|
|
|
@ -2,18 +2,24 @@ package eu.kanade.tachiyomi.extension.en.mangahere
|
|||
|
||||
import com.squareup.duktape.Duktape
|
||||
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.util.asJsoup
|
||||
import okhttp3.*
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import java.lang.NumberFormatException
|
||||
import java.lang.UnsupportedOperationException
|
||||
import java.text.ParseException
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.*
|
||||
import kotlin.collections.ArrayList
|
||||
import java.util.Calendar
|
||||
import java.util.Locale
|
||||
import okhttp3.Cookie
|
||||
import okhttp3.CookieJar
|
||||
import okhttp3.HttpUrl
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
|
||||
class Mangahere : ParsedHttpSource() {
|
||||
|
||||
|
@ -39,7 +45,6 @@ class Mangahere : ParsedHttpSource() {
|
|||
.value("1")
|
||||
.build()) }
|
||||
}
|
||||
|
||||
})
|
||||
.build()
|
||||
|
||||
|
@ -100,7 +105,6 @@ class Mangahere : ParsedHttpSource() {
|
|||
url.addEncodedQueryParameter("genres", includeGenres.joinToString(","))
|
||||
.addEncodedQueryParameter("nogenres", excludeGenres.joinToString(","))
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -243,7 +247,7 @@ class Mangahere : ParsedHttpSource() {
|
|||
|
||||
IntRange(1, pagesNumber).map { i ->
|
||||
|
||||
val pageLink = "${pageBase}/chapterfun.ashx?cid=$chapterId&page=$i&key=$secretKey"
|
||||
val pageLink = "$pageBase/chapterfun.ashx?cid=$chapterId&page=$i&key=$secretKey"
|
||||
|
||||
var responseText = ""
|
||||
|
||||
|
@ -267,7 +271,6 @@ class Mangahere : ParsedHttpSource() {
|
|||
break
|
||||
else
|
||||
secretKey = ""
|
||||
|
||||
}
|
||||
|
||||
val deobfuscatedScript = duktape.evaluate(responseText.removePrefix("eval")).toString()
|
||||
|
@ -281,7 +284,6 @@ class Mangahere : ParsedHttpSource() {
|
|||
val imageLink = deobfuscatedScript.substring(imageLinkStartPos, imageLinkEndPos)
|
||||
|
||||
Page(i - 1, "", "https:$baseLink$imageLink")
|
||||
|
||||
}
|
||||
}
|
||||
.dropLastIfBroken()
|
||||
|
@ -303,7 +305,6 @@ class Mangahere : ParsedHttpSource() {
|
|||
secretKeyStartLoc, secretKeyEndLoc)
|
||||
|
||||
return duktape.evaluate(secretKeyResultScript).toString()
|
||||
|
||||
}
|
||||
|
||||
override fun imageUrlParse(document: Document): String = throw UnsupportedOperationException("Not used")
|
||||
|
@ -367,5 +368,4 @@ class Mangahere : ParsedHttpSource() {
|
|||
Genre("Shotacon", 35),
|
||||
Genre("Lolicon", 36)
|
||||
)
|
||||
|
||||
}
|
||||
|
|
|
@ -2,25 +2,29 @@ package eu.kanade.tachiyomi.extension.en.mangahub
|
|||
|
||||
import com.github.salomonbrys.kotson.fromJson
|
||||
import com.github.salomonbrys.kotson.get
|
||||
import com.github.salomonbrys.kotson.string
|
||||
import com.github.salomonbrys.kotson.keys
|
||||
import com.github.salomonbrys.kotson.string
|
||||
import com.google.gson.Gson
|
||||
import com.google.gson.JsonObject
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.network.POST
|
||||
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 okhttp3.Request
|
||||
import okhttp3.HttpUrl
|
||||
import okhttp3.RequestBody
|
||||
import okhttp3.Response
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import java.net.URL
|
||||
import java.text.ParseException
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Calendar
|
||||
import java.util.Locale
|
||||
import okhttp3.HttpUrl
|
||||
import okhttp3.Request
|
||||
import okhttp3.RequestBody
|
||||
import okhttp3.Response
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
|
||||
class Mangahub : ParsedHttpSource() {
|
||||
|
||||
|
|
|
@ -2,21 +2,17 @@ package eu.kanade.tachiyomi.extension.en.mangajar
|
|||
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.source.model.FilterList
|
||||
import eu.kanade.tachiyomi.source.model.MangasPage
|
||||
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.util.asJsoup
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
import okhttp3.Response
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import org.jsoup.select.Elements
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Calendar
|
||||
import java.util.Locale
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
|
||||
class MangaJar : ParsedHttpSource() {
|
||||
|
||||
|
@ -96,7 +92,6 @@ class MangaJar: ParsedHttpSource() {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
private fun parseChapterDate(string: String): Long? {
|
||||
return if ("ago" in string) {
|
||||
parseRelativeDate(string) ?: 0
|
||||
|
|
|
@ -1,22 +1,26 @@
|
|||
package eu.kanade.tachiyomi.extension.en.mangakisa
|
||||
|
||||
import android.net.Uri
|
||||
import android.app.Application
|
||||
import android.content.SharedPreferences
|
||||
import android.net.Uri
|
||||
import android.support.v7.preference.ListPreference
|
||||
import android.support.v7.preference.PreferenceScreen
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.source.ConfigurableSource
|
||||
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 okhttp3.*
|
||||
import java.util.Calendar
|
||||
import java.util.concurrent.TimeUnit
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import uy.kohesive.injekt.Injekt
|
||||
import uy.kohesive.injekt.api.get
|
||||
import java.util.*
|
||||
import java.util.concurrent.TimeUnit
|
||||
|
||||
|
||||
class MangaKisa : ConfigurableSource, ParsedHttpSource() {
|
||||
|
||||
|
@ -48,7 +52,6 @@ class MangaKisa : ConfigurableSource, ParsedHttpSource() {
|
|||
val page0 = page - 1
|
||||
val popselect = getpoppref()
|
||||
return GET("$baseUrl/$popselect/$page0", headers)
|
||||
|
||||
}
|
||||
override fun latestUpdatesRequest(page: Int): Request {
|
||||
val page0 = page - 1
|
||||
|
@ -152,9 +155,13 @@ class MangaKisa : ConfigurableSource, ParsedHttpSource() {
|
|||
GenreFilter()
|
||||
)
|
||||
|
||||
private open class UriSelectFilter(displayName: String, val uriParam: String, val vals: Array<Pair<String, String>>,
|
||||
private open class UriSelectFilter(
|
||||
displayName: String,
|
||||
val uriParam: String,
|
||||
val vals: Array<Pair<String, String>>,
|
||||
val firstIsUnspecified: Boolean = true,
|
||||
defaultValue: Int = 0) :
|
||||
defaultValue: Int = 0
|
||||
) :
|
||||
Filter.Select<String>(displayName, vals.map { it.second }.toTypedArray(), defaultValue), UriFilter {
|
||||
override fun addToUri(uri: Uri.Builder) {
|
||||
if (state != 0 || !firstIsUnspecified)
|
||||
|
@ -281,14 +288,10 @@ class MangaKisa : ConfigurableSource, ParsedHttpSource() {
|
|||
private fun getpoppref() = preferences.getString(BROWSE_PREF, "popular")
|
||||
private fun getlastestpref() = preferences.getString(LATEST_PREF, "latest")
|
||||
|
||||
|
||||
companion object {
|
||||
private const val LATEST_PREF_Title = "Latest Manga Selector"
|
||||
private const val LATEST_PREF = "latestmangaurl"
|
||||
private const val BROWSE_PREF_Title = "Popular Manga Selector"
|
||||
private const val BROWSE_PREF = "popularmangaurl"
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -8,23 +8,27 @@ import com.google.gson.JsonArray
|
|||
import com.google.gson.JsonElement
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.network.asObservableSuccess
|
||||
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.MangasPage
|
||||
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.HttpSource
|
||||
import eu.kanade.tachiyomi.util.asJsoup
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Locale
|
||||
import java.util.concurrent.TimeUnit
|
||||
import okhttp3.Headers
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
import okhttp3.Response
|
||||
import rx.Observable
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Locale
|
||||
import java.util.concurrent.TimeUnit
|
||||
|
||||
/**
|
||||
* Source responds to requests with their full database as a JsonArray, then sorts/filters it client-side
|
||||
* We'll take the database on first requests, then do what we want with it
|
||||
*/
|
||||
|
||||
class MangaLife : HttpSource() {
|
||||
|
||||
override val name = "MangaLife"
|
||||
|
@ -324,5 +328,4 @@ class MangaLife : HttpSource() {
|
|||
Genre("Yaoi"),
|
||||
Genre("Yuri")
|
||||
)
|
||||
|
||||
}
|
||||
|
|
|
@ -6,16 +6,18 @@ import com.github.salomonbrys.kotson.string
|
|||
import com.google.gson.Gson
|
||||
import com.google.gson.JsonObject
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.source.model.*
|
||||
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 java.text.SimpleDateFormat
|
||||
import java.util.Calendar
|
||||
import java.util.Locale
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import java.lang.Exception
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Calendar
|
||||
import java.util.Locale
|
||||
|
||||
class MangaLinkz : ParsedHttpSource() {
|
||||
|
||||
|
@ -147,5 +149,4 @@ class MangaLinkz : ParsedHttpSource() {
|
|||
override fun imageUrlParse(document: Document): String = throw UnsupportedOperationException("Not used")
|
||||
|
||||
override fun getFilterList() = FilterList()
|
||||
|
||||
}
|
||||
|
|
|
@ -1,13 +1,17 @@
|
|||
package eu.kanade.tachiyomi.extension.en.mangamainac
|
||||
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.source.model.*
|
||||
import eu.kanade.tachiyomi.source.model.FilterList
|
||||
import eu.kanade.tachiyomi.source.model.MangasPage
|
||||
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 java.util.Calendar
|
||||
import okhttp3.Request
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import rx.Observable
|
||||
import java.util.*
|
||||
|
||||
// MangaManiac is a network of sites built by Animemaniac.co.
|
||||
|
||||
|
@ -31,7 +35,6 @@ class MangaMainac : ParsedHttpSource() {
|
|||
Pair("Shingeki no Kyojin", "https://readshingekinokyojin.com"),
|
||||
Pair("Nanatsu no Taizai", "https://w1.readnanatsutaizai.net")
|
||||
).sortedBy { it.first }.distinctBy { it.second }
|
||||
|
||||
}
|
||||
|
||||
// Info
|
||||
|
@ -55,7 +58,6 @@ class MangaMainac : ParsedHttpSource() {
|
|||
override fun popularMangaSelector(): String = throw Exception("Not used")
|
||||
override fun popularMangaFromElement(element: Element) = throw Exception("Not used")
|
||||
|
||||
|
||||
// Latest
|
||||
override fun latestUpdatesRequest(page: Int): Request = throw Exception("Not used")
|
||||
override fun latestUpdatesNextPageSelector(): String? = throw Exception("Not used")
|
||||
|
@ -137,7 +139,4 @@ class MangaMainac : ParsedHttpSource() {
|
|||
}
|
||||
|
||||
override fun imageUrlParse(document: Document): String = throw Exception("Not Used")
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -1,15 +1,18 @@
|
|||
package eu.kanade.tachiyomi.extension.en.mangaowl
|
||||
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.source.model.*
|
||||
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 java.text.SimpleDateFormat
|
||||
import java.util.Locale
|
||||
import java.util.concurrent.TimeUnit
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Locale
|
||||
import java.util.concurrent.TimeUnit
|
||||
|
||||
class MangaOwl : ParsedHttpSource() {
|
||||
|
||||
|
@ -134,5 +137,4 @@ class MangaOwl : ParsedHttpSource() {
|
|||
override fun imageUrlParse(document: Document): String = throw UnsupportedOperationException("Not used")
|
||||
|
||||
override fun getFilterList() = FilterList()
|
||||
|
||||
}
|
||||
|
|
|
@ -3,9 +3,9 @@ package eu.kanade.tachiyomi.extension.en.mangapark
|
|||
import android.annotation.SuppressLint
|
||||
import android.app.Application
|
||||
import android.content.SharedPreferences
|
||||
import android.net.Uri
|
||||
import android.support.v7.preference.ListPreference
|
||||
import android.support.v7.preference.PreferenceScreen
|
||||
import android.net.Uri
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.source.ConfigurableSource
|
||||
import eu.kanade.tachiyomi.source.model.Filter
|
||||
|
@ -15,6 +15,10 @@ 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.util.asJsoup
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Calendar
|
||||
import java.util.Locale
|
||||
import kotlin.math.absoluteValue
|
||||
import okhttp3.Request
|
||||
import okhttp3.Response
|
||||
import org.json.JSONArray
|
||||
|
@ -22,11 +26,6 @@ import org.jsoup.nodes.Document
|
|||
import org.jsoup.nodes.Element
|
||||
import uy.kohesive.injekt.Injekt
|
||||
import uy.kohesive.injekt.api.get
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Calendar
|
||||
import java.util.Locale
|
||||
import kotlin.math.absoluteValue
|
||||
|
||||
|
||||
class MangaPark : ConfigurableSource, ParsedHttpSource() {
|
||||
|
||||
|
@ -51,7 +50,6 @@ class MangaPark : ConfigurableSource, ParsedHttpSource() {
|
|||
|
||||
override fun popularMangaNextPageSelector() = directoryNextPageSelector
|
||||
|
||||
|
||||
override fun latestUpdatesRequest(page: Int) = GET("$baseUrl/latest")
|
||||
|
||||
override fun latestUpdatesSelector() = directorySelector
|
||||
|
@ -60,7 +58,6 @@ class MangaPark : ConfigurableSource, ParsedHttpSource() {
|
|||
|
||||
override fun latestUpdatesNextPageSelector() = directoryNextPageSelector
|
||||
|
||||
|
||||
override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request {
|
||||
val uri = Uri.parse("$baseUrl/search").buildUpon()
|
||||
uri.appendQueryParameter("q", query)
|
||||
|
@ -446,9 +443,13 @@ class MangaPark : ConfigurableSource, ParsedHttpSource() {
|
|||
* If `firstIsUnspecified` is set to true, if the first entry is selected, nothing will be appended on the the URI.
|
||||
*/
|
||||
// vals: <name, display>
|
||||
private open class UriSelectFilter(displayName: String, val uriParam: String, val vals: Array<Pair<String, String>>,
|
||||
private open class UriSelectFilter(
|
||||
displayName: String,
|
||||
val uriParam: String,
|
||||
val vals: Array<Pair<String, String>>,
|
||||
val firstIsUnspecified: Boolean = true,
|
||||
defaultValue: Int = 0) :
|
||||
defaultValue: Int = 0
|
||||
) :
|
||||
Filter.Select<String>(displayName, vals.map { it.second }.toTypedArray(), defaultValue), UriFilter {
|
||||
override fun addToUri(uri: Uri.Builder) {
|
||||
if (state != 0 || !firstIsUnspecified)
|
||||
|
@ -520,5 +521,4 @@ class MangaPark : ConfigurableSource, ParsedHttpSource() {
|
|||
Pair("Prioritize source: Panda", "panda")
|
||||
)
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -1,16 +1,20 @@
|
|||
package eu.kanade.tachiyomi.extension.en.mangareader
|
||||
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.source.model.*
|
||||
import eu.kanade.tachiyomi.source.model.FilterList
|
||||
import eu.kanade.tachiyomi.source.model.MangasPage
|
||||
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.util.asJsoup
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Locale
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
import okhttp3.Response
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import eu.kanade.tachiyomi.util.asJsoup
|
||||
import okhttp3.Response
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.*
|
||||
|
||||
abstract class MRP(
|
||||
override val name: String,
|
||||
|
@ -173,5 +177,4 @@ abstract class MRP(
|
|||
}
|
||||
|
||||
override fun getFilterList() = FilterList()
|
||||
|
||||
}
|
|
@ -1,18 +1,23 @@
|
|||
package eu.kanade.tachiyomi.extension.en.mangasail
|
||||
|
||||
import com.github.salomonbrys.kotson.fromJson
|
||||
import com.github.salomonbrys.kotson.get
|
||||
import com.google.gson.Gson
|
||||
import com.google.gson.JsonObject
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.source.model.*
|
||||
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.util.asJsoup
|
||||
import okhttp3.*
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Locale
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
import org.jsoup.Jsoup.parse
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.*
|
||||
import com.github.salomonbrys.kotson.*
|
||||
import com.google.gson.Gson
|
||||
import com.google.gson.JsonObject
|
||||
|
||||
class Mangasail : ParsedHttpSource() {
|
||||
|
||||
|
@ -38,7 +43,6 @@ class Mangasail : ParsedHttpSource() {
|
|||
return GET("$baseUrl/directory/hot")
|
||||
} else {
|
||||
return GET("$baseUrl/directory/hot?page=" + (page - 1))
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -177,5 +181,4 @@ class Mangasail : ParsedHttpSource() {
|
|||
override fun imageUrlParse(document: Document): String = throw UnsupportedOperationException("Not used")
|
||||
|
||||
override fun getFilterList() = FilterList()
|
||||
|
||||
}
|
||||
|
|
|
@ -7,14 +7,14 @@ 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 java.text.SimpleDateFormat
|
||||
import java.util.Locale
|
||||
import java.util.regex.Pattern
|
||||
import okhttp3.FormBody
|
||||
import okhttp3.HttpUrl
|
||||
import okhttp3.Request
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.regex.Pattern
|
||||
import java.util.Locale
|
||||
|
||||
class Mangasee : ParsedHttpSource() {
|
||||
|
||||
|
@ -250,5 +250,4 @@ class Mangasee : ParsedHttpSource() {
|
|||
Genre("Yaoi"),
|
||||
Genre("Yuri")
|
||||
)
|
||||
|
||||
}
|
||||
|
|
|
@ -2,18 +2,20 @@ package eu.kanade.tachiyomi.extension.en.mangatown
|
|||
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.network.POST
|
||||
import eu.kanade.tachiyomi.source.model.*
|
||||
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 okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import eu.kanade.tachiyomi.util.asJsoup
|
||||
import okhttp3.Response
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Calendar
|
||||
import java.util.Locale
|
||||
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
import okhttp3.Response
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
|
||||
class Mangatown : ParsedHttpSource() {
|
||||
|
||||
|
@ -133,5 +135,4 @@ class Mangatown : ParsedHttpSource() {
|
|||
override fun imageUrlParse(document: Document): String = throw UnsupportedOperationException("Not used")
|
||||
|
||||
override fun getFilterList() = FilterList()
|
||||
|
||||
}
|
||||
|
|
|
@ -1,17 +1,20 @@
|
|||
package eu.kanade.tachiyomi.extension.en.manmanga
|
||||
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.source.model.*
|
||||
import eu.kanade.tachiyomi.network.asObservableSuccess
|
||||
import eu.kanade.tachiyomi.source.model.FilterList
|
||||
import eu.kanade.tachiyomi.source.model.MangasPage
|
||||
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.util.asJsoup
|
||||
import eu.kanade.tachiyomi.network.asObservableSuccess
|
||||
import java.text.SimpleDateFormat
|
||||
import okhttp3.OkHttpClient
|
||||
import rx.Observable
|
||||
import okhttp3.Response
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import java.text.ParseException
|
||||
import java.text.SimpleDateFormat
|
||||
import rx.Observable
|
||||
|
||||
class ManManga : ParsedHttpSource() {
|
||||
override val name = "Man Manga"
|
||||
|
@ -30,21 +33,20 @@ class ManManga : ParsedHttpSource() {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
override fun popularMangaSelector() = "#scrollBox > #scrollContent > li > a"
|
||||
|
||||
override fun latestUpdatesSelector() = popularMangaSelector()
|
||||
|
||||
override fun searchMangaSelector() = popularMangaSelector()
|
||||
|
||||
override fun popularMangaRequest(page: Int)
|
||||
= GET("$baseUrl/category?sort=hot&page=$page", headers)
|
||||
override fun popularMangaRequest(page: Int) =
|
||||
GET("$baseUrl/category?sort=hot&page=$page", headers)
|
||||
|
||||
override fun latestUpdatesRequest(page: Int)
|
||||
= GET("$baseUrl/category?sort=new&page=$page", headers)
|
||||
override fun latestUpdatesRequest(page: Int) =
|
||||
GET("$baseUrl/category?sort=new&page=$page", headers)
|
||||
|
||||
override fun searchMangaRequest(page: Int, query: String, filters: FilterList)
|
||||
= GET("$baseUrl/search?keyword=$query&page=$page", headers)
|
||||
override fun searchMangaRequest(page: Int, query: String, filters: FilterList) =
|
||||
GET("$baseUrl/search?keyword=$query&page=$page", headers)
|
||||
|
||||
override fun popularMangaFromElement(element: Element) = SManga.create().apply {
|
||||
setUrlWithoutDomain(element.attr("href"))
|
||||
|
|
|
@ -1,18 +1,22 @@
|
|||
package eu.kanade.tachiyomi.extension.en.merakiscans
|
||||
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.source.model.*
|
||||
import eu.kanade.tachiyomi.network.asObservableSuccess
|
||||
import eu.kanade.tachiyomi.source.model.FilterList
|
||||
import eu.kanade.tachiyomi.source.model.MangasPage
|
||||
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.util.asJsoup
|
||||
import eu.kanade.tachiyomi.network.asObservableSuccess
|
||||
import okhttp3.OkHttpClient
|
||||
import rx.Observable
|
||||
import okhttp3.Response
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import java.text.ParseException
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.Locale
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Response
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import rx.Observable
|
||||
|
||||
class MerakiScans : ParsedHttpSource() {
|
||||
override val name = "MerakiScans"
|
||||
|
@ -35,11 +39,11 @@ class MerakiScans : ParsedHttpSource() {
|
|||
|
||||
override fun latestUpdatesSelector() = "#mangalisthome > #mangalistitem > #mangaitem > #manganame > a"
|
||||
|
||||
override fun popularMangaRequest(page: Int)
|
||||
= GET("$baseUrl/manga", headers)
|
||||
override fun popularMangaRequest(page: Int) =
|
||||
GET("$baseUrl/manga", headers)
|
||||
|
||||
override fun latestUpdatesRequest(page: Int)
|
||||
= GET(baseUrl, headers)
|
||||
override fun latestUpdatesRequest(page: Int) =
|
||||
GET(baseUrl, headers)
|
||||
|
||||
override fun popularMangaFromElement(element: Element) = SManga.create().apply {
|
||||
setUrlWithoutDomain(element.attr("href"))
|
||||
|
@ -55,8 +59,8 @@ class MerakiScans : ParsedHttpSource() {
|
|||
|
||||
override fun latestUpdatesNextPageSelector(): String? = null
|
||||
|
||||
override fun searchMangaRequest(page: Int, query: String, filters: FilterList)
|
||||
= GET("$baseUrl/manga", headers)
|
||||
override fun searchMangaRequest(page: Int, query: String, filters: FilterList) =
|
||||
GET("$baseUrl/manga", headers)
|
||||
|
||||
override fun searchMangaSelector() = popularMangaSelector()
|
||||
|
||||
|
|
|
@ -6,9 +6,20 @@ import com.github.salomonbrys.kotson.obj
|
|||
import com.github.salomonbrys.kotson.string
|
||||
import com.google.gson.JsonParser
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.source.model.*
|
||||
import eu.kanade.tachiyomi.source.model.FilterList
|
||||
import eu.kanade.tachiyomi.source.model.MangasPage
|
||||
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 okhttp3.*
|
||||
import okhttp3.CacheControl
|
||||
import okhttp3.Headers
|
||||
import okhttp3.Interceptor
|
||||
import okhttp3.MediaType
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
import okhttp3.Response
|
||||
import okhttp3.ResponseBody
|
||||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import rx.Observable
|
||||
|
@ -55,8 +66,8 @@ class MyAnimeList : ParsedHttpSource() {
|
|||
|
||||
override fun searchMangaParse(response: Response): MangasPage = popularMangaParse(response)
|
||||
|
||||
override fun mangaDetailsRequest(manga: SManga): Request
|
||||
= GET(baseUrl + manga.url, headers, CacheControl.FORCE_NETWORK)
|
||||
override fun mangaDetailsRequest(manga: SManga): Request =
|
||||
GET(baseUrl + manga.url, headers, CacheControl.FORCE_NETWORK)
|
||||
|
||||
override fun mangaDetailsParse(document: Document): SManga = SManga.create().apply {
|
||||
val infoElement = document.select("div#content div.membership-manager table[width='100%'] tr").first()
|
||||
|
|
Loading…
Reference in New Issue