Set Location.Do not ignore 'Pablish location' parametr
This commit is contained in:
@@ -1,9 +1,8 @@
|
||||
[info]
|
||||
name: Set Location
|
||||
short_name: set_location
|
||||
version: 0.6
|
||||
version: 0.7
|
||||
description: Set information about the current geographical or physical location.
|
||||
To be able to specify a location on the built-in card, you must install python-osmgpsmap > 0.5
|
||||
authors: Denis Fomin <fominde@gmail.com>
|
||||
homepage: http://trac-plugins.gajim.org/wiki/SetLocalitionPlugin
|
||||
|
||||
|
||||
@@ -10,6 +10,7 @@ from plugins.gui import GajimPluginConfigDialog
|
||||
from plugins import GajimPlugin
|
||||
from plugins.helpers import log, log_calls
|
||||
from common import gajim
|
||||
from common import ged
|
||||
import gtkgui_helpers
|
||||
from dialogs import InputDialog, WarningDialog
|
||||
|
||||
@@ -43,6 +44,22 @@ class SetLocationPlugin(GajimPlugin):
|
||||
|
||||
@log_calls('SetLocationPlugin')
|
||||
def activate(self):
|
||||
gajim.ged.register_event_handler('signed-in', ged.POSTGUI,
|
||||
self.on_signed_in)
|
||||
self.send_locations()
|
||||
|
||||
@log_calls('SetLocationPlugin')
|
||||
def deactivate(self):
|
||||
self._data = {}
|
||||
for acct in gajim.connections:
|
||||
gajim.connections[acct].send_location(self._data)
|
||||
gajim.ged.remove_event_handler('signed-in', ged.POSTGUI,
|
||||
self.on_signed_in)
|
||||
|
||||
def on_signed_in(self, network_event):
|
||||
self.send_locations(network_event.conn.name)
|
||||
|
||||
def send_locations(self, acct=False):
|
||||
self._data = {}
|
||||
timestamp = time.time()
|
||||
timestamp = datetime.utcfromtimestamp(timestamp)
|
||||
@@ -50,16 +67,13 @@ class SetLocationPlugin(GajimPlugin):
|
||||
self._data['timestamp'] = timestamp
|
||||
for name in self.config_default_values:
|
||||
self._data[name] = self.config[name]
|
||||
for acct in gajim.connections:
|
||||
if gajim.connections[acct].connected == 0:
|
||||
gajim.connections[acct].to_be_sent_location = self._data
|
||||
else:
|
||||
gajim.connections[acct].send_location(self._data)
|
||||
|
||||
@log_calls('SetLocationPlugin')
|
||||
def deactivate(self):
|
||||
self._data = {}
|
||||
for acct in gajim.connections:
|
||||
if not acct:
|
||||
#set geo for all accounts
|
||||
for acct in gajim.connections:
|
||||
if gajim.config.get_per('accounts', acct, 'publish_location'):
|
||||
gajim.connections[acct].send_location(self._data)
|
||||
elif gajim.config.get_per('accounts', acct, 'publish_location'):
|
||||
gajim.connections[acct].send_location(self._data)
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user