2
0
mirror of https://github.com/inventree/inventree-app.git synced 2025-06-12 18:25:26 +00:00

Update notifications periodically (#311)

- Call periodically from API class
This commit is contained in:
Oliver
2023-04-11 21:25:39 +10:00
committed by GitHub
parent 0156329fb6
commit 946abb60a0
3 changed files with 44 additions and 44 deletions

View File

@ -129,9 +129,12 @@ class InvenTreeDrawer extends StatelessWidget {
}
if (InvenTreeAPI().supportsNotifications) {
int notification_count = InvenTreeAPI().notification_counter;
tiles.add(
ListTile(
leading: FaIcon(FontAwesomeIcons.bell),
trailing: notification_count > 0 ? Text(notification_count.toString()) : null,
title: Text(L10().notifications),
onTap: _notifications,
)

View File

@ -42,16 +42,6 @@ class _InvenTreeHomePageState extends State<InvenTreeHomePage> with BaseWidgetPr
// Initially load the profile and attempt server connection
_loadProfile();
_refreshNotifications();
// Refresh notifications every ~30 seconds
Timer.periodic(
Duration(
milliseconds: 30000,
), (timer) {
_refreshNotifications();
});
InvenTreeAPI().registerCallback(() {
if (mounted) {
@ -180,28 +170,6 @@ class _InvenTreeHomePageState extends State<InvenTreeHomePage> with BaseWidgetPr
setState(() {});
}
/*
* Refresh the number of active notifications for this user
*/
Future<void> _refreshNotifications() async {
if (!InvenTreeAPI().isConnected()) {
return;
}
// Ignore if the widget is no longer active
if (!mounted) {
return;
}
// final notifications = await InvenTreeNotification().list();
setState(() {
// _notificationCounter = notifications.length;
});
}
Widget _listTile(BuildContext context, String label, IconData icon, {Function()? callback, String role = "", String permission = "", Widget? trailing}) {
bool connected = InvenTreeAPI().isConnected();