@ -1046,13 +1046,13 @@ class Abstract_Wallet(PrintError):
rdir = config . get ( ' requests_dir ' )
rdir = config . get ( ' requests_dir ' )
if rdir :
if rdir :
key = out . get ( ' id ' , addr )
key = out . get ( ' id ' , addr )
path = os . path . join ( rdir , key )
path = os . path . join ( rdir , ' req ' , key [ 0 ] , key [ 1 ] , key )
if os . path . exists ( path ) :
if os . path . exists ( path ) :
baseurl = ' file:// ' + rdir
baseurl = ' file:// ' + rdir
rewrite = config . get ( ' url_rewrite ' )
rewrite = config . get ( ' url_rewrite ' )
if rewrite :
if rewrite :
baseurl = baseurl . replace ( * rewrite )
baseurl = baseurl . replace ( * rewrite )
out [ ' request_url ' ] = os . path . join ( baseurl , key )
out [ ' request_url ' ] = os . path . join ( baseurl , ' req ' , key [ 0 ] , key [ 1 ] , key , key )
out [ ' URI ' ] + = ' &r= ' + out [ ' request_url ' ]
out [ ' URI ' ] + = ' &r= ' + out [ ' request_url ' ]
out [ ' index_url ' ] = os . path . join ( baseurl , ' index.html ' ) + ' ?id= ' + key
out [ ' index_url ' ] = os . path . join ( baseurl , ' index.html ' ) + ' ?id= ' + key
websocket_server_announce = config . get ( ' websocket_server_announce ' )
websocket_server_announce = config . get ( ' websocket_server_announce ' )
@ -1122,12 +1122,18 @@ class Abstract_Wallet(PrintError):
if rdir and amount is not None :
if rdir and amount is not None :
key = req . get ( ' id ' , addr )
key = req . get ( ' id ' , addr )
pr = paymentrequest . make_request ( config , req )
pr = paymentrequest . make_request ( config , req )
path = os . path . join ( rdir , key )
path = os . path . join ( rdir , ' req ' , key [ 0 ] , key [ 1 ] , key )
with open ( path , ' w ' ) as f :
if not os . path . exists ( path ) :
try :
os . makedirs ( path )
except OSError as exc :
if exc . errno != errno . EEXIST :
raise
with open ( os . path . join ( path , key ) , ' w ' ) as f :
f . write ( pr . SerializeToString ( ) )
f . write ( pr . SerializeToString ( ) )
# reload
# reload
req = self . get_payment_request ( addr , config )
req = self . get_payment_request ( addr , config )
with open ( os . path . join ( rdir , key + ' .json ' ) , ' w ' ) as f :
with open ( os . path . join ( path , key + ' .json ' ) , ' w ' ) as f :
f . write ( json . dumps ( req ) )
f . write ( json . dumps ( req ) )
return req
return req
@ -1139,7 +1145,7 @@ class Abstract_Wallet(PrintError):
if rdir :
if rdir :
key = r . get ( ' id ' , addr )
key = r . get ( ' id ' , addr )
for s in [ ' .json ' , ' ' ] :
for s in [ ' .json ' , ' ' ] :
n = os . path . join ( rdir , key + s )
n = os . path . join ( rdir , ' req ' , key [ 0 ] , key [ 1 ] , key , key + s )
if os . path . exists ( n ) :
if os . path . exists ( n ) :
os . unlink ( n )
os . unlink ( n )
self . storage . put ( ' payment_requests ' , self . receive_requests )
self . storage . put ( ' payment_requests ' , self . receive_requests )