add payment requests to kivy
This commit is contained in:
18
lib/util.py
18
lib/util.py
@@ -317,7 +317,7 @@ def block_explorer_URL(config, kind, item):
|
||||
#_ud = re.compile('%([0-9a-hA-H]{2})', re.MULTILINE)
|
||||
#urldecode = lambda x: _ud.sub(lambda m: chr(int(m.group(1), 16)), x)
|
||||
|
||||
def parse_URI(uri):
|
||||
def parse_URI(uri, on_pr=None):
|
||||
import bitcoin
|
||||
from bitcoin import COIN
|
||||
|
||||
@@ -364,6 +364,22 @@ def parse_URI(uri):
|
||||
if 'sig' in out:
|
||||
out['sig'] = bitcoin.base_decode(out['sig'], None, base=58).encode('hex')
|
||||
|
||||
r = out.get('r')
|
||||
sig = out.get('sig')
|
||||
name = out.get('name')
|
||||
if r or (name and sig):
|
||||
def get_payment_request_thread():
|
||||
import paymentrequest as pr
|
||||
if name and sig:
|
||||
s = pr.serialize_request(out).SerializeToString()
|
||||
request = pr.PaymentRequest(s)
|
||||
else:
|
||||
request = pr.get_payment_request(r)
|
||||
on_pr(request)
|
||||
t = threading.Thread(target=get_payment_request_thread)
|
||||
t.setDaemon(True)
|
||||
t.start()
|
||||
|
||||
return out
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user