From 66a4f406fab1a00dd37b90689ba7678154684ebf Mon Sep 17 00:00:00 2001 From: Yann Leboulanger Date: Thu, 30 Mar 2006 21:25:38 +0000 Subject: [PATCH] Observersa in also a special group than can't be renamed / can't reveive contacts with DND --- src/common/gajim.py | 1 + src/dialogs.py | 4 ++-- src/roster_window.py | 15 +++++++-------- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/common/gajim.py b/src/common/gajim.py index 8edf75198..a61b95de8 100644 --- a/src/common/gajim.py +++ b/src/common/gajim.py @@ -122,6 +122,7 @@ status_before_autoaway = {} SHOW_LIST = ['offline', 'connecting', 'online', 'chat', 'away', 'xa', 'dnd', 'invisible'] +special_groups = (_('Transports'), _('Not in Roster'), _('Observers')) def get_nick_from_jid(jid): pos = jid.find('@') diff --git a/src/dialogs.py b/src/dialogs.py index e67de5208..cef186bf3 100644 --- a/src/dialogs.py +++ b/src/dialogs.py @@ -158,7 +158,7 @@ class EditGroupsDialog: store = gtk.ListStore(str, bool) self.list.set_model(store) for g in gajim.groups[self.account].keys(): - if g in (_('Transports'), _('Not in Roster')): + if g in gajim.special_groups: continue iter = store.append() store.set(iter, 0, g) @@ -416,7 +416,7 @@ _('Please fill in the data of the contact you want to add in account %s') %accou liststore = gtk.ListStore(str) self.group_comboboxentry.set_model(liststore) for g in gajim.groups[account].keys(): - if g != _('Not in Roster') and g != _('Transports'): + if g not in gajim.special_groups: self.group_comboboxentry.append_text(g) if not jid_agents: diff --git a/src/roster_window.py b/src/roster_window.py index 96be340ed..a09eecc03 100644 --- a/src/roster_window.py +++ b/src/roster_window.py @@ -2523,11 +2523,10 @@ _('If "%s" accepts this request you will know his or her status.') % jid) elif type == 'group': # in C_JID column, we hold the group name (which is not escaped) old_name = model[iter][C_JID].decode('utf-8') - # Groups may not change name from or to 'Not in Roster' nor Transports - if _('Not in Roster') in (new_text, old_name): - return - if _('Transports') in (new_text, old_name): - return + # Groups may not change name from or to a special groups + for g in gajim.special_groups: + if g in (new_text, old_name): + return # get all contacts in that group for jid in gajim.contacts.get_jid_list(account): contact = gajim.contacts.get_contact_with_highest_priority(account, @@ -2991,7 +2990,7 @@ _('If "%s" accepts this request you will know his or her status.') % jid) it = model.iter_parent(it) iter_group_source = it grp_source = model[it][C_JID].decode('utf-8') - if grp_source == _('Transports') or grp_source == _('Not in Roster'): + if grp_source in gajim.special_groups: return jid_source = data.decode('utf-8') c_source = gajim.contacts.get_contact_with_highest_priority(account, @@ -2999,7 +2998,7 @@ _('If "%s" accepts this request you will know his or her status.') % jid) # Get destination group if type_dest == 'group': grp_dest = model[iter_dest][C_JID].decode('utf-8') - if grp_dest == _('Transports') or grp_dest == _('Not in Roster'): + if grp_dest in gajim.special_groups: return if context.action == gtk.gdk.ACTION_COPY: self.on_drop_in_group(None, account, c_source, grp_dest, context, @@ -3013,7 +3012,7 @@ _('If "%s" accepts this request you will know his or her status.') % jid) while model[it][C_TYPE] != 'group': it = model.iter_parent(it) grp_dest = model[it][C_JID].decode('utf-8') - if grp_dest == _('Transports') or grp_dest == _('Not in Roster'): + if grp_dest in gajim.special_groups: return if jid_source == jid_dest: if grp_source == grp_dest: