IAP changes
This commit is contained in:
parent
fcc18414f8
commit
bdfed76c1f
|
|
@ -13,6 +13,7 @@ import 'package:invoiceninja_flutter/redux/auth/auth_actions.dart';
|
||||||
import 'package:invoiceninja_flutter/redux/reports/reports_actions.dart';
|
import 'package:invoiceninja_flutter/redux/reports/reports_actions.dart';
|
||||||
import 'package:invoiceninja_flutter/redux/settings/settings_actions.dart';
|
import 'package:invoiceninja_flutter/redux/settings/settings_actions.dart';
|
||||||
import 'package:invoiceninja_flutter/ui/app/sms_verification.dart';
|
import 'package:invoiceninja_flutter/ui/app/sms_verification.dart';
|
||||||
|
import 'package:invoiceninja_flutter/ui/app/upgrade_dialog.dart';
|
||||||
import 'package:invoiceninja_flutter/utils/app_review.dart';
|
import 'package:invoiceninja_flutter/utils/app_review.dart';
|
||||||
import 'package:material_design_icons_flutter/material_design_icons_flutter.dart';
|
import 'package:material_design_icons_flutter/material_design_icons_flutter.dart';
|
||||||
import 'package:pointer_interceptor/pointer_interceptor.dart';
|
import 'package:pointer_interceptor/pointer_interceptor.dart';
|
||||||
|
|
@ -1311,17 +1312,24 @@ void _showAbout(BuildContext context) async {
|
||||||
.replaceFirst(':value', state.appVersion));
|
.replaceFirst(':value', state.appVersion));
|
||||||
},
|
},
|
||||||
onLongPress: () {
|
onLongPress: () {
|
||||||
showMessageDialog(
|
if (kReleaseMode) {
|
||||||
|
showMessageDialog(
|
||||||
|
context: context,
|
||||||
|
message: FLUTTER_VERSION['channel'].toUpperCase() +
|
||||||
|
' • ' +
|
||||||
|
FLUTTER_VERSION['frameworkVersion'],
|
||||||
|
secondaryActions: [
|
||||||
|
TextButton(
|
||||||
|
child: Text(localization.logout.toUpperCase()),
|
||||||
|
onPressed: () => store.dispatch(UserLogout()),
|
||||||
|
),
|
||||||
|
]);
|
||||||
|
} else {
|
||||||
|
showDialog<void>(
|
||||||
context: context,
|
context: context,
|
||||||
message: FLUTTER_VERSION['channel'].toUpperCase() +
|
builder: (context) => UpgradeDialog(),
|
||||||
' • ' +
|
);
|
||||||
FLUTTER_VERSION['frameworkVersion'],
|
}
|
||||||
secondaryActions: [
|
|
||||||
TextButton(
|
|
||||||
child: Text(localization.logout.toUpperCase()),
|
|
||||||
onPressed: () => store.dispatch(UserLogout()),
|
|
||||||
),
|
|
||||||
]);
|
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
SizedBox(height: 8),
|
SizedBox(height: 8),
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,7 @@ import 'package:in_app_purchase_storekit/in_app_purchase_storekit.dart';
|
||||||
import 'package:in_app_purchase_storekit/store_kit_wrappers.dart';
|
import 'package:in_app_purchase_storekit/store_kit_wrappers.dart';
|
||||||
import 'package:invoiceninja_flutter/constants.dart';
|
import 'package:invoiceninja_flutter/constants.dart';
|
||||||
import 'package:invoiceninja_flutter/data/web_client.dart';
|
import 'package:invoiceninja_flutter/data/web_client.dart';
|
||||||
|
import 'package:invoiceninja_flutter/redux/app/app_actions.dart';
|
||||||
import 'package:invoiceninja_flutter/redux/app/app_state.dart';
|
import 'package:invoiceninja_flutter/redux/app/app_state.dart';
|
||||||
import 'package:invoiceninja_flutter/utils/dialogs.dart';
|
import 'package:invoiceninja_flutter/utils/dialogs.dart';
|
||||||
import 'package:invoiceninja_flutter/utils/localization.dart';
|
import 'package:invoiceninja_flutter/utils/localization.dart';
|
||||||
|
|
@ -284,23 +285,24 @@ class _UpgradeDialogState extends State<UpgradeDialog> {
|
||||||
_purchasePending = false;
|
_purchasePending = false;
|
||||||
});
|
});
|
||||||
|
|
||||||
print('## PLAN UNLOCKED');
|
|
||||||
print('## ${purchaseDetails.purchaseID}');
|
|
||||||
print('## ${purchaseDetails.productID}');
|
|
||||||
|
|
||||||
final store = StoreProvider.of<AppState>(context);
|
final store = StoreProvider.of<AppState>(context);
|
||||||
final state = store.state;
|
final state = store.state;
|
||||||
final url = (state.isStaging ? kAppStagingUrl : kAppProductionUrl) +
|
final url = (state.isStaging ? kAppStagingUrl : kAppProductionUrl) +
|
||||||
'/admin/subscription';
|
'/api/admin/subscription';
|
||||||
|
|
||||||
|
final data = {
|
||||||
|
'inapp_transaction_id': purchaseDetails.purchaseID,
|
||||||
|
'key': state.account.key,
|
||||||
|
'plan': purchaseDetails.productID,
|
||||||
|
'plan_paid':
|
||||||
|
(int.parse(purchaseDetails.transactionDate) / 1000).floor(),
|
||||||
|
};
|
||||||
|
|
||||||
await WebClient().post(url, state.credentials.token,
|
await WebClient().post(url, state.credentials.token,
|
||||||
data: jsonEncode({
|
data: jsonEncode(data));
|
||||||
'inapp_transaction_id': purchaseDetails.purchaseID,
|
|
||||||
'account_id': state.account.id,
|
|
||||||
'plan': purchaseDetails.productID,
|
store.dispatch(RefreshData());
|
||||||
'plan_paid':
|
|
||||||
(int.parse(purchaseDetails.transactionDate) / 1000).floor(),
|
|
||||||
}));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void handleError(IAPError error) {
|
void handleError(IAPError error) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue