70 lines
2.0 KiB
Dart
70 lines
2.0 KiB
Dart
// ignore_for_file: unnecessary_overrides
|
|
|
|
import 'dart:io';
|
|
|
|
import 'package:flutter/material.dart';
|
|
import 'package:get/get.dart';
|
|
import 'package:IQ/app/global/static_informs.dart';
|
|
import 'package:IQ/app/modules/home/models/notifications_model.dart';
|
|
import 'package:IQ/app/modules/home/providers/language_currency.dart';
|
|
import 'package:IQ/app/modules/home/providers/notifications.dart';
|
|
import 'package:IQ/app/modules/home/providers/service.dart';
|
|
|
|
class NotificationsScreenController extends GetxController
|
|
with WidgetsBindingObserver {
|
|
bool fetchNotifsData = false;
|
|
// ignore: prefer_typing_uninitialized_variables
|
|
var fetchLoadingNotifsDataVar;
|
|
|
|
Future<void> onRefresh() async {
|
|
fetchNotifsData = false;
|
|
notifications = null;
|
|
fetchLoadingNotifsDataVar = fetchLoadingNotifsData();
|
|
update();
|
|
}
|
|
|
|
fetchLoadingNotifsData() async {
|
|
await getUserNotificationsInforms("");
|
|
if (getUserNotificationsInformsLoads) {
|
|
fetchNotifsData = true;
|
|
listOfNotifs = notifications?.data ?? [];
|
|
update();
|
|
}
|
|
}
|
|
|
|
String activiationType = '${service?.data?.profileName}';
|
|
String subscriptionCurrency = languagesCurrencyModel?.data?.currency ?? '';
|
|
String profileName = service?.data?.profileName ?? '';
|
|
|
|
List<Data>? listOfNotifs = notifications?.data ?? [];
|
|
@override
|
|
void didChangeAppLifecycleState(AppLifecycleState state) {
|
|
super.didChangeAppLifecycleState(state);
|
|
if (state == AppLifecycleState.inactive ||
|
|
state == AppLifecycleState.detached ||
|
|
state == AppLifecycleState.paused) return;
|
|
if (state == AppLifecycleState.resumed) {
|
|
defaultLocale = Platform.localeName.split('_')[0];
|
|
snackBarText = 'back_twice'.tr;
|
|
}
|
|
}
|
|
|
|
@override
|
|
void onInit() {
|
|
fetchLoadingNotifsDataVar = fetchLoadingNotifsData();
|
|
WidgetsBinding.instance.addObserver(this);
|
|
|
|
super.onInit();
|
|
}
|
|
|
|
@override
|
|
void onReady() {
|
|
super.onReady();
|
|
}
|
|
|
|
@override
|
|
void onClose() {
|
|
WidgetsBinding.instance.removeObserver(this);
|
|
}
|
|
}
|