Browse Source

Hopefully fix label corruption.

283
Maran 12 years ago
parent
commit
7f37c093b6
  1. 16
      plugins/labels.py

16
plugins/labels.py

@ -1,6 +1,7 @@
from electrum.util import print_error
from electrum_gui.i18n import _
import httplib, urllib
import socket
import hashlib
import json
from urlparse import urlparse, parse_qs
@ -21,7 +22,7 @@ from electrum_gui.gui_classic import HelpButton
class Plugin(BasePlugin):
def version(self):
return "0.2"
return "0.2.1"
def encode(self, message):
encrypted = aes.encryptData(self.encode_password, unicode(message))
@ -73,7 +74,7 @@ To get started visit http://labelectrum.herokuapp.com/ to sign up for an account
def set_label(self, item,label, changed):
if not changed:
return
try:
bundle = {"label": {"external_id": self.encode(item), "text": self.encode(label)}}
params = json.dumps(bundle)
connection = httplib.HTTPConnection(self.target_host)
@ -83,6 +84,9 @@ To get started visit http://labelectrum.herokuapp.com/ to sign up for an account
if response.reason == httplib.responses[httplib.NOT_FOUND]:
return
response = json.loads(response.read())
except socket.gaierror as e:
print_error('Error connecting to service: %s ' % e)
return False
def settings_dialog(self):
def check_for_api_key(api_key):
@ -163,6 +167,7 @@ To get started visit http://labelectrum.herokuapp.com/ to sign up for an account
self.gui.update_contacts_tab()
def do_full_push(self):
try:
bundle = {"labels": {}}
for key, value in self.labels.iteritems():
encoded = self.encode(key)
@ -185,8 +190,12 @@ To get started visit http://labelectrum.herokuapp.com/ to sign up for an account
return False
return True
except socket.gaierror as e:
print_error('Error connecting to service: %s ' % e)
return False
def do_full_pull(self, force = False):
try:
connection = httplib.HTTPConnection(self.target_host)
connection.request("GET", ("/api/wallets/%s/labels.json?auth_token=%s" % (self.wallet_id, self.auth_token())),"", {'Content-Type': 'application/json'})
response = connection.getresponse()
@ -207,3 +216,6 @@ To get started visit http://labelectrum.herokuapp.com/ to sign up for an account
if force or not self.labels.get(decoded_key):
self.labels[decoded_key] = decoded_label
return True
except socket.gaierror as e:
print_error('Error connecting to service: %s ' % e)
return False

Loading…
Cancel
Save