Fix url(s) (#1327)
This commit is contained in:
@ -5,7 +5,7 @@ ext {
|
|||||||
extName = 'Wcofun'
|
extName = 'Wcofun'
|
||||||
pkgNameSuffix = 'en.wcofun'
|
pkgNameSuffix = 'en.wcofun'
|
||||||
extClass = '.Wcofun'
|
extClass = '.Wcofun'
|
||||||
extVersionCode = 7
|
extVersionCode = 8
|
||||||
libVersion = '13'
|
libVersion = '13'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -18,7 +18,7 @@ import uy.kohesive.injekt.api.get
|
|||||||
import java.util.concurrent.CountDownLatch
|
import java.util.concurrent.CountDownLatch
|
||||||
import java.util.concurrent.TimeUnit
|
import java.util.concurrent.TimeUnit
|
||||||
|
|
||||||
class RedirectInterceptor : Interceptor {
|
class RedirectInterceptor(private val baseUrl: String) : Interceptor {
|
||||||
|
|
||||||
private val context = Injekt.get<Application>()
|
private val context = Injekt.get<Application>()
|
||||||
private val handler by lazy { Handler(Looper.getMainLooper()) }
|
private val handler by lazy { Handler(Looper.getMainLooper()) }
|
||||||
@ -63,7 +63,7 @@ class RedirectInterceptor : Interceptor {
|
|||||||
view: WebView,
|
view: WebView,
|
||||||
request: WebResourceRequest,
|
request: WebResourceRequest,
|
||||||
): WebResourceResponse? {
|
): WebResourceResponse? {
|
||||||
if (request.url.toString().contains("https://www.wcofun.net")) {
|
if (request.url.toString().contains(baseUrl)) {
|
||||||
newRequest = GET(request.url.toString(), request.requestHeaders.toHeaders())
|
newRequest = GET(request.url.toString(), request.requestHeaders.toHeaders())
|
||||||
latch.countDown()
|
latch.countDown()
|
||||||
}
|
}
|
||||||
|
@ -36,7 +36,7 @@ class Wcofun : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
|
|||||||
|
|
||||||
override val name = "Wcofun"
|
override val name = "Wcofun"
|
||||||
|
|
||||||
override val baseUrl = "https://www.wcofun.net"
|
override val baseUrl by lazy { preferences.getString("preferred_domain", "https://www.wcofun.com")!! }
|
||||||
|
|
||||||
override val lang = "en"
|
override val lang = "en"
|
||||||
|
|
||||||
@ -53,7 +53,7 @@ class Wcofun : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
|
|||||||
override fun popularAnimeSelector(): String = "#sidebar_right2 ul.items li"
|
override fun popularAnimeSelector(): String = "#sidebar_right2 ul.items li"
|
||||||
|
|
||||||
override fun popularAnimeRequest(page: Int): Request {
|
override fun popularAnimeRequest(page: Int): Request {
|
||||||
val interceptor = client.newBuilder().addInterceptor(RedirectInterceptor()).build()
|
val interceptor = client.newBuilder().addInterceptor(RedirectInterceptor(baseUrl)).build()
|
||||||
val headers = interceptor.newCall(GET(baseUrl)).execute().request.headers
|
val headers = interceptor.newCall(GET(baseUrl)).execute().request.headers
|
||||||
return GET(baseUrl, headers = headers)
|
return GET(baseUrl, headers = headers)
|
||||||
}
|
}
|
||||||
@ -233,6 +233,21 @@ class Wcofun : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
|
|||||||
override fun latestUpdatesSelector(): String = throw Exception("Not used")
|
override fun latestUpdatesSelector(): String = throw Exception("Not used")
|
||||||
|
|
||||||
override fun setupPreferenceScreen(screen: PreferenceScreen) {
|
override fun setupPreferenceScreen(screen: PreferenceScreen) {
|
||||||
|
val domainPref = ListPreference(screen.context).apply {
|
||||||
|
key = "preferred_domain"
|
||||||
|
title = "Preferred domain (requires app restart)"
|
||||||
|
entries = arrayOf("www.wcofun.com", "www.wcofun.net", "www.wcofun.tv")
|
||||||
|
entryValues = arrayOf("https://www.wcofun.com", "https://www.wcofun.net", "https://www.wcofun.tv")
|
||||||
|
setDefaultValue("https://www.wcofun.com")
|
||||||
|
summary = "%s"
|
||||||
|
|
||||||
|
setOnPreferenceChangeListener { _, newValue ->
|
||||||
|
val selected = newValue as String
|
||||||
|
val index = findIndexOfValue(selected)
|
||||||
|
val entry = entryValues[index] as String
|
||||||
|
preferences.edit().putString(key, entry).commit()
|
||||||
|
}
|
||||||
|
}
|
||||||
val videoQualityPref = ListPreference(screen.context).apply {
|
val videoQualityPref = ListPreference(screen.context).apply {
|
||||||
key = "preferred_quality"
|
key = "preferred_quality"
|
||||||
title = "Preferred quality"
|
title = "Preferred quality"
|
||||||
@ -248,6 +263,7 @@ class Wcofun : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
|
|||||||
preferences.edit().putString(key, entry).commit()
|
preferences.edit().putString(key, entry).commit()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
screen.addPreference(domainPref)
|
||||||
screen.addPreference(videoQualityPref)
|
screen.addPreference(videoQualityPref)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user