Skip to content
Snippets Groups Projects
Commit 647cb7b9 authored by Philipp Hörist's avatar Philipp Hörist
Browse files

Set allow_reply_func

parent e59b7e0e
No related branches found
No related tags found
No related merge requests found
...@@ -254,6 +254,10 @@ def subscription(self): ...@@ -254,6 +254,10 @@ def subscription(self):
def groups(self): def groups(self):
return self._get_roster_attr('groups') return self._get_roster_attr('groups')
@property
def is_subscribed(self):
return self.subscription in ('from', 'both')
@property @property
def is_blocked(self): def is_blocked(self):
return self._module('Blocking').is_blocked(self._jid) return self._module('Blocking').is_blocked(self._jid)
......
...@@ -37,8 +37,20 @@ def set_enabled(self, enabled): ...@@ -37,8 +37,20 @@ def set_enabled(self, enabled):
self._nbxmpp('EntityTime').disable() self._nbxmpp('EntityTime').disable()
return return
if app.settings.get_account_setting(self._account, 'send_time_info'): if not app.settings.get_account_setting(self._account,
self._nbxmpp('EntityTime').enable() 'send_time_info'):
return
self._nbxmpp('EntityTime').enable()
self._nbxmpp('EntityTime').set_allow_reply_func(self._allow_reply)
def _allow_reply(self, jid):
item = self._con.get_module('Roster').get_item(jid.bare)
if item is None:
return False
contact = self._get_contact(jid.bare)
return contact.is_subscribed
def get_instance(*args, **kwargs): def get_instance(*args, **kwargs):
......
...@@ -32,15 +32,24 @@ def __init__(self, con): ...@@ -32,15 +32,24 @@ def __init__(self, con):
BaseModule.__init__(self, con) BaseModule.__init__(self, con)
def set_enabled(self, enabled): def set_enabled(self, enabled):
if enabled and app.is_installed('IDLE'): if not enabled or not app.is_installed('IDLE'):
if not app.settings.get_account_setting(self._account,
'send_idle_time'):
return
self._nbxmpp('LastActivity').set_idle_func(
idle.Monitor.get_idle_sec)
else:
self._nbxmpp('LastActivity').disable() self._nbxmpp('LastActivity').disable()
return
if not app.settings.get_account_setting(self._account,
'send_idle_time'):
return
self._nbxmpp('LastActivity').set_idle_func(idle.Monitor.get_idle_sec)
self._nbxmpp('LastActivity').set_allow_reply_func(self._allow_reply)
def _allow_reply(self, jid):
item = self._con.get_module('Roster').get_item(jid.bare)
if item is None:
return False
contact = self._get_contact(jid.bare)
return contact.is_subscribed
def get_instance(*args, **kwargs): def get_instance(*args, **kwargs):
......
...@@ -32,14 +32,24 @@ def __init__(self, con): ...@@ -32,14 +32,24 @@ def __init__(self, con):
BaseModule.__init__(self, con) BaseModule.__init__(self, con)
def set_enabled(self, enabled): def set_enabled(self, enabled):
if enabled: if not enabled:
if not app.settings.get_account_setting(self._account,
'send_os_info'):
return
self._nbxmpp('SoftwareVersion').set_software_version(
'Gajim', app.version, get_os_info())
else:
self._nbxmpp('SoftwareVersion').disable() self._nbxmpp('SoftwareVersion').disable()
return
if not app.settings.get_account_setting(self._account, 'send_os_info'):
return
self._nbxmpp('SoftwareVersion').set_software_version(
'Gajim', app.version, get_os_info())
self._nbxmpp('SoftwareVersion').set_allow_reply_func(self._allow_reply)
def _allow_reply(self, jid):
item = self._con.get_module('Roster').get_item(jid.bare)
if item is None:
return False
contact = self._get_contact(jid.bare)
return contact.is_subscribed
def get_instance(*args, **kwargs): def get_instance(*args, **kwargs):
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment