did a lot in refilc+
This commit is contained in:
@@ -13,9 +13,9 @@ import 'package:filcnaplo_kreta_api/providers/grade_provider.dart';
|
||||
import 'package:filcnaplo_kreta_api/providers/timetable_provider.dart';
|
||||
import 'package:filcnaplo_mobile_ui/common/panel/panel.dart';
|
||||
import 'package:filcnaplo_mobile_ui/common/panel/panel_button.dart';
|
||||
import 'package:refilc_plus/models/premium_scopes.dart';
|
||||
import 'package:refilc_plus/providers/premium_provider.dart';
|
||||
import 'package:refilc_plus/ui/mobile/premium/upsell.dart';
|
||||
// import 'package:refilc_plus/models/premium_scopes.dart';
|
||||
// import 'package:refilc_plus/providers/premium_provider.dart';
|
||||
// import 'package:refilc_plus/ui/mobile/premium/upsell.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_feather_icons/flutter_feather_icons.dart';
|
||||
@@ -33,12 +33,12 @@ class MenuRenamedSubjects extends StatelessWidget {
|
||||
return PanelButton(
|
||||
padding: const EdgeInsets.only(left: 14.0),
|
||||
onPressed: () {
|
||||
if (!Provider.of<PremiumProvider>(context, listen: false)
|
||||
.hasScope(PremiumScopes.renameSubjects)) {
|
||||
PremiumLockedFeatureUpsell.show(
|
||||
context: context, feature: PremiumFeature.subjectrename);
|
||||
return;
|
||||
}
|
||||
// if (!Provider.of<PremiumProvider>(context, listen: false)
|
||||
// .hasScope(PremiumScopes.renameSubjects)) {
|
||||
// PremiumLockedFeatureUpsell.show(
|
||||
// context: context, feature: PremiumFeature.subjectrename);
|
||||
// return;
|
||||
// }
|
||||
|
||||
Navigator.of(context, rootNavigator: true).push(
|
||||
CupertinoPageRoute(builder: (context) => const ModifySubjectNames()),
|
||||
@@ -58,12 +58,12 @@ class MenuRenamedSubjects extends StatelessWidget {
|
||||
trailingDivider: true,
|
||||
trailing: Switch(
|
||||
onChanged: (v) async {
|
||||
if (!Provider.of<PremiumProvider>(context, listen: false)
|
||||
.hasScope(PremiumScopes.renameSubjects)) {
|
||||
PremiumLockedFeatureUpsell.show(
|
||||
context: context, feature: PremiumFeature.subjectrename);
|
||||
return;
|
||||
}
|
||||
// if (!Provider.of<PremiumProvider>(context, listen: false)
|
||||
// .hasScope(PremiumScopes.renameSubjects)) {
|
||||
// PremiumLockedFeatureUpsell.show(
|
||||
// context: context, feature: PremiumFeature.subjectrename);
|
||||
// return;
|
||||
// }
|
||||
|
||||
settings.update(renamedSubjectsEnabled: v);
|
||||
await Provider.of<GradeProvider>(context, listen: false)
|
||||
|
||||
@@ -37,7 +37,9 @@ import 'package:filcnaplo_mobile_ui/screens/settings/modify_subject_names.dart';
|
||||
import 'package:filcnaplo_mobile_ui/screens/settings/notifications_screen.dart';
|
||||
import 'package:filcnaplo_mobile_ui/screens/settings/privacy_view.dart';
|
||||
import 'package:filcnaplo_mobile_ui/screens/settings/settings_helper.dart';
|
||||
import 'package:refilc_plus/models/premium_scopes.dart';
|
||||
import 'package:refilc_plus/providers/premium_provider.dart';
|
||||
import 'package:refilc_plus/ui/mobile/premium/upsell.dart';
|
||||
import 'package:refilc_plus/ui/mobile/settings/app_icon_screen.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/foundation.dart';
|
||||
@@ -436,6 +438,15 @@ class SettingsScreenState extends State<SettingsScreen>
|
||||
// account settings
|
||||
PanelButton(
|
||||
onPressed: () {
|
||||
if (!Provider.of<PremiumProvider>(context,
|
||||
listen: false)
|
||||
.hasScope(PremiumScopes.maxTwoAccounts)) {
|
||||
PremiumLockedFeatureUpsell.show(
|
||||
context: context,
|
||||
feature: PremiumFeature.moreAccounts);
|
||||
return;
|
||||
}
|
||||
|
||||
Navigator.of(context)
|
||||
.pushNamed("login_back")
|
||||
.then((value) {
|
||||
@@ -837,6 +848,15 @@ class SettingsScreenState extends State<SettingsScreen>
|
||||
if (defaultTargetPlatform == TargetPlatform.iOS)
|
||||
PanelButton(
|
||||
onPressed: () {
|
||||
if (!Provider.of<PremiumProvider>(context,
|
||||
listen: false)
|
||||
.hasScope(PremiumScopes.liveActivityColor)) {
|
||||
PremiumLockedFeatureUpsell.show(
|
||||
context: context,
|
||||
feature: PremiumFeature.liveActivity);
|
||||
return;
|
||||
}
|
||||
|
||||
SettingsHelper.liveActivityColor(context);
|
||||
setState(() {});
|
||||
},
|
||||
@@ -1131,20 +1151,21 @@ class SettingsScreenState extends State<SettingsScreen>
|
||||
Provider.of<KretaClient>(context, listen: false)
|
||||
.accessToken!)),
|
||||
),
|
||||
// if (Provider.of<PremiumProvider>(context, listen: false)
|
||||
// .hasPremium)
|
||||
PanelButton(
|
||||
leading: const Icon(FeatherIcons.key),
|
||||
title: const Text("Remove Premium"),
|
||||
onPressed: () {
|
||||
Provider.of<PremiumProvider>(context, listen: false)
|
||||
.activate(removePremium: true);
|
||||
settings.update(
|
||||
accentColor: AccentColor.filc, store: true);
|
||||
Provider.of<ThemeModeObserver>(context, listen: false)
|
||||
.changeTheme(settings.theme);
|
||||
},
|
||||
),
|
||||
if (Provider.of<PremiumProvider>(context, listen: false)
|
||||
.hasPremium)
|
||||
PanelButton(
|
||||
leading: const Icon(FeatherIcons.key),
|
||||
title: const Text("Remove Premium"),
|
||||
onPressed: () {
|
||||
Provider.of<PremiumProvider>(context, listen: false)
|
||||
.activate(removePremium: true);
|
||||
settings.update(
|
||||
accentColor: AccentColor.filc, store: true);
|
||||
Provider.of<ThemeModeObserver>(context,
|
||||
listen: false)
|
||||
.changeTheme(settings.theme);
|
||||
},
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
|
||||
@@ -15,11 +15,11 @@ import 'package:filcnaplo_mobile_ui/common/filter_bar.dart';
|
||||
import 'package:filcnaplo_mobile_ui/common/panel/panel.dart';
|
||||
import 'package:filcnaplo_mobile_ui/common/widgets/grade/new_grades.dart';
|
||||
import 'package:filcnaplo_mobile_ui/common/widgets/homework/homework_tile.dart';
|
||||
import 'package:refilc_plus/models/premium_scopes.dart';
|
||||
import 'package:refilc_plus/providers/premium_provider.dart';
|
||||
// import 'package:refilc_plus/models/premium_scopes.dart';
|
||||
// import 'package:refilc_plus/providers/premium_provider.dart';
|
||||
import 'package:filcnaplo_kreta_api/providers/share_provider.dart';
|
||||
import 'package:filcnaplo/ui/flutter_colorpicker/colorpicker.dart';
|
||||
import 'package:refilc_plus/ui/mobile/premium/upsell.dart';
|
||||
// import 'package:refilc_plus/ui/mobile/premium/upsell.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
import 'package:flutter_feather_icons/flutter_feather_icons.dart';
|
||||
@@ -205,8 +205,9 @@ class _PremiumCustomAccentColorSettingState
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
bool hasAccess = Provider.of<PremiumProvider>(context)
|
||||
.hasScope(PremiumScopes.customColors);
|
||||
// bool hasAccess = Provider.of<PremiumProvider>(context)
|
||||
// .hasScope(PremiumScopes.customColors);
|
||||
bool hasAccess = true;
|
||||
bool isBackgroundDifferent = Theme.of(context).colorScheme.background !=
|
||||
AppColors.of(context).background;
|
||||
|
||||
@@ -723,16 +724,16 @@ class _PremiumCustomAccentColorSettingState
|
||||
// "colorpicker_icon".i18n)),
|
||||
],
|
||||
onTap: (index) {
|
||||
if (!hasAccess) {
|
||||
index = 0;
|
||||
_colorsTabController.animateTo(0,
|
||||
duration: Duration.zero);
|
||||
// if (!hasAccess) {
|
||||
// index = 0;
|
||||
// _colorsTabController.animateTo(0,
|
||||
// duration: Duration.zero);
|
||||
|
||||
PremiumLockedFeatureUpsell.show(
|
||||
context: context,
|
||||
feature: PremiumFeature
|
||||
.customcolors);
|
||||
}
|
||||
// PremiumLockedFeatureUpsell.show(
|
||||
// context: context,
|
||||
// feature: PremiumFeature
|
||||
// .customcolors);
|
||||
// }
|
||||
|
||||
switch (index) {
|
||||
case 0:
|
||||
|
||||
@@ -2,9 +2,9 @@ import 'package:filcnaplo/api/providers/database_provider.dart';
|
||||
import 'package:filcnaplo/api/providers/user_provider.dart';
|
||||
import 'package:filcnaplo/models/user.dart';
|
||||
import 'package:filcnaplo_mobile_ui/common/bottom_sheet_menu/bottom_sheet_menu_item.dart';
|
||||
import 'package:refilc_plus/models/premium_scopes.dart';
|
||||
import 'package:refilc_plus/providers/premium_provider.dart';
|
||||
import 'package:refilc_plus/ui/mobile/premium/upsell.dart';
|
||||
// import 'package:refilc_plus/models/premium_scopes.dart';
|
||||
// import 'package:refilc_plus/providers/premium_provider.dart';
|
||||
// import 'package:refilc_plus/ui/mobile/premium/upsell.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_feather_icons/flutter_feather_icons.dart';
|
||||
import 'package:filcnaplo_mobile_ui/screens/settings/settings_screen.i18n.dart';
|
||||
@@ -20,12 +20,12 @@ class UserMenuNickname extends StatelessWidget {
|
||||
Widget build(BuildContext context) {
|
||||
return BottomSheetMenuItem(
|
||||
onPressed: () {
|
||||
if (!Provider.of<PremiumProvider>(context, listen: false)
|
||||
.hasScope(PremiumScopes.nickname)) {
|
||||
PremiumLockedFeatureUpsell.show(
|
||||
context: context, feature: PremiumFeature.profile);
|
||||
return;
|
||||
}
|
||||
// if (!Provider.of<PremiumProvider>(context, listen: false)
|
||||
// .hasScope(PremiumScopes.nickname)) {
|
||||
// PremiumLockedFeatureUpsell.show(
|
||||
// context: context, feature: PremiumFeature.profile);
|
||||
// return;
|
||||
// }
|
||||
showDialog(
|
||||
context: context, builder: (context) => UserNicknameEditor(u));
|
||||
},
|
||||
|
||||
@@ -8,8 +8,8 @@ import 'package:filcnaplo/api/providers/database_provider.dart';
|
||||
import 'package:filcnaplo/api/providers/user_provider.dart';
|
||||
import 'package:filcnaplo/models/user.dart';
|
||||
import 'package:filcnaplo_mobile_ui/common/bottom_sheet_menu/bottom_sheet_menu_item.dart';
|
||||
import 'package:refilc_plus/models/premium_scopes.dart';
|
||||
import 'package:refilc_plus/providers/premium_provider.dart';
|
||||
// import 'package:refilc_plus/models/premium_scopes.dart';
|
||||
// import 'package:refilc_plus/providers/premium_provider.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
import 'package:flutter_feather_icons/flutter_feather_icons.dart';
|
||||
@@ -26,10 +26,10 @@ class UserMenuProfilePic extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
if (!Provider.of<PremiumProvider>(context)
|
||||
.hasScope(PremiumScopes.nickname)) {
|
||||
return const SizedBox();
|
||||
}
|
||||
// if (!Provider.of<PremiumProvider>(context)
|
||||
// .hasScope(PremiumScopes.nickname)) {
|
||||
// return const SizedBox();
|
||||
// }
|
||||
|
||||
return BottomSheetMenuItem(
|
||||
onPressed: () {
|
||||
|
||||
Reference in New Issue
Block a user