From 4e9bcee17f58a485caee0918c4e07384fdcb7e96 Mon Sep 17 00:00:00 2001 From: Phillip Thelen Date: Fri, 26 Feb 2021 13:32:07 +0100 Subject: [PATCH] Fix beard/mustache issues. Fixes #1490 --- .../adapter/CustomizationRecyclerViewAdapter.kt | 16 ++++++++-------- .../customization/AvatarCustomizationFragment.kt | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/CustomizationRecyclerViewAdapter.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/CustomizationRecyclerViewAdapter.kt index 66e340acb..a37746edc 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/CustomizationRecyclerViewAdapter.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/CustomizationRecyclerViewAdapter.kt @@ -44,14 +44,14 @@ class CustomizationRecyclerViewAdapter() : androidx.recyclerview.widget.Recycler this.notifyDataSetChanged() } - var ownedCustomiztations: List = listOf() + var ownedCustomizations: List = listOf() private val selectCustomizationEvents = PublishSubject.create() private val unlockCustomizationEvents = PublishSubject.create() private val unlockSetEvents = PublishSubject.create() fun updateOwnership(ownedCustomizations: List) { - this.ownedCustomiztations = ownedCustomizations + this.ownedCustomizations = ownedCustomizations setCustomizations(unsortedCustomizations) notifyDataSetChanged() } @@ -103,7 +103,7 @@ class CustomizationRecyclerViewAdapter() : androidx.recyclerview.widget.Recycler val today = Date() for (customization in newCustomizationList.reversed()) { if (customization.availableFrom != null || customization.availableUntil != null) { - if ((customization.availableFrom?.compareTo(today) ?: 0 > 0 || customization.availableUntil?.compareTo(today) ?: 0 < 0) && !customization.isUsable(ownedCustomiztations.contains(customization.identifier))) { + if ((customization.availableFrom?.compareTo(today) ?: 0 > 0 || customization.availableUntil?.compareTo(today) ?: 0 < 0) && !customization.isUsable(ownedCustomizations.contains(customization.id))) { continue } } @@ -112,12 +112,12 @@ class CustomizationRecyclerViewAdapter() : androidx.recyclerview.widget.Recycler set.identifier = customization.customizationSet set.text = customization.customizationSetName set.price = customization.setPrice ?: 0 - set.hasPurchasable = !customization.isUsable(ownedCustomiztations.contains(customization.identifier)) + set.hasPurchasable = !customization.isUsable(ownedCustomizations.contains(customization.id)) lastSet = set customizationList.add(set) } customizationList.add(customization) - if (!customization.isUsable(ownedCustomiztations.contains(customization.identifier)) && !lastSet.hasPurchasable) { + if (!customization.isUsable(ownedCustomizations.contains(customization.id)) && !lastSet.hasPurchasable) { lastSet.hasPurchasable = true } } @@ -161,7 +161,7 @@ class CustomizationRecyclerViewAdapter() : androidx.recyclerview.widget.Recycler binding.imageView.layoutParams = params } - if (customization.isUsable(ownedCustomiztations.contains(customization.identifier))) { + if (customization.isUsable(ownedCustomizations.contains(customization.id))) { binding.buyButton.visibility = View.GONE } else { binding.buyButton.visibility = View.VISIBLE @@ -181,7 +181,7 @@ class CustomizationRecyclerViewAdapter() : androidx.recyclerview.widget.Recycler } override fun onClick(v: View) { - if (customization?.isUsable(ownedCustomiztations.contains(customization?.identifier)) == false) { + if (customization?.isUsable(ownedCustomizations.contains(customization?.id)) == false) { if (customization?.customizationSet?.contains("timeTravel") == true) { val dialog = HabiticaAlertDialog(itemView.context) dialog.setMessage(R.string.purchase_from_timetravel_shop) @@ -272,7 +272,7 @@ class CustomizationRecyclerViewAdapter() : androidx.recyclerview.widget.Recycler .forEach { set?.customizations?.add(it) } if (additionalSetItems.isNotEmpty()) { additionalSetItems - .filter { !it.isUsable(ownedCustomiztations.contains(it.identifier)) && it.customizationSet != null && it.customizationSet == set?.identifier } + .filter { !it.isUsable(ownedCustomizations.contains(it.id)) && it.customizationSet == set?.identifier } .forEach { set?.customizations?.add(it) } } set?.let { diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/inventory/customization/AvatarCustomizationFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/inventory/customization/AvatarCustomizationFragment.kt index 2a0eaa97c..81c9d817d 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/inventory/customization/AvatarCustomizationFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/inventory/customization/AvatarCustomizationFragment.kt @@ -138,7 +138,7 @@ class AvatarCustomizationFragment : BaseMainFragment() - user.purchased?.customizations?.filter { it.type == this.type && it.purchased }?.mapTo(ownedCustomizations) { it.key ?: "" } + user.purchased?.customizations?.filter { it.type == this.type && it.purchased }?.mapTo(ownedCustomizations) { it.key + "_" + it.type + "_" + it.category } adapter.updateOwnership(ownedCustomizations) } else { this.loadCustomizations()