Commit c7dbcb30 authored by Yann Leboulanger's avatar Yann Leboulanger
Browse files

make /status /away and /back commands apply to connected and synchronized accounts. Fixes #7070

parent 1a61894b
......@@ -125,6 +125,17 @@ class StandardCommonCommands(CommandContainer):
self.echo(formatted)
def _get_connected_accounts(self):
conns = []
for conn in gajim.connections.itervalues():
if not gajim.config.get_per('accounts', conn.name,
'sync_with_global_status'):
continue
if conn.connected <= 2:
continue
conns.append(conn)
return conns
@command(raw=True, empty=True)
@doc(_("""
Set current the status
......@@ -135,7 +146,7 @@ class StandardCommonCommands(CommandContainer):
def status(self, status, message):
if status not in ('online', 'away', 'chat', 'xa', 'dnd'):
raise CommandError("Invalid status given")
for connection in gajim.connections.itervalues():
for connection in self._get_connected_accounts():
connection.change_status(status, message)
@command(raw=True, empty=True)
......@@ -143,7 +154,7 @@ class StandardCommonCommands(CommandContainer):
def away(self, message):
if not message:
message = _("Away")
for connection in gajim.connections.itervalues():
for connection in self._get_connected_accounts():
connection.change_status('away', message)
@command('back', raw=True, empty=True)
......@@ -151,7 +162,7 @@ class StandardCommonCommands(CommandContainer):
def online(self, message):
if not message:
message = _("Available")
for connection in gajim.connections.itervalues():
for connection in self._get_connected_accounts():
connection.change_status('online', message)
class StandardCommonChatCommands(CommandContainer):
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment