import 'package:hiddingsel_app/appflow/model/event_organisations.dart'; import 'package:hiddingsel_app/appflow/model/topics.dart'; import 'package:hiddingsel_app/services/storage.dart'; import '../../constants/constant.dart'; import 'events.dart'; class SettingsController { static const subscribtion = SystemStrings.keyPreSubscribtion; static const eventNotification = SystemStrings.keyPreEventNotification; static const favorization = SystemStrings.keyPreFavorization; static void subscribeTopic(PushNotificationTopicModel topic) => SettingsConnector.setBool(subscribtion + topic.id, true); static void unsubscribeTopic(PushNotificationTopicModel topic) => SettingsConnector.setBool(subscribtion + topic.id, false); static Future subscribed(PushNotificationTopicModel topic) => SettingsConnector.getBool(subscribtion + topic.id, false); static void allowEventNotification(EventOrganisationModel eventOrganisation) async { await SettingsConnector.setBool(eventNotification + eventOrganisation.id, true); EventController.scheduleNotificationsBySettings(); } static void unallowEventNotification(EventOrganisationModel eventOrganisation) async { await SettingsConnector.setBool(eventNotification + eventOrganisation.id, false); EventController.scheduleNotificationsBySettings(); } static Future eventNotificationAllowed(EventOrganisationModel eventOrganisation) => SettingsConnector.getBool(eventNotification + eventOrganisation.id, false); static void favorize(PushNotificationTopicModel topic) => SettingsConnector.setBool(favorization + topic.id, true); static void unfavorize(PushNotificationTopicModel topic) => SettingsConnector.setBool(favorization + topic.id, false); static Future favorized(PushNotificationTopicModel topic) => SettingsConnector.getBool(favorization + topic.id, false); }