diff --git a/organize/personal/README.txt b/organize/personal/README.txt index ca8ff4d..59c0ff6 100644 --- a/organize/personal/README.txt +++ b/organize/personal/README.txt @@ -146,9 +146,14 @@ When the notification is marked as read the read timestamp will be set. It's possible to store more than one notification concerning the same object. >>> notifications.add(d001, person, 'I send myself another letter.') - >>> len(list(notifications.listTracks())) + >>> len(list(notifications.listTracks(unreadOnly=False))) 2 +Only unread notifications are listed by default. + + >>> len(list(notifications.listTracks())) + 1 + User interface -------------- diff --git a/organize/personal/browser/configurator.py b/organize/personal/browser/configurator.py index 80f6089..34cae7e 100644 --- a/organize/personal/browser/configurator.py +++ b/organize/personal/browser/configurator.py @@ -30,6 +30,7 @@ from cybertools.browser.configurator import ViewConfigurator, MacroViewProperty from cybertools.meta.interfaces import IOptions from loops.browser.node import NodeView from loops.organize.party import getPersonForUser +from loops.organize.personal.notification import Notifications from loops.util import _ @@ -105,6 +106,8 @@ class PortletConfigurator(ViewConfigurator): notif = self.view.globalOptions.organize.showNotifications if not notif: return [] + if not Notifications(self.person).listTracks(unreadOnly=False): + return [] if isinstance(notif, list): notifPage = notif[0] else: diff --git a/organize/personal/notification.py b/organize/personal/notification.py index f575e8e..76617f2 100644 --- a/organize/personal/notification.py +++ b/organize/personal/notification.py @@ -33,7 +33,7 @@ class Notifications(Favorites): self.context = (baseObject(person). getLoopsRoot().getRecordManager()['favorites']) - def listTracks(self, unreadOnly=False): + def listTracks(self, unreadOnly=True): tracks = super(Notifications, self).listTracks( baseObject(self.person), type='notification') if unreadOnly: