|
|
|
@ -37,7 +37,6 @@ def print_json(obj): |
|
|
|
sys.stdout.write(s + "\n") |
|
|
|
sys.stdout.write(s + "\n") |
|
|
|
sys.stdout.flush() |
|
|
|
sys.stdout.flush() |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def user_dir(): |
|
|
|
def user_dir(): |
|
|
|
if "HOME" in os.environ: |
|
|
|
if "HOME" in os.environ: |
|
|
|
return os.path.join(os.environ["HOME"], ".electrum") |
|
|
|
return os.path.join(os.environ["HOME"], ".electrum") |
|
|
|
@ -166,27 +165,31 @@ def parse_url(url): |
|
|
|
else: |
|
|
|
else: |
|
|
|
params = [] |
|
|
|
params = [] |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
kv = {} |
|
|
|
|
|
|
|
|
|
|
|
amount = label = message = signature = identity = '' |
|
|
|
amount = label = message = signature = identity = '' |
|
|
|
for p in params: |
|
|
|
for p in params: |
|
|
|
k,v = p.split('=') |
|
|
|
k,v = p.split('=') |
|
|
|
uv = urldecode(v) |
|
|
|
uv = urldecode(v) |
|
|
|
if k == 'amount': |
|
|
|
if k in kv: |
|
|
|
amount = uv |
|
|
|
raise Exception('Duplicate Keys') |
|
|
|
m = re.match('([0-9\.]+)X([0-9])', uv) |
|
|
|
kv[k] = uv |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if 'amount' in kv: |
|
|
|
|
|
|
|
am = kv['amount'] |
|
|
|
|
|
|
|
m = re.match('([0-9\.]+)X([0-9])', am) |
|
|
|
if m: |
|
|
|
if m: |
|
|
|
k = int(m.group(2)) - 8 |
|
|
|
k = int(m.group(2)) - 8 |
|
|
|
amount = Decimal(m.group(1)) * pow( Decimal(10) , k) |
|
|
|
amount = Decimal(m.group(1)) * pow( Decimal(10) , k) |
|
|
|
else: |
|
|
|
else: |
|
|
|
amount = Decimal(uv) |
|
|
|
amount = Decimal(am) |
|
|
|
elif k == 'message': |
|
|
|
if 'message' in kv: |
|
|
|
message = uv |
|
|
|
message = kv['message'] |
|
|
|
elif k == 'label': |
|
|
|
if 'label' in kv: |
|
|
|
label = uv |
|
|
|
label = kv['label'] |
|
|
|
elif k == 'signature': |
|
|
|
if 'signature' in kv: |
|
|
|
identity, signature = uv.split(':') |
|
|
|
identity, signature = kv['signature'].split(':') |
|
|
|
url = url.replace('&%s=%s'%(k,v),'') |
|
|
|
url = url.replace('&%s=%s'%('signature',kv['signature']),'') |
|
|
|
else: |
|
|
|
|
|
|
|
print k,v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return address, amount, label, message, signature, identity, url |
|
|
|
return address, amount, label, message, signature, identity, url |
|
|
|
|
|
|
|
|
|
|
|
|