Minor improvements for sync services

This commit is contained in:
len
2016-05-31 16:08:46 +02:00
parent 02a697031f
commit 18cdddf433
12 changed files with 156 additions and 162 deletions

View File

@@ -3,7 +3,7 @@ package eu.kanade.tachiyomi.widget.preference
import android.os.Bundle
import android.view.View
import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.data.mangasync.base.MangaSyncService
import eu.kanade.tachiyomi.data.mangasync.MangaSyncService
import eu.kanade.tachiyomi.ui.setting.SettingsActivity
import eu.kanade.tachiyomi.util.toast
import kotlinx.android.synthetic.main.pref_account_login.view.*
@@ -29,13 +29,13 @@ class MangaSyncLoginDialog : LoginDialogPreference() {
super.onCreate(savedInstanceState)
val syncId = arguments.getInt("key")
sync = (activity as SettingsActivity).syncManager.getService(syncId)
sync = (activity as SettingsActivity).syncManager.getService(syncId)!!
}
override fun setCredentialsOnView(view: View) = with(view) {
dialog_title.text = getString(R.string.login_title, sync.name)
username.setText(preferences.mangaSyncUsername(sync))
password.setText(preferences.mangaSyncPassword(sync))
username.setText(sync.getUsername())
password.setText(sync.getPassword())
}
override fun checkLogin() {
@@ -46,25 +46,20 @@ class MangaSyncLoginDialog : LoginDialogPreference() {
return
login.progress = 1
val user = username.text.toString()
val pass = password.text.toString()
requestSubscription = sync.login(username.text.toString(), password.text.toString())
requestSubscription = sync.login(user, pass)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe({ logged ->
if (logged) {
preferences.setMangaSyncCredentials(sync,
username.text.toString(),
password.text.toString())
dialog.dismiss()
context.toast(R.string.login_success)
} else {
preferences.setMangaSyncCredentials(sync, "", "")
login.progress = -1
}
}, { error ->
.subscribe({ error ->
sync.logout()
login.progress = -1
login.setText(R.string.unknown_error)
}, {
sync.saveCredentials(user, pass)
dialog.dismiss()
context.toast(R.string.login_success)
})
}