This commit is contained in:
Phillip Thelen 2020-08-26 13:10:21 +02:00
parent 31b8d68f9c
commit 6d9f482e2c
2 changed files with 12 additions and 7 deletions

View file

@ -76,7 +76,7 @@ class SocialRepositoryImpl(localRepository: SocialLocalRepository, apiClient: Ap
override fun flagMessage(chatMessage: ChatMessage, additionalInfo: String): Flowable<Void> { override fun flagMessage(chatMessage: ChatMessage, additionalInfo: String): Flowable<Void> {
return when { return when {
chatMessage.id == "" -> Flowable.empty() chatMessage.id.isBlank() -> Flowable.empty()
userID == BuildConfig.ANDROID_TESTING_UUID -> Flowable.empty() userID == BuildConfig.ANDROID_TESTING_UUID -> Flowable.empty()
else -> { else -> {
val data = mutableMapOf<String, String>() val data = mutableMapOf<String, String>()
@ -91,7 +91,7 @@ class SocialRepositoryImpl(localRepository: SocialLocalRepository, apiClient: Ap
} }
override fun likeMessage(chatMessage: ChatMessage): Flowable<ChatMessage> { override fun likeMessage(chatMessage: ChatMessage): Flowable<ChatMessage> {
if (chatMessage.id == "") { if (chatMessage.id.isBlank()) {
return Flowable.empty() return Flowable.empty()
} }
val liked = chatMessage.userLikesMessage(userID) val liked = chatMessage.userLikesMessage(userID)
@ -137,14 +137,14 @@ class SocialRepositoryImpl(localRepository: SocialLocalRepository, apiClient: Ap
} }
override fun getGroup(id: String?): Flowable<Group> { override fun getGroup(id: String?): Flowable<Group> {
if (id == null) { if (id?.isNotBlank() != true) {
return Flowable.empty() return Flowable.empty()
} }
return localRepository.getGroup(id) return localRepository.getGroup(id)
} }
override fun leaveGroup(id: String?, keepChallenges: Boolean): Flowable<Group> { override fun leaveGroup(id: String?, keepChallenges: Boolean): Flowable<Group> {
if (id == null) { if (id?.isNotBlank() != true) {
return Flowable.empty() return Flowable.empty()
} }
return apiClient.leaveGroup(id, if (keepChallenges) "remain-in-challenges" else "leave-challenges") 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<Group> { override fun joinGroup(id: String?): Flowable<Group> {
if (id == null) { if (id?.isNotBlank() != true) {
return Flowable.empty() return Flowable.empty()
} }
return apiClient.joinGroup(id) return apiClient.joinGroup(id)

View file

@ -324,9 +324,14 @@ class ChallengeFormActivity : BaseActivity() {
locationAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item) locationAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item)
compositeSubscription.add(socialRepository.getUserGroups("guild").zipWith(userRepository.getUser() compositeSubscription.add(socialRepository.getUserGroups("guild").zipWith(userRepository.getUser()
.map { it.party?.id ?: "" } .map { "" }
.distinctUntilChanged() .distinctUntilChanged()
.flatMap { socialRepository.getGroup(it) }) .flatMap {
if (it.isBlank()) {
return@flatMap Flowable.empty<Group>()
}
socialRepository.retrieveGroup(it)
})
.subscribe(Consumer { groups -> .subscribe(Consumer { groups ->
val mutableGroups = groups.first.toMutableList() val mutableGroups = groups.first.toMutableList()
if (groups.first.firstOrNull { it.id == "00000000-0000-4000-A000-000000000000" } == null) { if (groups.first.firstOrNull { it.id == "00000000-0000-4000-A000-000000000000" } == null) {