[RU]Desu new domain (#7283)
* [RU]Desu new domain * no lazy * Update Desu.kt --------- Co-authored-by: AwkwardPeak7 <48650614+AwkwardPeak7@users.noreply.github.com>
This commit is contained in:
parent
7c7553dec1
commit
28f152a029
@ -1,7 +1,7 @@
|
|||||||
ext {
|
ext {
|
||||||
extName = 'Desu'
|
extName = 'Desu'
|
||||||
extClass = '.Desu'
|
extClass = '.Desu'
|
||||||
extVersionCode = 25
|
extVersionCode = 26
|
||||||
}
|
}
|
||||||
|
|
||||||
apply from: "$rootDir/common.gradle"
|
apply from: "$rootDir/common.gradle"
|
||||||
|
@ -3,6 +3,7 @@ package eu.kanade.tachiyomi.extension.ru.desu
|
|||||||
import android.app.Application
|
import android.app.Application
|
||||||
import android.content.SharedPreferences
|
import android.content.SharedPreferences
|
||||||
import android.widget.Toast
|
import android.widget.Toast
|
||||||
|
import androidx.preference.EditTextPreference
|
||||||
import androidx.preference.ListPreference
|
import androidx.preference.ListPreference
|
||||||
import eu.kanade.tachiyomi.network.GET
|
import eu.kanade.tachiyomi.network.GET
|
||||||
import eu.kanade.tachiyomi.network.asObservableSuccess
|
import eu.kanade.tachiyomi.network.asObservableSuccess
|
||||||
@ -40,7 +41,22 @@ class Desu : ConfigurableSource, HttpSource() {
|
|||||||
|
|
||||||
override val id: Long = 6684416167758830305
|
override val id: Long = 6684416167758830305
|
||||||
|
|
||||||
override val baseUrl = "https://desu.win"
|
private val preferences: SharedPreferences =
|
||||||
|
Injekt.get<Application>().getSharedPreferences("source_$id", 0x0000)
|
||||||
|
|
||||||
|
init {
|
||||||
|
preferences.getString(DEFAULT_DOMAIN_PREF, null).let { prefDefaultDomain ->
|
||||||
|
if (prefDefaultDomain != DOMAIN_DEFAULT) {
|
||||||
|
preferences.edit()
|
||||||
|
.putString(DOMAIN_TITLE, DOMAIN_DEFAULT)
|
||||||
|
.putString(DEFAULT_DOMAIN_PREF, DOMAIN_DEFAULT)
|
||||||
|
.apply()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private var domain: String = preferences.getString(DOMAIN_TITLE, DOMAIN_DEFAULT)!!
|
||||||
|
override val baseUrl: String = domain
|
||||||
|
|
||||||
override val lang = "ru"
|
override val lang = "ru"
|
||||||
|
|
||||||
@ -48,10 +64,6 @@ class Desu : ConfigurableSource, HttpSource() {
|
|||||||
|
|
||||||
private val json: Json by injectLazy()
|
private val json: Json by injectLazy()
|
||||||
|
|
||||||
private val preferences: SharedPreferences by lazy {
|
|
||||||
Injekt.get<Application>().getSharedPreferences("source_$id", 0x0000)
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun headersBuilder() = Headers.Builder().apply {
|
override fun headersBuilder() = Headers.Builder().apply {
|
||||||
add("User-Agent", "Tachiyomi")
|
add("User-Agent", "Tachiyomi")
|
||||||
add("Referer", baseUrl)
|
add("Referer", baseUrl)
|
||||||
@ -349,6 +361,7 @@ class Desu : ConfigurableSource, HttpSource() {
|
|||||||
)
|
)
|
||||||
|
|
||||||
private var isEng: String? = preferences.getString(LANGUAGE_PREF, "eng")
|
private var isEng: String? = preferences.getString(LANGUAGE_PREF, "eng")
|
||||||
|
|
||||||
override fun setupPreferenceScreen(screen: androidx.preference.PreferenceScreen) {
|
override fun setupPreferenceScreen(screen: androidx.preference.PreferenceScreen) {
|
||||||
val titleLanguagePref = ListPreference(screen.context).apply {
|
val titleLanguagePref = ListPreference(screen.context).apply {
|
||||||
key = LANGUAGE_PREF
|
key = LANGUAGE_PREF
|
||||||
@ -363,13 +376,31 @@ class Desu : ConfigurableSource, HttpSource() {
|
|||||||
true
|
true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
val domainDesuPref = EditTextPreference(screen.context).apply {
|
||||||
|
key = DOMAIN_TITLE
|
||||||
|
title = DOMAIN_TITLE
|
||||||
|
summary = domain
|
||||||
|
setDefaultValue(DOMAIN_DEFAULT)
|
||||||
|
dialogTitle = DOMAIN_TITLE
|
||||||
|
setOnPreferenceChangeListener { _, _ ->
|
||||||
|
val warning = "Для смены домена необходимо перезапустить приложение с полной остановкой."
|
||||||
|
Toast.makeText(screen.context, warning, Toast.LENGTH_LONG).show()
|
||||||
|
true
|
||||||
|
}
|
||||||
|
}
|
||||||
screen.addPreference(titleLanguagePref)
|
screen.addPreference(titleLanguagePref)
|
||||||
|
screen.addPreference(domainDesuPref)
|
||||||
}
|
}
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
const val PREFIX_SLUG_SEARCH = "slug:"
|
const val PREFIX_SLUG_SEARCH = "slug:"
|
||||||
|
|
||||||
private const val LANGUAGE_PREF = "DesuTitleLanguage"
|
private const val LANGUAGE_PREF = "DesuTitleLanguage"
|
||||||
|
|
||||||
private const val API_URL = "/manga/api"
|
private const val API_URL = "/manga/api"
|
||||||
|
|
||||||
|
private const val DOMAIN_TITLE = "Домен"
|
||||||
|
private const val DEFAULT_DOMAIN_PREF = "default_domain"
|
||||||
|
private const val DOMAIN_DEFAULT = "https://desu.store"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user