we can now have message pixman with transports

we can now log on the there is an error with the transport
This commit is contained in:
Yann Leboulanger 2005-05-25 10:28:27 +00:00
parent 5d7e3c75b8
commit f0ef95b4e1

View file

@ -181,20 +181,22 @@ class Roster_window:
def get_appropriate_state_images(self, jid): def get_appropriate_state_images(self, jid):
'''check jid and return the appropriate state images dict''' '''check jid and return the appropriate state images dict'''
if jid: if not jid:
if jid.find('@aim.') != -1: return self.jabber_state_images
state_images = self.transports_state_images['aim']
elif jid.find('@gadugadu.') != -1: host = jid.split('@')[-1]
state_images = self.transports_state_images['gadugadu']
elif jid.find('@icq.') != -1: if host.find('aim.') != -1:
state_images = self.transports_state_images['icq'] state_images = self.transports_state_images['aim']
elif jid.find('@msn.') != -1: elif host.find('gadugadu.') != -1:
state_images = self.transports_state_images['msn'] state_images = self.transports_state_images['gadugadu']
elif jid.find('@yahoo.') != -1: elif host.find('icq.') != -1:
state_images = self.transports_state_images['yahoo'] state_images = self.transports_state_images['icq']
else: #jabber elif host.find('msn.') != -1:
state_images = self.jabber_state_images state_images = self.transports_state_images['msn']
else: # in GC we don't have a jid elif host.find('yahoo.') != -1:
state_images = self.transports_state_images['yahoo']
else:
state_images = self.jabber_state_images state_images = self.jabber_state_images
return state_images return state_images
@ -216,32 +218,20 @@ class Roster_window:
prio = u.priority prio = u.priority
user = u user = u
for iter in iters: state_images = self.get_appropriate_state_images(jid)
state_images = self.get_appropriate_state_images(jid) if self.plugin.queues[account].has_key(jid):
img = state_images['message']
if jid.find('@') <= 0: # if not '@' or '@' starts the jid ==> agent elif jid.find('@') <= 0: # if not '@' or '@' starts the jid ==> agent
if jid.find('aim.') != -1: img = state_images[user.show]
state_images = self.transports_state_images['aim'] else:
elif jid.find('gadugadu.') != -1: if user.sub == 'both':
state_images = self.transports_state_images['gadugadu'] img = state_images[user.show]
elif jid.find('icq.') != -1:
state_images = self.transports_state_images['icq']
elif jid.find('msn.') != -1:
state_images = self.transports_state_images['msn']
elif jid.find('yahoo.') != -1:
state_images = self.transports_state_images['yahoo']
img = state_images[user.show]
elif self.plugin.queues[account].has_key(jid):
img = state_images['message']
else: else:
if user.sub != 'both': if user.ask == 'subscribe':
if user.ask == 'subscribe': img = state_images['requested']
img = state_images['requested']
else:
img = state_images['not in the roster']
else: else:
img = state_images[user.show] img = state_images['not in the roster']
for iter in iters:
model.set_value(iter, 0, img) model.set_value(iter, 0, img)
model.set_value(iter, 1, name) model.set_value(iter, 1, name)
@ -542,14 +532,14 @@ class Roster_window:
user = self.contacts[account][jid][0] user = self.contacts[account][jid][0]
menu = gtk.Menu() menu = gtk.Menu()
item = gtk.MenuItem(_('Log on')) item = gtk.MenuItem(_('Log on'))
#FIXME: what about error? show = self.contacts[account][jid][0].show
if self.contacts[account][jid][0].show != 'offline': if show != 'offline' and show != 'error':
item.set_sensitive(False) item.set_sensitive(False)
menu.append(item) menu.append(item)
item.connect('activate', self.on_agent_logging, jid, 'available', account) item.connect('activate', self.on_agent_logging, jid, 'available', account)
item = gtk.MenuItem(_('Log off')) item = gtk.MenuItem(_('Log off'))
if self.contacts[account][jid][0].show == 'offline': if show == 'offline' or show == 'error':
item.set_sensitive(False) item.set_sensitive(False)
menu.append(item) menu.append(item)
item.connect('activate', self.on_agent_logging, jid, 'unavailable', item.connect('activate', self.on_agent_logging, jid, 'unavailable',