forked from circlecloud/tera
@@ -26,7 +26,7 @@ WebApi2.CreateAccount = function(Params, response) {
|
||||
Body = Body.slice(0, Body.len + 12);
|
||||
SendTransaction(Body, TR as any, Params.Wait, function(result, text) {
|
||||
var Result = {
|
||||
result: result, text: text, TxID: global.GetHexFromArr(TR._TxID.slice(0, TR_TICKET_HASH_LENGTH + 6)), BlockNum: TR._BlockNum,
|
||||
result: result, text: text, TxID: global.GetHexFromArr(TR._TxID.slice(0, global.TR_TICKET_HASH_LENGTH + 6)), BlockNum: TR._BlockNum,
|
||||
Meta: Params.Meta,
|
||||
};
|
||||
var Str = JSON.stringify(Result);
|
||||
@@ -42,10 +42,10 @@ WebApi2.Send = function(Params, response, A, bJsonRet) {
|
||||
return { result: 0 };
|
||||
var Coin;
|
||||
if (typeof Params.Amount === "number")
|
||||
Coin = COIN_FROM_FLOAT(Params.Amount);
|
||||
Coin = global.COIN_FROM_FLOAT(Params.Amount);
|
||||
else
|
||||
Coin = Params.Amount;
|
||||
var FromNum = ParseNum(Params.FromID);
|
||||
var FromNum = global.ParseNum(Params.FromID);
|
||||
if (!Coin)
|
||||
return { result: 0, Meta: Params.Meta, text: "Params.Amount required" };
|
||||
if (!FromNum)
|
||||
@@ -57,7 +57,7 @@ WebApi2.Send = function(Params, response, A, bJsonRet) {
|
||||
if (typeof Params.ToID === "string" && Params.ToID.length === 66)
|
||||
ToPubKeyArr = global.GetArrFromHex(Params.ToID);
|
||||
else
|
||||
ToID = ParseNum(Params.ToID);
|
||||
ToID = global.ParseNum(Params.ToID);
|
||||
var DataFrom = global.DApps.Accounts.ReadState(FromNum);
|
||||
if (!DataFrom)
|
||||
return { result: 0, Meta: Params.Meta, text: "Error read account: " + FromNum };
|
||||
@@ -68,14 +68,14 @@ WebApi2.Send = function(Params, response, A, bJsonRet) {
|
||||
}
|
||||
else {
|
||||
OperationID = MapSendID[FromNum].OperationID;
|
||||
if ((new Date() - MapSendID[FromNum].Date) > 8 * 1000) {
|
||||
if (((new Date() as any) - MapSendID[FromNum].Date) > 8 * 1000) {
|
||||
OperationID += 20;
|
||||
}
|
||||
}
|
||||
OperationID++;
|
||||
MapSendID[FromNum].OperationID = OperationID;
|
||||
MapSendID[FromNum].Date = Date.now();
|
||||
var TR = {
|
||||
var TR: any = {
|
||||
Type: 111, Version: 3, Reserve: 0, FromID: FromNum, OperationID: OperationID, To: [{
|
||||
PubKey: ToPubKeyArr, ID: ToID, SumCOIN: Coin.SumCOIN,
|
||||
SumCENT: Coin.SumCENT
|
||||
@@ -86,11 +86,11 @@ WebApi2.Send = function(Params, response, A, bJsonRet) {
|
||||
if (!Params.FromPrivKey)
|
||||
return { result: 0, Meta: Params.Meta, text: "Params.FromPrivKey required" };
|
||||
TR.Sign = global.DApps.Accounts.GetSignTransferTx(TR, global.GetArrFromHex(Params.FromPrivKey));
|
||||
var Body = global.BufLib.GetBufferFromObject(TR, FORMAT_MONEY_TRANSFER3, MAX_TRANSACTION_SIZE, {}, 1);
|
||||
var Body = global.BufLib.GetBufferFromObject(TR, global.FORMAT_MONEY_TRANSFER3, global.MAX_TRANSACTION_SIZE, {}, 1);
|
||||
Body = Body.slice(0, Body.len + 12);
|
||||
SendTransaction(Body, TR, Params.Wait, function(result, text) {
|
||||
var Result = {
|
||||
result: result, text: text, TxID: global.GetHexFromArr(TR._TxID.slice(0, TR_TICKET_HASH_LENGTH + 6)), BlockNum: TR._BlockNum,
|
||||
result: result, text: text, TxID: global.GetHexFromArr(TR._TxID.slice(0, global.TR_TICKET_HASH_LENGTH + 6)), BlockNum: TR._BlockNum,
|
||||
Meta: Params.Meta,
|
||||
};
|
||||
var Str = JSON.stringify(Result);
|
||||
@@ -100,7 +100,7 @@ WebApi2.Send = function(Params, response, A, bJsonRet) {
|
||||
};
|
||||
WebApi2.GetBalance = function(Params, response) {
|
||||
if (typeof Params === "object") {
|
||||
var arr = global.DApps.Accounts.GetRowsAccounts(ParseNum(Params.AccountID), 1);
|
||||
var arr = global.DApps.Accounts.GetRowsAccounts(global.ParseNum(Params.AccountID), 1);
|
||||
if (arr.length) {
|
||||
var Account = arr[0];
|
||||
var Value = Account.Value;
|
||||
@@ -116,7 +116,7 @@ WebApi2.GetBalance = function(Params, response) {
|
||||
WebApi2.GetTransaction = function(Params) {
|
||||
if (typeof Params === "object" && Params.TxID) {
|
||||
var Arr = global.GetArrFromHex(Params.TxID);
|
||||
var BlockNum = ReadUintFromArr(Arr, TR_TICKET_HASH_LENGTH);
|
||||
var BlockNum = global.ReadUintFromArr(Arr, global.TR_TICKET_HASH_LENGTH);
|
||||
var Block = global.SERVER.ReadBlockDB(BlockNum);
|
||||
if (Block && Block.arrContent) {
|
||||
for (var i = 0; i < Block.arrContent.length; i++) {
|
||||
@@ -209,11 +209,11 @@ WebApi2.SendRawTransaction = function(Params, response) {
|
||||
return { result: 0, Meta: Params.Meta, text: "Params.Tx.Sign required" };
|
||||
var TR = Params.Tx;
|
||||
TxHexToArr(TR);
|
||||
var Body = global.BufLib.GetBufferFromObject(TR, FORMAT_MONEY_TRANSFER3, MAX_TRANSACTION_SIZE, {}, 1);
|
||||
var Body = global.BufLib.GetBufferFromObject(TR, global.FORMAT_MONEY_TRANSFER3, global.MAX_TRANSACTION_SIZE, {}, 1);
|
||||
Body = Body.slice(0, Body.len + 12);
|
||||
SendTransaction(Body, TR, Params.Wait, function(result, text) {
|
||||
var Result = {
|
||||
result: result, text: text, TxID: global.GetHexFromArr(TR._TxID.slice(0, TR_TICKET_HASH_LENGTH + 6)), BlockNum: TR._BlockNum,
|
||||
result: result, text: text, TxID: global.GetHexFromArr(TR._TxID.slice(0, global.TR_TICKET_HASH_LENGTH + 6)), BlockNum: TR._BlockNum,
|
||||
Meta: Params.Meta,
|
||||
};
|
||||
var Str = JSON.stringify(Result);
|
||||
@@ -252,9 +252,9 @@ function TxHexToArr(TR) {
|
||||
var DELTA_FOR_TIME_TX = 1;
|
||||
|
||||
function GetTxID(BlockNum, Body) {
|
||||
var Nonce = ReadUintFromArr(Body, Body.length - 6);
|
||||
var Nonce = global.ReadUintFromArr(Body, Body.length - 6);
|
||||
var Arr2 = CreateTxID(Body, BlockNum, Nonce);
|
||||
return Arr2.slice(0, TR_TICKET_HASH_LENGTH + 6);
|
||||
return Arr2.slice(0, global.TR_TICKET_HASH_LENGTH + 6);
|
||||
};
|
||||
|
||||
function CreateTxID(body, BlockNum, Nonce) {
|
||||
@@ -262,14 +262,14 @@ function CreateTxID(body, BlockNum, Nonce) {
|
||||
body.writeUIntLE(Nonce, body.length - 6, 6);
|
||||
var HASH = global.sha3(body);
|
||||
var FullHashTicket = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
|
||||
for (var i = 0; i < TR_TICKET_HASH_LENGTH; i++)
|
||||
for (var i = 0; i < global.TR_TICKET_HASH_LENGTH; i++)
|
||||
FullHashTicket[i] = HASH[i];
|
||||
WriteUintToArrOnPos(FullHashTicket, BlockNum, TR_TICKET_HASH_LENGTH);
|
||||
global.WriteUintToArrOnPos(FullHashTicket, BlockNum, global.TR_TICKET_HASH_LENGTH);
|
||||
return FullHashTicket;
|
||||
};
|
||||
|
||||
function GetBlockNumTr(arr) {
|
||||
var BlockNum = DELTA_FOR_TIME_TX + GetCurrentBlockNumByTime();
|
||||
var BlockNum = DELTA_FOR_TIME_TX + global.GetCurrentBlockNumByTime();
|
||||
if (arr[0] === global.TYPE_TRANSACTION_CREATE) {
|
||||
var BlockNum2 = Math.floor(BlockNum / 10) * 10;
|
||||
if (BlockNum2 < BlockNum)
|
||||
@@ -282,12 +282,12 @@ function GetBlockNumTr(arr) {
|
||||
function CreateHashBodyPOWInnerMinPower(TR, arr, MinPow, startnonce) {
|
||||
var BlockNum = GetBlockNumTr(arr);
|
||||
if (MinPow === undefined) {
|
||||
MinPow = MIN_POWER_POW_TR + Math.log2(arr.length / 128);
|
||||
MinPow = global.MIN_POWER_POW_TR + Math.log2(arr.length / 128);
|
||||
}
|
||||
var nonce = startnonce;
|
||||
while (1) {
|
||||
var TxID = CreateTxID(arr, BlockNum, nonce);
|
||||
var power = GetPowPower(sha3(TxID));
|
||||
var power = global.GetPowPower(global.sha3(TxID));
|
||||
if (power >= MinPow) {
|
||||
TR._TxID = TxID;
|
||||
TR._BlockNum = BlockNum;
|
||||
@@ -349,7 +349,7 @@ function SendTransaction(Body, TR, Wait, F) {
|
||||
function GetTransactionFromBody(Params, Block, TrNum, Body) {
|
||||
var TR = global.DApps.Accounts.GetObjectTransaction(Body);
|
||||
if (TR) {
|
||||
ConvertBufferToStr(TR);
|
||||
global.ConvertBufferToStr(TR);
|
||||
TR.result = 1;
|
||||
TR.Meta = Params.Meta;
|
||||
if (Block.VersionBody === 1 && Block.arrContentResult) {
|
||||
|
||||
Reference in New Issue
Block a user