Fix navigation from gem screen to promo info

This commit is contained in:
Phillip Thelen 2020-09-02 12:07:24 +02:00
parent be51217b65
commit 8c61fa7950
2 changed files with 11 additions and 7 deletions

View file

@ -268,11 +268,15 @@ class NavigationDrawerFragment : DialogFragment() {
context?.let { subscriptionItem?.pillBackground = ContextCompat.getDrawable(it, R.drawable.pill_bg_teal) }
}
if (activePromo != null) {
var item: HabiticaDrawerItem? = null
if (activePromo?.promoType == PromoType.GEMS_AMOUNT || activePromo?.promoType == PromoType.GEMS_PRICE) {
val gemPurchaseItem = getItemWithIdentifier(SIDEBAR_GEMS)
gemPurchaseItem?.pillText = context?.getString(R.string.sale)
gemPurchaseItem?.pillBackground = context?.let { activePromo?.pillBackgroundDrawable(it) }
item = getItemWithIdentifier(SIDEBAR_GEMS)
}
if (activePromo?.promoType == PromoType.SUBSCRIPTION) {
item = getItemWithIdentifier(SIDEBAR_GEMS)
}
item?.pillText = context?.getString(R.string.sale)
item?.pillBackground = context?.let { activePromo?.pillBackgroundDrawable(it) }
}
subscriptionItem?.let { updateItem(it) }

View file

@ -13,10 +13,7 @@ import com.habitrpg.android.habitica.components.UserComponent
import com.habitrpg.android.habitica.data.UserRepository
import com.habitrpg.android.habitica.databinding.FragmentGemPurchaseBinding
import com.habitrpg.android.habitica.extensions.addCancelButton
import com.habitrpg.android.habitica.helpers.AppConfigManager
import com.habitrpg.android.habitica.helpers.PurchaseHandler
import com.habitrpg.android.habitica.helpers.PurchaseTypes
import com.habitrpg.android.habitica.helpers.RxErrorHandler
import com.habitrpg.android.habitica.helpers.*
import com.habitrpg.android.habitica.proxy.CrashlyticsProxy
import com.habitrpg.android.habitica.ui.GemPurchaseOptionsView
import com.habitrpg.android.habitica.ui.activities.GemPurchaseActivity
@ -79,6 +76,9 @@ class GemsPurchaseFragment : BaseFragment(), GemPurchaseActivity.CheckoutFragmen
promo.configureGemView(binding.gems21View.binding, 21)
promo.configureGemView(binding.gems42View.binding, 42)
promo.configureGemView(binding.gems84View.binding, 84)
binding.promoBanner.setOnClickListener {
MainNavigationController.navigate(R.id.promoInfoFragment)
}
} else {
binding.promoBanner.visibility = View.GONE
}