commit f352832879434ad61cf8e337ae1488aa4dd1f2dd
parent 6ecb9774619f871e41ecc1183a4528bcafc1f0a1
Author: ThomasV <thomasv@gitorious>
Date: Mon, 10 Mar 2014 16:05:57 +0100
Merge branch 'master' of git://github.com/spesmilo/electrum
Diffstat:
4 files changed, 32 insertions(+), 4 deletions(-)
diff --git a/gui/qt/transaction_dialog.py b/gui/qt/transaction_dialog.py
@@ -180,6 +180,9 @@ class TxDialog(QDialog):
def add_io(self, vbox):
+ if self.tx.locktime > 0:
+ vbox.addWidget(QLabel("LockTime: %d\n" % self.tx.locktime))
+
vbox.addWidget(QLabel(_("Inputs")))
lines = map(lambda x: x.get('prevout_hash') + ":%d"%x.get('prevout_n') + u'\t' + "%s"%x.get('address') , self.tx.inputs )
i_text = QTextEdit()
diff --git a/lib/transaction.py b/lib/transaction.py
@@ -376,6 +376,7 @@ class Transaction:
self.inputs = self.d['inputs']
self.outputs = self.d['outputs']
self.outputs = map(lambda x: (x['address'],x['value']), self.outputs)
+ self.locktime = self.d['lockTime']
self.is_complete = is_complete
def __str__(self):
diff --git a/lib/wallet.py b/lib/wallet.py
@@ -1847,7 +1847,7 @@ class Wallet(object):
is_hex = False
if is_hex or (uses_electrum_words and len(words) != 13):
- print "old style wallet", len(words), words
+ #print "old style wallet", len(words), words
w = OldWallet(storage)
w.init_seed(seed) #hex
else:
diff --git a/plugins/exchange_rate.py b/plugins/exchange_rate.py
@@ -14,6 +14,7 @@ from electrum_gui.qt.util import *
EXCHANGES = ["BitcoinAverage",
+ "BitcoinVenezuela",
"BitPay",
"Blockchain",
"BTCChina",
@@ -78,6 +79,7 @@ class Exchanger(threading.Thread):
self.use_exchange = self.parent.config.get('use_exchange', "Blockchain")
update_rates = {
"BitcoinAverage": self.update_ba,
+ "BitcoinVenezuela": self.update_bv,
"BitPay": self.update_bp,
"Blockchain": self.update_bc,
"BTCChina": self.update_CNY,
@@ -226,6 +228,22 @@ class Exchanger(threading.Thread):
self.parent.set_currencies(quote_currencies)
+ def update_bv(self):
+ try:
+ jsonresp = self.get_json('api.bitcoinvenezuela.com', "/")
+ except Exception:
+ return
+ quote_currencies = {}
+ try:
+ for r in jsonresp["BTC"]:
+ quote_currencies[r] = Decimal(jsonresp["BTC"][r])
+ with self.lock:
+ self.quote_currencies = quote_currencies
+ except KeyError:
+ pass
+ self.parent.set_currencies(quote_currencies)
+
+
def update_ba(self):
try:
jsonresp = self.get_json('api.bitcoinaverage.com', "/ticker/global/all")
@@ -273,6 +291,7 @@ class Plugin(BasePlugin):
def init(self):
self.win = self.gui.main_window
self.win.connect(self.win, SIGNAL("refresh_currencies()"), self.win.update_status)
+ self.btc_rate = Decimal(0.0)
# Do price discovery
self.exchanger = Exchanger(self)
self.exchanger.start()
@@ -290,10 +309,12 @@ class Plugin(BasePlugin):
def create_quote_text(self, btc_balance):
quote_currency = self.config.get("currency", "EUR")
self.exchanger.use_exchange = self.config.get("use_exchange", "Blockchain")
- quote_balance = self.exchanger.exchange(btc_balance, quote_currency)
- if quote_balance is None:
+ cur_rate = self.exchanger.exchange(Decimal(1.0), quote_currency)
+ if cur_rate is None:
quote_text = ""
else:
+ quote_balance = btc_balance * Decimal(cur_rate)
+ self.btc_rate = cur_rate
quote_text = "%.2f %s" % (quote_balance, quote_currency)
return quote_text
@@ -348,7 +369,10 @@ class Plugin(BasePlugin):
pass
tx_time = int(tx_info['timestamp'])
tx_time_str = datetime.datetime.fromtimestamp(tx_time).strftime('%Y-%m-%d')
- tx_USD_val = "%.2f %s" % (Decimal(tx_info['value']) / 100000000 * Decimal(resp_hist['bpi'][tx_time_str]), "USD")
+ try:
+ tx_USD_val = "%.2f %s" % (Decimal(tx_info['value']) / 100000000 * Decimal(resp_hist['bpi'][tx_time_str]), "USD")
+ except KeyError:
+ tx_USD_val = "%.2f %s" % (self.btc_rate * Decimal(tx_info['value'])/100000000 , "USD")
item.setText(5, tx_USD_val)
if Decimal(tx_info['value']) < 0: