Skip to content
Snippets Groups Projects
Commit fd5bb6d6 authored by Taras's avatar Taras
Browse files

Test subscription paiment

parent cc809b80
No related branches found
No related tags found
No related merge requests found
......@@ -4,9 +4,11 @@ import android.content.Context
import dagger.hilt.android.qualifiers.ApplicationContext
import org.futo.circles.auth.R
import org.futo.circles.auth.feature.sign_up.SignUpDataSource
import org.futo.circles.auth.feature.sign_up.SignUpDataSource.Companion.REGISTRATION_SUBSCRIPTION_TYPE
import org.futo.circles.core.extensions.createResult
import org.futo.circles.core.provider.MatrixInstanceProvider
import org.futo.circles.core.utils.HomeServerUtils.buildHomeServerConfigFromDomain
import org.matrix.android.sdk.api.auth.registration.Stage
import javax.inject.Inject
class SelectSignUpTypeDataSource @Inject constructor(
......@@ -26,7 +28,23 @@ class SelectSignUpTypeDataSource @Inject constructor(
val stages = authService.getRegistrationWizard().getAllRegistrationFlows().firstOrNull()
?: throw IllegalArgumentException(context.getString(R.string.wrong_signup_config))
signUpDataSource.startSignUpStages(stages, domain)
val list = mutableListOf<Stage>().apply {
add(
Stage.Other(
true, REGISTRATION_SUBSCRIPTION_TYPE, mapOf(
"subscription_ids" to listOf(
"org.futo.circles.standard01month",
"org.futo.circles.standard12month",
"org.futo.circles.standard01month.eu",
"org.futo.circles.standard12month.eu"
)
)
)
)
addAll(stages)
}
signUpDataSource.startSignUpStages(list, domain)
}
}
\ No newline at end of file
package org.futo.circles.auth.feature.sign_up.subscription_stage
import android.os.Bundle
import android.util.Log
import android.view.View
import androidx.fragment.app.viewModels
import by.kirich1409.viewbindingdelegate.viewBinding
......@@ -11,9 +12,9 @@ import org.futo.circles.auth.feature.sign_up.subscription_stage.list.Subscriptio
import org.futo.circles.auth.model.SubscriptionReceiptData
import org.futo.circles.auth.subscriptions.ItemPurchasedListener
import org.futo.circles.auth.subscriptions.SubscriptionProvider
import org.futo.circles.core.base.fragment.ParentBackPressOwnerFragment
import org.futo.circles.core.extensions.observeResponse
import org.futo.circles.core.extensions.showError
import org.futo.circles.core.base.fragment.ParentBackPressOwnerFragment
import javax.inject.Inject
@AndroidEntryPoint
......@@ -30,6 +31,7 @@ class SubscriptionStageFragment :
subscriptionProvider.getManager(
this, object : ItemPurchasedListener {
override fun onItemPurchased(subscriptionReceiptData: SubscriptionReceiptData) {
Log.d("Mylog", subscriptionReceiptData.toString())
viewModel.validateSubscription(subscriptionReceiptData)
}
......
package org.futo.circles.auth.subscriptions
import android.util.Log
import androidx.fragment.app.Fragment
import androidx.lifecycle.DefaultLifecycleObserver
import androidx.lifecycle.LifecycleOwner
......@@ -208,6 +209,7 @@ class GoogleSubscriptionsManager(
}
private fun Purchase.toSubscriptionReceiptData(): SubscriptionReceiptData? {
Log.d("MyLog", "Full purchase response ${this}")
val productId = products.lastOrNull() ?: return null
return SubscriptionReceiptData(productId, purchaseToken)
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment