diff --git a/app/build.gradle b/app/build.gradle index efee2f7eb..68d477016 100755 --- a/app/build.gradle +++ b/app/build.gradle @@ -40,8 +40,8 @@ android { minSdkVersion 16 targetSdkVersion 26 testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" - versionCode 6801 - versionName "v6.8.1-EH" + versionCode 6802 + versionName "v6.8.2-EH" buildConfigField "String", "COMMIT_COUNT", "\"${getCommitCount()}\"" buildConfigField "String", "COMMIT_SHA", "\"${getGitSha()}\"" diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceKeys.kt b/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceKeys.kt index 4d7f93600..e67d4f922 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceKeys.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceKeys.kt @@ -133,7 +133,9 @@ object PreferenceKeys { const val eh_settingsKey = "eh_settingsKey" + const val eh_sessionCookie = "eh_sessionCookie" + const val eh_enableExHentai = "enable_exhentai" - const val eh_showSettingsUploadWarning = "eh_showSettingsUploadWarning" + const val eh_showSettingsUploadWarning = "eh_showSettingsUploadWarning1" } diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt b/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt index 91f7afb3a..fc942a4ed 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt @@ -200,6 +200,7 @@ class PreferencesHelper(val context: Context) { fun eh_ehSettingsProfile() = rxPrefs.getInteger(Keys.eh_ehSettingsProfile, -1) fun eh_exhSettingsProfile() = rxPrefs.getInteger(Keys.eh_exhSettingsProfile, -1) fun eh_settingsKey() = rxPrefs.getString(Keys.eh_settingsKey, "") + fun eh_sessionCookie() = rxPrefs.getString(Keys.eh_sessionCookie, "") //Lock fun lockHash() = rxPrefs.getString("lock_hash", null) diff --git a/app/src/main/java/eu/kanade/tachiyomi/source/online/all/EHentai.kt b/app/src/main/java/eu/kanade/tachiyomi/source/online/all/EHentai.kt index 7a37b03b3..31d3460c1 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/source/online/all/EHentai.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/source/online/all/EHentai.kt @@ -68,7 +68,7 @@ class EHentai(override val id: Long, //Get title it.select(".itd .it5 a").first()?.apply { title = text() - setUrlWithoutDomain(ExGalleryMetadata.normalizeUrl(attr("href"))) + url = ExGalleryMetadata.normalizeUrl(attr("href")) } //Get image it.select(".itd .it2").first()?.apply { @@ -345,6 +345,10 @@ class EHentai(override val id: Long, val sessionKey = prefs.eh_settingsKey().getOrDefault() if(sessionKey != null) cookies["sk"] = sessionKey + + val sessionCookie = prefs.eh_sessionCookie().getOrDefault() + if(sessionCookie != null) + cookies["s"] = sessionCookie } //Session-less list display mode (for users without ExHentai) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt index dcd6bcb8e..0d0cef6e9 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt @@ -549,6 +549,7 @@ class LibraryController( cleanupSyncState() favoritesSyncSubscription = presenter.favoritesSync.status + .sample(100, TimeUnit.MILLISECONDS) .observeOn(AndroidSchedulers.mainThread()) .subscribe { updateSyncStatus(it) diff --git a/app/src/main/java/exh/metadata/models/ExGalleryMetadata.kt b/app/src/main/java/exh/metadata/models/ExGalleryMetadata.kt index 0f86a8c67..0ebe4aeb7 100755 --- a/app/src/main/java/exh/metadata/models/ExGalleryMetadata.kt +++ b/app/src/main/java/exh/metadata/models/ExGalleryMetadata.kt @@ -168,10 +168,10 @@ open class ExGalleryMetadata : RealmObject(), SearchableGalleryMetadata { pathSegments.filterNot(String::isNullOrBlank) } - fun galleryId(url: String) = splitGalleryUrl(url).let { it[it.size - 2] } + fun galleryId(url: String) = splitGalleryUrl(url)[1] fun galleryToken(url: String) = - splitGalleryUrl(url).last() + splitGalleryUrl(url)[2] fun normalizeUrl(id: String, token: String) = "/g/$id/$token/?nw=always" diff --git a/app/src/main/java/exh/uconfig/EHConfigurator.kt b/app/src/main/java/exh/uconfig/EHConfigurator.kt index d1091c9b4..0bb9e62e9 100644 --- a/app/src/main/java/exh/uconfig/EHConfigurator.kt +++ b/app/src/main/java/exh/uconfig/EHConfigurator.kt @@ -117,9 +117,14 @@ class EHConfigurator { val keyCookie = response.headers().toMultimap()["Set-Cookie"]?.find { it.startsWith("sk=") }?.removePrefix("sk=")?.substringBefore(';') + val sessionCookie = response.headers().toMultimap()["Set-Cookie"]?.find { + it.startsWith("s=") + }?.removePrefix("s=")?.substringBefore(';') if(keyCookie != null) prefs.eh_settingsKey().set(keyCookie) + if(sessionCookie != null) + prefs.eh_sessionCookie().set(sessionCookie) } companion object { diff --git a/app/src/main/res/raw/changelog_release.xml b/app/src/main/res/raw/changelog_release.xml index 32aab458e..2b4c6d70f 100755 --- a/app/src/main/res/raw/changelog_release.xml +++ b/app/src/main/res/raw/changelog_release.xml @@ -1,5 +1,8 @@ + + Fix broken favorites sync in previous release + Various performance improvements Fix app not working at all for some users