fix publish_request
This commit is contained in:
parent
d367930113
commit
357c405ac6
|
@ -307,27 +307,6 @@ def make_request(config, req):
|
||||||
return make_payment_request(outputs, message, time, time + expiration if expiration else None, key_path, cert_path)
|
return make_payment_request(outputs, message, time, time + expiration if expiration else None, key_path, cert_path)
|
||||||
|
|
||||||
|
|
||||||
def publish_request(config, addr, req):
|
|
||||||
import shutil, os
|
|
||||||
rdir = config.get('requests_dir')
|
|
||||||
if not rdir:
|
|
||||||
return
|
|
||||||
if not os.path.exists(rdir):
|
|
||||||
os.mkdir(rdir)
|
|
||||||
index = os.path.join(rdir, 'index.html')
|
|
||||||
if not os.path.exists(index):
|
|
||||||
src = os.path.join(os.path.dirname(__file__), 'www', 'index.html')
|
|
||||||
shutil.copy(src, index)
|
|
||||||
key = req.get('id', addr)
|
|
||||||
pr = make_request(config, req)
|
|
||||||
path = os.path.join(rdir, key + '.bip70')
|
|
||||||
with open(path, 'w') as f:
|
|
||||||
f.write(pr)
|
|
||||||
with open(os.path.join(rdir, key + '.json'), 'w') as f:
|
|
||||||
f.write(json.dumps(req))
|
|
||||||
req['path'] = path
|
|
||||||
return req
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
class InvoiceStore(object):
|
class InvoiceStore(object):
|
||||||
|
|
|
@ -1270,16 +1270,32 @@ class Abstract_Wallet(object):
|
||||||
return status
|
return status
|
||||||
|
|
||||||
def add_payment_request(self, addr, amount, message, expiration, config):
|
def add_payment_request(self, addr, amount, message, expiration, config):
|
||||||
import paymentrequest
|
import paymentrequest, shutil, os
|
||||||
timestamp = int(time.time())
|
timestamp = int(time.time())
|
||||||
_id = Hash(addr + "%d"%timestamp).encode('hex')[0:10]
|
_id = Hash(addr + "%d"%timestamp).encode('hex')[0:10]
|
||||||
r = {'time':timestamp, 'amount':amount, 'expiration':expiration, 'address':addr, 'memo':message, 'id':_id}
|
r = {'time':timestamp, 'amount':amount, 'expiration':expiration, 'address':addr, 'memo':message, 'id':_id}
|
||||||
self.receive_requests[addr] = r
|
self.receive_requests[addr] = r
|
||||||
self.set_label(addr, message) # should be a default label
|
|
||||||
if config.get('requests_dir'):
|
|
||||||
paymentrequest.publish_request(config, addr, r)
|
|
||||||
self.storage.put('receive_requests2', self.receive_requests)
|
self.storage.put('receive_requests2', self.receive_requests)
|
||||||
return self.get_payment_request(addr, config)
|
self.set_label(addr, message) # should be a default label
|
||||||
|
rdir = config.get('requests_dir')
|
||||||
|
req = self.get_payment_request(addr, config)
|
||||||
|
if rdir:
|
||||||
|
if not os.path.exists(rdir):
|
||||||
|
os.mkdir(rdir)
|
||||||
|
index = os.path.join(rdir, 'index.html')
|
||||||
|
if not os.path.exists(index):
|
||||||
|
src = os.path.join(os.path.dirname(__file__), 'www', 'index.html')
|
||||||
|
shutil.copy(src, index)
|
||||||
|
key = req.get('id', addr)
|
||||||
|
pr = paymentrequest.make_request(config, req)
|
||||||
|
path = os.path.join(rdir, key + '.bip70')
|
||||||
|
with open(path, 'w') as f:
|
||||||
|
f.write(pr)
|
||||||
|
# reload
|
||||||
|
req = self.get_payment_request(addr, config)
|
||||||
|
with open(os.path.join(rdir, key + '.json'), 'w') as f:
|
||||||
|
f.write(json.dumps(req))
|
||||||
|
return req
|
||||||
|
|
||||||
def remove_payment_request(self, addr, config):
|
def remove_payment_request(self, addr, config):
|
||||||
if addr not in self.receive_requests:
|
if addr not in self.receive_requests:
|
||||||
|
|
Loading…
Reference in New Issue