add capability check for conversation avatar

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
This commit is contained in:
Marcel Hibbe 2023-04-24 14:09:37 +02:00
parent 5870a30410
commit dc09f21870
No known key found for this signature in database
GPG Key ID: C793F8B59F43CE7B
2 changed files with 21 additions and 11 deletions

View File

@ -199,6 +199,7 @@ class ConversationInfoActivity :
}
private fun setupAvatarOptions() {
if (CapabilitiesUtilNew.isConversationAvatarEndpointAvailable(conversationUser)) {
pickImage = PickImage(this, conversationUser)
binding.avatarUpload.setOnClickListener { pickImage.selectLocal() }
binding.avatarChoose.setOnClickListener { pickImage.selectRemote() }
@ -212,6 +213,9 @@ class ConversationInfoActivity :
viewThemeUtils.material.themeFAB(it.avatarCamera)
viewThemeUtils.material.themeFAB(it.avatarDelete)
}
} else {
binding.avatarButtons.visibility = GONE
}
}
private fun setupActionBar() {
@ -269,9 +273,11 @@ class ConversationInfoActivity :
data
) { uploadAvatar(it.toFile()) }
}
ImagePicker.RESULT_ERROR -> {
Toast.makeText(this, ImagePicker.getError(data), Toast.LENGTH_SHORT).show()
}
else -> {
Log.i(TAG, "Task Cancelled")
}

View File

@ -144,6 +144,10 @@ object CapabilitiesUtilNew {
return user.capabilities?.spreedCapability?.features?.contains("temp-user-avatar-api") == true
}
fun isConversationAvatarEndpointAvailable(user: User): Boolean {
return user.capabilities?.spreedCapability?.features?.contains("avatar") == true
}
fun canEditScopes(user: User): Boolean {
return user.capabilities?.provisioningCapability?.accountPropertyScopesVersion != null &&
user.capabilities!!.provisioningCapability!!.accountPropertyScopesVersion!! > 1