2021-08-21 08:47:34 +00:00
|
|
|
import 'package:flutter/cupertino.dart';
|
2024-02-23 07:01:12 +00:00
|
|
|
import 'package:photos/core/configuration.dart';
|
2024-04-23 06:24:24 +00:00
|
|
|
import "package:photos/service_locator.dart";
|
2021-08-21 08:47:34 +00:00
|
|
|
import 'package:photos/services/update_service.dart';
|
2023-03-06 05:07:54 +00:00
|
|
|
import "package:photos/ui/payment/store_subscription_page.dart";
|
2021-08-21 08:47:34 +00:00
|
|
|
import 'package:photos/ui/payment/stripe_subscription_page.dart';
|
|
|
|
|
|
|
|
StatefulWidget getSubscriptionPage({bool isOnBoarding = false}) {
|
2021-08-21 14:18:04 +00:00
|
|
|
if (UpdateService.instance.isIndependentFlavor()) {
|
2021-08-21 08:47:34 +00:00
|
|
|
return StripeSubscriptionPage(isOnboarding: isOnBoarding);
|
2021-08-28 05:59:56 +00:00
|
|
|
}
|
2024-04-23 06:24:24 +00:00
|
|
|
if (flagService.enableStripe && _isUserCreatedPostStripeSupport()) {
|
2021-08-28 05:59:56 +00:00
|
|
|
return StripeSubscriptionPage(isOnboarding: isOnBoarding);
|
2021-08-21 08:47:34 +00:00
|
|
|
} else {
|
2023-03-06 05:07:54 +00:00
|
|
|
return StoreSubscriptionPage(isOnboarding: isOnBoarding);
|
2021-08-21 08:47:34 +00:00
|
|
|
}
|
2021-08-28 05:59:56 +00:00
|
|
|
}
|
2024-02-23 07:01:12 +00:00
|
|
|
|
|
|
|
// return true if the user was created after we added support for stripe payment
|
|
|
|
// on frame. We do this check to avoid showing Stripe payment option for earlier
|
|
|
|
// users who might have paid via playStore. This method should be removed once
|
|
|
|
// we have better handling for active play/app store subscription & stripe plans.
|
|
|
|
bool _isUserCreatedPostStripeSupport() {
|
|
|
|
return Configuration.instance.getUserID()! > 1580559962386460;
|
|
|
|
}
|