changeset 1305:3dc7f61677bb frontends_multi_profiles

merged souliane commits
author Goffi <goffi@goffi.org>
date Fri, 06 Feb 2015 19:29:37 +0100
parents 1a61b18703c4 (current diff) ef7e8e23b353 (diff)
children 789e86a8919d
files frontends/src/quick_frontend/quick_contact_list.py
diffstat 2 files changed, 34 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/frontends/src/quick_frontend/quick_chat.py	Fri Feb 06 19:05:51 2015 +0100
+++ b/frontends/src/quick_frontend/quick_chat.py	Fri Feb 06 19:29:37 2015 +0100
@@ -156,7 +156,10 @@
         @param search (str): pattern to filter the history results
         @param profile (str): %(doc_profile)s
         """
-        log.debug(_("now we print the history (%d messages)") % size)
+        log_msg = _(u"now we print the history")
+        if size != C.HISTORY_LIMIT_DEFAULT:
+            log_msg += _(u" (%d messages)" % size)
+        log.debug(log_msg)
 
         def onHistory(history):
             for line in history:
--- a/frontends/src/quick_frontend/quick_contact_list.py	Fri Feb 06 19:05:51 2015 +0100
+++ b/frontends/src/quick_frontend/quick_contact_list.py	Fri Feb 06 19:29:37 2015 +0100
@@ -83,6 +83,36 @@
                 return False
         return entity in self._cache
 
+    @property
+    def roster_entities(self):
+        """Return all the bare JIDs of the roster entities.
+
+        @return: set(jid.JID)
+        """
+        return self._roster
+
+    @property
+    def roster_entities_by_group(self):
+        """Return a dictionary binding the roster groups to their entities bare JIDs.
+
+        @return: dict{unicode: set(jid.JID)}
+        """
+        return {group: self._groups[group]['jids'] for group in self._groups}
+
+    @property
+    def roster_groups_by_entity(self, contact_jid_s):
+        """Return a dictionary binding the entities bare JIDs to their roster groups.
+
+        @return: dict{jid.JID: set(unicode)}
+        """
+        result = {}
+        for group, data in self._groups.iteritems():
+            if group is None:
+                continue
+            for entity in data['jids']:
+                result.setdefault(entity, set()).add(group)
+        return result
+
     def fill(self):
         """Get all contacts from backend, and fill the widget"""
         def gotContacts(contacts):