generate 7 digit pairing code, notify parent windows of checkout

This commit is contained in:
nicolas.dorier
2017-10-17 17:04:33 +09:00
parent e3c5efa929
commit d43c3dc968
2 changed files with 13 additions and 1 deletions

View File

@@ -58,7 +58,13 @@ namespace BTCPayServer.Authentication
public async Task<string> CreatePairingCodeAsync() public async Task<string> CreatePairingCodeAsync()
{ {
string pairingCodeId = Encoders.Base58.EncodeData(RandomUtils.GetBytes(6)); string pairingCodeId = null;
while(true)
{
pairingCodeId = Encoders.Base58.EncodeData(RandomUtils.GetBytes(6));
if(pairingCodeId.Length == 7) // woocommerce plugin check for exactly 7 digits
break;
}
using(var ctx = _Factory.CreateContext()) using(var ctx = _Factory.CreateContext())
{ {
var now = DateTime.UtcNow; var now = DateTime.UtcNow;

View File

@@ -155,9 +155,15 @@ $("#copy-tab").click(function () {
// Should connect using webhook ? // Should connect using webhook ?
// If notification received // If notification received
var oldStatus = status;
updateState(status); updateState(status);
function updateState(status) { function updateState(status) {
if (oldStatus != status)
{
oldStatus = status;
window.parent.postMessage({ "invoiceId": invoiceId, "status": status }, "*");
}
if (status == "complete" || if (status == "complete" ||
status == "paidOver" || status == "paidOver" ||
status == "confirmed" || status == "confirmed" ||