forked from firka/student-legacy
premium inline
This commit is contained in:
parent
10730c15c9
commit
b387438e79
BIN
filcnaplo/assets/images/premium_goal_inline_showcase.png
Normal file
BIN
filcnaplo/assets/images/premium_goal_inline_showcase.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 46 KiB |
BIN
filcnaplo/assets/images/premium_nickname_inline_showcase.png
Normal file
BIN
filcnaplo/assets/images/premium_nickname_inline_showcase.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 47 KiB |
BIN
filcnaplo/assets/images/premium_stats_inline_showcase.png
Normal file
BIN
filcnaplo/assets/images/premium_stats_inline_showcase.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 46 KiB |
BIN
filcnaplo/assets/images/premium_theme_inline_showcase.png
Normal file
BIN
filcnaplo/assets/images/premium_theme_inline_showcase.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 61 KiB |
BIN
filcnaplo/assets/images/premium_widget_inline_showcase.png
Normal file
BIN
filcnaplo/assets/images/premium_widget_inline_showcase.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 39 KiB |
@ -12,7 +12,6 @@ import 'package:filcnaplo/ui/filter/widgets/events.dart' as event_filter;
|
|||||||
import 'package:filcnaplo/ui/filter/widgets/lessons.dart' as lesson_filter;
|
import 'package:filcnaplo/ui/filter/widgets/lessons.dart' as lesson_filter;
|
||||||
import 'package:filcnaplo/ui/filter/widgets/update.dart' as update_filter;
|
import 'package:filcnaplo/ui/filter/widgets/update.dart' as update_filter;
|
||||||
import 'package:filcnaplo/ui/filter/widgets/missed_exams.dart' as missed_exam_filter;
|
import 'package:filcnaplo/ui/filter/widgets/missed_exams.dart' as missed_exam_filter;
|
||||||
import 'package:filcnaplo/ui/filter/widgets/premium.dart' as premium_filter;
|
|
||||||
import 'package:filcnaplo_kreta_api/providers/absence_provider.dart';
|
import 'package:filcnaplo_kreta_api/providers/absence_provider.dart';
|
||||||
import 'package:filcnaplo_kreta_api/providers/event_provider.dart';
|
import 'package:filcnaplo_kreta_api/providers/event_provider.dart';
|
||||||
import 'package:filcnaplo_kreta_api/providers/exam_provider.dart';
|
import 'package:filcnaplo_kreta_api/providers/exam_provider.dart';
|
||||||
@ -22,6 +21,7 @@ import 'package:filcnaplo_kreta_api/providers/message_provider.dart';
|
|||||||
import 'package:filcnaplo_kreta_api/providers/note_provider.dart';
|
import 'package:filcnaplo_kreta_api/providers/note_provider.dart';
|
||||||
import 'package:filcnaplo_kreta_api/providers/timetable_provider.dart';
|
import 'package:filcnaplo_kreta_api/providers/timetable_provider.dart';
|
||||||
import 'package:filcnaplo_premium/providers/premium_provider.dart';
|
import 'package:filcnaplo_premium/providers/premium_provider.dart';
|
||||||
|
import 'package:filcnaplo_premium/ui/mobile/premium/premium_inline.dart';
|
||||||
import 'package:filcnaplo_mobile_ui/common/panel/panel.dart';
|
import 'package:filcnaplo_mobile_ui/common/panel/panel.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:implicitly_animated_reorderable_list_2/transitions.dart';
|
import 'package:implicitly_animated_reorderable_list_2/transitions.dart';
|
||||||
@ -131,22 +131,30 @@ Future<List<DateWidget>> getFilterWidgets(FilterType activeData, {bool absencesN
|
|||||||
case FilterType.missedExams:
|
case FilterType.missedExams:
|
||||||
items = missed_exam_filter.getWidgets(timetableProvider.lessons);
|
items = missed_exam_filter.getWidgets(timetableProvider.lessons);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case FilterType.premium:
|
|
||||||
final now = DateTime.now();
|
|
||||||
final isWeekend = now.weekday == DateTime.saturday || now.weekday == DateTime.sunday;
|
|
||||||
items = [if (!premiumProvider.hasPremium && isWeekend) premium_filter.getWidget()];
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
return items;
|
return items;
|
||||||
}
|
}
|
||||||
|
|
||||||
Widget filterItemBuilder(BuildContext context, Animation<double> animation, Widget item, int index) {
|
Widget filterItemBuilder(BuildContext context, Animation<double> animation, Widget item, int index) {
|
||||||
|
if (item.key == const Key("\$premium")) {
|
||||||
|
return Provider.of<PremiumProvider>(context, listen: false).hasPremium || DateTime.now().weekday <= 5
|
||||||
|
? const SizedBox()
|
||||||
|
: const Padding(
|
||||||
|
padding: EdgeInsets.only(bottom: 24.0),
|
||||||
|
child: PremiumInline(features: [
|
||||||
|
PremiumInlineFeature.nickname,
|
||||||
|
PremiumInlineFeature.theme,
|
||||||
|
PremiumInlineFeature.widget,
|
||||||
|
]),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
final wrappedItem = SizeFadeTransition(
|
final wrappedItem = SizeFadeTransition(
|
||||||
curve: Curves.easeInOutCubic,
|
curve: Curves.easeInOutCubic,
|
||||||
animation: animation,
|
animation: animation,
|
||||||
child: item,
|
child: item,
|
||||||
);
|
);
|
||||||
|
|
||||||
return item is Panel
|
return item is Panel
|
||||||
// Re-add & animate shadow
|
// Re-add & animate shadow
|
||||||
? AnimatedBuilder(
|
? AnimatedBuilder(
|
||||||
|
@ -1,16 +0,0 @@
|
|||||||
import 'package:filcnaplo/ui/date_widget.dart';
|
|
||||||
import 'package:filcnaplo_premium/ui/mobile/premium/premium_banner_button.dart';
|
|
||||||
import 'package:flutter/widgets.dart';
|
|
||||||
|
|
||||||
DateWidget getWidget() {
|
|
||||||
return DateWidget(
|
|
||||||
date: DateTime.now().add(const Duration(minutes: 1)),
|
|
||||||
widget: Padding(
|
|
||||||
padding: const EdgeInsets.symmetric(horizontal: 6.0),
|
|
||||||
child: ClipRRect(
|
|
||||||
borderRadius: BorderRadius.circular(14.0),
|
|
||||||
child: const PremiumBannerButton(),
|
|
||||||
),
|
|
||||||
),
|
|
||||||
);
|
|
||||||
}
|
|
@ -1 +1 @@
|
|||||||
Subproject commit 8eaccb0ed5c697bedb06c5e9e3a68b1ef06f0cfc
|
Subproject commit 0d46573b57569867b87dc90987877566e9618575
|
@ -1 +1 @@
|
|||||||
Subproject commit 6c336ce7b3d54eb079731a301f12c75703d3c73a
|
Subproject commit cec1451e4e8ab668a60a35386e75340be0e59459
|
Loading…
x
Reference in New Issue
Block a user