def your_notifications(self): show_all = bool(self.request.form.get('showall')) display_message = [] user = api.user.get_current() channel = AllChannel(user.getUserId()) if show_all: display_message = channel.get_all_messages() else: display_message = channel.get_unread_messages() return display_message
def getNumber(self): user = api.user.get_current() # TODO a zope user like admin will fail from here try: channel = AllChannel(user.getUserId()) count = channel.get_unread_count() except AttributeError: # AttributeError: getUserId count = 0 return count
def getNumber(self): user = api.user.get_current() # TODO a zope user like admin will fail from here try: channel = AllChannel(user) count = channel.get_unread_count() except AttributeError: # AttributeError: getUserId count = 0 return count
def test_create_msgs_mark_as_read_delete(self): predicate = 'GLOBAL_NOTICE' users = ['test0', 'test1', 'test2', 'test3', 'test4'] users = map(lambda user: create_user( email=user + '@example.com', username=user).getUser(), users) # Step 1, something creates a bunch of messages actor = dict(fullname='John Doe', userid='johndoe', email='*****@*****.**') obj = {'id': self.portal.id, 'url': self.portal.absolute_url(relative=True), 'title': 'I deleted the front page'} msg = Message([actor], predicate, obj) # This should be an adapter msg_class_handler = getAdapter( obj, IMessageClassHandler, name=predicate ) msg_class_handler.add(msg) # Step 2, test1 sees his message channel = AllChannel(users[0]) first_msg = channel.get_all_messages()[0] first_msg.mark_as_read() # Step 3, the regular clean up tasks from somewhere # cleans up queues handler = getAdapter(obj, IMessageClassHandler, name=predicate) handler.cleanup() # Step 4, somebody else reads his messages channel = AllChannel(users[1]) first_msg = channel.get_all_messages()[0] first_msg.mark_as_read() # Final result self.assertEqual(0, len(AllChannel(users[0]).get_unread_messages( keep_unread=True))) self.assertEqual(0, len(AllChannel(users[1]).get_unread_messages( keep_unread=True))) self.assertEqual(1, len(AllChannel(users[1]).get_all_messages())) self.assertEqual(1, len(AllChannel(users[2]).get_unread_messages( keep_unread=True))) self.assertEqual(1, len(AllChannel(users[3]).get_unread_messages( keep_unread=True))) self.assertEqual(1, len(AllChannel(users[4]).get_unread_messages( keep_unread=True)))
def your_notifications(self): # count to show unread messages display_message = [] user = api.user.get_current() # TODO a zope user like admin will fail from here try: channel = AllChannel(user) # TODO for now we keep the everything unread keep_unread=True display_message = channel.get_unread_messages(keep_unread=True) except AttributeError: # AttributeError: getUserId display_message = [] return display_message
def test_create_msgs_mark_as_read_delete(self): predicate = 'GLOBAL_NOTICE' users = ['test0', 'test1', 'test2', 'test3', 'test4'] users = map( lambda user: create_user(email=user + '@example.com', username=user).getUser(), users) # Step 1, something creates a bunch of messages actor = dict(fullname='John Doe', userid='johndoe', email='*****@*****.**') obj = { 'id': self.portal.id, 'url': self.portal.absolute_url(relative=True), 'title': 'I deleted the front page' } msg = Message([actor], predicate, obj) # This should be an adapter msg_class_handler = getAdapter(obj, IMessageClassHandler, name=predicate) msg_class_handler.add(msg) # Step 2, test1 sees his message channel = AllChannel(users[0].getUserId()) first_msg = channel.get_all_messages()[0] first_msg.mark_as_read() # Step 3, the regular clean up tasks from somewhere # cleans up queues handler = getAdapter(obj, IMessageClassHandler, name=predicate) handler.cleanup() # Step 4, somebody else reads his messages channel = AllChannel(users[1].getUserId()) first_msg = channel.get_all_messages()[0] first_msg.mark_as_read() # Final result self.assertEqual( 0, len( AllChannel(users[0].getUserId()).get_unread_messages( keep_unread=True))) self.assertEqual( 0, len( AllChannel(users[1].getUserId()).get_unread_messages( keep_unread=True))) self.assertEqual( 1, len(AllChannel(users[1].getUserId()).get_all_messages())) self.assertEqual( 1, len( AllChannel(users[2].getUserId()).get_unread_messages( keep_unread=True))) self.assertEqual( 1, len( AllChannel(users[3].getUserId()).get_unread_messages( keep_unread=True))) self.assertEqual( 1, len( AllChannel(users[4].getUserId()).get_unread_messages( keep_unread=True)))