diff --git a/firka/lib/ui/phone/pages/home/home_main.dart b/firka/lib/ui/phone/pages/home/home_main.dart index 8332754..2bef4c6 100644 --- a/firka/lib/ui/phone/pages/home/home_main.dart +++ b/firka/lib/ui/phone/pages/home/home_main.dart @@ -299,6 +299,7 @@ class _HomeMainScreen extends FirkaState { if (student != null && lessons != null) { final infoItems = [...(infoBoard ?? []), ...(noticeBoard ?? [])]; final gradeItems = grades ?? []; + final testItems = tests ?? []; final homeworkItems = homework ?? []; final noticeBoardWidgets = <(Widget, DateTime)>[]; @@ -306,6 +307,10 @@ class _HomeMainScreen extends FirkaState { noticeBoardWidgets.add((InfoCard.messageItem(item), item.date)); } + for (final test in testItems) { + noticeBoardWidgets.add((InfoCard.test(test), test.reportDate)); + } + for (final grade in gradeItems) { noticeBoardWidgets.add((InfoCard.gradeSubj(grade), grade.recordDate)); } diff --git a/firka/lib/ui/phone/widgets/info_card.dart b/firka/lib/ui/phone/widgets/info_card.dart index 9fc265e..6e51cb1 100644 --- a/firka/lib/ui/phone/widgets/info_card.dart +++ b/firka/lib/ui/phone/widgets/info_card.dart @@ -48,6 +48,25 @@ class InfoCard extends StatelessWidget { ); } + factory InfoCard.test(Test test) { + final color = appStyle.colors.accent; + + return InfoCard( + icon: FilledCircle( + diameter: 36, + color: color.withAlpha(38), + child: FirkaIconWidget( + FirkaIconType.majesticons, + Majesticon.editPen4Solid, + color: color, + size: 24, + ), + ), + texts: [test.theme.firstUpper(), test.subject.name.firstUpper()], + right: [buildSubject(color, test.subject)], + ); + } + factory InfoCard.messageItem(MessageItem item) { return InfoCard( icon: FilledCircle(