mirror of
https://github.com/nextcloud/talk-android
synced 2025-07-10 06:14:10 +01:00
Merge pull request #2485 from nextcloud/bugfix/2418/server-not-supported
Use already fetched capabilities for user
This commit is contained in:
commit
5312bee14d
@ -34,6 +34,7 @@ import androidx.work.WorkManager
|
|||||||
import autodagger.AutoInjector
|
import autodagger.AutoInjector
|
||||||
import com.bluelinelabs.conductor.RouterTransaction
|
import com.bluelinelabs.conductor.RouterTransaction
|
||||||
import com.bluelinelabs.conductor.changehandler.HorizontalChangeHandler
|
import com.bluelinelabs.conductor.changehandler.HorizontalChangeHandler
|
||||||
|
import com.bluelinelabs.logansquare.LoganSquare
|
||||||
import com.nextcloud.talk.R
|
import com.nextcloud.talk.R
|
||||||
import com.nextcloud.talk.api.NcApi
|
import com.nextcloud.talk.api.NcApi
|
||||||
import com.nextcloud.talk.application.NextcloudTalkApplication
|
import com.nextcloud.talk.application.NextcloudTalkApplication
|
||||||
@ -46,6 +47,7 @@ import com.nextcloud.talk.events.EventStatus
|
|||||||
import com.nextcloud.talk.jobs.CapabilitiesWorker
|
import com.nextcloud.talk.jobs.CapabilitiesWorker
|
||||||
import com.nextcloud.talk.jobs.PushRegistrationWorker
|
import com.nextcloud.talk.jobs.PushRegistrationWorker
|
||||||
import com.nextcloud.talk.jobs.SignalingSettingsWorker
|
import com.nextcloud.talk.jobs.SignalingSettingsWorker
|
||||||
|
import com.nextcloud.talk.models.json.capabilities.Capabilities
|
||||||
import com.nextcloud.talk.models.json.capabilities.CapabilitiesOverall
|
import com.nextcloud.talk.models.json.capabilities.CapabilitiesOverall
|
||||||
import com.nextcloud.talk.models.json.generic.Status
|
import com.nextcloud.talk.models.json.generic.Status
|
||||||
import com.nextcloud.talk.models.json.userprofile.UserProfileOverall
|
import com.nextcloud.talk.models.json.userprofile.UserProfileOverall
|
||||||
@ -205,7 +207,7 @@ class AccountVerificationController(args: Bundle? = null) :
|
|||||||
capabilitiesOverall.ocs!!.data!!.capabilities!!.spreedCapability!!.features != null &&
|
capabilitiesOverall.ocs!!.data!!.capabilities!!.spreedCapability!!.features != null &&
|
||||||
!capabilitiesOverall.ocs!!.data!!.capabilities!!.spreedCapability!!.features!!.isEmpty()
|
!capabilitiesOverall.ocs!!.data!!.capabilities!!.spreedCapability!!.features!!.isEmpty()
|
||||||
if (hasTalk) {
|
if (hasTalk) {
|
||||||
fetchProfile(credentials)
|
fetchProfile(credentials, capabilitiesOverall)
|
||||||
} else {
|
} else {
|
||||||
if (activity != null && resources != null) {
|
if (activity != null && resources != null) {
|
||||||
activity!!.runOnUiThread {
|
activity!!.runOnUiThread {
|
||||||
@ -247,7 +249,7 @@ class AccountVerificationController(args: Bundle? = null) :
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun storeProfile(displayName: String?, userId: String) {
|
private fun storeProfile(displayName: String?, userId: String, capabilities: Capabilities) {
|
||||||
userManager.storeProfile(
|
userManager.storeProfile(
|
||||||
username,
|
username,
|
||||||
UserManager.UserAttributes(
|
UserManager.UserAttributes(
|
||||||
@ -258,7 +260,7 @@ class AccountVerificationController(args: Bundle? = null) :
|
|||||||
token = token,
|
token = token,
|
||||||
displayName = displayName,
|
displayName = displayName,
|
||||||
pushConfigurationState = null,
|
pushConfigurationState = null,
|
||||||
capabilities = null,
|
capabilities = LoganSquare.serialize(capabilities),
|
||||||
certificateAlias = appPreferences!!.temporaryClientCertAlias,
|
certificateAlias = appPreferences!!.temporaryClientCertAlias,
|
||||||
externalSignalingServer = null
|
externalSignalingServer = null
|
||||||
)
|
)
|
||||||
@ -300,7 +302,7 @@ class AccountVerificationController(args: Bundle? = null) :
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun fetchProfile(credentials: String) {
|
private fun fetchProfile(credentials: String, capabilities: CapabilitiesOverall) {
|
||||||
ncApi.getUserProfile(
|
ncApi.getUserProfile(
|
||||||
credentials,
|
credentials,
|
||||||
ApiUtils.getUrlForUserProfile(baseUrl)
|
ApiUtils.getUrlForUserProfile(baseUrl)
|
||||||
@ -320,7 +322,11 @@ class AccountVerificationController(args: Bundle? = null) :
|
|||||||
displayName = userProfileOverall.ocs!!.data!!.displayNameAlt
|
displayName = userProfileOverall.ocs!!.data!!.displayNameAlt
|
||||||
}
|
}
|
||||||
if (!TextUtils.isEmpty(displayName)) {
|
if (!TextUtils.isEmpty(displayName)) {
|
||||||
storeProfile(displayName, userProfileOverall.ocs!!.data!!.userId!!)
|
storeProfile(
|
||||||
|
displayName, userProfileOverall.ocs!!.data!!.userId!!,
|
||||||
|
capabilities.ocs!!.data!!
|
||||||
|
.capabilities!!
|
||||||
|
)
|
||||||
} else {
|
} else {
|
||||||
if (activity != null) {
|
if (activity != null) {
|
||||||
activity!!.runOnUiThread {
|
activity!!.runOnUiThread {
|
||||||
|
Loading…
Reference in New Issue
Block a user