added checks for closed
This commit is contained in:
@@ -1077,9 +1077,9 @@ UniValue PricesSetcostbasis(int64_t txfee, uint256 bettxid)
|
||||
result.push_back(Pair("error", "not enough funds"));
|
||||
return(result);
|
||||
}
|
||||
}
|
||||
} */
|
||||
result.push_back(Pair("result", "error"));
|
||||
result.push_back(Pair("error", "cant find bettxid")); */
|
||||
result.push_back(Pair("error", "deprecated"));
|
||||
return(result);
|
||||
}
|
||||
|
||||
@@ -1106,9 +1106,18 @@ UniValue PricesRekt(int64_t txfee, uint256 bettxid, int32_t rektheight)
|
||||
{
|
||||
if (prices_betopretdecode(bettx.vout.back().scriptPubKey, pk, firstheight, positionsize, leverage, firstprice, vec, tokenid) == 'B')
|
||||
{
|
||||
int32_t endheight;
|
||||
uint256 finaltxid;
|
||||
int32_t vini;
|
||||
int32_t finalheight, endheight;
|
||||
std::vector<BetInfo> bets;
|
||||
BetInfo bet1;
|
||||
|
||||
if (CCgetspenttxid(finaltxid, vini, finalheight, bettxid, 2) < 0) {
|
||||
result.push_back(Pair("result", "error"));
|
||||
result.push_back(Pair("error", "position closed"));
|
||||
return result;
|
||||
}
|
||||
|
||||
bet1.amount = positionsize;
|
||||
bet1.firstheight = firstheight;
|
||||
bets.push_back(bet1);
|
||||
@@ -1170,7 +1179,7 @@ UniValue PricesCashout(int64_t txfee, uint256 bettxid)
|
||||
CTransaction bettx;
|
||||
uint256 hashBlock, batontxid, tokenid;
|
||||
int64_t CCchange = 0, positionsize, inputsum, firstprice, lastprice = 0;
|
||||
int32_t firstheight, height;
|
||||
int32_t firstheight;
|
||||
int16_t leverage;
|
||||
std::vector<uint16_t> vec;
|
||||
CPubKey pk, mypk, pricespk;
|
||||
@@ -1187,13 +1196,21 @@ UniValue PricesCashout(int64_t txfee, uint256 bettxid)
|
||||
{
|
||||
if (prices_betopretdecode(bettx.vout.back().scriptPubKey, pk, firstheight, positionsize, leverage, firstprice, vec, tokenid) == 'B')
|
||||
{
|
||||
int32_t endheight;
|
||||
uint256 finaltxid;
|
||||
int32_t vini;
|
||||
int32_t finalheight, endheight;
|
||||
std::vector<BetInfo> bets;
|
||||
BetInfo bet1;
|
||||
|
||||
if (CCgetspenttxid(finaltxid, vini, finalheight, bettxid, 2) < 0) {
|
||||
result.push_back(Pair("result", "error"));
|
||||
result.push_back(Pair("error", "position closed"));
|
||||
return result;
|
||||
}
|
||||
|
||||
bet1.amount = positionsize;
|
||||
bet1.firstheight = firstheight;
|
||||
bets.push_back(bet1);
|
||||
|
||||
prices_enumaddedbets(batontxid, bets, bettxid);
|
||||
|
||||
if (prices_scanchain(bets, leverage, vec, lastprice, endheight) < 0) {
|
||||
@@ -1259,8 +1276,17 @@ UniValue PricesInfo(uint256 bettxid, int32_t refheight)
|
||||
|
||||
if (prices_betopretdecode(bettx.vout.back().scriptPubKey, pk, firstheight, positionsize, leverage, firstprice, vec, tokenid) == 'B')
|
||||
{
|
||||
uint256 finaltxid;
|
||||
int32_t vini;
|
||||
int32_t finalheight, endheight;
|
||||
std::vector<BetInfo> bets;
|
||||
BetInfo bet1;
|
||||
|
||||
if (CCgetspenttxid(finaltxid, vini, finalheight, bettxid, 2) < 0)
|
||||
result.push_back(Pair("status", "closed"));
|
||||
else
|
||||
result.push_back(Pair("status", "open"));
|
||||
|
||||
bet1.amount = positionsize;
|
||||
bet1.firstheight = firstheight;
|
||||
bets.push_back(bet1);
|
||||
|
||||
Reference in New Issue
Block a user