104 lines
3.9 KiB
HTML
104 lines
3.9 KiB
HTML
{{define "specific"}}{{$cs := .CoinShortcut}}{{$tx := .Tx}}
|
|
<h1>Transaction</h1>
|
|
<div class="alert alert-data ellipsis">
|
|
<span class="data">{{$tx.Txid}}</span>
|
|
</div>
|
|
<h3>Summary</h3>
|
|
<div class="data-div">
|
|
<table class="table data-table">
|
|
<tbody>
|
|
{{- if $tx.Confirmations -}}
|
|
<tr>
|
|
<td style="width: 25%;">Mined Time</td>
|
|
<td class="data">{{formatUnixTime $tx.Blocktime}}</td>
|
|
</tr>{{end -}}
|
|
<tr>
|
|
<td style="width: 25%;">In Block</td>
|
|
<td class="ellipsis data">{{if $tx.Confirmations}}{{$tx.Blockhash}}{{else}}Unconfirmed{{end}}</td>
|
|
</tr>
|
|
{{- if $tx.Confirmations -}}
|
|
<tr>
|
|
<td>In Block Height</td>
|
|
<td class="data"><a href="/block/{{$tx.Blockheight}}">{{$tx.Blockheight}}</a></td>
|
|
</tr>{{end}}
|
|
{{- if $tx.EthereumSpecific -}}
|
|
<tr>
|
|
<td>Status</td>
|
|
{{- if $tx.EthereumSpecific.Status -}}
|
|
{{- if eq $tx.EthereumSpecific.Status 1 -}}
|
|
<td class="data text-success">Success</td>
|
|
{{- else -}}
|
|
{{- if eq $tx.EthereumSpecific.Status -1 -}}
|
|
<td class="data">Pending</td>
|
|
{{- else -}}
|
|
<td class="data">Unknown</td>
|
|
{{- end -}}
|
|
{{- end -}}
|
|
{{- else -}}
|
|
<td class="data text-danger">Fail</td>
|
|
{{- end -}}
|
|
</tr>
|
|
<tr>
|
|
<td>Value</td>
|
|
<td class="data">{{formatAmount $tx.ValueOutSat}} {{$cs}}</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Gas Used / Limit</td>
|
|
<td class="data">{{if $tx.EthereumSpecific.GasUsed}}{{$tx.EthereumSpecific.GasUsed}}{{else}}pending{{end}} / {{$tx.EthereumSpecific.GasLimit}}</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Gas Price</td>
|
|
<td class="data">{{formatAmount $tx.EthereumSpecific.GasPrice}} {{$cs}}</td>
|
|
</tr>
|
|
{{- else -}}
|
|
<tr>
|
|
<td>Total Input</td>
|
|
<td class="data">{{formatAmount $tx.ValueInSat}} {{$cs}}</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Total Output</td>
|
|
<td class="data">{{formatAmount $tx.ValueOutSat}} {{$cs}}</td>
|
|
</tr>
|
|
{{- end -}}
|
|
{{- if $tx.FeesSat -}}
|
|
<tr>
|
|
<td>Fees</td>
|
|
<td class="data">{{formatAmount $tx.FeesSat}} {{$cs}}</td>
|
|
</tr>{{end -}}
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<h3>Details</h3>
|
|
<div class="data-div">
|
|
{{template "txdetail" .}}
|
|
</div>
|
|
<div class="data-div">
|
|
<h5>Raw Transaction</h5>
|
|
<div class="alert alert-data" style="word-wrap: break-word; font-size: smaller;">
|
|
<pre id="txSpecific"></pre>
|
|
</div>
|
|
<script type="text/javascript">
|
|
txSpecific = {{$tx.CoinSpecificData}};
|
|
function syntaxHighlight(json) {
|
|
json = JSON.stringify(json, undefined, 2);
|
|
json = json.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>');
|
|
return json.replace(/("(\\u[a-zA-Z0-9]{4}|\\[^u]|[^\\"])*"(\s*:)?|\b(true|false|null)\b|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?)/g, function (match) {
|
|
var cls = 'number';
|
|
if (/^"/.test(match)) {
|
|
if (/:$/.test(match)) {
|
|
cls = 'key';
|
|
} else {
|
|
cls = 'string';
|
|
}
|
|
} else if (/true|false/.test(match)) {
|
|
cls = 'boolean';
|
|
} else if (/null/.test(match)) {
|
|
cls = 'null';
|
|
}
|
|
return '<span class="' + cls + '">' + match + '</span>';
|
|
});
|
|
}
|
|
document.getElementById('txSpecific').innerHTML = syntaxHighlight(txSpecific);
|
|
</script>
|
|
</div>
|
|
{{end}} |