move get_status to InvoiceStore
This commit is contained in:
parent
0d4d06c58b
commit
74b0ed5f48
|
@ -1189,12 +1189,12 @@ class ElectrumWindow(QMainWindow):
|
||||||
|
|
||||||
def payment_request_ok(self):
|
def payment_request_ok(self):
|
||||||
pr = self.payment_request
|
pr = self.payment_request
|
||||||
status = pr.get_status()
|
|
||||||
key = self.invoices.add(pr)
|
key = self.invoices.add(pr)
|
||||||
|
status = self.invoices.get_status(key)
|
||||||
self.update_invoices_list()
|
self.update_invoices_list()
|
||||||
if status == PR_PAID:
|
if status == PR_PAID:
|
||||||
self.do_clear()
|
|
||||||
self.show_message("invoice already paid")
|
self.show_message("invoice already paid")
|
||||||
|
self.do_clear()
|
||||||
self.payment_request = None
|
self.payment_request = None
|
||||||
return
|
return
|
||||||
|
|
||||||
|
@ -1306,7 +1306,7 @@ class ElectrumWindow(QMainWindow):
|
||||||
l.clear()
|
l.clear()
|
||||||
for pr in inv_list:
|
for pr in inv_list:
|
||||||
key = pr.get_id()
|
key = pr.get_id()
|
||||||
status = pr.get_status()
|
status = self.invoices.get_status(key)
|
||||||
domain = pr.get_domain()
|
domain = pr.get_domain()
|
||||||
date_str = format_time(pr.get_expiration_date())
|
date_str = format_time(pr.get_expiration_date())
|
||||||
item = QTreeWidgetItem( [ date_str, domain, pr.memo, self.format_amount(pr.get_amount(), whitespaces=True), pr_tooltips.get(status,'')] )
|
item = QTreeWidgetItem( [ date_str, domain, pr.memo, self.format_amount(pr.get_amount(), whitespaces=True), pr_tooltips.get(status,'')] )
|
||||||
|
@ -1485,7 +1485,9 @@ class ElectrumWindow(QMainWindow):
|
||||||
grid.addWidget(QLabel(outputs_str), 5, 1)
|
grid.addWidget(QLabel(outputs_str), 5, 1)
|
||||||
if pr.tx:
|
if pr.tx:
|
||||||
grid.addWidget(QLabel(_("Transaction ID") + ':'), 6, 0)
|
grid.addWidget(QLabel(_("Transaction ID") + ':'), 6, 0)
|
||||||
grid.addWidget(QLabel(pr.tx), 6, 1)
|
l = QLineEdit(pr.tx)
|
||||||
|
l.setReadOnly(True)
|
||||||
|
grid.addWidget(l, 6, 1)
|
||||||
vbox.addLayout(grid)
|
vbox.addLayout(grid)
|
||||||
vbox.addLayout(Buttons(CloseButton(d)))
|
vbox.addLayout(Buttons(CloseButton(d)))
|
||||||
d.exec_()
|
d.exec_()
|
||||||
|
@ -1508,7 +1510,7 @@ class ElectrumWindow(QMainWindow):
|
||||||
return
|
return
|
||||||
key = str(item.data(0, 32).toString())
|
key = str(item.data(0, 32).toString())
|
||||||
pr = self.invoices.get(key)
|
pr = self.invoices.get(key)
|
||||||
status = pr.get_status()
|
status = self.invoices.get_status(key)
|
||||||
menu = QMenu()
|
menu = QMenu()
|
||||||
menu.addAction(_("Details"), lambda: self.show_invoice(key))
|
menu.addAction(_("Details"), lambda: self.show_invoice(key))
|
||||||
if status == PR_UNPAID:
|
if status == PR_UNPAID:
|
||||||
|
|
|
@ -84,13 +84,6 @@ class PaymentRequest:
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return self.raw
|
return self.raw
|
||||||
|
|
||||||
def get_status(self):
|
|
||||||
if self.tx is not None:
|
|
||||||
return PR_PAID
|
|
||||||
if self.has_expired():
|
|
||||||
return PR_EXPIRED
|
|
||||||
return PR_UNPAID
|
|
||||||
|
|
||||||
def parse(self, r):
|
def parse(self, r):
|
||||||
self.id = bitcoin.sha256(r)[0:16].encode('hex')
|
self.id = bitcoin.sha256(r)[0:16].encode('hex')
|
||||||
try:
|
try:
|
||||||
|
@ -330,11 +323,19 @@ class InvoiceStore(object):
|
||||||
with open(path, 'w') as f:
|
with open(path, 'w') as f:
|
||||||
r = f.write(json.dumps(l))
|
r = f.write(json.dumps(l))
|
||||||
|
|
||||||
|
def get_status(self, key):
|
||||||
|
pr = self.get(key)
|
||||||
|
if pr.tx is not None:
|
||||||
|
return PR_PAID
|
||||||
|
if pr.has_expired():
|
||||||
|
return PR_EXPIRED
|
||||||
|
return PR_UNPAID
|
||||||
|
|
||||||
def add(self, pr):
|
def add(self, pr):
|
||||||
key = pr.get_id()
|
key = pr.get_id()
|
||||||
if key in self.invoices:
|
if key in self.invoices:
|
||||||
print_error('invoice already in list')
|
print_error('invoice already in list')
|
||||||
return False
|
return key
|
||||||
self.invoices[key] = pr
|
self.invoices[key] = pr
|
||||||
self.save()
|
self.save()
|
||||||
return key
|
return key
|
||||||
|
|
Loading…
Reference in New Issue