Skip to content

Commit

Permalink
Merge pull request #7 from mixin27/bug-fix
Browse files Browse the repository at this point in the history
Re-enable notification feature
  • Loading branch information
mixin27 authored Sep 16, 2024
2 parents cafe17d + dadf656 commit e33d0e4
Show file tree
Hide file tree
Showing 12 changed files with 184 additions and 169 deletions.
1 change: 1 addition & 0 deletions assets/translations/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@

"language": "Language",
"choose_language": "Choose Language",
"choose_calendar_language": "Choose Calendar Language",
"locale_en": "English",
"locale_en_US": "English (US)",
"locale_my": "Myanmar",
Expand Down
1 change: 1 addition & 0 deletions assets/translations/my.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@

"language": "ဘာသာစကား",
"choose_language": "ဘာသာစကားကို ရွေးပါ",
"choose_calendar_language": "ပြက္ခဒိန် ဘာသာစကားကို ရွေးပါ",
"locale_en": "အင်္ဂလိပ်",
"locale_en_US": "အင်္ဂလိပ် (US)",
"locale_my": "မြန်မာ",
Expand Down
4 changes: 2 additions & 2 deletions lib/app_start_up.dart
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import 'package:hooks_riverpod/hooks_riverpod.dart';
import 'package:mmcalendar/firebase_options.dart';
import 'package:mmcalendar/src/shared/providers/mm_calendar_providers.dart';
import 'package:mmcalendar/src/utils/shared_prefs/preference_manager.dart';
// import 'package:mmcalendar/src/utils/onesignal/onesignal.dart';
import 'package:mmcalendar/src/utils/onesignal/onesignal.dart';
import 'package:riverpod_annotation/riverpod_annotation.dart';

part 'app_start_up.g.dart';
Expand All @@ -25,7 +25,7 @@ FutureOr<void> appStartup(AppStartupRef ref) async {
Firebase.initializeApp(
options: DefaultFirebaseOptions.currentPlatform,
),
// initOnesignal(),
initOnesignal(),

// list of providers to be warmed up
// ref.watch(onboardingRepositoryProvider.future),
Expand Down
1 change: 0 additions & 1 deletion lib/main.dart
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ import 'package:mmcalendar/src/features/app/app.dart';
import 'package:mmcalendar/src/l10n/l10n.dart';
import 'package:mmcalendar/src/shared/errors/async_error_logger.dart';
import 'package:mmcalendar/src/shared/errors/error_logger.dart';
// import 'package:mmcalendar/src/utils/onesignal/onesignal.dart';

Future<void> main() async {
WidgetsFlutterBinding.ensureInitialized();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,9 @@ class LandscapeDateDetailWidget extends HookConsumerWidget {
child: Column(
children: [
Text(
'$mmDow ($dow)',
mmCalendar.language == Language.english
? dow
: '$mmDow ($dow)',
style: Theme.of(context).textTheme.titleLarge,
),
if (isPublicHoliday && holidays.isNotEmpty) ...[
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,8 @@ class PortraitDateDetailWidget extends HookConsumerWidget {

final nagapor = astro.getNagapor();

List<String> holidays = mmDate.holidays;
List<String> holidays =
mmDate.getHolidays(langCatalog: mmCalendar.languageCatalog);
final holidayColor = Theme.of(context).colorScheme.error;
final isPublicHoliday = isHoliday(date, mmDate);

Expand Down Expand Up @@ -199,7 +200,9 @@ class PortraitDateDetailWidget extends HookConsumerWidget {
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text(
'$mmDow ($dow)',
mmCalendar.language == Language.english
? dow
: '$mmDow ($dow)',
style: Theme.of(context).textTheme.titleLarge,
),
if (isPublicHoliday) ...[
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ class AppSettingsPage extends StatelessWidget {
),
body: ListView(
children: [
// const NotificationSwitchListTile(),
const NotificationSwitchListTile(),
const ThemeModeSwitchTile(),
const CalendarLanguageListTile(),
const AppLanguageListTile(),
Expand Down
50 changes: 25 additions & 25 deletions lib/src/utils/onesignal/onesignal.dart
Original file line number Diff line number Diff line change
@@ -1,33 +1,33 @@
// import 'package:mmcalendar/src/utils/native_id.dart';
// import 'package:onesignal_flutter/onesignal_flutter.dart';
import 'package:mmcalendar/src/utils/native_id.dart';
import 'package:onesignal_flutter/onesignal_flutter.dart';

// const String onesignalAppId = String.fromEnvironment('ONESIGNAL_APP_ID');
const String onesignalAppId = String.fromEnvironment('ONESIGNAL_APP_ID');

// Future<void> initOnesignal() async {
// if (onesignalAppId.isEmpty) {
// throw AssertionError('ONESIGNAL_APP_ID is not set');
// }
Future<void> initOnesignal() async {
if (onesignalAppId.isEmpty) {
throw AssertionError('ONESIGNAL_APP_ID is not set');
}

// OneSignal.Debug.setLogLevel(OSLogLevel.verbose);
OneSignal.Debug.setLogLevel(OSLogLevel.verbose);

// OneSignal.initialize(onesignalAppId);
OneSignal.initialize(onesignalAppId);

// OneSignal.Notifications.requestPermission(true);
OneSignal.Notifications.requestPermission(true);

// final deviceId = await getNativeDeviceId();
// if (deviceId != null) {
// await OneSignal.login(deviceId);
// }
// }
final deviceId = await getNativeDeviceId();
if (deviceId != null) {
await OneSignal.login(deviceId);
}
}

// Future<void> disablePush([bool disable = true]) async {
// if (disable) {
// OneSignal.User.pushSubscription.optOut();
// } else {
// OneSignal.User.pushSubscription.optIn();
// }
// }
Future<void> disablePush([bool disable = true]) async {
if (disable) {
OneSignal.User.pushSubscription.optOut();
} else {
OneSignal.User.pushSubscription.optIn();
}
}

// bool? getPushSubsciption() {
// return OneSignal.User.pushSubscription.optedIn;
// }
bool? getPushSubsciption() {
return OneSignal.User.pushSubscription.optedIn;
}
98 changes: 51 additions & 47 deletions lib/src/widgets/settings/calendar_language_list_tile.dart
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
import 'package:easy_localization/easy_localization.dart';
import 'package:flutter/material.dart';
import 'package:flutter_mmcalendar/flutter_mmcalendar.dart';
import 'package:hooks_riverpod/hooks_riverpod.dart';
import 'package:iconly/iconly.dart';
import 'package:mmcalendar/src/l10n/l10n.dart';
import 'package:mmcalendar/src/shared/providers/mm_calendar_providers.dart';
import 'package:mmcalendar/src/utils/shared_prefs/preference_manager.dart';

Expand All @@ -25,53 +27,55 @@ class CalendarLanguageListTile extends HookConsumerWidget {
showAdaptiveDialog(
context: context,
builder: (context) => AlertDialog(
title: const Text('Theme'),
content: Column(
mainAxisSize: MainAxisSize.min,
children: [
ListTile(
onTap: () => changeCalendarLanguage(Language.myanmar),
title: const Text('Myanmar (Unicode)'),
trailing: mmCalendarConfig.language == Language.myanmar
? const Icon(Icons.check_outlined, color: Colors.green)
: null,
),
ListTile(
onTap: () => changeCalendarLanguage(Language.zawgyi),
title: const Text('Myanmar (Zawgyi)'),
trailing: mmCalendarConfig.language == Language.zawgyi
? const Icon(Icons.check_outlined, color: Colors.green)
: null,
),
ListTile(
onTap: () => changeCalendarLanguage(Language.english),
title: const Text('English'),
trailing: mmCalendarConfig.language == Language.english
? const Icon(Icons.check_outlined, color: Colors.green)
: null,
),
ListTile(
onTap: () => changeCalendarLanguage(Language.karen),
title: const Text('Karen'),
trailing: mmCalendarConfig.language == Language.karen
? const Icon(Icons.check_outlined, color: Colors.green)
: null,
),
ListTile(
onTap: () => changeCalendarLanguage(Language.mon),
title: const Text('Mon'),
trailing: mmCalendarConfig.language == Language.mon
? const Icon(Icons.check_outlined, color: Colors.green)
: null,
),
ListTile(
onTap: () => changeCalendarLanguage(Language.tai),
title: const Text('Tai'),
trailing: mmCalendarConfig.language == Language.tai
? const Icon(Icons.check_outlined, color: Colors.green)
: null,
),
],
title: const Text(LocaleKeys.choose_calendar_language).tr(),
content: SingleChildScrollView(
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
ListTile(
onTap: () => changeCalendarLanguage(Language.myanmar),
title: const Text('Myanmar (Unicode)'),
trailing: mmCalendarConfig.language == Language.myanmar
? const Icon(Icons.check_outlined, color: Colors.green)
: null,
),
ListTile(
onTap: () => changeCalendarLanguage(Language.zawgyi),
title: const Text('Myanmar (Zawgyi)'),
trailing: mmCalendarConfig.language == Language.zawgyi
? const Icon(Icons.check_outlined, color: Colors.green)
: null,
),
ListTile(
onTap: () => changeCalendarLanguage(Language.english),
title: const Text('English'),
trailing: mmCalendarConfig.language == Language.english
? const Icon(Icons.check_outlined, color: Colors.green)
: null,
),
ListTile(
onTap: () => changeCalendarLanguage(Language.karen),
title: const Text('Karen'),
trailing: mmCalendarConfig.language == Language.karen
? const Icon(Icons.check_outlined, color: Colors.green)
: null,
),
ListTile(
onTap: () => changeCalendarLanguage(Language.mon),
title: const Text('Mon'),
trailing: mmCalendarConfig.language == Language.mon
? const Icon(Icons.check_outlined, color: Colors.green)
: null,
),
ListTile(
onTap: () => changeCalendarLanguage(Language.tai),
title: const Text('Tai'),
trailing: mmCalendarConfig.language == Language.tai
? const Icon(Icons.check_outlined, color: Colors.green)
: null,
),
],
),
),
),
);
Expand Down
12 changes: 6 additions & 6 deletions lib/src/widgets/settings/notification_switch_tile.dart
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import 'package:flutter/material.dart';
import 'package:iconly/iconly.dart';
// import 'package:mmcalendar/src/utils/onesignal/onesignal.dart';
import 'package:mmcalendar/src/utils/onesignal/onesignal.dart';

class NotificationSwitchListTile extends StatefulWidget {
const NotificationSwitchListTile({
Expand All @@ -18,10 +18,10 @@ class _NotificationSwitchListTileState

@override
void initState() {
// final flag = getPushSubsciption();
// setState(() {
// _enabled = flag ?? false;
// });
final flag = getPushSubsciption();
setState(() {
_enabled = flag ?? false;
});
super.initState();
}

Expand All @@ -33,7 +33,7 @@ class _NotificationSwitchListTileState
setState(() {
_enabled = newValue;
});
// await disablePush(!newValue);
await disablePush(!newValue);
},
secondary: const Icon(IconlyLight.notification),
title: const Text('Notification'),
Expand Down
Loading

0 comments on commit e33d0e4

Please sign in to comment.