NEW: MIH Banner Ads Provider Set Up
This commit is contained in:
@@ -1,5 +1,6 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:go_router/go_router.dart';
|
import 'package:go_router/go_router.dart';
|
||||||
|
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mih_banner_ad_provider.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mzansi_wallet_provider.dart';
|
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mzansi_wallet_provider.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart';
|
import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart';
|
||||||
import 'package:provider/provider.dart';
|
import 'package:provider/provider.dart';
|
||||||
@@ -73,6 +74,9 @@ class _MzansiInnovationHubState extends State<MzansiInnovationHub> {
|
|||||||
ChangeNotifierProvider(
|
ChangeNotifierProvider(
|
||||||
create: (context) => MzansiWalletProvider(),
|
create: (context) => MzansiWalletProvider(),
|
||||||
),
|
),
|
||||||
|
ChangeNotifierProvider(
|
||||||
|
create: (context) => MihBannerAdProvider(),
|
||||||
|
),
|
||||||
],
|
],
|
||||||
child: MaterialApp.router(
|
child: MaterialApp.router(
|
||||||
title: getTitle(),
|
title: getTitle(),
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:google_mobile_ads/google_mobile_ads.dart';
|
import 'package:google_mobile_ads/google_mobile_ads.dart';
|
||||||
|
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mih_banner_ad_provider.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_config/mih_env.dart';
|
import 'package:mzansi_innovation_hub/mih_config/mih_env.dart';
|
||||||
|
import 'package:provider/provider.dart';
|
||||||
|
|
||||||
class MihBannerAd extends StatefulWidget {
|
class MihBannerAd extends StatefulWidget {
|
||||||
const MihBannerAd({super.key});
|
const MihBannerAd({super.key});
|
||||||
@@ -10,66 +12,26 @@ class MihBannerAd extends StatefulWidget {
|
|||||||
}
|
}
|
||||||
|
|
||||||
class _MihBannerAdState extends State<MihBannerAd> {
|
class _MihBannerAdState extends State<MihBannerAd> {
|
||||||
BannerAd? _bannerAd;
|
|
||||||
bool _isBannerAdLoaded = false;
|
|
||||||
final adUnitId = AppEnviroment.bannerAdUnitId;
|
|
||||||
String errorMessage = '';
|
|
||||||
|
|
||||||
void _loadBannerAd() {
|
|
||||||
_bannerAd = BannerAd(
|
|
||||||
adUnitId: adUnitId,
|
|
||||||
request: const AdRequest(),
|
|
||||||
size: AdSize.banner,
|
|
||||||
listener: BannerAdListener(
|
|
||||||
onAdLoaded: (ad) {
|
|
||||||
debugPrint('$ad loaded.');
|
|
||||||
setState(() {
|
|
||||||
_isBannerAdLoaded = true;
|
|
||||||
});
|
|
||||||
},
|
|
||||||
onAdFailedToLoad: (ad, err) {
|
|
||||||
debugPrint('BannerAd failed to load: $err');
|
|
||||||
setState(() {
|
|
||||||
errorMessage =
|
|
||||||
'Failed to load ad- Message: ${err.message} Code :${err.code}';
|
|
||||||
});
|
|
||||||
ad.dispose(); // Dispose the ad to free resources
|
|
||||||
},
|
|
||||||
onAdOpened: (Ad ad) => debugPrint('$ad opened.'),
|
|
||||||
onAdClosed: (Ad ad) => debugPrint('$ad closed.'),
|
|
||||||
onAdImpression: (Ad ad) => debugPrint('$ad impression.'),
|
|
||||||
),
|
|
||||||
);
|
|
||||||
|
|
||||||
_bannerAd!.load();
|
|
||||||
}
|
|
||||||
|
|
||||||
@override
|
|
||||||
void dispose() {
|
|
||||||
_bannerAd?.dispose(); // Dispose the ad when the widget is removed
|
|
||||||
super.dispose();
|
|
||||||
}
|
|
||||||
|
|
||||||
@override
|
|
||||||
void initState() {
|
|
||||||
super.initState();
|
|
||||||
_loadBannerAd();
|
|
||||||
}
|
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return Column(
|
return Consumer<MihBannerAdProvider>(
|
||||||
children: [
|
builder: (context, bannerAdProvider, child) {
|
||||||
_bannerAd != null && _isBannerAdLoaded
|
return Column(
|
||||||
? SizedBox(
|
children: [
|
||||||
width: _bannerAd!.size.width.toDouble(),
|
bannerAdProvider.bannerAd != null &&
|
||||||
height: _bannerAd!.size.height.toDouble(),
|
bannerAdProvider.isBannerAdLoaded
|
||||||
child: AdWidget(ad: _bannerAd!))
|
? SizedBox(
|
||||||
: SizedBox(
|
width: bannerAdProvider.bannerAd!.size.width.toDouble(),
|
||||||
child:
|
height: bannerAdProvider.bannerAd!.size.height.toDouble(),
|
||||||
Text(AppEnviroment.getEnv() == "Dev" ? errorMessage : ""),
|
child: AdWidget(ad: bannerAdProvider.bannerAd!))
|
||||||
),
|
: SizedBox(
|
||||||
],
|
child: Text(AppEnviroment.getEnv() == "Dev"
|
||||||
|
? bannerAdProvider.errorMessage
|
||||||
|
: ""),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
},
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,50 @@
|
|||||||
|
import 'package:flutter/foundation.dart';
|
||||||
|
import 'package:google_mobile_ads/google_mobile_ads.dart';
|
||||||
|
import 'package:mzansi_innovation_hub/mih_config/mih_env.dart';
|
||||||
|
|
||||||
|
class MihBannerAdProvider extends ChangeNotifier {
|
||||||
|
BannerAd? bannerAd;
|
||||||
|
final adUnitId = AppEnviroment.bannerAdUnitId;
|
||||||
|
bool isBannerAdLoaded = false;
|
||||||
|
String errorMessage = '';
|
||||||
|
|
||||||
|
MihBannerAdProvider({
|
||||||
|
this.bannerAd,
|
||||||
|
this.isBannerAdLoaded = false,
|
||||||
|
this.errorMessage = '',
|
||||||
|
});
|
||||||
|
|
||||||
|
@override
|
||||||
|
void dispose() {
|
||||||
|
bannerAd?.dispose();
|
||||||
|
super.dispose();
|
||||||
|
}
|
||||||
|
|
||||||
|
void loadBannerAd() {
|
||||||
|
bannerAd = BannerAd(
|
||||||
|
adUnitId: adUnitId,
|
||||||
|
request: const AdRequest(),
|
||||||
|
size: AdSize.banner,
|
||||||
|
listener: BannerAdListener(
|
||||||
|
onAdLoaded: (ad) {
|
||||||
|
debugPrint('$ad loaded.');
|
||||||
|
isBannerAdLoaded = true;
|
||||||
|
notifyListeners();
|
||||||
|
},
|
||||||
|
onAdFailedToLoad: (ad, err) {
|
||||||
|
debugPrint('BannerAd failed to load: $err');
|
||||||
|
errorMessage =
|
||||||
|
'Failed to load ad- Message: ${err.message} Code :${err.code}';
|
||||||
|
ad.dispose(); // Dispose the ad to free resources
|
||||||
|
isBannerAdLoaded = false; // ⬅️ Explicitly set to false
|
||||||
|
bannerAd = null; // ⬅️ Explicitly set to null
|
||||||
|
notifyListeners();
|
||||||
|
},
|
||||||
|
onAdOpened: (Ad ad) => debugPrint('$ad opened.'),
|
||||||
|
onAdClosed: (Ad ad) => debugPrint('$ad closed.'),
|
||||||
|
onAdImpression: (Ad ad) => debugPrint('$ad impression.'),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
bannerAd!.load();
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -2,10 +2,12 @@ import 'package:go_router/go_router.dart';
|
|||||||
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package.dart';
|
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_action.dart';
|
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_action.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_tools.dart';
|
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_tools.dart';
|
||||||
|
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mih_banner_ad_provider.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_packages/calculator/package_tools/currency_exchange_rate.dart';
|
import 'package:mzansi_innovation_hub/mih_packages/calculator/package_tools/currency_exchange_rate.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_packages/calculator/package_tools/simple_calc.dart';
|
import 'package:mzansi_innovation_hub/mih_packages/calculator/package_tools/simple_calc.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_packages/calculator/package_tools/tip_calc.dart';
|
import 'package:mzansi_innovation_hub/mih_packages/calculator/package_tools/tip_calc.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:provider/provider.dart';
|
||||||
|
|
||||||
class MIHCalculator extends StatefulWidget {
|
class MIHCalculator extends StatefulWidget {
|
||||||
final bool personalSelected;
|
final bool personalSelected;
|
||||||
@@ -21,6 +23,14 @@ class MIHCalculator extends StatefulWidget {
|
|||||||
class _MIHCalculatorState extends State<MIHCalculator> {
|
class _MIHCalculatorState extends State<MIHCalculator> {
|
||||||
int _selectedIndex = 0;
|
int _selectedIndex = 0;
|
||||||
|
|
||||||
|
@override
|
||||||
|
void initState() {
|
||||||
|
super.initState();
|
||||||
|
WidgetsBinding.instance.addPostFrameCallback((_) async {
|
||||||
|
context.read<MihBannerAdProvider>().loadBannerAd();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return MihPackage(
|
return MihPackage(
|
||||||
|
|||||||
@@ -10,10 +10,12 @@ import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_
|
|||||||
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_single_child_scroll.dart';
|
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_single_child_scroll.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_text_form_field.dart';
|
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_text_form_field.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_components/mih_pop_up_messages/mih_loading_circle.dart';
|
import 'package:mzansi_innovation_hub/mih_components/mih_pop_up_messages/mih_loading_circle.dart';
|
||||||
|
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mih_banner_ad_provider.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart';
|
import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_services/mih_alert_services.dart';
|
import 'package:mzansi_innovation_hub/mih_services/mih_alert_services.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_services/mih_currency_exchange_rate_services.dart';
|
import 'package:mzansi_innovation_hub/mih_services/mih_currency_exchange_rate_services.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_services/mih_validation_services.dart';
|
import 'package:mzansi_innovation_hub/mih_services/mih_validation_services.dart';
|
||||||
|
import 'package:provider/provider.dart';
|
||||||
|
|
||||||
class CurrencyExchangeRate extends StatefulWidget {
|
class CurrencyExchangeRate extends StatefulWidget {
|
||||||
const CurrencyExchangeRate({super.key});
|
const CurrencyExchangeRate({super.key});
|
||||||
@@ -29,7 +31,6 @@ class _CurrencyExchangeRateState extends State<CurrencyExchangeRate> {
|
|||||||
final TextEditingController _fromAmountController = TextEditingController();
|
final TextEditingController _fromAmountController = TextEditingController();
|
||||||
final TextEditingController _toAmountController = TextEditingController();
|
final TextEditingController _toAmountController = TextEditingController();
|
||||||
late Future<List<String>> availableCurrencies;
|
late Future<List<String>> availableCurrencies;
|
||||||
MihBannerAd _bannerAd = MihBannerAd();
|
|
||||||
|
|
||||||
Future<void> submitForm() async {
|
Future<void> submitForm() async {
|
||||||
String fromCurrencyCode = _fromCurrencyController.text.split(" - ")[0];
|
String fromCurrencyCode = _fromCurrencyController.text.split(" - ")[0];
|
||||||
@@ -67,9 +68,7 @@ class _CurrencyExchangeRateState extends State<CurrencyExchangeRate> {
|
|||||||
fullscreen: false,
|
fullscreen: false,
|
||||||
windowTitle: "Calculation Results",
|
windowTitle: "Calculation Results",
|
||||||
onWindowTapClose: () {
|
onWindowTapClose: () {
|
||||||
setState(() {
|
context.read<MihBannerAdProvider>().loadBannerAd();
|
||||||
_bannerAd = MihBannerAd();
|
|
||||||
});
|
|
||||||
Navigator.pop(context);
|
Navigator.pop(context);
|
||||||
},
|
},
|
||||||
windowBody: Column(
|
windowBody: Column(
|
||||||
@@ -160,7 +159,9 @@ class _CurrencyExchangeRateState extends State<CurrencyExchangeRate> {
|
|||||||
],
|
],
|
||||||
),
|
),
|
||||||
SizedBox(height: 10),
|
SizedBox(height: 10),
|
||||||
SizedBox(child: _bannerAd),
|
Consumer(builder: (context, bannerAdDisplay, child) {
|
||||||
|
return MihBannerAd();
|
||||||
|
}),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
import 'package:mzansi_innovation_hub/main.dart';
|
import 'package:mzansi_innovation_hub/main.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_banner_ad.dart';
|
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_banner_ad.dart';
|
||||||
|
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mih_banner_ad_provider.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart';
|
import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_services/mih_alert_services.dart';
|
import 'package:mzansi_innovation_hub/mih_services/mih_alert_services.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_services/mih_validation_services.dart';
|
import 'package:mzansi_innovation_hub/mih_services/mih_validation_services.dart';
|
||||||
@@ -14,6 +15,7 @@ import 'package:flutter/material.dart';
|
|||||||
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
|
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
|
||||||
import 'package:math_expressions/math_expressions.dart';
|
import 'package:math_expressions/math_expressions.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_toggle.dart';
|
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_toggle.dart';
|
||||||
|
import 'package:provider/provider.dart';
|
||||||
|
|
||||||
class TipCalc extends StatefulWidget {
|
class TipCalc extends StatefulWidget {
|
||||||
const TipCalc({super.key});
|
const TipCalc({super.key});
|
||||||
@@ -30,7 +32,6 @@ class _TipCalcState extends State<TipCalc> {
|
|||||||
final ValueNotifier<String> splitValue = ValueNotifier("");
|
final ValueNotifier<String> splitValue = ValueNotifier("");
|
||||||
late bool splitPosition;
|
late bool splitPosition;
|
||||||
final _formKey = GlobalKey<FormState>();
|
final _formKey = GlobalKey<FormState>();
|
||||||
MihBannerAd _bannerAd = MihBannerAd();
|
|
||||||
String tip = "";
|
String tip = "";
|
||||||
String total = "";
|
String total = "";
|
||||||
String amountPerPerson = "";
|
String amountPerPerson = "";
|
||||||
@@ -98,9 +99,7 @@ class _TipCalcState extends State<TipCalc> {
|
|||||||
fullscreen: false,
|
fullscreen: false,
|
||||||
windowTitle: "Calculation Results",
|
windowTitle: "Calculation Results",
|
||||||
onWindowTapClose: () {
|
onWindowTapClose: () {
|
||||||
setState(() {
|
context.read<MihBannerAdProvider>().loadBannerAd();
|
||||||
_bannerAd = MihBannerAd();
|
|
||||||
});
|
|
||||||
Navigator.pop(context);
|
Navigator.pop(context);
|
||||||
},
|
},
|
||||||
windowBody: Column(
|
windowBody: Column(
|
||||||
@@ -231,7 +230,9 @@ class _TipCalcState extends State<TipCalc> {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
SizedBox(height: 10),
|
SizedBox(height: 10),
|
||||||
SizedBox(child: _bannerAd),
|
Consumer(builder: (context, bannerAdDisplay, child) {
|
||||||
|
return MihBannerAd();
|
||||||
|
}),
|
||||||
// if (splitBillController.text == "Yes") const Divider(),
|
// if (splitBillController.text == "Yes") const Divider(),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import 'package:mzansi_innovation_hub/main.dart';
|
|||||||
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_banner_ad.dart';
|
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_banner_ad.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_icons.dart';
|
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_icons.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_components/mih_pop_up_messages/mih_error_message.dart';
|
import 'package:mzansi_innovation_hub/mih_components/mih_pop_up_messages/mih_error_message.dart';
|
||||||
|
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mih_banner_ad_provider.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mzansi_wallet_provider.dart';
|
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mzansi_wallet_provider.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart';
|
import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_services/mih_alert_services.dart';
|
import 'package:mzansi_innovation_hub/mih_services/mih_alert_services.dart';
|
||||||
@@ -29,10 +30,8 @@ class BuildLoyaltyCardList extends StatefulWidget {
|
|||||||
final AppUser signedInUser;
|
final AppUser signedInUser;
|
||||||
final List<MIHLoyaltyCard> cardList;
|
final List<MIHLoyaltyCard> cardList;
|
||||||
final int navIndex;
|
final int navIndex;
|
||||||
final MihBannerAd? bannerAd;
|
|
||||||
final bool favouritesMode;
|
final bool favouritesMode;
|
||||||
final TextEditingController searchText;
|
final TextEditingController searchText;
|
||||||
final void Function()? onCardViewClose;
|
|
||||||
|
|
||||||
const BuildLoyaltyCardList({
|
const BuildLoyaltyCardList({
|
||||||
super.key,
|
super.key,
|
||||||
@@ -41,8 +40,6 @@ class BuildLoyaltyCardList extends StatefulWidget {
|
|||||||
required this.navIndex,
|
required this.navIndex,
|
||||||
required this.favouritesMode,
|
required this.favouritesMode,
|
||||||
required this.searchText,
|
required this.searchText,
|
||||||
this.bannerAd,
|
|
||||||
this.onCardViewClose,
|
|
||||||
});
|
});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -487,7 +484,7 @@ class _BuildLoyaltyCardListState extends State<BuildLoyaltyCardList> {
|
|||||||
),
|
),
|
||||||
],
|
],
|
||||||
onWindowTapClose: () {
|
onWindowTapClose: () {
|
||||||
widget.onCardViewClose;
|
context.read<MihBannerAdProvider>().loadBannerAd();
|
||||||
resetScreenBrightness();
|
resetScreenBrightness();
|
||||||
context.pop();
|
context.pop();
|
||||||
},
|
},
|
||||||
@@ -549,7 +546,9 @@ class _BuildLoyaltyCardListState extends State<BuildLoyaltyCardList> {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
SizedBox(height: 10),
|
SizedBox(height: 10),
|
||||||
widget.bannerAd ?? SizedBox(),
|
Consumer(builder: (context, bannerAdDisplay, child) {
|
||||||
|
return MihBannerAd();
|
||||||
|
}),
|
||||||
// MihBannerAd(),
|
// MihBannerAd(),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_
|
|||||||
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_tools.dart';
|
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_tools.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_components/mih_objects/arguments.dart';
|
import 'package:mzansi_innovation_hub/mih_components/mih_objects/arguments.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_components/mih_pop_up_messages/mih_loading_circle.dart';
|
import 'package:mzansi_innovation_hub/mih_components/mih_pop_up_messages/mih_loading_circle.dart';
|
||||||
|
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mih_banner_ad_provider.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mzansi_wallet_provider.dart';
|
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mzansi_wallet_provider.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_packages/mzansi_wallet/package_tools/mih_card_favourites.dart';
|
import 'package:mzansi_innovation_hub/mih_packages/mzansi_wallet/package_tools/mih_card_favourites.dart';
|
||||||
@@ -48,6 +49,7 @@ class _MihWalletState extends State<MihWallet> {
|
|||||||
setPackageIndex();
|
setPackageIndex();
|
||||||
await setLoyaltyCards();
|
await setLoyaltyCards();
|
||||||
await setFavouritesCards();
|
await setFavouritesCards();
|
||||||
|
context.read<MihBannerAdProvider>().loadBannerAd();
|
||||||
setState(() {
|
setState(() {
|
||||||
isLoading = false;
|
isLoading = false;
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_banner_ad.dart';
|
|
||||||
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mzansi_wallet_provider.dart';
|
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mzansi_wallet_provider.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_single_child_scroll.dart';
|
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_single_child_scroll.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_tool_body.dart';
|
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_tool_body.dart';
|
||||||
@@ -21,7 +20,6 @@ class MihCardFavourites extends StatefulWidget {
|
|||||||
|
|
||||||
class _MihCardFavouritesState extends State<MihCardFavourites> {
|
class _MihCardFavouritesState extends State<MihCardFavourites> {
|
||||||
late Future<List<MIHLoyaltyCard>> cardList;
|
late Future<List<MIHLoyaltyCard>> cardList;
|
||||||
late MihBannerAd _bannerAd;
|
|
||||||
List<MIHLoyaltyCard> listOfCards = [];
|
List<MIHLoyaltyCard> listOfCards = [];
|
||||||
|
|
||||||
void getFavouriteLoyaltyCards(BuildContext context) async {
|
void getFavouriteLoyaltyCards(BuildContext context) async {
|
||||||
@@ -32,7 +30,6 @@ class _MihCardFavouritesState extends State<MihCardFavourites> {
|
|||||||
|
|
||||||
@override
|
@override
|
||||||
void initState() {
|
void initState() {
|
||||||
_bannerAd = MihBannerAd();
|
|
||||||
getFavouriteLoyaltyCards(context);
|
getFavouriteLoyaltyCards(context);
|
||||||
super.initState();
|
super.initState();
|
||||||
}
|
}
|
||||||
@@ -55,15 +52,8 @@ class _MihCardFavouritesState extends State<MihCardFavourites> {
|
|||||||
cardList: listOfCards,
|
cardList: listOfCards,
|
||||||
signedInUser: widget.signedInUser,
|
signedInUser: widget.signedInUser,
|
||||||
navIndex: 0,
|
navIndex: 0,
|
||||||
bannerAd: _bannerAd,
|
|
||||||
favouritesMode: true,
|
favouritesMode: true,
|
||||||
searchText: TextEditingController(),
|
searchText: TextEditingController(),
|
||||||
onCardViewClose: () {
|
|
||||||
setState(() {
|
|
||||||
_bannerAd = MihBannerAd();
|
|
||||||
});
|
|
||||||
Navigator.pop(context);
|
|
||||||
},
|
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
import 'package:flutter_speed_dial/flutter_speed_dial.dart';
|
import 'package:flutter_speed_dial/flutter_speed_dial.dart';
|
||||||
import 'package:go_router/go_router.dart';
|
import 'package:go_router/go_router.dart';
|
||||||
import 'package:mzansi_innovation_hub/main.dart';
|
import 'package:mzansi_innovation_hub/main.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_banner_ad.dart';
|
|
||||||
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_alert.dart';
|
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_alert.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mzansi_wallet_provider.dart';
|
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mzansi_wallet_provider.dart';
|
||||||
import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart';
|
import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart';
|
||||||
@@ -33,7 +32,6 @@ class MihCards extends StatefulWidget {
|
|||||||
class _MihCardsState extends State<MihCards> {
|
class _MihCardsState extends State<MihCards> {
|
||||||
final TextEditingController cardSearchController = TextEditingController();
|
final TextEditingController cardSearchController = TextEditingController();
|
||||||
final FocusNode searchFocusNode = FocusNode();
|
final FocusNode searchFocusNode = FocusNode();
|
||||||
MihBannerAd _bannerAd = MihBannerAd();
|
|
||||||
List<MIHLoyaltyCard> listOfCards = [];
|
List<MIHLoyaltyCard> listOfCards = [];
|
||||||
final ValueNotifier<List<MIHLoyaltyCard>> searchShopName = ValueNotifier([]);
|
final ValueNotifier<List<MIHLoyaltyCard>> searchShopName = ValueNotifier([]);
|
||||||
final MobileScannerController scannerController = MobileScannerController(
|
final MobileScannerController scannerController = MobileScannerController(
|
||||||
@@ -202,15 +200,8 @@ class _MihCardsState extends State<MihCards> {
|
|||||||
cardList: filteredCards, //listOfCards,
|
cardList: filteredCards, //listOfCards,
|
||||||
signedInUser: widget.signedInUser,
|
signedInUser: widget.signedInUser,
|
||||||
navIndex: 0,
|
navIndex: 0,
|
||||||
bannerAd: _bannerAd,
|
|
||||||
favouritesMode: false,
|
favouritesMode: false,
|
||||||
searchText: cardSearchController,
|
searchText: cardSearchController,
|
||||||
onCardViewClose: () {
|
|
||||||
setState(() {
|
|
||||||
_bannerAd = MihBannerAd();
|
|
||||||
});
|
|
||||||
// Navigator.pop(context);
|
|
||||||
},
|
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user