From 6d9f482e2ca68f09016b3ecfc1b845265058e4ff Mon Sep 17 00:00:00 2001 From: Phillip Thelen Date: Wed, 26 Aug 2020 13:10:21 +0200 Subject: [PATCH] Fix #1242 --- .../data/implementation/SocialRepositoryImpl.kt | 10 +++++----- .../habitica/ui/activities/ChallengeFormActivity.kt | 9 +++++++-- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/SocialRepositoryImpl.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/SocialRepositoryImpl.kt index 9cbe74eb7..15df600e5 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/SocialRepositoryImpl.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/SocialRepositoryImpl.kt @@ -76,7 +76,7 @@ class SocialRepositoryImpl(localRepository: SocialLocalRepository, apiClient: Ap override fun flagMessage(chatMessage: ChatMessage, additionalInfo: String): Flowable { return when { - chatMessage.id == "" -> Flowable.empty() + chatMessage.id.isBlank() -> Flowable.empty() userID == BuildConfig.ANDROID_TESTING_UUID -> Flowable.empty() else -> { val data = mutableMapOf() @@ -91,7 +91,7 @@ class SocialRepositoryImpl(localRepository: SocialLocalRepository, apiClient: Ap } override fun likeMessage(chatMessage: ChatMessage): Flowable { - if (chatMessage.id == "") { + if (chatMessage.id.isBlank()) { return Flowable.empty() } val liked = chatMessage.userLikesMessage(userID) @@ -137,14 +137,14 @@ class SocialRepositoryImpl(localRepository: SocialLocalRepository, apiClient: Ap } override fun getGroup(id: String?): Flowable { - if (id == null) { + if (id?.isNotBlank() != true) { return Flowable.empty() } return localRepository.getGroup(id) } override fun leaveGroup(id: String?, keepChallenges: Boolean): Flowable { - if (id == null) { + if (id?.isNotBlank() != true) { return Flowable.empty() } return apiClient.leaveGroup(id, if (keepChallenges) "remain-in-challenges" else "leave-challenges") @@ -153,7 +153,7 @@ class SocialRepositoryImpl(localRepository: SocialLocalRepository, apiClient: Ap } override fun joinGroup(id: String?): Flowable { - if (id == null) { + if (id?.isNotBlank() != true) { return Flowable.empty() } return apiClient.joinGroup(id) diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/ChallengeFormActivity.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/ChallengeFormActivity.kt index fe55c9ac2..985d968fe 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/ChallengeFormActivity.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/ChallengeFormActivity.kt @@ -324,9 +324,14 @@ class ChallengeFormActivity : BaseActivity() { locationAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item) compositeSubscription.add(socialRepository.getUserGroups("guild").zipWith(userRepository.getUser() - .map { it.party?.id ?: "" } + .map { "" } .distinctUntilChanged() - .flatMap { socialRepository.getGroup(it) }) + .flatMap { + if (it.isBlank()) { + return@flatMap Flowable.empty() + } + socialRepository.retrieveGroup(it) + }) .subscribe(Consumer { groups -> val mutableGroups = groups.first.toMutableList() if (groups.first.firstOrNull { it.id == "00000000-0000-4000-A000-000000000000" } == null) {